This is an automatically generated IRC chat log made by the logger bot from the Semantic Web Interest Group IRC chat at irc://irc.freenode.net/swig (also known as server irc.freenode.net channel #swig if that URI does not work for you).
See also the Semantic Web Interest Group IRC Scratchpad for the collaboratively written weblog and ESW wiki.
Semantic Web Interest Group Logs > 2004 > 2004-12 > 2004-12-13 (Latest) (Search)
00:16:26 <GreyLensman> N3 question: In latest n3.n3, qname (it appears) can be empty, therefore @prefix <http://home> . is legal. In two of Sean Palmer's tests in the recent parser/test suite, there are @prefix statements without a qname value. Is this correct? If yes, how does one interpret a @prefix qname uri . when the qname is not there?
00:19:17 <GreyLensman> My parser is dying on '@prefix <http://x> .' as it expects a qname of at least ':'. e.g. '@prefix : <http://x> .'
00:20:50 <sbp> yeah, actually that's one of a few things I've been meaning to look into for the n3.n3 grammar. another is, for example, that paths using the old dot notation still get through
00:21:07 <sbp> I need to create a set of negative tests; I have a couple files of notes on them
00:21:42 <sbp> I think the lack of QName is a bug. let me check the production
00:22:07 <deltab> yeah, looks like a bug to me
00:22:09 <GreyLensman> I have a couple of corner cases that parse that I expect should not. But in numeric-01.n3 numeric-02.n3 the ':' is missing.
00:22:39 <deltab> the same sort of unintended consequence that would class "." as a decimal number
00:22:42 <sbp> ah, it's because QName can be empty
00:22:46 <GreyLensman> yes
00:22:56 <sbp> whoops, you already said that. sorry :-)
00:23:10 <GreyLensman> The qname production says qname can be empty. But is that the intent?
00:23:25 <sbp> nope, I very much doubt it
00:23:27 <deltab> I very much doubt it
00:23:32 <deltab> heh!
00:23:32 <GreyLensman> ahh
00:23:34 <sbp> :-)
00:23:41 <sbp> I suspect that the final "?" is in error
00:23:54 <deltab> it'd make "." a valid triple
00:23:58 <sbp> hmm. though that wouldn't allow for ":"
00:24:27 <deltab> should foo: be allowed?
00:24:34 <GreyLensman> yes.
00:24:35 <sbp> yeah. though the parser doesn't pick that up, I don't think. it performs look ahead based on annotations of the productions, not the productions themselves
00:24:36 <deltab> as a qname, that is
00:24:44 <sbp> yep; there's already a test for it
00:24:59 <deltab> foo: bar: baz .
00:25:16 <deltab> like that?
00:25:35 <sbp> that's not valid; you'd need an @keywords .
00:25:37 <deltab> oops, missed a colon
00:25:38 <GreyLensman> Its the middle ? that is in question.
00:25:38 <sbp> but yes
00:25:48 <sbp> nope, because you can have barenames
00:25:55 <GreyLensman> k
00:26:01 <sbp> deltab: [[[
00:26:01 <sbp> qname cfg:matches "(([a-zA-Z_][a-zA-Z0-9_]*)?:)?([a-zA-Z_][a-zA-Z0-9_]*)?";
00:26:02 <sbp> cfg:canStartWith "a", "_", ":". # @@ etc unicode
00:26:02 <sbp> ]]]
00:26:14 <sbp> it's the canStartWith that the parser uses
00:26:27 <deltab> I know that's what it says, but is it intended?
00:26:32 <sbp> the tokeniser peeks ahead and returns a character based on what it thinks is coming next
00:26:40 <sbp> the actual match is wrong
00:26:52 <GreyLensman> I'm using the old qname=(([a-zA-Z_][a-zA-Z0-9_]*)?:)([a-zA-Z_][a-z$@A-Z0-9_]*)?;
00:27:14 <sbp> but that won't match, e.g., @keywords . p q r .
00:27:29 <GreyLensman> This requires a : somewhere, even if only ':'
00:27:31 <sbp> "$@"?
00:27:53 <sbp> btw, is your parser online GreyLensman?
00:27:57 <sbp> [brb]
00:28:03 <GreyLensman> not the latest.
00:28:13 <GreyLensman> I have about 3-4 issues from your tests.
00:28:32 <GreyLensman> Runs them all and prints AST in 18 ms.
00:29:31 <GreyLensman> so what was the final answer on the validity of '@prefix <http://x> . '
00:29:58 <GreyLensman> sorry, missed brb.
00:30:31 <sbp> final answer: it's invalid. there should be a negative parser test for it, and the next version of the positive parser tests will not include that statement (already fixed before you raised the problem)
00:30:37 <sbp> np
00:31:08 <sbp> what are the other issues? I'd be delighted to hear them! I've been working fairly solidly on this the past few days, so I've been rambling on about it to anyone within earshot
00:31:18 <sbp> it'll be nice to ramble on to someone who cares for a change :-)
00:31:23 <deltab> so "foo:" is now always acceptable as a qname?
00:31:57 <sbp> deltab: has been since at least the 7th October 2003: http://www.w3.org/2000/10/swap/test/syntax/zero-length-lname.n3
00:32:38 <GreyLensman> I mailed you me log file of current parser output.
00:33:27 <sbp> GreyLensman: I ran CWM against the test suite, and found a few issues that way. namely: CWM doesn't support \UHHHHHHHH, @this for triples not containing forSome/forAll predicates, and one other that I forget
00:33:29 <sbp> ah, thanks!
00:33:35 * sbp checks
00:34:13 <GreyLensman> sbp, I don't think there is anything in there that is a problem that is not with my parser.
00:34:32 <GreyLensman> I have an issue with "\"" for example.
00:35:11 <GreyLensman> The one corner case I thought I had, well, looking at the log. I was wrong.
00:35:30 <sbp> ah, fair enough
00:35:38 <sbp> interesting: you seem to be doing parser recovery too
00:35:43 <GreyLensman> Yes.
00:36:10 <GreyLensman> Its was a couple of corrections that succeeded that made me think I had some odd corner cases.
00:36:25 <sbp> this-rules.n3? that's a new one
00:36:42 <GreyLensman> The parser will try and substitute/backtrack in a desperate attempt to parse hell or high water.
00:36:51 <sbp> heh
00:36:53 <GreyLensman> that was a couple of my own.
00:37:04 <IsoosI> cat /dev/urandom > GreyLensman
00:37:05 <IsoosI> :)
00:37:13 <sbp> not online, I presume... what's the basis of this parser? what language?
00:37:57 <GreyLensman> SML is the language, SML/NJ and MLton is the compiler, MLYacc and MLLex for the parser.
00:38:07 <sbp> SML: whoops, I see from the email too now
00:38:08 <dc_swig> Label SML not found.
00:38:44 <sbp> were you able to make use of the Yacc output from TimBL's predictiveParser?
00:39:04 <GreyLensman> I just did a straight right down from n3.n3.
00:39:09 <GreyLensman> write down...
00:39:30 <sbp> ah, okay
00:39:51 <sbp> are you doing anything with the output yet--feeding to an RDF API of some sort, for example?
00:40:35 <sbp> oh, I remember the other CWM issue now. I think I filed a bug for it already...
00:41:00 <GreyLensman> I have a kick ass Rete, optimized for triples based Working Memory Elements.
00:41:09 <sbp> hmm. I did send it, but it's not in the archives yet. annoying
00:41:35 <GreyLensman> I've been this close a release for oh about 6 months.
00:41:36 <sbp> cool
00:41:44 <sbp> heh. the six month phenomenon
00:41:47 <GreyLensman> Never ends....
00:41:50 * sbp nods
00:41:58 <GreyLensman> EOY is the target.
00:42:26 <sbp> it'll be good to see. you have an RDF/XML parser and such for it already, I presume?
00:42:43 <GreyLensman> sbp, I sent the grammar and lex file I'm using. I know a couple of the lex reges are dated.
00:43:00 <sbp> thanks. looking...
00:43:42 <GreyLensman> There is an XML parser in SML. Now real RDF/XML parser at this time.
00:44:40 <sbp> the (* comment syntax *) reminds me of (: XQuery's :)
00:45:01 <sbp> fair enough. at least you're working on the better language first :-)
00:45:27 <crschmidt> Pfft, everyone knows n3 is just voodoo language designed to confuse people.
00:45:46 * sbp wonders what that makes RDF/XML...
00:45:46 <GreyLensman> and that would make RDF/XML pure black magic.
00:46:12 * GreyLensman goes to walk the dog.
00:46:55 <sbp> enjoy. thanks for the feedback
00:47:15 <sbp> hmm: string=\"([^"]*)\";
00:47:34 <IsoosI> crschmidt, Does your bot do n3?
00:47:40 <crschmidt> IsoosI: nope
00:47:47 <sbp> I'll probably be releasing a new version of the test suite/parsers soon
00:47:57 <sbp> been fiddling with them all day, should be enough changes...
00:48:11 <IsoosI> crschmidt, pity, last time I was around I wanted to write a bot that could deal with n3 from a topdown basis (rather than cwm's bottomup)
00:48:26 <crschmidt> If someone writes me something I can pass a string of n3 and get back a series of statements, I'll integrate it into the bot
00:48:55 <sbp> "series of statements"?
00:48:55 <IsoosI> crschmidt, thats no fun tho, you miss the turingcompleteness of n3
00:49:05 <sbp> n3proc will turn N3 into N-Triples if that's enough
00:49:12 <sbp> you can parse N-Triples, no?
00:49:22 <crschmidt> sbp: yeah, i just realized that
00:49:46 <sbp> ./n3proc.py -r URI
00:49:48 <crschmidt> okay, next version of julie will probably integrate n3 parsing as a fallback for RDF/XML
00:49:53 <sbp> whoo!
00:50:00 <IsoosI> wee!
00:50:07 <IsoosI> will it be able to do n3 processing?
00:50:14 <crschmidt> IsoosI: Ask sbp ;)
00:50:22 <IsoosI> sbp: as above?
00:50:27 <sbp> if he uses CWM, yep
00:50:38 <IsoosI> hmm
00:50:42 <IsoosI> cwm's bottom up tho :/
00:50:43 <sbp> Pyrple actually does it to a limited extent too
00:50:46 <crschmidt> You told me that cwm is hard to use inside something else
00:50:56 <sbp> very hard
00:50:56 <crschmidt> have to do funky things, or something like that
00:51:03 <sbp> it wasn't indended for that sort of use
00:51:10 <sbp> s/ind/int/
00:51:19 <IsoosI> thats why they invented popen4() :)
00:51:24 <sbp> heh
00:51:36 <crschmidt> IsoosI: what specifically do you have an interest in from n3?
00:51:41 <sbp> yeah. command line use is pretty much the Only Way
00:52:18 <IsoosI> crschmidt, I like the idea of being able rules into a tuple store
00:52:31 <IsoosI> as information without rules isn't much information at all
00:52:49 <crschmidt> Hm, can rules be translated to ntriples though?
00:52:54 * crschmidt shows his lack of rules knowledge
00:53:02 <IsoosI> This is where I got confused last time I hacked on n3
00:53:18 <IsoosI> some things suggested that they could, but noone seemed to know exactly how
00:53:30 <sbp> n3proc makes a valiant attempt at it
00:53:34 <crschmidt> I'm probably just going to be using some n3 processor and converting to ntriples
00:53:35 <sbp> it has to for the test suite
00:53:41 <IsoosI> there were arguments as if { } ment riefication etc
00:53:48 <sbp> basically you can only convert a kind of impression of the formulae
00:53:56 <IsoosI> yeah
00:53:58 <sbp> it's more than reification. it's more like a literal
00:54:23 <IsoosI> I couldn't figure out how to convert n3 rules into triples and still be able to execute them
00:54:33 <sbp> actually in pyrple (an RDF API of mine) I decided to represent them as datatyped literals
00:54:54 <sbp> well, I think it should be possible to run even flattened rules
00:55:07 <crschmidt> I also want to be able to scribble n3 on an irc line and add it to julie
00:55:09 <sbp> and I got datatype-rules running in pyrple just fine
00:55:13 <IsoosI> crschmidt, yeah
00:55:16 <sbp> so both approaches should work
00:55:17 <IsoosI> thats what I was keen on doing
00:55:25 <sbp> heh. DanC did that years ago
00:55:31 <IsoosI> I don't like cwm
00:55:32 <sbp> he wrote a bot on top of CWM
00:55:59 <sbp> http://dev.w3.org/cvsweb/2000/scribe-bot/
00:56:19 <sbp> "rdfn3chat.py is the main program"
00:56:33 <IsoosI> what worries me is that I don't believe that cwm can scale
00:56:38 <IsoosI> eventually it'll get too much information
00:56:41 <sbp> doubt it'll even run now
00:56:53 <sbp> IsoosI: depends what you're doing with it
00:57:06 <sbp> certainly the current code is highly inefficient
00:57:10 <IsoosI> well
00:57:24 <IsoosI> I was thinking something a bit more like google
00:57:24 <sbp> but that doesn't mean that the same approach can't work with better code
00:57:31 <sbp> ah
00:57:32 <IsoosI> ie, it has indexes to as much information as it can
00:57:42 <IsoosI> so you can query stuff and it goes and fetches it as it needs it
00:57:43 <sbp> I'd ask Google about that :-)
00:58:14 <IsoosI> so you ask it a question and it fetches .rdf files that are relevant that it needs
00:58:16 <crschmidt> sbp: yeah, i'd read that.
00:58:17 <IsoosI> and returns you a result
00:58:40 <IsoosI> the problem with what I understand of cwm, is that it wants all the information up front
00:58:59 <sbp> not at all. it goes off and fetches stuff from the Web
00:59:08 <sbp> you can even control what sort of access it gets
00:59:29 <IsoosI> yeah
00:59:33 <IsoosI> hmm
00:59:36 <IsoosI> perhaps I'm explaining this wrong
00:59:51 <IsoosI> I seem to recall it works from the data to the answer, not from the question to the data?
01:00:23 <sbp> er, kinda. again, that's a bit fuzzy though
01:00:35 <sbp> it's forward chaining
01:05:00 <IsoosI> yeah
01:05:13 <IsoosI> I think that reverse chaining for something like a bot is more useful
01:05:27 <IsoosI> but meh
01:05:29 <IsoosI> I should shuddup
01:05:34 <IsoosI> and put my code where my mouth is
01:07:34 <crschmidt> wait, i just realized something
01:07:45 <crschmidt> rules are applied to the store to come to some conclusion about the store, right?
01:08:08 <crschmidt> But... julie doesn't have a reasoner. Rules don't do her any good: she doesn't know how to deal with them.
01:08:36 <crschmidt> right, wrong, confused?
01:08:59 <IsoosI> hmm
01:10:43 <IsoosI> the thing about rules is you can say things like "if someone wants to know about x, you can deduce it from y"
01:10:56 <IsoosI> so it kinda multiplies the knowledge you have
01:11:08 <crschmidt> Right, because my 1.4 million triples aren't enough to deal with :)
01:11:11 <crschmidt> ^status
01:11:13 <julie> I currently hold 986076 triples, 44 namepsaces, and 46 stored commands. I have been running for 0.980 hours, and have used 0.011 minutes of CPU time. Stats on current machine (peanut.crschmidt.net): 20:12:37 up 22 days, 8:57, 6 users, load average: 1.79, 1.62, 1.60
01:11:27 <crschmidt> ooh, smushing having effect, yay
01:11:41 <crschmidt> of course, it's been smushing for how many fricking hours... *sigh* stupid large datasets
01:11:52 <IsoosI> heh
01:11:55 <IsoosI> after playing with smushing
01:12:00 <IsoosI> I got an amd64 w/ 2G of ram
01:12:05 <IsoosI> no more I/O issues ever again!
01:12:21 <crschmidt> Um. My database is 80 gigs.
01:12:27 <crschmidt> That doesn't fit into 2gig of ram ;)
01:12:30 <IsoosI> yeah
01:12:35 <IsoosI> but you can at least load large chunks of it
01:12:39 <crschmidt> I'm totally I/O bound at this point though
01:12:44 <IsoosI> instead of the 32mb or so I was trying to do at each point
01:13:04 <crschmidt> I have no clue why the hell my hard drive can only read/write at 1 MB/s
01:13:07 <IsoosI> since I was trying to use the machine while it was smushing
01:13:17 * crschmidt nods, that's what i'm doing.
01:13:21 * crschmidt waves from crschmidt.net
01:13:40 <GreyLensman> I have had +300K rules and 300K facts in WM. I'm planning on loading a named graph/formula set from store, apply rules, store new WMEs, repeat for next named graph. Something like that. As long as its less then 500K I should be good.
01:14:07 <GreyLensman> 500K of facts + rules.
01:15:09 <crschmidt> Yeah, I'm just imagining someone adding a "foaf:Person => foaf:Agent" rule, at which point, my triple count doubles, or something like that
01:15:37 <IsoosI> yeah
01:15:39 <IsoosI> exactly
01:15:43 <kasei> only doubles if you aren't smushing regularly, no?
01:16:01 <crschmidt> kasei: There's probably something along the lines of 10s of thousands of foaf:Persons in the db atm
01:16:13 <crschmidt> possibly significantly more: I haven't the heart to check
01:16:19 <IsoosI> can you add to the db from IRC?
01:16:22 <crschmidt> so, for each foaf:Person, there would also be a foaf:Agent
01:16:25 <kasei> right, but that's not on the order of a million
01:16:27 <crschmidt> IsoosI: ^add $url
01:16:29 <GreyLensman> but you would apply the rule one foad document at a time.
01:16:46 <crschmidt> GreyLensman: I don't have foaf documents.
01:16:50 <IsoosI> crschmidt, I was thinking more along the lines of us manually saying "personA and personB are actually the same person, so you can go smush them"
01:17:04 <IsoosI> not that I want to do that for 10's of thousands of people :)
01:17:28 <crschmidt> IsoosI: I've seen enough people break julie at various points to realize they never do what you think they're going to ;)
01:17:41 <IsoosI> true :)
01:17:53 <IsoosI> does julie keep track of where it got a fact from?
01:18:08 <sbp> nope
01:18:09 <crschmidt> No: That's the one big hole in the things she does, is her lack of context support
01:18:13 <GreyLensman> crschmidt, is it possible to get a export dump of Julie's WM?
01:18:27 <crschmidt> GreyLensman: WM? I can serialize the data, yes
01:18:36 <crschmidt> GreyLensman: Not until this damn smush finishes though :)
01:18:38 <GreyLensman> Working Memory. Fact store.
01:18:50 <crschmidt> GreyLensman: ah. Yep, can do, probably tomororw morning
01:19:15 <crschmidt> IsoosI: I was using contexts at one point, but having a problem where queries would return a triple for each context that the triple was asserted in
01:19:44 <crschmidt> IsoosI: I'm sure it was a bug in how I was handling how redland did things, but it seemed to have huge negative effects on the usage of the bot at the time, so instead of fixing it, I just stopped working with contexts
01:20:07 <crschmidt> (I never expected this bot to be around for more than a week, or a month at most)
01:20:45 <IsoosI> heh
01:21:55 <crschmidt> But yeah, the two things it doesn't do are 1. contexts, 2. triple deletion
01:22:29 <crschmidt> n3 support either in-irc or from-url is on the list too, but since I consider n3 to be strange, scary voodoo magic, it's less important to me
01:22:58 <IsoosI> I like n3
01:23:06 <GreyLensman> crschmidt, I see N3 everywhere in everything. Its the universal meme.
01:23:06 <IsoosI> it's human friendly
01:23:24 <crschmidt> GreyLensman, IsoosI: That doesn't help me understand it though :)
01:23:45 <sbp> it's easier to understand than RDF/XML surely
01:23:48 <IsoosI> n3 is just n3-triples with a bit of syntactic sugar.
01:24:17 <GreyLensman> There is now way, none zip zero, that anyone who can comprehend RDF/XML serialization can be confused by N3 by longer then, lets say, 20 secs. :)
01:24:19 <sbp> (p q r) over <something parseType="Collection"><NodeElt ...>...</> etc.
01:24:31 <sbp> aye
01:24:36 <crschmidt> sbp: ah, but i don't understand *either* of those ;)
01:24:40 * bijan notes that he's still confused by n3
01:24:42 <bijan> Often
01:24:43 <IsoosI> crschmidt, heh
01:24:47 * bengee too
01:24:52 <IsoosI> crschmidt, do you follow n3 triples?
01:24:53 <bijan> Turtle, otoh, is easy
01:25:01 <crschmidt> IsoosI: You mean ntriples?
01:25:15 <IsoosI> probably
01:25:20 <sbp> you can be confused by N3's dark corners, sure...
01:25:30 <IsoosI> it's been about 6 moths to a year since I've tinkered with rdf
01:25:41 * bijan notes that there isn't a known, unambiguous grammar for n3 :0
01:25:51 <crschmidt> IsoosI: Then yes, I think I understand them: <url> <url> "" .
01:25:55 <IsoosI> bijan, that doesn't help
01:25:57 <sbp> bijan: that's what we're working on
01:25:59 <IsoosI> bijan, I must admit :)
01:26:02 <sbp> bijan: seen n3proc?
01:26:08 <bijan> No
01:26:14 <sbp> http://inamidst.com/n3p/
01:26:14 <IsoosI> crschmidt, you know about [ ] in n3?
01:26:23 <sbp> building up a test suite therein too
01:26:24 <crschmidt> IsoosI: nope.
01:26:55 <bijan> I'm just pointing out that n3 is poorly specified, has tricky unspecified bits, and sometimes reads very poorly (IMHO, though there may not be a way to make it read any better :)).
01:27:10 <sh1mmer> someone needs to write a book on n3
01:27:11 <sbp> bijan: main files are n3mp.py (converts an RDF BNF into a Python module), n3p.py (N3 parser using said module), and n3proc.py (an N3 processor, spits out N-Triples by default)
01:27:13 <sh1mmer> that would be nice
01:27:16 <bijan> So that people who understand RDF/XMl and claim not to understand n3 might not be lying
01:27:24 <GreyLensman> that latest n3.n3 grammar is much improved from the early stuff.
01:27:27 <sbp> yep
01:27:29 <IsoosI> crschmidt, it creates a bnode.
01:27:35 <bijan> Oh, that disaster
01:27:36 <sh1mmer> The tutorials are pretty good, but a SW book in n3 would help break some of the rdf/xml stigma
01:27:37 <sbp> it's on the verges of being not as poorly specified :-)
01:27:40 <bijan> RDF BNF indeed
01:27:41 <crschmidt> IsoosI: Oh, heh, then yeah, i do
01:27:47 <crschmidt> IsoosI: I use it all the time
01:27:58 <bijan> That grammar is ambiguous, I'm given to understand
01:28:03 <bijan> 150 shift/reduce conflicts
01:28:04 <IsoosI> crschmidt, then theres a bunch of syntactic sugar, and rules :)
01:28:07 <bijan> And isn't actually used by CWM
01:28:08 <GreyLensman> nooooo
01:28:13 <GreyLensman> I have 0 shift/reduce.
01:28:22 <crschmidt> 19:17:14 < crschmidt> [a foaf:smallPerson; foaf:depiction <http://crschmidt.net/gallery/album05/100_2193>].
01:28:23 <bijan> That's good
01:28:23 <GreyLensman> old grammar I had 43
01:28:34 <bijan> Glad to hear its improving
01:29:36 <sbp> I what I try tell you, Mr. Bijan! :-)
01:29:50 <sbp> nuts, I can't even speak badly properly. s/^I/is/
01:30:23 <bijan> Of course that its improving doesn't mean that:
01:30:25 <bijan> "<sbp>it's easier to understand than RDF/XML surely
01:30:25 <bijan> <IsoosI>n3 is just n3-triples with a bit of syntactic sugar.
01:30:25 <bijan> <GreyLensman>There is now way, none zip zero, that anyone who can comprehend RDF/XML serialization can be confused by N3 by longer then, lets say, 20 secs. :)"
01:30:29 <bijan> are true
01:30:54 <bijan> In fact, they are all disputable, and some clearly false.
01:30:58 <bijan> E.g., the second statemetn
01:31:09 <GreyLensman> spb, keep at the test suite, please. You have at least one fan.
01:31:12 <sbp> well it depends what part of N3. mainly, people are going to use N3 for whatever their needs are, and if their needs don't include anything that you want to use ":-" or paths or whatever for then that's fine--it's analagous colloquially to Turtlw
01:31:21 <sbp> GreyLensman: thanks :-)
01:31:34 <sh1mmer> bijan surely n-triples or TriX would be the simplest most easy to understand form since everything is explicit.
01:31:40 <bijan> No
01:31:44 <sh1mmer> Of course it's not good at showing complexity.
01:31:53 <bijan> I don't find everything explicit easiest to udnerstand
01:32:05 <IsoosI> sbp, so there is no serialisation of n3 rules to triples that keeps their semantics?
01:32:07 <bijan> Take dotted notation nin list (1 . (2 . ())
01:32:17 <bijan> Way harder to understadn than (1 2)
01:32:44 <sbp> yes, dotted pairs aren't particularly clear, but I didn't say *explicit*
01:32:49 <sh1mmer> Sure but isn't a list another shorthand
01:32:50 <sbp> and N3 has no dotted pairs :-)
01:32:59 <sbp> (yet...)
01:33:00 <bijan> I wasn't responding to you on that point
01:33:06 <bijan> <sh1mmer>bijan surely n-triples or TriX would be the simplest most easy to understand form since everything is explicit.
01:33:16 <sh1mmer> bijan he probably still has me on ignore.
01:33:16 <sbp> you don't seem to be responding to me on any point of mine, that's what I don't understand
01:33:23 <bijan> Ah
01:33:29 <bijan> I'm responding to shlmmer's point
01:33:33 <GreyLensman> I think everyone is thinking of N3 in the context of when they looked at it. The latest N3-2.0 is clean, compact, dare I say, elegant.
01:33:33 <bijan> Which I just pasted
01:33:35 <sbp> ah. sorry, I didn't see it
01:33:39 * sbp nods
01:33:52 <sh1mmer> bijan don't worry, I won't drag that... er dispute in here.
01:34:02 <bijan> Heh
01:34:30 <sbp> N3-2.0: heh
01:34:32 <sh1mmer> So anyway, in terms of the triples something like n-turtle or TriX I think is easy to understand but bad at expressing complexity
01:34:35 <sbp> N3.2
01:34:42 <IsoosI> GreyLensman, true, I've not looked at it for several months
01:34:43 <sbp> tumbleresque
01:34:45 <sh1mmer> in rdf/xml there is a lot of implied things that don'treally happen.
01:34:50 <bijan> GreyLensman...since I'm workign with people who were trying to generate a parser over the past two weeks
01:35:13 <bijan> I don't feel *too* out of it
01:35:14 <sh1mmer> bijan Personally I think that heirarchy of XML elements implies riefication which doesn't exist.
01:35:32 <bijan> Well, I don't ;)
01:35:36 * sh1mmer grins
01:35:44 <sh1mmer> Can I give an example?
01:39:12 <crschmidt> I'd be interested in one.
01:39:21 <crschmidt> I think we've already had this discussion, but I've forgotten.
01:39:44 <sh1mmer> Yeah
01:40:07 <IsoosI> I'm curious
01:40:08 <sh1mmer> Well if you have <foaf:person><foaf:person>...stuff...</foaf:person></foaf:person>
01:40:18 <crschmidt> then you have broken striping ;)
01:40:29 <crschmidt> Did you mean to put a <foaf:knows> in there?
01:40:31 <sh1mmer> to me that implies that the first <foaf:person> is making statements about the second foaf person
01:40:36 <sh1mmer> er... yeah that too ;)
01:40:45 <crschmidt> But that's not true
01:40:48 <sh1mmer> crschmidt it's 1.40am I've been working a tad hard :P
01:40:55 <bijan> It certainly does not so imply
01:40:59 <sh1mmer> I know it's not true. But I think it implies that.
01:41:12 <crschmidt> Okay, I guess that's just a fundamental difference in opinion then
01:41:23 <IsoosI> sh1mmer, interesting point
01:41:36 <crschmidt> The fact that I say in a file "Matt knows shirly" does not indicate that matt is saying he knows shirly.
01:41:37 <sh1mmer> Maybe that's not the best example
01:41:42 <bijan> Let F = <foaf:person><foaf:knows><foaf:person>...
01:41:46 <bijan> Bijan sez: F
01:41:51 <bijan> Sh1mmer sez: F
01:42:04 <bijan> Soory
01:42:13 <bijan> Let F = <foaf:person rdf:about="#Bob"><foaf:knows><foaf:person>...
01:42:32 <bijan> Where bob ~= bijan, and ~= sh1mmer
01:43:14 <bijan> So, bob has said nothing, ever
01:43:18 <bijan> He's taciturn
01:43:31 <bijan> Or he's said nothing about the second person
01:43:33 <bijan> He's shy
01:43:47 <bijan> My saying that he knows the second person clearly doesn't imply that he's said anythign about them
01:43:56 <bijan> Heirachy has nothing to do with it.
01:44:53 <sbp> sbp has changed the topic to: Semantic Web Interest Group hack-n-chat || UTF-8 charset please || Weblog: http://swig.xmlhack.com/ || Logs: http://ilrt.org/discovery/chatlogs/swig/ || please identify with NickServ
01:45:13 <crschmidt> sh1mmer: I think you're tying yourself too closely to the typical statements made by such documents: where typically, a file is created a person, and that perosn then describes people they know.
01:45:42 <sh1mmer> Yeah but it just seems weird that the serialisation throws away all the hierarchical information that is normally used in XML.
01:45:49 <sbp> unless there's another Italian SW chat scheduled for today that I don't know about...
01:46:24 <sh1mmer> I underestand the serialisation myself, it just doesn't seem entirely intuative.
01:46:25 <bijan> Weird, perhaps
01:46:43 <bijan> The most natural way to think about it is as "nested" frames
01:46:59 <bijan> So, think of a frame as an entity with a type and a collection of slots
01:47:01 <sh1mmer> XML people using RDF/XML will say this a lot I think when people use it more.
01:47:13 <bijan> Each slot can have a primitive value or another frame
01:47:15 <sh1mmer> Frames are an AI concept so one has to have studied AI.
01:47:18 <bijan> <foaf:person>
01:47:29 <bijan> <foaf:knows...>
01:47:35 <bijan> <foaf:knows...>
01:47:41 <bijan> <foaf:eats...>
01:47:42 <bijan> etc.
01:47:45 <sh1mmer> Do we want to make that assumption about people using SW tech?
01:47:51 <mattmcc> I tend to prefer not nesting classes, but my reasons are purely aesthetic.
01:47:59 <bijan> (nesting instances here)
01:48:09 <bijan> You can inline it, or you can do it by reference
01:48:15 <sh1mmer> I just think if we want an XML serialisation we should use TriX not RDF/XML
01:48:18 <sh1mmer> but that's me.
01:48:39 <bijan> sh1mmer, I'm not making an assumption, i preume that teaching this terminology is pretty easy, or that you can just use regular oop terminology
01:48:43 <bijan> It's not really different
01:48:45 <mattmcc> I'd rather have all the foaf:person instances as peers in the hierarchical sense. <foaf:Person><foaf:knows rdf:nodeID="foo" />...</> <foaf:Person rdf:nodeID="foo">...
01:48:52 <bijan> Frame == instance
01:48:57 <bijan> Slot == instance variable
01:49:02 <sh1mmer> bijan you are from a much more formal background than lots of developers.
01:49:12 <mattmcc> Of course, that makes even less sense to people coming from an XML background, because now you've got siblings relating to each other in a very non-hierarchical manner.
01:49:12 <crschmidt> ^available IsoosI
01:49:13 <julie> Query returned no results
01:49:27 <bijan> <sigh/>
01:49:30 <mattmcc> But, it's just one of those things you have to get used to when you're expressing a graph as a tree.
01:49:32 <sh1mmer> mattmcc which was what I was trying to get across.
01:49:39 <bijan> Point is that the heriarchical information isn't *exactly* being thrown away
01:49:41 <crschmidt> IsoosI: Got a foaf file?
01:49:49 <bijan> Striping uses it.
01:50:09 <sh1mmer> bijan yeah ok, thrown away is perhaps a little over zealous. ;)
01:50:17 <IsoosI> crschmidt, er, think so
01:50:32 <IsoosI> ^available Isomer
01:50:32 <julie> Query returned no results
01:50:34 <crschmidt> (and i realize that term is not correct, but I use it anyway)
01:50:44 <crschmidt> IsoosI: She doesn't know everything: you can ^add it, though
01:51:05 <IsoosI> crschmidt, I had it in the various scutters a few months ago I thought it might have turned up
01:51:14 <IsoosI> ^add http://coders.meta.net.nz/~perry/perry.foaf
01:51:15 <julie> Adding http://coders.meta.net.nz/~perry/perry.foaf to my database...
01:51:17 <crschmidt> IsoosI: My scuttering sucks :)
01:51:37 <IsoosI> 80G of data isn't bad :)
01:51:46 <crschmidt> agh.
01:51:47 <julie> Added 256 statements from http://coders.meta.net.nz/~perry/perry.foaf. Model size is 910108.
01:51:51 <crschmidt> i just realized i said gig.
01:51:53 <crschmidt> and i meant meg.
01:52:03 <sbp> (not correct? "foaf file"? seems correct enough to be used in everyday SW-conversation)
01:52:05 <crschmidt> which makes my statements on memory really dumb.
01:52:22 <crschmidt> sbp: yeah, but it's really just an RDF file which uses terms from the FOAF namespace
01:52:31 <sbp> hence a FOAF file
01:52:46 <sbp> I don't go about saying that elephants are big eared grey pachyderms...
01:53:11 <sbp> "crschmidt! look out! you're about to be trampled by a big eared grey pach... too late"
01:53:13 <sh1mmer> Aboutme.rdf is probably a better name for a FOAF file
01:53:21 <IsoosI> sh1mmer, probably
01:53:25 <sh1mmer> :)
01:53:43 <crschmidt> sbp: well, there's no reason that it couldn't be a Contact RDF file, with a few terms from FOAF thrown in, which would end up making the pedants who have those kind of things be all pedantic at me :)
01:53:48 <crschmidt> ^homepage IsoosI
01:53:49 <julie> Query returned no results
01:53:50 <mattmcc> Bah. In that case, it's a URI, not a filename. :)
01:53:59 <mattmcc> So, put whatever illusion of a file extension you want on it.
01:54:01 <sh1mmer> IsoosI took me about 3mo to get around to changing mine to that from foaf.rdf ;)
01:54:06 <sh1mmer> SO I can't talk
01:54:30 <IsoosI> mattmcc, or better yet, use content negotiation :)
01:54:35 <IsoosI> so who knows what you'll get back!
01:54:44 <crschmidt> IsoosI: you should register with nickserv
01:54:55 <crschmidt> so you can show up on http://crschmidt.net/semweb/rdfbot/online_users.cgi?channel=swig
01:54:55 <sbp> crschmidt: well it's like the definition of planet. there's no specified lower limit for a planet's diameter, and we'll probably end up with the odd distinction of Pluto being a planet but there being larger asterioids. some moons are already bigger
01:54:57 <IsoosI> I dislike nickserv
01:55:12 <mattmcc> IsoosI: Well, provided clients sent proper Accept headers, you would get back something appropriate.
01:55:51 <sbp> crschmidt: in the same way, there's no lower bound on how many FOAF predicates you need in a file, pecentage-wise, to make it a FOAF file. but just as "planet" is a good term to use, socially, for those wandering stars, so is FOAF file for a document containing a signifigant portion of FOAF predicates
01:56:47 <crschmidt> IsoosI: Then you should describe a foaf:OnlineAccount for freenode
01:57:29 <crschmidt> <foaf:hasAccount> <foaf:OnlineAccount> <foaf:AccountHomepage rdf:resource="http://www.freenode.net/" /><foaf:accountName>IsoosI</foaf:accountName></></>
01:57:38 <mattmcc> holdsAccount
01:57:38 <IsoosI> crschmidt, yeah, but I don't like nickserv in the firstplace :)
01:57:41 <crschmidt> yeah, that one
01:57:53 <sbp> or http://freenode.net/ or...
01:57:58 <crschmidt> IsoosI: I'm not sure where nickserv plays into it
01:58:03 <crschmidt> sbp: I accounted for that in the code ;)
01:58:10 <sbp> ah, great! how so?
01:58:14 <IsoosI> I don't have an freenode account?
01:58:19 <crschmidt> IsoosI: Described in RDF?
01:58:28 <crschmidt> IsoosI: Oh, I see what you mean
01:58:40 <crschmidt> You're saying since you're not registered with nickserv, you don't have an account, technically. Hm.
01:58:44 * crschmidt shrugs.
01:58:48 <crschmidt> Fine then. Stay unlinked :p
01:58:56 <mattmcc> True enough. It makes him just a guy who happens to be using a particular nick at the moment.
01:59:15 <sbp> ^q select ?uri where (?account foaf:accountServiceHomepage ?uri) and ?uri =~ /freenode/
01:59:16 <crschmidt> sbp: =~ /freenode/ , Yet Another Dirty Hack
01:59:21 <sbp> heh
01:59:23 <julie> http://freenode.net/ (x9), http://www.freenode.net, http://www.freenode.net/ (x4), http://www.freenode.net/irc_servers.shtml (x23)
01:59:40 <IsoosI> crschmidt, no no, I don't have an account with nickserv? I'm confused
01:59:56 <crschmidt> IsoosI: Don't worry about me, I'm just going to sit in my corner at this point :)
02:00:06 <IsoosI> hmm
02:00:14 <IsoosI> freenode still don't advertise NETWORK= in 005
02:00:19 <IsoosI> they deserve a good spanking
02:00:19 * d8uv explodes
02:01:58 <sh1mmer> sbp surely not in this channel. what with him not being here.
02:02:01 <sbp> hmm
02:03:06 <crschmidt> Okay, so what do people want from an n3 parser in julie?
02:03:20 <sbp> it'd be nice if Freenode had a FOAF file...
02:03:32 <crschmidt> I think that I'm going to just start out with the fact that I won't run arbitrary rules from the database that peopl emay have added
02:03:45 <crschmidt> sbp: lilo is all perky about doing rdf/xml export from the new services
02:03:59 <crschmidt> (as well as SOAP and XML-RPC, ugh)
02:04:00 <sbp> "the new services" - groan
02:04:20 <crschmidt> sbp: There's nothing stopping you from making one ;)
02:04:41 <sbp> there is from me making an authoritative one
02:04:59 <IsoosI> I should get the undernet services to dump out a foaf file
02:05:36 <mattmcc> sbp: Generating FOAF from NickServ's DB file is pretty straightforward, I have some python sitting around to do that. But yeah, it's not much use if it isn't authoritative.
02:06:29 <sbp> actually I just meant so that people would know which URI to use in foaf:accountServiceHomepage... but exporting NickServ's db file would be nice too. lorebot++
02:07:00 <crschmidt> mattmcc: is the nickserv db file from freenode available somewhere?
02:07:17 <crschmidt> mattmcc: or did you just write one that was for a local dancer-services db?
02:07:19 <mattmcc> sbp: Oh. You want to express NickServ is a foaf:Agent with a foaf:homepage somewhere. :)
02:07:27 <mattmcc> crschmidt: Local.
02:07:33 * crschmidt nods
02:07:50 <sbp> no, I want to express that Freenode, the IRC network, is a foaf:Agent with a homepage probably at http://freenode.net/
02:08:10 <crschmidt> isn't it a foaf:Group, or foaf:Organization?
02:08:23 <sbp> unless NickServ is the account service, which I suppose is more accurate
02:08:29 <crschmidt> ^q select ?foo ?bar where (foaf:Organization ?foo ?bar)
02:08:29 <sbp> aren't they subclasses?
02:08:30 <julie> rdfs:isDefinedBy foaf:, rdfs:label Organization, http://www.w3.org/2003/06/sw-vocab-status/ns#term_status unstable, rdfs:subClassOf foaf:Agent, owl:disjointWith foaf:Person, owl:disjointWith foaf:Document, rdf:type rdfs:Class, rdfs:subClassOf wn16:Organization, rdfs:comment An organization.
02:08:42 <kpreid> there are several things which we call 'Freenode'
02:08:52 <kpreid> in RDF, one would be wise to not confuse them
02:08:54 <sbp> ^q select ?class where (foaf:Organization rdfs:subClassOf ?class)
02:08:54 <julie> wn16:Organization, foaf:Agent
02:08:57 <sbp> yep
02:08:57 <mattmcc> Or, if somebody has a fairly cooked IRC vocab.. Somebody was sketching on one recently.
02:09:11 * sbp nods at kpreid
02:09:15 <crschmidt> mattmcc: yeah, Clockwerx and i working on it
02:09:29 <mattmcc> That, it seems, would be the ideal approach.
02:09:46 <crschmidt> However, we were mostly working on representing clients and connections... at least i was ;)
02:09:52 <crschmidt> Not that that couldn't change, of course
02:09:58 <kpreid> sbp: there's the organization-of-people which runs the servers / declares the existence of Freenode
02:10:27 <kpreid> sbp: there's the 'IRC network' as entity-which-shares-namespace (channels / nicks)
02:10:33 <mattmcc> kpreid: That organization is PDPC though.
02:11:10 <sbp> I'm only interested in the foaf:OnlineChatAccount, since I need to record its homepage in my FOAF file
02:11:11 <kpreid> sbp: there's the set of the physical machines / OS processes / etc. which implements the former
02:11:35 <kpreid> mattmcc: ah, yes. I'm sure some people have called it Freenode though :)
02:11:43 <mattmcc> Oh, no doubt.
02:11:50 <sbp> you'd think from "<julie> http://freenode.net/ (x9), http://www.freenode.net, http://www.freenode.net/ (x4), http://www.freenode.net/irc_servers.shtml (x23)" that the latter URI would be public consensus, but in fact it's only used because it's in the FOAF Specification as an example
02:12:24 * kpreid thinks http://freenode.net/ should be the canonical URI
02:12:24 <mattmcc> And I'm sure it's not an issue unique to Freenode. Like before the Mozilla Foundation, 'Mozilla' referred to the browser, the group, the overall project.. :)
02:12:31 <sbp> agreed
02:12:48 <kpreid> (all the others except for irc_servers.shtml are == to, or redirect to, it)
02:13:22 <IsoosI> Java-the-language, java-the-vm, java-the-standard-library, java-the-desktop-environment and java-the-coffiee
02:13:22 <sbp> and I'd contend that /irc_servers.shtml is a list of their IRC servers. why it's being used as an example is completely beyond me
02:13:45 <sbp> you forget the island
02:13:58 <IsoosI> my bad
02:14:09 <sbp> it mightn't seem like much, but it's the biggest of the bunch :-)
02:15:16 <crschmidt> The IRC Namespace we were working on uses irc:Network rdf:about="irc://irc.freenode.net/", with a foaf:homepage, dc:title, and individual servers described below that
02:15:27 <kpreid> sbp: Biggest by what metric? :)
02:15:38 <IsoosI> hmm
02:15:46 <IsoosI> some networks don't have a RR DNS entry
02:15:46 <sbp> kpreid: amount of sodium atoms contained therein
02:15:57 <IsoosI> most networks (except for freenode) announce NETWORK= in the 005 during login
02:16:04 <kpreid> heh
02:16:06 <IsoosI> with an authorative name of the network
02:16:07 <sbp> Java has more sodium in it than even the most salinine of coffees
02:16:15 <sbp> (the island)
02:16:45 <sbp> IsoosI: what should the value of that be?
02:17:20 <IsoosI> Freenode in the appropriate case
02:17:22 <IsoosI> eg for undernet is
02:17:25 <IsoosI> NETWORK=UnderNet
02:17:34 <sbp> ah. that's fairly useless then
02:17:38 <IsoosI> yeah
02:17:50 <IsoosI> it would be nice if it was a guid or uri some other unique identifier
02:18:08 <sbp> yeah. otherwise it's no more an IFP than foaf:nick
02:18:18 <sbp> in fact, foaf:nick might be appropriate for it
02:18:26 <IsoosI> well
02:18:29 <IsoosI> nicks are transient
02:18:39 <IsoosI> network names at least don't change that regularly
02:18:42 <mattmcc> Surely the maintainers of IRC networks are a progressive bunch. We'll just compell them to adapt. :)
02:18:46 <sbp> [ a kpreid:OrganisationWhichIsThePDPCButIsNotCalledThatSometimes; foaf:nick "Freenode" ] .
02:18:57 <IsoosI> mattmcc, I'm the one that got 005 adopted by the big 5
02:19:08 <IsoosI> so if you have a proposal, I'll get the big 5 running it
02:19:33 <mattmcc> I'd say irc://irc.network.net seems a logical thing to provide.
02:20:23 <IsoosI> see, theres a lot of controversy at the moment about the IRC uri scheme
02:20:31 <IsoosI> so I'm kinda tempted to give that one a wide berth
02:20:44 <IsoosI> that, and some networks (eg efnet) don't have an authorative DNS RR
02:21:00 <mattmcc> It certainly has its shortcomings, yes.
02:21:09 <mattmcc> I don't care for the 'modifiers' stuff at all.
02:21:23 <IsoosI> so all the servers will either point it at their locally favourite one, or their local server only, or just not include it at all
02:21:27 <IsoosI> hmm
02:21:33 <IsoosI> I should add an RDF dump to undernet
02:21:35 <IsoosI> that would be fun
02:21:40 <IsoosI> connect to the server and type /rdf
02:21:42 <IsoosI> :)
02:22:29 <IsoosI> the admins would slaughter me
02:22:36 <mattmcc> JoeUser has quit (Excess graph dump)
02:22:55 <IsoosI> heh
02:22:57 <IsoosI> indeed
02:23:42 <kpreid> JoeUser has quit ("Excess Flood From Server")
02:24:06 <crschmidt> On freenode, it's actually "SendQ exceeded"
02:24:21 * crschmidt connected from telnet and sent NAMES once
02:24:28 <crschmidt> it didn't do quite what i expected
02:24:57 <IsoosI> heh
02:25:38 <IsoosI> we broke /names on undernet
02:25:42 <IsoosI> noone noticed
02:26:09 <IsoosI> we made it so you need to type /names 0 to get the full names list
02:26:13 <IsoosI> rather than just /names
02:26:15 <IsoosI> noone has ever complained
02:26:25 <IsoosI> even though it's a blatent RFC violation
02:35:37 <crschmidt> finally finished smushing
02:36:00 <crschmidt> 1.4 million triples smushed to:
02:36:02 <crschmidt> ^status
02:36:02 <julie> I currently hold 859792 triples, 44 namepsaces, and 46 stored commands. I have been running for 2.394 hours, and have used 0.025 minutes of CPU time. Stats on current machine (peanut.crschmidt.net): 21:37:27 up 22 days, 10:22, 7 users, load average: 0.33, 0.89, 1.53
02:36:20 <IsoosI> namepsaces?
02:37:32 <crschmidt> ^nslist
02:37:32 <julie> Namespace bindings are: astrology, bio, bloggercode, book, bot, cc, chefmoz, contact, cyc, dc, dcterms, doaml, doap, exif, foaf, foafcorp, geo, ical, ilike, img, kiss, kissed, menow, mtbi, music, owl, quaff, quote, rdf, rdfs, rel, rev, rss, schema, srw10, srw11, tipjar, trust, vann, vcard, weather, wn16, wot, xsd
02:37:58 <IsoosI> no no
02:38:06 <IsoosI> namepsaces
02:38:24 <IsoosI> not namespaces
02:38:33 <crschmidt> oh
02:38:34 <crschmidt> typos
02:38:37 <crschmidt> lots of those in my code
02:38:46 <IsoosI> :)
02:47:33 <crschmidt> Okay, so who asked for a scutter dump?
03:25:03 * crschmidt cuts the size of his mysql data and indexes in half
03:25:56 <crschmidt> current julie dump, in bzipped ntriples, http://crschmidt.net/julie/model.nt.bz2
03:27:14 <IsoosI> how big is that?
03:27:37 <crschmidt> -rw-r--r-- 1 crschmidt users 5963328 Dec 12 21:58 model.nt.bz2
03:27:58 <IsoosI> 6mb?
03:28:03 <IsoosI> thats pretty reasonable :)
03:28:12 <crschmidt> yeah
03:28:25 <crschmidt> from 100mb file
03:28:34 <crschmidt> (91)
03:28:35 * IsoosI grabs a copy to seed a scutter
03:28:48 <IsoosI> I might do some more stuff over the summer break
03:29:06 <crschmidt> ^icbm Isomer
03:29:06 <julie> Query returned no results
03:29:40 <IsoosI> Hamilton, New Zealand
03:54:44 <crschmidt> so how long is summer break?
03:55:05 <crschmidt> But yeah, I'm kind of torn between "whee, tons of data" and "whee, 18 minutes to return a query"
03:55:38 <IsoosI> well
03:55:38 <crschmidt> now that i keep the tables pretty optimized, it works a lot better, but when the mysql indexes on the statements table hit 100 MB, everything just heads to shit
03:55:40 <IsoosI> 2 weeks or so for me
03:55:50 <IsoosI> unless I take some more time off
03:56:02 <IsoosI> (since I'm actually in the workforce as opposed to the student body)
03:56:28 <IsoosI> sounds like you need some tuning done
03:56:39 <IsoosI> you should be able to tell mysql to be more aggresive with it's caching of indicies or something
03:56:45 <IsoosI> with postgres
03:56:56 <IsoosI> doing set statistics on the predicate column made a huge difference
03:57:10 * crschmidt shrugs
03:57:19 <crschmidt> I don't pretend to understand how this stuff works
03:57:27 <crschmidt> I just maintain the bot, which is hard enough most days
03:58:57 <shammah> crschmidt, any reason why you have to use mysql?
03:59:33 <crschmidt> shammah: Not particularly, other than its what I have installed and set up
03:59:48 <shammah> how many triples?
04:00:04 <crschmidt> ^status
04:00:04 <julie> I currently hold 859792 triples, 44 namepsaces, and 46 stored commands. I have been running for 3.794 hours, and have used 0.028 minutes of CPU time. Stats on current machine (peanut.crschmidt.net): 23:01:28 up 22 days, 11:46, 6 users, load average: 0.24, 0.07, 0.10
04:00:34 <IsoosI> hmm
04:00:49 <crschmidt> (The typo is fixed in svn ;))
04:02:16 <IsoosI> is this written in python?
04:02:29 <crschmidt> The bot is written in Python, all the RDF work is done in Redland
04:02:47 <IsoosI> right
04:02:56 <IsoosI> you know about reload() in python?
04:03:11 <crschmidt> yep
04:03:14 <IsoosI> I use it when I write bots so I can reload the guts of it from IRC without reconnecting the bot
04:03:27 <IsoosI> it's kinda neat to code on something where you can upgrade it without restarting the process
04:03:29 <crschmidt> all the functions are defined as part of the bot class, which doesn'te ver exit
04:03:47 <IsoosI> ah
04:03:49 <IsoosI> yeah
04:03:59 <IsoosI> you need to keep a strict seperatation to avoid that issue
04:04:09 <crschmidt> I tried to refactor that, but it was pretty far into the game, and I'm lazy
04:04:15 <crschmidt> of course, always willing to take patches
04:04:15 <IsoosI> does julie generate RDF for IRC information?
04:04:22 <crschmidt> nope
04:04:26 <crschmidt> lorebot will soon
04:04:38 <crschmidt> soon being a relative term, partially related to "when i finish the damn ontology"
04:04:54 <IsoosI> coz it would be kinda neat to have a query like which countries do everyone in this channel come from?
04:05:20 <IsoosI> or find a photo that depicts the most number of people in the channel
04:05:26 <crschmidt> I'd probably run that as an extra layer over julie
04:05:35 <IsoosI> yeah
04:05:37 <crschmidt> I kind of like keeping the bot as the basic tool, then building other things on top of it
04:05:56 <crschmidt> Which I make easy on myself by just providing a web interface that acts exactly like the IRC one :)
04:06:55 <IsoosI> heh
04:06:57 <IsoosI> yeah
04:07:05 <IsoosI> I recently wrote a bot which you could program on IRC
04:07:10 <IsoosI> a bit like julie, but no rdf stuff
04:07:22 <IsoosI> had the "programming language" as one python module
04:07:33 <IsoosI> then had the bot and a command line and a web interface that all used the main language
04:07:42 * crschmidt nods
04:08:03 <IsoosI> and since it was a seperate .py file
04:08:10 <IsoosI> I could reload() it inside the bot
04:11:38 <crschmidt> IsoosI: Since you mentioned it earlier, what are your thoughts on what needs you have for n3, ignoring, for the time being, rules
04:11:59 <IsoosI> heh
04:12:09 <IsoosI> darn, that's no fun ;)
04:12:15 <IsoosI> being able to parse n3 is a good start
04:12:31 <IsoosI> one of the design requirements for n3 IIRc was that it should be easy for humans to write on IRC
04:12:41 <IsoosI> and easy for humans to read too
04:14:07 <crschmidt> yeah
04:14:12 * crschmidt pokes sbp
04:14:53 <sh1mmer> heh
04:14:57 <sh1mmer> I shall resist the urge
04:19:54 <IsoosI> crschmidt: http://dev.mysql.com/doc/mysql/en/MyISAM_key_cache.html ?
04:20:12 <sbp> hello!
04:20:13 <sbp> reading
04:21:11 <sbp> [read, nothing further to add though]
04:22:25 <crschmidt> sbp: I was just poking you to ask whether n3p was usable as an irc-scribble parser, in your opinion
04:22:29 <crschmidt> I'm assuming it doesn't take care of all edges yet, but i'm also assuming that most people aren't going to write complex n3 on IRC.
04:24:11 <IsoosI> the advantage is that n3p should get a good workout
04:24:20 <crschmidt> Yep
04:24:33 <crschmidt> And I can avoid cwm-cruft, which I'm told exists
04:25:22 <IsoosI> ima gonna have to play with n3p
04:31:30 * crschmidt passes out now
04:31:30 <crschmidt> night all
04:31:41 <IsoosI> sleep well
08:15:18 <zeejay> zeejay is now known as verbosus
10:05:55 <Mklow> hi all
12:45:55 <_jeen_> _jeen_ is now known as jeen
13:38:59 <Mklow> hi all
13:41:25 <jeen> hello again Mklow
13:41:45 <Mklow> ei, hi jeen.
14:01:03 <LotR_> LotR_ is now known as LotR
14:33:00 <Mklow> hi all
15:01:44 <leobard> hello
15:01:51 <balbinus> hi
15:02:18 <leobard> ^homepage balbinus
15:02:18 <julie> http://www.balbinus.net/
15:02:42 <balbinus> ? :)
15:02:52 <leobard> whoa, cool site
15:03:01 <leobard> :-) didn't know you
15:03:09 <balbinus> neither do i know you ^^
15:03:15 <balbinus> ^homepage leobard
15:03:15 <julie> http://www.gnowsis.com/leo/, http://www.leobard.net/
15:03:16 <leobard> o_o
15:03:41 <balbinus> ?
15:03:46 <leobard> a fellow researcher here searches frantically for a Visual RDF browser....
15:03:53 <leobard> any visual rdf browser software here?
15:04:31 <balbinus> ideagraph is kinda rdf browser (visual for sure)... afaik
15:06:30 <leobard> hm. lets see
15:08:18 <libby> you mean a graph-y one leobard?
15:08:42 <libby> or brownsauce, which lets you browse but not graphily
15:08:59 <libby> hm, there is a graph one, hang on
15:09:33 <larsbot> an alternative is Omnigator eight (to be released very very shortly), which will let you do both textual and graphical browsing
15:09:38 <leobard> well, we have some SKOS files with thousands of entities and protege goes down....
15:10:00 <leobard> i also installed infered .. i will evaluate them a little... sec
15:10:13 <libby> brownsuace might help http://brownsauce.sourceforge.net/
15:10:57 <leobard> jup, do you use it freqeutly?
15:11:27 <libby> isaviz http://www.w3.org/2001/11/IsaViz/
15:11:43 <libby> no, dont have the need to really.
15:12:04 <libby> mortenf's foafexplorer also good for having a look at rdf files and I think knows about skos
15:12:14 <libby> logger, pointer
15:12:14 <libby> See http://www.ilrt.bris.ac.uk/discovery/chatlogs/swig/2004-12-13#T15-12-14
15:12:38 <libby> BLURB: RDF bowsers / visualizers
15:12:38 <dc_swig> A: RDF bowsers / visualizers from libby
15:12:53 <libby> A:see [http://www.ilrt.bris.ac.uk/discovery/chatlogs/swig/2004-12-13#T15-12-14|logs]
15:12:53 <dc_swig> Added comment A1.
15:21:15 <DanC> A:see also [http://esw.w3.org/topic/VisualizingRDF|VisualizingRDF] in the esw wiki
15:21:15 <dc_swig> Added comment A2.
15:29:01 <leobard> ok. done
15:29:12 <leobard> i'll blog it and then reference it....
15:40:53 <leobard>http://leobard.twoday.net/stories/438948/
15:40:53 <dc_swig> B: http://leobard.twoday.net/stories/438948/ from leobard
15:41:11 <leobard> | leobard about rdf vis
15:41:20 <leobard> b| leobard about rdf vis
15:41:45 <leobard> b: leobard about rdf vis
15:41:54 <leobard> B| leobard about rdf vis
15:42:06 <leobard> B: leobard aboput rdf vis
15:42:06 <dc_swig> Added comment B1.
15:42:41 <larsbot> leobard: a generic RDF browser *is* possible
15:42:52 <larsbot> provided, as you say, you give it a little extra info
15:42:59 <larsbot> that doesn't necessarily have to be much, though
15:43:18 <bengee> B:|leobard about rdf vis
15:43:18 <dc_swig> Titled item B.
15:43:57 <larsbot> in fact, we've even got a GUI for adding the extra info
15:44:25 <bengee> B1:""
15:44:25 <dc_swig> Deleted comment B1.
15:44:49 <bengee> (hope that's what you intended)
15:52:33 <leobard> jup
15:52:38 <leobard> updated it.
15:52:49 <leobard> logger, pointer
15:52:49 <leobard> See http://www.ilrt.bris.ac.uk/discovery/chatlogs/swig/2004-12-13#T15-52-49
15:53:34 <leobard> added rdfgravity to it
15:53:41 <leobard> thats quite cool
16:31:29 * DanC looks around for sbp
16:34:50 <crschmidt> haven'tyseen him yet this morning, for what it's worth
17:18:36 <AndyS> Is there an N3 chat later today? Last I saw was "tentatively"
17:18:54 <timbl> Yes, sbp sent round mail
17:19:43 <AndyS> Hmm - must have lost it - which list?
17:23:39 <AndyS> I filed it as it says "tentative". I'll be late if at all. Apologies.
17:44:31 * DanC had it as 10:30am, i.e. an hour ago
17:46:30 <crschmidt> DanC: 10:30 pacific, 1:30 eastern, according to http://lists.w3.org/Archives/Public/public-cwm-talk/2004OctDec/0020.html
17:48:44 <DanC> hmm... yes, that calls for a meeting at 18:30Z... I wonder why he moved it from 16:30Z, which was the time that was moved and 2nded at the previous meeting.
17:49:16 <crschmidt> Maybe he'se not awake that early ;)
18:01:58 <danbri> inkel++
18:02:02 <danbri> re http://f14web.com.ar/inkel/2004/12/09/web-semantica-en-buenos-aires.html & nearby
18:03:28 <sbp> DanC: whoops. I based it on http://ilrt.org/discovery/chatlogs/rdfig/2004-11-15.html#T20-07-51 which must've stuck in my mind for some reason and wholly forgot about about the later agreement (I just went to the logs fully expecting to find we'd agreed 18:30Z)
18:04:44 <sbp> ah, it seems 16:30 was my suggestion anyway. I must've been confusing 12h and 24h because I've certainly been thinking of 18:30 all this time
18:04:59 <sbp> at least I got it right in the announcement
18:08:39 <DanC> I see. fun with timezones
18:14:47 <yosi> sbp, I don't see anything for me to fix in http://lists.w3.org/Archives/Public/public-cwm-bugs/2004Dec/0004.html
18:15:47 <sbp> 54321.12345 should be output as "54321.12345"^^<[xsd:]float> in N-Triples
18:16:15 <yosi> but 54321.12345 is not a valid floating point number
18:17:02 <yosi> 54321.123449999999 is a little closer to one
18:17:24 <sbp> if "54321.12345" is acceptable as input, why should it not be acceptable as output?
18:18:11 <yosi> cwm takes the literal you gave it, converted it to a float, and stored it as a string of that float
18:18:50 <sbp> what if I feed it "54321.12345"^^<[xsd:]float>? it wouldn't convert that to "54321.123449999999"^^<[xsd:]float>
18:18:59 <yosi> with floats, close enough is close enough
18:19:49 <sbp> I don't think so. this makes test cases difficult as it means you're dependent upon the language's idea of just how arbitrary its arbitrary precision should be
18:20:25 <sbp> try running it through str(...)
18:20:25 <sbp> >>> str(float(54321.12345))
18:20:26 <sbp> '54321.12345'
18:20:26 <sbp> >>>
18:21:11 <timbl> Yes, I agree that it is better to output 54321.12345
18:21:43 <yosi> right now it uses repr to initially turn the float into a string
18:21:56 <timbl> It is is arguable strictly, but it is much more uable too, as well as repeatable on tests when in fact people are using floats as decimals.
18:22:14 <timbl> Why not use str instead of repr?
18:24:26 <yosi> timbl, you wrote that line
18:24:46 <yosi> on the sixth of March, 2004
18:26:35 <Talliesin> <sbp> I don't think so. this makes test cases difficult as it means you're dependent upon the language's idea of just how arbitrary its arbitrary precision should be
18:27:10 <Talliesin> The definition of xsd:float details that precision, doesn't it?
18:28:42 <sbp> hmm, I guess there's just no way to write these: "the ·value space· of float also contains the following three special values: positive and negative infinity and not-a-number (NaN)" - http://www.w3.org/TR/xmlschema-2/#float
18:30:51 <sbp> Talliesin: all it says is "float is patterned after the IEEE single-precision 32-bit floating point type [IEEE 754-1985]". it gives a canonical representation for it, but we're not even following that here since we don't provide the exponent
18:31:03 <sbp> .t
18:31:06 <phenny> Mon, 13 Dec 2004 18:31:04 GMT
18:31:53 <timbl> ______________________________________________________
18:32:19 <timbl> Are we in Notation3 chat time now?
18:32:20 <sbp> if you're reading this, you may well be in an N3/CWM meeting
18:32:24 <sbp> heh
18:32:28 <sbp> yes
18:33:00 <sbp> BLURB:CWM/N3 Meeting, 13th December 2004 18:30Z
18:33:01 <dc_swig> C: CWM/N3 Meeting, 13th December 2004 18:30Z from sbp
18:33:22 <sbp> C:See [http://lists.w3.org/Archives/Public/public-cwm-talk/2004OctDec/0020|announcement] for provisional agenda.
18:33:22 <dc_swig> Added comment C1.
18:33:43 <sbp> C:In attendance:
18:33:43 <dc_swig> Added comment C2.
18:34:02 <sbp> C:[http://inamidst.com/sbp/|Sean B. Palmer], UK
18:34:02 <dc_swig> Added comment C3.
18:34:19 <crschmidt> C:[http://crschmidt.net/|Christopher Schmidt]
18:34:19 <dc_swig> Added comment C4.
18:34:50 <timbl> C: [http://www.w3.org/People/Berners-Lee|Tim Berners-Lee], MA US
18:34:50 <dc_swig> Added comment C5.
18:36:47 <yosi> C: Yosi Scharf, MA US
18:36:48 <dc_swig> Added comment C6.
18:38:34 <AndyS_> C: [http://www.hpl.hp.com/people/afs/|Andy Seaborne], Bristol, UK
18:38:35 <dc_swig> Added comment C7.
18:38:50 <sbp> hi Andy
18:39:36 <AndyS_> Hi there - just got back
18:39:44 <sbp> two minutes round the table? I've got quite a bit to fill mine with. shame GreyLensman isn't around too--we were talking about the N3 RDF BNF somewhat last night [lemme find a reference]
18:40:09 <sbp> from http://ilrt.org/discovery/chatlogs/swig/2004-12-13.html#T00-16-26 onwards
18:40:42 <danbri> C:Lurkattending, [http://danbri.org/|DanBri], W3C. (Bristol, Europe).
18:40:43 <dc_swig> Added comment C8.
18:41:31 <tlr> C:Alsolurking, Thomas Roessler, W3C. (Luxembourg, Europe)
18:41:31 <dc_swig> Added comment C9.
18:41:41 <DanC> C:divided attention from [http://www.w3.org/People/Connolly/|Dan Connolly]
18:41:41 <dc_swig> Added comment C10.
18:42:10 <danbri> good evening, Jos
18:42:14 <sbp> hi there Jos
18:42:21 <JosD> hi all there :)
18:43:25 <timbl> 2 mins around the table? Yosi has done stuff, I haven't much. I did though send a formal comment to the SPARQL list (DAWG) suggesting that they should use N3 for the hraph syntax in between the keywords. http://lists.w3.org/Archives/Public/public-rdf-dawg-comments/2004Nov/0021.html
18:43:37 <JosD> C:[http://www.agfa.com/w3c/jdroo/|Jos De Roo], Belgium
18:43:38 <dc_swig> Added comment C11.
18:44:02 * timbl waves to Jos
18:44:22 * JosD semwaves to Tim :)
18:45:35 <sbp> specifically Turtle? sounds good to me
18:45:45 <danbri> danbri 2 mins: I've been looking at RDF-based mechanisms for reproducing the old PICS labelling functionality, ie. saying "all pages that match some URI/hostname/etc pattern have the following RDF-described characteristics. This is in the Quatro project. Kal Ahmed has done much of the work, I don't think there's a good URL to point to right now, and we'll probably use an RDF notation not a rule language, but it does imho help mo
18:45:45 <danbri> tivate Rules.
18:46:58 <DanC> Quatro... hurl me an url?
18:47:10 <danbri>http://lists.w3.org/Archives/Public/public-quatro/
18:47:10 <dc_swig> D: http://lists.w3.org/Archives/Public/public-quatro/ from danbri
18:47:32 <sbp> 2 mins: I've worked solidly this week on n3proc <http://inamidst.com/n3p/> which is an N3 metaparser, parser, and processor using the N3 RDF BNF. it's accruing an extensive test suite (see ./test/) for which I'm still debugging it
18:47:36 <danbri> D:|Quatro mailing list
18:47:36 <dc_swig> Titled item D.
18:47:44 <DanC> D:|public-quatro@w3.org Mail Archives
18:47:45 <dc_swig> Titled item D.
18:47:53 <sbp> I've found a handful of issues, with the language in general and with the RDF BNF, meanwhile
18:48:23 <danbri> D:Hmm it lacks list blurb. Similar setup to public-esw was with swad-europe, except no project site yet. It's in the area of quality labelling and trust using RDF descriptions, and migrating from and generalising PICS technology.
18:48:23 <dc_swig> Added comment D1.
18:48:32 * DanC has some news on the ACL issues around the N3 syntax WBS thingy, whenever we get to that, sbp
18:48:49 <timbl> Maybe we should make an RDF list of the N3 issues, separating them from the cwm bugs.
18:49:11 <danbri> seems like a healthy distinction to be able to make
18:49:18 <sbp> DanC: excellent. that's from last time around, so we should probably be doing those first
18:49:25 * DanC suppresses "we should" filter
18:49:53 <sbp> first three on the list are:
18:49:53 <sbp> * Implementation/use feedback for CWM 1.0.
18:49:54 <sbp> * Hyphen-minus in localnames: use the questionnaire?
18:49:54 <sbp> * Minor syntax issues (underscores/encoding, ":-", pathchars).
18:50:12 <sbp> BLURB:Agendum A: Implementation/use feedback for CWM 1.0
18:50:12 <dc_swig> E: Agendum A: Implementation/use feedback for CWM 1.0 from sbp
18:50:40 <DanC> E:|Implementation/use feedback for CWM 1.0 [item E, from sbp]
18:50:40 <dc_swig> Titled item E.
18:50:52 <sbp> ta
18:51:24 * DanC hasn't been keeping a close eye out for cwm 1.0 feedback; wonders what timbl and yosi have heard/seen
18:51:28 <sbp> E:I've found it to be exceptionally solid so far, though I've been doing mainly syntax testing and none of the difficult rules cases on which CWM's been known to trip up in the past.
18:51:28 <dc_swig> Added comment E1.
18:53:04 <yosi> considering that syntax has been where I've spent my time, for the most part, that is not surprising
18:53:54 * yosi wishes he had bugs and test cases sent in of these ``difficult rules cases on which CWM's been known to trip up in the past''
18:54:41 <timbl> I assume that anything spb has found he will have sent in to http://lists.w3.org/Archives/Public/public-cwm-bugs/
18:55:12 <sbp> mostly stuff that I've sent in in the past and has been resolved, but I'm always wary of it breaking again. e.g. when I was implementing XML Infoset stuff in CWM, there were so many breakages at the time that seemed new that it was impossible to continue with the work
18:55:19 * DanC wishes he had arranged for some users to give us feedback... ndw, dom, karl
18:56:00 <JosD> 2 mins: very much likes http://lists.w3.org/Archives/Public/public-rdf-dawg-comments/2004Nov/0021.html and tried it further in http://lists.w3.org/Archives/Public/public-rdf-dawg/2004OctDec/0455.html and http://lists.w3.org/Archives/Public/public-rdf-dawg/2004OctDec/0432.html using {:s :p :o} q:source <src_uri> assertions (kind of reification)
18:56:04 <DanC> yeah, dangerous assumption, timbl. good bug reports are hard work. I file them about 1 time in 4 that I find a cwm bug.
18:56:13 <sbp> it may well be different now. before, you couldn't even use (...) lists in rules without fear of breakages, but that's because it was experimental at the time. now they're deployed all over the place
18:56:31 <sbp> aye. I've a handful that I'm still thinking about w.r.t. the n3proc work
18:57:47 * DanC considers the "we should" about a list of N3 issues... wonders if timbl meant to volunteer to do that, solicit volunteers, just float the idea, or something else
18:57:54 <sbp> move onto the questionnaire?
18:58:05 <sbp> BLURB:Hyphen-minus in localnames: use the questionnaire? [item F, from sbp]
18:58:05 <dc_swig> F: Hyphen-minus in localnames: use the questionnaire? [item F, from sbp] from sbp
18:58:37 <DanC> re the WBS questionairre, when I filed a problem report, the answer was "broken as designed". i.e. it's working as designed; you're supposed to apply for a "public account"
18:58:55 <timbl> Re list of issues, I would like to chat about how high to aim, ontology to use etc.
18:59:26 <sbp> I see. can that questionnaire be abandoned and a new public one be filed in lieu of it?
18:59:28 <timbl> Is there a pointer from the problem to how to get one?
18:59:45 <DanC> any new questionairre will be as public as that one is
19:00:05 <timbl> sbp, the questionaire assumes that it knows who you are. Therefore you have to log in in some way.
19:00:19 <sbp> I see. what does "you're supposed to apply for a 'public account'" mean, then?
19:00:46 <DanC> it means fill out http://cgi.w3.org/MemberAccess/Public , I think
19:01:00 <timbl> You can't let anyone post anything nowadays without at least bouncing mail off them to make sure they have access to the given mailbox.
19:01:23 <DanC> F: the [http://cgi.w3.org/MemberAccess/Public|public account] form seems to be a prerequisite
19:01:23 <dc_swig> Added comment F1.
19:01:31 <sbp> ah, hmm. well that seems acceptable as long as people are prepared to fill it in and it works properly :-)
19:02:09 <DanC> yes, well, I hear it works but I can't say 1st hand
19:02:36 <DanC> F:... to the [http://www.w3.org/2002/09/wbs/1/RDF-N3-Syntax/|Syntax of QNames in N3 questionnaire]
19:02:37 <dc_swig> Added comment F2.
19:02:49 <sbp> right
19:03:15 <sbp> F:Which closes on "23:59, Boston time on 2004-12-31".
19:03:16 <dc_swig> Added comment F3.
19:03:30 <sbp> so at the current rate of meetings, we wouldn't convene a new one before the questionnaire expires
19:03:47 <DanC> ah... 2004-12-31 was "40 days" from now when timbl made up the questionnaire
19:04:02 <DanC> (i.e. "forever" in biblical terms)
19:04:03 <sbp> thus, we ought decide whether we're going to use it as the final word or whether timbl's final word'll be the final word :-)
19:04:11 <sbp> ah, cool
19:04:36 <sbp> so this year will last a biblical forever in N3 questionnaire terms...
19:04:44 <ericP> as to http://www.w3.org/2002/09/wbs/1/RDF-N3-Syntax/, i think we should do what XQuery does.
19:04:51 <ericP> anyone know what that is?
19:05:01 <ericP> or should i go implement a parser...
19:05:09 <sbp> heh
19:05:40 * DanC looks it up...
19:05:52 <timbl> (As the HTTP spec says, "If forever write 1 year" :-/ )
19:06:16 <sbp> at the moment, the results are spread fairly evenly across the board, which is slightly disturbing
19:06:49 <DanC> ugh... XQuery grammar is in an Appendix. I'm afraid W3C has lost the meaning of the word "Appendix". I understand it to mean "something you can chop off without changing the meaning of the document"
19:06:52 <timbl> I think I'd better take the final word then
19:07:17 <sbp> DanC: I think that's "informative" :-)
19:07:18 <DanC> timbl, I expect you can edit the questionnaire to extend the duration. I tried but I don't seem to be authorized.
19:07:29 <timbl> Oh.
19:07:32 <DanC> yes, but all appendixes are informative by definition
19:08:16 <sbp> I don't disagree. I wonder how hard it is to add something like that to the W3C style guide though
19:08:33 <timbl> stack.pop()
19:09:10 <yosi> IndexError: pop from empty list
19:09:20 * timbl notes the bimodal disribution of the http://www.w3.org/2002/09/wbs/1/RDF-N3-Syntax/results
19:09:36 <sbp> questionnaire: keeping it as it is, extending the duration, or abandoning it altogether?
19:10:09 <sbp> yes. people seem to feel strongly about it either way
19:10:40 <sbp> oh, actually the middle option is the _ munging idea
19:10:59 <sbp> I think people are just avoiding that...
19:11:38 <JosD> true
19:12:02 * timbl extends the questionnaire by a quarter of a year
19:12:34 <sbp> in the interim, I suppose we go by whatever's in n3.n3
19:13:05 <sbp> which is next on the agenda list
19:13:20 <timbl> Of course, in the interim being conservative in what you generate and liberal in what you accept is safe.
19:13:21 <sbp> BLURB:Minor syntax issues (underscores/encoding, ":-", pathchars) [item G]
19:13:22 <dc_swig> G: Minor syntax issues (underscores/encoding, ":-", pathchars) [item G] from sbp
19:13:31 <sbp> indeed
19:13:52 <yosi> are things like literal predicates (allowed by n3.n3) in this topic?
19:13:57 * DanC struggles to find anything like "name" in http://www.w3.org/TR/2004/WD-xquery-20041029/#lexical-structure
19:13:58 <sbp> there's a whole new slew of syntax issues
19:14:05 <sbp> right. formulae predicates are allowed too
19:14:13 <ericP> DanC, it seems to come down to the lexing rules that apply at http://www.w3.org/TR/2004/WD-xquery-20041029/#prod-xquery-AdditiveExpr
19:14:23 <sbp> also, QNames can be zero length! so @prefix <URI> . is valid
19:14:48 <DanC> qnames can be zero length? not by any definition I'm aware of
19:14:51 <timbl> (The people who registered 1 or 5 (extremes of feeling) on the questionnaire were Martin Duerst and Mark Nottingham.)
19:15:00 <sbp> by the definion in n3.n3; but definitely a bug
19:15:10 <sbp> s/in/init/
19:15:10 <yosi> it would appear that is a bug in the regular expression
19:15:22 <sbp> right
19:15:41 <sbp> as it stands: "(([a-zA-Z_][a-zA-Z0-9_]*)?:)?([a-zA-Z_][a-zA-Z0-9_]*)?"
19:15:46 <yosi> a qname can be somthing like ``a:'', or something like ``b'', so everything ends up optional
19:15:47 * JosD looking thru N3 glasses at http://dev.w3.org/cvsweb/2000/10/swap/grammar/n3.n3?rev=1.21&content-type=text/x-cvsweb-markup
19:16:55 <AndyS_> "[a-zA-Z.." does that include non-ASCII letters like accented chars? cwm accepts them doesn't it?
19:16:58 <sbp> really I think it should be something like r"([a-zA-Z_][a-zA-Z0-9_]*)?:([a-zA-Z_][a-zA-Z0-9_]*)|([a-zA-Z_][a-zA-Z0-9_]*)?:|([a-zA-Z_][a-zA-Z0-9_]*)"
19:17:07 <sbp> which is a bit of a mess. help? :-)
19:17:15 <timbl> Yes, I don't think zero length qnames should be allowed. I know though some people (sandro maybe) have used foo: to refer to the namespace document.
19:17:43 <sbp> hmm, I think that reduces to r"([a-zA-Z_][a-zA-Z0-9_]*)?:([a-zA-Z_][a-zA-Z0-9_]*)?|([a-zA-Z_][a-zA-Z0-9_]*)"
19:17:44 <JosD> we have done that as well..
19:17:50 <timbl> Actually, I think cwm's tokenizer keeps a list of non-name charactrers.
19:17:50 <sbp> yes. there's a test case for "foo:"
19:17:52 <dajobe> fwiw, turtle allows ':'
19:18:09 <sbp> right. I don't dispute that ":" and barenames should be allowed
19:18:25 <sbp> merely noting that the current production allows zero-length, which *is* wrong
19:18:36 <DanC> ericp, I find "whatever XQuery does" to be impossible to determine
19:18:44 <DanC> well, impractical
19:18:47 <dajobe> heh
19:18:49 <AndyS_> So tokenizing isn't defined by n3.n3 only?
19:19:11 <sbp> no, not in the least. the tokenising is highly customised
19:19:16 * yosi created a version on n3.n3 that replaced the regular expressions with versions that allowed (almost) everything that xml 1.1 names allowed, but its not online anywhere
19:19:16 <ericP> "-" is listted as a "delimiting terminal" so now i look to see if it can be next to a qname...
19:19:39 <timbl> Well, the confusion is between a zero-length qname, <http://....rdf#> and the namespace document <http://....rdf> which I think the URI spec says are the same thing.
19:19:51 <timbl> Yosi, could you post that somewhere?
19:19:57 <DanC> don't think so, timbl
19:19:59 <sbp> and the processor that has to sit on top of a parser using n3.n3 will be doing most of the work. if you change the grammar even meagrely, you'll have to change the processor to an enormous degree
19:19:59 <yosi> it's at home
19:20:04 <yosi> I'm at MIT
19:20:32 <sbp> timbl: a zero length QName is impossible to tokenise, I think
19:20:36 * timbl (you don't have an ssh daemon running at home? 0.;5 ;-) )
19:20:44 <sbp> consider: " ." would be a valid statement
19:20:53 * DanC double-checks http://gbiv.com/protocols/uri/rev-2002/draft-fielding-uri-rfc2396bis-07.html ...
19:21:00 <timbl> Oh, clearly you would need the ":".
19:21:05 <yosi> on the other side of http://www.kashrut.com 's NAT firewall?
19:21:09 <sbp> right. but that's not zero length
19:21:18 <sbp> the current production literally allows "" as a QName
19:21:20 <sbp> that's the problem
19:21:51 <timbl> That is a bigger problem. I think that we should insist that a qname has 1 or more characters.
19:22:07 <sbp> yes. but it's difficult to fix the regexp
19:22:31 <sbp> hmm, actually no. we're using $0
19:22:31 <AndyS_> Hmm - cwm homepage does not have cwm download link.
19:22:49 <sbp> okay, I should just file a bug for this with my suggested replacement regexp
19:23:12 <sbp> literals/formulae as predicates too
19:23:52 <yosi> should lists be allowed as predicates?
19:24:12 <sbp> another thing left over from the last meeting that we didn't discuss was ":-", which gk raised. I noticed, along similar lines, that CWM allows ":=" as a verb, but that it doesn't work properly--it returns a literal predicate, though with the right URI at least
19:24:25 <sbp> lists: I don't think so. I consider rdf:List and rdf:Property disjoint
19:24:42 <DanC> download link... hmm... closest I can find is a path thru "Installation" to http://www.w3.org/2000/10/swap/cwm.tar.gz ; yosi, should that work?
19:24:47 <timbl> Proposal: Anything which is an extended literal (literal, list, formula, set...) shold not be allowed on the predicate position. BNodes should be.
19:24:49 <yosi> yes
19:25:05 <sbp> agreed
19:25:27 <DanC> phpht
19:25:48 <timbl> Andy, what should the text be "Download cwm.tar.gz now" ?
19:25:55 <DanC> please let's keep it symmetric: <term> <term> <term>./
19:25:59 <DanC> please let's keep it symmetric: <term> <term> <term>.
19:26:01 <timbl> phpht?
19:26:01 <sbp> phpht? you want to use a formula as a property?
19:26:17 <DanC> I want terms to be the same everywhere
19:26:24 <sbp> rationale?
19:26:28 <DanC> simplicity
19:26:30 <timbl> advantage: symmetry is simplicity, simplicy is almost always good.
19:26:31 <DanC> orthogonality
19:26:45 <AndyS_> timbl - at least "download" which is what I looked for
19:26:54 <DanC> i.e. I consider the burden to be on anyone who want something other than <term> <term> <term>.
19:26:58 <timbl> disadvantage: m Make rules and owl people run form n3 screaming in case they have to say what the means.
19:27:02 * AndyS_ tried to install latest while here to check something
19:27:06 <sbp> heheh
19:27:32 <AndyS_> I read "installation" as "*after* you got it"
19:27:36 <DanC> lists are no harder than bnodes, semantically
19:28:04 <sbp> proposal, then: it could be allowed in the grammar but an N3 processor may raise a NotImplemented exception
19:28:32 <sbp> it's not actually difficult to generate the triples
19:28:44 <DanC> AndyS, on the other hand I hate "download it now!" thingies that leave you wondering what to do with the bits now that you have them. And I hate projects that make you download 8MB of foo before they tell you "jdk v1.354 required"
19:28:54 <AndyS_> Installation page has cwm.tgz but the target is cwm.tar.gz FWIW - stops Google cwm.tar.gz :-)
19:29:13 <AndyS_> The word "download" would help
19:29:27 <sbp> (then I don't like the test case implications of my proposal)
19:29:31 <DanC> my browser estimates 16:46 remaining in download time. I wonder what's up.
19:30:22 * timbl adds a download "button".
19:30:38 <AndyS_> Google "download cwm" gets the other cwm :-(
19:30:53 <sbp> someone made another one?
19:31:07 <DanC> the OMG's "common warehouse metadata" or some such
19:31:10 <AndyS_> "Classic Window Manager"
19:31:18 <sbp> bet it doesn't parse N3 very well
19:31:30 <DanC> badump-bump... psh!
19:31:34 <sbp> :-)
19:31:36 <timbl> It was "Common Warehouse Model" once in OMG
19:31:43 <AndyS_> I confess I didn't try.
19:31:58 <timbl> Maybe you would be surprised!
19:32:20 <sbp> dark corner. classic-wm --parseN3
19:32:44 <DanC> yosi, I get md5sum 18eede156fd4318a34f55452faed1ff0 when I follow my nose and download cwm; can you verify that's cwm 1.0?
19:33:04 * DanC sees lots of cwm-1.0.0/... files
19:33:16 * DanC considers signing the release
19:33:31 <sbp> if cwm-1.0.0 appears in tar -ztf | head -1, I think you can be fairly sure
19:33:39 * sbp md5sum's his local copy
19:34:01 <sbp> $ md5sum cwm-1.0.0.tar.gz
19:34:02 <sbp> 18eede156fd4318a34f55452faed1ff0 *cwm-1.0.0.tar.gz
19:34:16 <sbp> s/'//
19:34:41 <yosi> I generated it at first at home --- so to really prove it's the file I generated I can't do now
19:34:57 <yosi> I get the same md5sum here
19:35:24 <sbp> three independent confirmations. sounds good
19:36:10 <sbp> okay, are ":-" and the "[ =" hack deprecated from N3? they don't appear in n3.n3
19:36:50 <sbp> and, again, ":=" is implemented in notation3.py (and doesn't work) but not n3.n3
19:37:31 <sbp> actually, "[ =" isn't a syntactic issue. it's valid in the n3.n3 grammar, but of course we don't know what the interpretation is to be
19:37:51 <yosi> what does [ = mean?\
19:38:04 <DanC> it's an appositive
19:38:12 <sbp> for [ = :p: :q :r ], :p :q :r .
19:38:21 <DanC> me brother [ = joe; a TallGuy].
19:38:32 <sbp> s/:p:/:p;/
19:38:44 <sbp> what DanC said. so it's roughly analogous to the :- operator
19:38:56 <sbp> I'd prefer a keyword for it, if it's to be kept
19:39:02 <DanC> I added a syntactica optimization for [ =
19:39:02 <sbp> @named
19:39:12 <sbp> me brother [ @named joe; a TallGuy ] .
19:39:28 <DanC> never added a test, though, so I won't be surprised if it doesn't stick
19:39:46 <timbl> syntactica?
19:39:54 <DanC> syntactic
19:40:12 * timbl wondered whetehr he was missing a version of Mathematica
19:40:18 <sbp> heh
19:40:26 <AndyS_> Looks like "[] owl:sameAs :p"
19:40:27 <timbl> I find that it is a bad idea.
19:40:36 <timbl> Either you are = aware or not.
19:40:43 <sbp> AndyS: except this actually *replaces* the node, doesn't generate a sameAs triple
19:40:50 <timbl> if you are, you can use =, like cwm in --mode=e
19:40:59 <DanC> it's darned convenient when writing file metadata:
19:41:17 <timbl> If you are not node aware, then this allows you to generate nodes which have names as well as being lists, formulae, strings, etc.
19:41:22 <DanC> <> dc:title "nifty new doc"; doc:versionOf [ = <older-doc> ; dc:title "not as nifty"].
19:41:43 <timbl> Ah, so you are only using it to merge with a bnode.
19:41:55 <JosD> Andy, we actually generate 2 triples for [ = joe; a TallGuy].
19:42:14 <timbl> I think you should.
19:42:18 <sbp> I currently produce 2 with n3proc
19:42:35 <sbp> but I do like the idea of it replacing the node
19:42:40 <AndyS_> So does Jena.
19:42:40 <DanC> any suggestions for my file metadata case, timbl? it's boring to write long URIs multiple times.
19:42:55 <yosi> echo '_:f = :a . :G :g _:f. ' | cwm | cwm is a bug in cwm
19:43:00 <timbl> agenda+ Mathematical canonicalization of datatypes
19:43:05 <sbp> I don't like "=" because it means that there are two different interpretations for "=" entirely dependent upon context
19:43:14 <yosi> that was my point
19:43:23 <DanC> huh? there's just one interpretation of =, and one optimization
19:43:46 <sbp> I don't consider reducing a triple out an "optimisation"
19:43:55 <sbp> I consider it nifty :-)
19:44:19 <sbp> again I propose using a keyword instead
19:44:29 <AndyS_> Currently cwm --ntriples on "[ = <p> ] ." generates a blank line.
19:44:30 * DanC wonders if its visible to log:includes
19:44:30 <timbl> I agree that "=" is being abused at the rdf level.
19:44:40 <timbl> @which?
19:44:51 <DanC> @is?
19:45:00 <DanC> <> dc:title "nifty new doc"; doc:versionOf [ @is <older-doc> ; dc:title "not as nifty"].
19:45:08 <sbp> @is is already a keyword, sadly...
19:45:18 <sbp> you'd have to look ahead to find there's no @of
19:45:24 <DanC> RoleNoun convention suggests @self
19:45:25 <timbl> <> dc:title "nifty new doc"; doc:versionOf <older-doc> @which dc:title "not as nifty".
19:45:27 <sbp> I'd've gone with @is otherwise
19:45:28 <DanC> <> dc:title "nifty new doc"; doc:versionOf [ @self <older-doc> ; dc:title "not as nifty"].
19:45:46 <sbp> @named or @equals I'd go for in a verbal sense
19:45:48 <JosD> DanC, there is already @is in :s @is :p @of :o
19:45:58 <sbp> @self and @which I'd be fine with though
19:46:01 <DanC> @which looks more involved.
19:46:20 <AndyS_> Got to look ahead past[ to see @whatever (but that's easy) else [ means bNode.
19:46:22 <timbl> ugh I can't turn off Colloquy's emoticons
19:46:38 <DanC> <> dc:title "nifty new doc"; doc:versionOf <older-doc> @which dc:title "not as nifty"; dc:date "applies to <> or <older-doc>?".
19:47:16 <DanC> [= was implemented as a sort of look-ahead-past-[
19:47:23 <AndyS_> When does the @which stop? Does the "." end the whole thing or nested?
19:47:24 <sbp> hmm
19:47:46 <DanC> when does @which stop... my question exactly. "don't go there" is the answer I prefer
19:47:53 * JosD also troubled by :s :p :o
19:47:56 <sbp> yes, @which is confusing to read. canning that
19:47:58 <timbl> Good question re @which priority.
19:48:12 <timbl> Ok, so how about @is ?
19:48:22 <DanC> ambiguous.
19:48:24 <sbp> already a keyword
19:48:33 <jsled> @id?
19:48:41 <AndyS_> The idea of a nesting named resource (DanC use case) would be useful.
19:48:41 <JosD> in @is .. @of
19:48:42 <yosi> @IAm?
19:48:43 <DanC> @uri might work
19:48:56 <timbl> Suppose "x @of y" is an expression meaning [ is x of y ]. And then "is" is the node smosher.
19:49:06 <sbp> :Sean :name [ @uri "Sean"; a rdfs:Literal ] .
19:49:27 <DanC> that argues for @self
19:49:45 <JosD> @uri is nice
19:49:54 <timbl> Suppose "x @of y" is an expression meaning [ is x of y ]. And then "is" is the node smosher. Then you get the existing z is x of y functionality.
19:50:15 <DanC> hmm... @uri is goofy from a use/mention pov.
19:50:23 <timbl> x of y becomes a form of path expression.
19:50:23 <JosD> Oh
19:50:35 <DanC> x @at y?
19:50:40 <DanC> sqrt @at 2
19:50:50 * sbp tries to grok timbl's proposal
19:50:53 <DanC> am I going the wrong way?
19:50:58 <timbl> aka?
19:51:01 <DanC> I've been using [ is sqrt of 2] for a while
19:51:15 <DanC> aka is also a bit goofy use/mention wise.
19:51:16 <timbl> Yes, that is useful, and lots of it in files.'
19:51:18 <sbp> oh, I see
19:51:52 * DanC hears the T-10 bell ring for TAG
19:52:04 <sbp> [ @is sqrt @of 2 ] -> [ @is _:p ] 2 sqrt _:p . -> 2 sqrt [] .
19:53:19 <timbl> [ @is sqrt @of 2] becomes sqrt @of 2
19:53:32 * yosi shudders at the meaning of ``:a of :b :of :c :of :d''
19:54:03 <sbp> hmm. this would make: { :s @is :n . :s :p :o } produce { :n :p :o } as a triple
19:54:30 <timbl> yes.
19:54:40 <sbp> yeah. I think I'd rather stick with @if and @of in their current senses and go with something like @self, @aka, etc.
19:54:47 <sbp> s/@if/@is/
19:55:00 <sbp> I'm leaning very much towards @self
19:55:19 <timbl> Or maybe we should just remove it in the interests of stability.
19:55:31 <sbp> that'd still mean { :s @self :n . :s :p :o } produces { :n :p :o }, but I'd be okay with that
19:56:07 * timbl struggling with "self" as a role-noun
19:56:22 <sbp> @becomes?
19:56:46 <timbl> No, no assignment action.
19:56:47 <sbp> take p becomes q as meaning all instances of p become q when output
19:57:24 <sbp> okay
19:57:24 <timbl> @ie
19:57:24 <sbp> ah, that's nice
19:57:26 <sbp> or @viz
19:57:28 <JosD> so [ @becomes s; p o] becomes s p o ?
19:57:30 <timbl> But DanC, would you allow <joe> @self <fred> ?
19:57:31 <yosi> @inAnEffortToDiscourageThisFeaturesUseWeHaveMadeItReallyLong ?
19:57:40 <sbp> yosi: heh¬
19:57:43 <danbri> :)
19:57:43 <sbp> s/¬/!/
19:58:06 <timbl> (incompatible encoding - you using utf8?)
19:58:38 <sbp> accidental bit of cp1252. not sign is next to ! on this keyboard
19:58:39 <timbl> Ok, so DanC and I should leave though this doesn't need to constrain anyone else.
19:58:40 <AndyS_> Amusing feature for writers to use - tricky to know when to embed a 1-ref object.
19:58:49 <sbp> line was "yosi: heh!"
19:59:16 <timbl> Status quo is none of these are in n3/n3
19:59:19 <sbp> shame. always so much more to talk about!
19:59:31 <timbl> s?/?.?
19:59:38 <JosD> also thought 5 min ago @ie :)
19:59:42 <DanC> <> dc:title "nifty new doc"; doc:versionOf [ @ie <older-doc> ; dc:title "not as nifty"].
19:59:49 <DanC> yes, I like @ie
19:59:55 <JosD> me too
20:00:01 <sbp> yep. ie is good
20:00:02 <timbl> (@idEst?)
20:00:10 <sbp> @i.e.
20:00:10 <JosD> :)
20:00:20 <timbl> With restriction it must only be used on bnode syntax?
20:00:24 <JosD> it est in Latin :)
20:00:27 <sbp> I like @viz too, but even that should be @vizium
20:00:29 <DanC> @idEstCuzYouCantBeBotheredToLookItUpAndIAmAPompousFool ;-)
20:00:38 <sbp> :-)
20:00:55 <JosD> s/it/id
20:00:57 <sbp> as long as it doesn't make the grammar messy
20:01:13 * danja_ amused by Latin disobfustication of cwm
20:01:29 <JosD> :)
20:01:47 <timbl> Well, we could semantically constrain it that you can't @ie together two things which are already named. or we could just require it to be the first verb in a []
20:02:01 <sbp> @siHocLegereScisNimiumEruditionisHabes
20:02:10 <timbl> The latter is simple as it requires no lookahead and is a syntactic constraint.
20:02:23 <sbp> (@if-you-can-read-this-you're-over-educated)
20:02:29 <DanC> 1st verb in [] meets my needs.
20:03:04 <sbp> and I think it'd be easy enough to implement, so it meets my needs...
20:03:09 * AndyS_ reads, waves and leaves
20:03:25 <sbp> thanks AndyS_
20:04:05 <timbl> Uniform Bureaucracy Notice: This form should take you 136 minutes to complete, whatever your level of education. The uneducated will have trouble with the questions but the overeducated will be distracted with intriguing footnotes and latin phrases.
20:04:18 <danja_> (iXVIIIn)
20:04:27 <timbl> Ok, so I think we have a consensus around @ie
20:04:28 <sbp> heh!
20:04:34 <sbp> yep
20:04:40 <timbl> Thanks sbp, could we do that again?
20:04:49 <balbinus> anyway: quidquid latine dictum sit, altum viditur
20:04:50 <timbl> Maybe try to get 90 mins next time
20:04:57 <sbp> I'd have these meetings every day if I thought we could
20:05:04 <DanC> re log:notIncludes and [=]... a test: { { <x> dc:relation [ = <y>; dc:description "y"] } log:notIncludes { ?X = @Y } } => { <using> <oldAndBogus> <parser>}.
20:05:42 <sbp> since this seems to conflict with TAGgery, perhaps a month from now at 16:30Z this time? (really 16:30Z though)
20:06:13 <yosi> sbp, changing cwm to use str() instead of repr() broke http://www.w3.org/2000/10/swap/math/detailed.tests#t10393
20:06:20 <yosi> I'll have to look into that
20:06:30 <timbl> Ok for me that time 16:30Z
20:06:35 <sbp> ack, 403
20:07:32 <sbp> where did math go in http://dev.w3.org/cvsweb/2000/10/swap/?
20:07:57 <sbp> oh, test/math
20:08:48 <sbp> yeah, it just has floats in; probably a matter of replacing the test output
20:08:53 <yosi> I meant http://www.w3.org/2000/10/swap/test/math/detailed.tests#t10393
20:08:58 * sbp nods
20:13:32 <timbl> quidquid in tela dictum sit, altum viditur
20:14:08 <yosi> finally, sbp, re http://lists.w3.org/Archives/Public/public-cwm-bugs/2004Dec/0003.html .
20:14:46 <yosi> those bogus existentials are annoying, I never bothered fixing them because they don't change the meaning of anything
20:17:24 <sbp> yosi: I mainly filed that because I'd really like to work towards a standard test-suitable output for N3 parsers. I'd like CWM, ideally, to output the same as n3proc (or vice versa, but that's what I want to explore)
20:17:46 <yosi> I can work on that
20:18:05 <yosi> as for the rest of that bug, there are good reasons why cwm reifies things the way it does
20:18:08 <sbp> that would be excellent. though the two major issues therein require executive decision
20:18:22 <yosi> timbl is the right person to ask about them
20:18:22 <sbp> oh? I'd love to hear them
20:18:24 <sbp> ah
20:18:44 <yosi> it's been an action item for him to write up just that for a while
20:19:22 <sbp> yeah, I was thinking that might be the case. I'm mainly concerned about the orderedness (and hence complexity and verbosity of the output, which I think is unnecessary according to the documentation), and the scope of ?univars in the root document formula
20:19:38 <timbl> sbp, in a word, you need to quote the subject and object URIs etc.
20:20:31 <timbl> orderedness? It is not ordered, because we use sets. lacking a set literal syntax for the moment, we use the clumbsy low:oneOf a list, but the inrtent is a set.
20:21:19 <sbp> I'm wondering why you can't use normal RDF conjunctions as the set
20:21:34 <yosi> it's not closed
20:21:46 <sbp> in other words, why state (reified-triple reified-triple) when you can just assert { reified-triple . reified-triple }
20:21:57 <sbp> ah, I see
20:22:30 <sbp> but a document, when parsed to a formula, *is* closed
20:23:04 <sbp> you're representing a formula in another formula...
20:25:13 * sbp will consider implementing to try to match CWM as much as possible
20:25:22 <sbp> but that isn't possible w.r.t. URIs for variables
20:25:55 <sbp> e.g. ?p becoming [ :uri ".../#p" ]
20:26:32 <sbp> [ :localname "p" ] would be fine, if not ?p
20:26:44 <timbl> The aim is to be ask whether x is a variable in F without using negation as failure.
20:27:23 <timbl> You don't make variables by URIs, sbp?
20:27:58 <sbp> nope, I keep them as variables. otherwise it's impossible to have consistent test outputs, and this is my worry
20:29:40 <sbp> the only issue I've come across in doing it the lazy way is that universally quantified variables aren't allowed in the root formula of a document because the default is to scope them over their parent
20:30:38 <sbp> so what happens is that when I have { ?p ?q ?r } :s :t ., I reify that so that _:statement reify:subject ?p appears in the root of the flattened test-case reference usable output
20:30:53 <phurl> phurl is now known as PhUrl
20:30:59 <sbp> in the original document, ?p is quantified over the root formula
20:31:18 <sbp> but that's true in the output for me too, because I consider that if there's no parent of the current formula, you use the current formula as the scope
20:32:06 <sbp> so the aim is that I only produce reified quanitification triples, those using reify:existential[s] and reify:universal[s] when the scope is other than the root formula
20:33:26 * yosi fails to understand what is inconsistent about making variables uri's
20:33:27 <sbp> if I were to have { @forAll :p . :p ?q ?r } :s :t . as the input, the flattened output would have to have _:formula :s :t . _:formula reify:universal ?p . in the output... but I suppose that's your negation as failure point. you can only tell if ?p is quantified over the root formula if there's no statement to the contrary
20:34:11 <sbp> the inconsistency arises from *what* URI. say your parser produces [ :uri ".../#genIDp" ] for ?p and mine produces [ :uri ".../#p" ]. you can't compare the outputs in a test suite
20:34:40 <sbp> moreover, what if the user wants to use <.../#genIDp> or <.../#p> in another document? you're squatting their space
20:35:17 <yosi> I think cwm does the wrong thing there
20:36:41 <yosi> clearly we need a standarf for de-questionmarking uri's
20:37:58 <sbp> it'd be extremely difficult. you'd probably have to use appearance order and a new URI scheme, or something like http://www.w3.org/namespace$http://example.org/documentURI$variableName
20:38:48 <sbp> which is why I preserve them as variables and then have the quantification triples only if they're not quantified over the root formula, as I say
20:39:25 <sbp> I consider the "you can only tell if ?p is quantified over the root formula if there's no statement to the contrary" problem a very small price to pay, especially given log:notIncludes
20:40:12 <sbp> or you could even have two different types of output--one for test cases, the trivial case that I'm interested in at the moment, and a comprehensive output with sets of reified triples and URI'd variables etc.
20:40:22 <sbp> how about that?
20:40:30 <yosi> the removal of ``this'' from n3 was to disallow the saying of ``this log:notInclises'' in the root formula
20:41:03 <sbp> why do you not want to allow that?
20:41:16 <yosi> the root formula is open
20:41:28 <yosi> we can't ever say it doesn't include something
20:41:51 <sbp> it is? I thought it was scoped to the document. when I say <document>!log:semantics, I don't expect that to include the moon if the moon isn't in the document
20:41:54 <yosi> beside that that makes paradoxes way too easy to write
20:42:21 <sbp> I thought one of the goals was to not treat the edges of a document as being different from "{ ... }"?
20:42:29 <sbp> yet it seems that that's very much the case here
20:42:36 <yosi> no
20:43:07 <yosi> there is no outside of the root formula to say log:notIncludes on it
20:43:33 <yosi> you don't have access to the formula you are inside of right now
20:43:37 <sbp> there most certainly is an outside when you do <document>!log:includes
20:43:48 <sbp> er, <document>!log:semantics
20:44:09 <yosi> ``<document>!log:semantics'' is not ``this''
20:44:20 <sbp> think of the <>!log:semantics case
20:44:36 <yosi> the first is saying ``what <document> says''
20:44:46 <yosi> or, what <> says
20:44:54 <yosi> the latter is ``what I know''
20:44:57 <sbp> where <> is the current document
20:45:21 <yosi> cwm accepts multiple input documents, and will concatenate them
20:45:38 <sbp> right. and none of those documents will be equal to the resulting concatenation
20:45:48 <yosi> correct
20:45:54 <yosi> but ``this'' is
20:45:59 <yosi> equal to that
20:46:00 <sbp> you can do the same thing using (<p>!log:semantics <q>!log:semantics) log:conjunction
20:46:08 <yosi> you can
20:46:15 <sbp> but then that's a "@this" in a new document!
20:46:44 <yosi> you've explicitly said what you are trusting
20:47:12 <yosi> @this points to the current formula
20:47:14 <sbp> I'm not sure how this bears on the problem. my contention is that <>!log:semantics is equivalent to @this in the root formula
20:47:31 <yosi> not semantically
20:47:35 <sbp> right, the current formula for the new document, not the original ones
20:48:12 <yosi> for all we know, cwm will do a google search for more triples to see if we know something
20:48:22 <yosi> but that's not in the current document
20:48:34 <sbp> I think you're conflating CWM's internal store with the document's semantics
20:48:52 <sbp> when I state something in a document, I'm referring to that document, not what CWM is doing
20:48:57 <sbp> @this is a document thing, not a CWM thing
20:49:12 <yosi> @this is a formula thing
20:49:20 <yosi> a formula is a set of information
20:49:31 <sbp> yes, it identifies the current formula of the document
20:49:35 <yosi> the root formula is the set of true information
20:49:56 <yosi> the document is merely a source of facts
20:50:11 <sbp> right. but it's a self-contained source of facts
20:50:16 <sbp> it has bounds; it is finite
20:50:34 <yosi> the document is finite
20:50:37 <sbp> @this allows you to refer to that entire collection of statements; the formula that the document expresses, as a finite whole
20:51:11 <yosi> @this allows you to express everything that I know as a finite whole
20:51:39 <yosi> the formula formed from a document is finite
20:51:52 <yosi> the formula of facts is not
20:53:17 * yosi has to catch a train
20:53:24 <sbp> c'ya
20:56:58 <crschmidt> so, uh. is the cwm meeting over?
21:02:27 <sbp> yep
21:04:04 * crschmidt was hoping to ask about ability to import cwm for n3->ntriples conversion, and thoughts therein from developers
21:04:23 <sbp> why didn't you ask about that when everyone was here? :-)
21:04:35 <crschmidt> Because I was waiting for a turn!
21:05:00 <sbp> heh. you can always ask on public-cwm-talk though
21:06:04 <sbp> hmm, I wonder if I have an old version of CWM lying about somewhere...
21:06:41 <sbp> at the very least, if @this refers to the formula of everything which is true (which would make "this" a very odd name for it, if so), I'd like a keyword that *does* allow you to refer to the current formula
21:07:06 <sbp> CWM can scrap triples with it in or not if it likes, and I think that'll be dependent on how it's getting the document
21:07:33 <sbp> let's say that @current refers to the current formula
21:08:24 <sbp> if CWM were to input the document from <a.n3> and it contained "@current :formulaOf <a.n3> . :p :q :r .", it'd probably want to drop the first triple because there's no way that it can refer to that formula
21:08:43 <sbp> effectively, when CWM reads in a document from the *command-line*, it loses that document's formula
21:08:54 <sbp> but when it reads it using log:semantics, that's not so
21:10:15 <jhendler>http://allianceradio.com/oops.html
21:10:15 <dc_swig> H: http://allianceradio.com/oops.html from jhendler
21:10:19 <sbp> if I were to do "<a.n3>!log:semantics ... ." I'd think it fine to have "{ @current :formulaOf <a.n3> . :p :q :r }" in the results...
21:10:32 <sbp> but, moreover, if all of the triples in that document were to be flattened out, you'd end up with:
21:10:40 <jhendler> H:|Is this how the semantic web will 404? (humour)
21:10:40 <dc_swig> Titled item H.
21:10:55 <sbp> { @current :formulaOf <a.n3> . :p :q :r } :formulaOf <a.n3> . :p :q :r .
21:10:59 <jhendler> H: stolen from Hitchhiker's guide to some degree, but not horrid.
21:10:59 <dc_swig> Added comment H1.
21:11:01 <sbp> which I think is rather useful
21:11:06 * sbp wa... too late
21:12:12 <danbri> H:Or [http://agents.umbc.edu/404x|this]? (from Tim Finin and co.)
21:12:12 <dc_swig> Added comment H2.
21:12:54 <sbp> hehe
21:16:34 <danbri> H:I recall the UMBC site tricking me, some time ago, and Tim letting me down gently... I thought 'Oh, cool KIF-based content management thingie!'... but it was just a (pre-OWL) joke.
21:16:34 <dc_swig> Added comment H3.
21:17:32 <sbp> phenny: tell jhendler hi! ([21:11] * Quits: jhendler (~chatzilla@gandalf.mindlab.umd.edu) (Client Quit) [21:11] * sbp wa... too late)
21:17:35 <phenny> sbp: I'll pass that on for you when jhendler is around.
21:52:55 <Mklow> hi all
21:53:54 <sbp> hi Mklow
21:54:37 <Mklow> hi sbp
22:11:58 <danbri>http://www.ccc.de/congress/2004/fahrplan-preview/fahrplan.html
22:11:59 <dc_swig> I: http://www.ccc.de/congress/2004/fahrplan-preview/fahrplan.html from danbri
22:12:13 <danbri> I:|21st Chaos Communication Congress - Day 1 - v0.92
22:12:13 <dc_swig> Titled item I.
22:13:15 <danbri> I:See the main [http://www.ccc.de/congress/2004/|21C3 site] ("The Usual Suspects") for more info and updates to schedule. Dates: Dec 27-29, Berlin, Germany.
22:13:15 <dc_swig> Added comment I1.
22:13:31 <danbri> I:I'm thinking of going, was wondering if any SWIG folks might be there.
22:13:31 <dc_swig> Added comment I2.
22:13:44 <danbri> I:" The 21st Chaos Communication Congress (21C3) is a three-day conference on technology, society and utopia. The Congress offers lectures and workshops on a multitude of topics including (but not limited to) information technology, IT-security, internet, cryptography and generally a critical-creative attitude towards technology and the discussion about the effects of technological advances on society."
22:13:45 <dc_swig> Added comment I3.
22:22:21 <DanC> is that one of those things that spams everybody and invites them to talk?
22:23:22 <danbri> I don't believe CCC does that, but yes it's a conference
22:23:26 <sbp> apt given that it's "Chaos Communication"
22:23:42 <sbp> though a metathesis of terms
22:47:34 <sbp> crschmidt: could you do a bit of a demo of julie for Mklow for me, if you're around?
22:48:04 <sbp> Mklow: well essentially you can run queries against her. e.g., to get my name from my nickname...
22:48:16 <jsled> ^nick Sean Palmer
22:48:17 <mortenf> chris is on the phone
22:48:36 <sbp> ^q select ?name where (?person foaf:nick "sbp") (?person foaf:name ?name)
22:48:38 <danbri> the other end of it ;)
22:48:53 <sbp> with you? heh
22:49:07 <danbri> no, at the end with no computer and proper keyboard...
22:49:20 <danbri> we're at this end of it
22:50:48 <sbp> pardon?
22:51:06 <danbri> don't worry :)
22:51:22 <danbri> --> chrisMobile (~chrisMobi@m41105e42.tmodns.net) has joined #foaf
22:51:22 * chrisMobile waves from his phone.
22:51:26 <danbri> from #swig
22:51:31 <danbri> er #foaf
22:52:53 <jsled> ^status
22:52:56 <jsled> ^status
22:53:16 <crschmidt> hm
22:53:18 <crschmidt> julie's in bad shape
22:53:21 <crschmidt> excuse me while i kill her
22:53:41 <LotR> OMG, THEY KILLED JULIE!
22:53:54 <crschmidt> And no, I didn't mean the crying three year old
22:54:10 <crschmidt> Anyway
22:54:23 <danbri> you bastards! ;)
22:54:32 <crschmidt> Julie is a bot. She does things. For example, you can ask questions:
22:54:38 <crschmidt> ^q select ?p where (?p foaf:nick "crschmidt")
22:54:39 <julie> (r1101681811r9), (r1100194349r5), (r1095223907r8), (r1095333406r365), (r1098664340r42), (r1095223907r2)
22:54:40 * danbri offends everyone who doesn't watch southpark
22:54:56 <karlcow> I don't
22:54:59 * tlr mubmles "bittorrent"
22:55:07 <crschmidt> In addition to that, she can run commands that other people have stored that do interesting things.
22:55:10 <karlcow> I don't have TV either ;)
22:55:22 <crschmidt> for example, to display the available information about a person with a given foaf:nick, you can do:
22:55:25 <crschmidt> ^available crschmidt
22:55:27 <julie> kiss:kissed (x4), foaf:interest (x3), foaf:mbox_sha1sum (x3), foaf:page, foaf:knows (x95), foaf:dateOfBirth, foaf:workplaceHomepage, foaf:maker, foaf:depiction (x3), tipjar:hasTipjar (x14), foaf:weblog, astrology:Sign, foaf:nick (x6), foaf:aimChatID, foaf:geekCode, rdfs:seeAlso (x5), foaf:name (x5), bio:olb (x2), foaf:msnChatID, foaf:homepage (x4), foaf:holdsAccount, foaf:yahooChatID, rdf:type (x6), foaf:currentProject (x2), foaf:plan, foaf:icqCh
22:55:27 <julie> atID, foaf:based_near (x14), menow:hasStatus (x7), foaf:mbox (x2)
22:55:45 <crschmidt> To see commands that people have stored, you can use:
22:55:47 <crschmidt> ^commandlist
22:55:47 <julie> Current commands: olb, like-pubs, maintainer, pub-address, alldayevents, depiction, keywords, icbm, based_near, kissed, authorlinks, like-musicalwork, like-books, title, nick, contact, drankbeerwith, xfn_met, homepage, events, workplace, available, knows, quote, schemaweb, dob, desc, term, made, name, neighborhoods, agentknows, rsstitles, like-musicians, picOfA, aim, like-same-music-as, weblog, sha, places, mbox, dranklagerwith, namefromany, rssl
22:55:47 <julie> inks,
22:56:03 <crschmidt> To See the current list of predefined namespaces, you can do:
22:56:04 <crschmidt> ^nslist
22:56:04 <julie> Namespace bindings are: astrology, bio, bloggercode, book, bot, cc, chefmoz, contact, cyc, dc, dcterms, doaml, doap, exif, foaf, foafcorp, geo, ical, ilike, img, kiss, kissed, menow, mtbi, music, owl, quaff, quote, rdf, rdfs, rel, rev, rss, schema, srw10, srw11, tipjar, trust, vann, vcard, weather, wn16, wot, xsd
22:56:18 <crschmidt> To see the URL of a specific namespace, you can ask:
22:56:19 <crschmidt> ^ns foaf
22:56:20 <julie> The URL for the foaf namespace is http://xmlns.com/foaf/0.1/
22:56:31 <crschmidt> There's more information on her homepage:
22:56:34 <crschmidt> ^homepage julie
22:56:35 <julie> http://crschmidt.net/julie/
22:56:56 <crschmidt> And that's a two minute demonstration of the primary capabilities of julie
22:57:20 <crschmidt> You can also add data, create new stored commands, add new namespaces, etc. But those are typically things that you don't need to do as often, plus they aren't as nifty :)
23:01:40 <sbp> thanks crschmidt
23:01:52 <crschmidt> logger: pointer
23:01:52 <crschmidt> See http://www.ilrt.bris.ac.uk/discovery/chatlogs/swig/2004-12-13#T23-01-52
23:02:01 * crschmidt will add link to ^homepage julie
23:02:59 <crschmidt> done
23:50:38 <PhUrl> PhUrl is now known as md-zzz
The IRC chat here was automatically logged without editing and contains content written by the chat participants identified by their IRC nick. No other identity is recorded.
Alternate versions:
and
Text
Provided by Dave Beckett. Hosted by Useful Information Company.