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/rdfig (also known as server irc.freenode.net channel #rdfig if that URI does not work for you).
NOTICE: #rdfig logs are being turned off 2004-12-03. Please
switch to the new and
shiny #swig channel for Semantic Web Interest Group chat.
Change your client to #swig and enjoy the new experience.
Or read the latest #swig logs
to see what you've been missing :)
Semantic Web Interest Group Logs > 2001 > 2001-09 > 2001-09-19 (Latest) (Search)
11:19:31 * azaroth waves.
11:23:09 <azaroth> em: Not sure how much your talk at ECDL had to do with this, but Paul (boss) got a call from the EU folks today saying basically that they are looking in particular for applications based around the Semantic Web. Considering that in the projects panel they were very much into library/museum/archive merging, perhaps you can chalk up a pretty big convert.
11:26:16 <danbri> cool :)
11:28:01 <azaroth> As I had to explain at least the basic concepts to him of it last week, he was pretty pleased with me ;)
11:43:23 <azaroth> danbri: This is probably a stupid question, but is there a triples exchange format?
11:43:39 <azaroth> To which the answer is, yes, RDF.
11:44:16 <azaroth> But I'm thinking more along the lines of just an individual triple as opposed to a full description which can contain many triples.
11:52:07 <danbri> azaroth: not really. Closest is the triple-dump formats people sometimes use, most recently the ntriples format used for RDF Core test cases. See recent WD (I forget URL) or http://wwww.w3.org/2001/sw/RDFCore/ntriples/
11:54:54 * azaroth nods.
11:55:25 * azaroth staples down AaronSw's connection.
11:56:47 * sandro is a firm supporter of N-Triples being the more-definitive RDF format. (but you knew that.)
12:01:48 * azaroth hehs and finds a CSS bug in Mozilla. The rendering of exampleInner and Outer are broken.
13:40:05 * DanC waves from 1st telcon of the day...
13:40:26 <DanC> hmm... maybe only telcon of the day... wednesdays maybe aren't so bad any more...
13:40:43 <mids> does someone know LaTeX?
13:40:47 <azaroth> Somewhat
13:41:08 <mids> I got a style file I want to use, but latex complains about a missing .cls?
13:42:24 * azaroth grins. Beyond me I'm afraid
13:42:57 <mids> tnx anyway
13:43:04 <azaroth> NP
13:57:44 * danbri heads off to france;
14:24:03 <libby> aaron, can you help me with a trivial python thing?
14:24:18 <libby> I don't know how to install the soap module...
14:27:57 <bijan> "Install"?
14:28:22 <libby> er...
14:28:28 <libby> help....
14:28:33 <bijan> You've downloaded the file...
14:28:37 <libby> yup
14:28:38 <bijan> You've unzipped it....
14:28:43 <libby> check
14:28:52 <bijan> Is it a bunch of files or just one?
14:29:03 <bijan> (And you know Java, right?)
14:29:20 <libby> h'm; there's a SOAP.py file, I think the rest are tests
14:29:23 <libby> yep
14:29:41 <bijan> All you need is to put it in a folder included in your Pythonpath.
14:29:50 <libby> oh. ok
14:29:54 <bijan> Or add it's path to your pythonpath.
14:30:00 * azaroth chuckles and read a 'soappy' file.
14:30:07 <libby> I'm not sure I have a pythonpath
14:30:20 <libby> maybe I should read teh man pages better
14:30:27 <bijan> You do.
14:30:32 <bijan> Fire up the repl
14:30:38 <bijan> type
14:30:41 <bijan> import sys
14:30:42 <bijan> then
14:30:55 <libby> repl?
14:31:11 <bijan> read evaluate print line.
14:31:12 <bijan> I.e., the shell :)
14:31:14 <bijan> then
14:31:16 <bijan> sys.path
14:31:18 <libby> ah :)
14:31:23 <bijan> That will display you're current python path.
14:31:26 <bijan> it's just a list.
14:31:31 <bijan> So you can add to it dynamically.
14:31:44 <bijan> sys.path = sys.path + []
14:32:08 <libby> bash: sys.path: command not found :(
14:32:59 <bijan> Er.. your *python* shell ;)
14:33:05 <bijan> Fire up your python shell.
14:33:11 <libby> oh
14:33:17 <libby> sorry...
14:33:20 <bijan> Heh :)
14:33:58 <libby> okeydokey, seems to be working now
14:36:05 <bijan> Great.
14:36:11 <bijan> Note that that isn't permanant.
14:36:16 <bijan> I.e., it won't persist twixt session.
14:36:39 <bijan> but you can do the import sys; sys.path.munge trick in your own scripts and modules.
14:36:47 <bijan> ANd I'm sure there's a config thing for your system.
14:40:33 <libby> thanks bijan, I uderstand what's going on a bit better now :)
14:40:49 <bijan> :)
14:40:51 <bijan> I'm glad.
14:41:33 <libby> :))
15:47:00 <DanC> tim? I'm debugging log:uri...
15:47:16 <DanC> there's a line: if type(obj_py) is type(""): ...
15:47:39 <DanC> which fails when the URI results from parsing XML... its type is type(u"")
15:48:16 <DanC> now URIs should always be US-ASCII strings... the RDF/xml parser should reduce unicode to US-ASCII using the IURI hack.
15:49:01 <DanC> I'm looking for the right places to fix that in sax2rdf.py, but I can't quite tell what's passed across the makeStatement() interface: are URIs relative at that point, or absolutized?
15:49:48 <DanC> the makeStatement() interface is really core and should be factored out of notation3.py. I noticed that when writing KIFSink.py; there's no reason KIFSink.py needs to know anything about notation3 syntax.
16:08:23 <DanC> hmm... bijan, it seems timbl did separate out the representation stuff from cwm.py into thing.py
16:08:25 <DanC> at least partly
16:08:29 <bijan> Cool.
16:18:05 <DanC> sigh... it's still a mess. compareURI() actually compares things that are *not* URIs.
16:31:09 <tim2> Hi - sorry missed channel - wa son other machine
16:32:07 <tim2> makeStatement() should have abolute URIs I think
16:32:30 <DanC> is that the way the code works now?
16:32:32 <tim2> factoring out: I agree
16:33:46 <DanC> practical motivation: I'm trying to generate a list of W3C team contacts. I'm having trouble going from homePage to homePageAddress and back.
16:33:47 <tim2> works - not sure
16:35:30 <DanC> notation3.py seems to absolutize during parsing/tokenization: uref = urlparse.urljoin(self._baseURI, str[st:i])
16:35:51 <tim2> Yes. The parser is always told the URI of what it is parsing.
16:36:22 <tim2> So absolurtes must be passed.
16:36:22 <DanC> checking the RDF/xml parser...
16:36:27 <DanC> btw... # @@@@@@@@@ use numbers for speed
16:36:41 <DanC> you can use x is y rather than x == y to avoid strcmp()
16:38:08 <tim2> Yes. I try to.
16:39:23 <DanC> try to: then why the @@@@@@@@@ use numbers for speed comment? was that before you discovered the x is y idiom?
16:39:24 <tim2> I didn't think we had anything generating unicode in the swap code. The windows debugger freakes when it tries to print it on the screen.
16:39:46 <DanC> the sax stuff deals in unicode.
16:40:07 <DanC> aha... sax2rdf absolutizes at parse time; in handling rdf:about: self._subject = self.uriref(value)
16:40:52 <tim2> Ok, so the attribute -> URI conversion needs to fix unicdoe -> ascii.
16:41:11 <DanC> yes... I started working on unicode->ascii: uri = uri.encode('utf-8')
16:41:19 <DanC> unfortunately, I think I masked some bugs in doing so.
16:41:31 <tim2> masked? unmasked?
16:41:57 <DanC> masked. that code happily converts unicode to utf-8 without %xx-encoding stuff above 127
16:42:48 * DanC thinks we need to bite the bullet and write a URI-syntax-handling module; python's urllib is too buggy
16:44:23 <tim2> Is the interface wrong?
16:44:45 <tim2> Wouldn't fixng the existing one with the same name be more public spirited?
16:44:53 <DanC> yes, I think so. It treats # differently based on the scheme.
16:45:08 <DanC> i.e. yes the interface is wrong.
16:45:20 <tim2> Are you in notation3.n3 now? I'd like to add a sourceURI to BadSyntax parameters.
16:45:34 <DanC> I'm not sure what I'm in.
16:46:07 <DanC> I think I only need to change cwm.py to fix this bug.
16:46:38 <DanC> I've sprinkled a few of these about: assert type(str) is type("") # caller %xx-ifies unicode
16:48:16 <DanC> hmm... should log:uri do %xx escaping of unicode chars? or just fail if there's a non-ascii character?
16:52:18 <tim2> hmmm.
16:52:28 * DanC wished timbl would stick to 80 character lines
16:52:33 <tim2> I would say fail
16:52:39 <tim2> on irc or source code?
16:52:43 <DanC> source code
16:52:46 <tim2> source code i guess
16:55:46 <tim2> I'll bear it inmind - though some times the nesting get sclose to 80 cols itself!
16:56:06 <DanC> yes, and that's bad. very bad.
16:56:20 <DanC> if the nesting gets that deep, split the function up.
16:56:58 * DanC can't figure out why emacs is confused about indentation in cwm.py
16:57:15 <tim2> The python URL loader is not perfect -- when I get a 300 Multiple choices it returns the accompanying body.
16:58:04 * tim2 notes that he has a de-cr.py program which recursively eradicates all CRs from .py and .n3 files
16:58:53 <DanC> 300/body: what's wrong with that? I don't follow.
17:00:01 <tim2> The coed never know it deosn't ahve the document,and proceeds to parse it.
17:00:10 <tim2> The code never know it deosn't ahve the document,and proceeds to parse it.
17:00:12 <DanC> oh... you don't get the 300 code?
17:00:18 <tim2> where would one get that?
17:00:38 <tim2> there is a mime message thing .... doe sthat have it?
17:00:39 <DanC> I guess I'd expect an exception rather than a normal return from urlopen()
17:00:46 <tim2> me too.
17:01:14 <tim2> Our server is of course a bit weird when it says "multiple choices" instead of "not authorized".
17:01:31 <tim2> but it should still eb an exception.
17:02:54 * DanC commits cwm.py,v 1.73
17:03:23 <DanC> I'd like to go over thing.py a bit... from the perspective of something like KIFSink.py
17:03:48 <DanC> thing.py shouldn't import notation3.py ... it should be the other way around, no?
17:04:30 <tim2> Yes.
17:04:52 <tim2> There should be some makeStaement interface definition - the basic and mythical sink.
17:05:23 <tim2> It doesn't have to import thing. Thing implies interning.
17:05:26 <DanC> yes... the parser/sink interface... that's not thing.py, is it?
17:05:49 <DanC> have you looked at my toolkit-based implementation of notation3? http://www.w3.org/2000/10/swap/rdfn3-gram.html
17:05:56 <tim2> No, thing and the sink inetrface share little
17:06:56 <tim2> toolkit - what toolkit? no, I hadn't ... looks interesting.
17:07:13 <DanC> yapps toolkit; cited from rdfn3.g (linked from rdfn3-gram.html)
17:07:50 <DanC> I was able to build a gram2html.py thingy based on the yapps toolkit, whence comes rdfn3-gram.html
17:07:56 <tim2> so i see ... is it a pipeline event-driven one?
17:08:15 <DanC> no, not even-driven, I don't think.
17:08:32 <DanC> it's a top-down, recursive-descent parser, just like the original notation3.py
17:09:01 <DanC> but it uses regexps for lexing. and the connection between the HTML version of the grammar and the implementation is maintained by machine.
17:09:11 <tim2> Event-driven would persuade me to switch to it, as the current in-memory way is not a long term solution.
17:09:16 <tim2> Yes, it is nice!
17:10:06 <DanC> in developing gram2html.py, I discovered that yapps has a nice interface to the parser data structures; i.e. you can get the first/follow stuff independent of the generated python code.
17:10:35 <DanC> so in theory, it should be straightforward to generate state-machine code...
17:11:00 <tim2> first/follow undefined in line l-2 -- assumed lex/yacc internals
17:11:26 <DanC> first/follow is from the dragon book, i.e. "compilers" class that almost all C.S. students take. sorry.
17:11:44 <tim2> Generating the state machine code was the bit you refered to as bendingyour head sideways OWTTE and the bit one expecst to get from the tools!
17:11:50 <DanC> let's see... your background includes moore/mealy machines and such?
17:13:55 <tim2> All CS students -- look, I have just forkedout for the 3 volume Knuth -- I am doing my best ;-)
17:14:20 <tim2> It has a reference to my mother on p230 of vol 1 (!)
17:14:39 <DanC> !
17:14:57 * DanC notes the dragon book is missing from http://www.w3.org/Collaboration/knowledge
17:15:55 <DanC> anyway... so... the code-cleanup-value of rdfn3_yapps.py alone might not convince you, but a state-machine would. noted.
17:16:09 <tim2> For references to the state of interpreters in the early fifties, see the articel "Interpretive Sub-routines" by J.M.Bennet, D.G.Prinz, and M.L.Woods, Proc ACM Nat Conf (1952), 81-87.
17:16:36 <tim2> I have the dragon book too, I find.
17:17:27 <DanC> first/follow explained, courtesy of google: http://compilers.iecc.com/comparch/article/97-10-089
17:19:13 <DanC> back to code-reviewing thing.py... all the META_* stuff seems like dead code.
17:19:39 <DanC> and CONTEXT = notation3.CONTEXT is probably clearer as: from notation3 import CONTEXT
17:20:10 <tim2> A practical problem- some schema of ours uses "isDefinedBy" to point to the HTML Rec, so check.n3 goes off assuming that that is the offical schema :-(
17:20:16 <tim2> )
17:20:18 <DanC> the name RESOURCE, as in pair=(RESOURCE, uriref) seems extremely misleading
17:20:43 <DanC> yes, it's not clear at all what the range of isDefinedBy is.
17:20:50 <tim2> META stuff - embryonic. We can discuss its usefulness and abortion.
17:21:19 <tim2> CONTEXT = agreed
17:23:05 <DanC> CONTEXT, PRED, SUBJ, OBJ and RESOURCE, FORUMULA, LITERAL, ... belong in the mythical parser/sink interface, no?
17:23:53 <tim2> yes.
17:24:04 <tim2> Dunno what to call Resource.
17:24:22 <DanC> in rdfn3.g I called it URIREF
17:24:44 <DanC> but...hmm... URIREF is the relative form. URI might work for the absolute form.
17:26:08 <tim2> re cdoe review: Are you editing these or should I take the log and go though it later?
17:26:42 <DanC> I'm not editing yet. haven't mustered the courage.
17:26:42 <tim2> name for mythical sink interface .... stream.py? sink.py?
17:26:51 <DanC> one excuse: waiting for you to split cwm.py between command-line and other.
17:27:30 <DanC> sink/stream are pretty generic names; these sinks are specific to RDF knowledge-bases.
17:27:46 <tim2> Can i catch an exception and relaunch a new one which refers to it in python?
17:27:54 <tim2> rdfstream
17:27:59 <DanC> catch: I think so.
17:28:21 <DanC> rdfstream works well enough for me. (bijan? quick thoughts?)
17:28:57 <bijan> Hmm?
17:29:02 <bijan> For...?
17:32:08 <DanC> thoughts: on what to call a new python module for the RDFSink base class and the enumerations CONTEXT, PRED, SUBJ, OBJ and RESOURCE, FORUMULA, LITERAL, ...
17:33:01 <bijan> Ah. Hmm.
17:33:12 <DanC> candidate: rdfsink.py
17:33:54 <bijan> Where exactly are the enumerations used?
17:34:02 <DanC> the key method seems to be makeStatement ... I wonder if that informs the choice of names.
17:35:02 <DanC> used: all over, but crucially in makeStatement(): it takes a tuple of the form (context, pred, subj, obj)
17:35:24 <DanC> where each of those 4 is a pair (ty, stuff) where ty is one of RESOURCE, FORUMULA, ...
17:35:41 <bijan> rdfsink doesn't inform me at all, but I don't hate it, per se.
17:36:22 <bijan> Since in python you can pop the module inot a variable, it's hard to get *too too* worked up about the prefix.
17:36:25 <tim2> rdfstream.py ?
17:36:31 <DanC> statementSink.py ?
17:37:07 <bijan> These are for building statement objects, yes?
17:37:22 <bijan> If so, I prefer something with statement. More specific.
17:37:33 <DanC> no, not building statement objects; for communicating statements between parsers, generators, stores, etc.
17:37:46 <bijan> Ah.
17:37:58 <bijan> Then statementSink wins, I think.
17:38:29 <bijan> rdfstream tends to make me thing of something over an rdf document.
17:38:54 <bijan> fwiw.
17:39:24 * DanC wonders if the concept has a name in other RDF apis...
17:41:19 * bijan 's problem is that he thinks of a sink as a place you chuck stuff.
17:41:33 <bijan> Guess what MY kitchen counters look like :)
17:43:02 <DanC> what's the python-land convention for naming modules the closely correspond to classes? In modula-3, the module was called foo.m3 and the class was foo.T
17:43:33 <DanC> s/the closely/that closely/
17:44:08 <DanC>http://www.python.org/doc/essays/styleguide.html
17:44:08 <dc_rdfig> A: http://www.python.org/doc/essays/styleguide.html from DanC
17:44:16 <DanC> A:|Python Style Guide
17:44:16 <dc_rdfig> titled item A
17:44:31 <DanC> A:by Guido van Rossum. (not sure when)
17:44:32 <dc_rdfig> commented item A
17:45:29 <DanC> A:"Modules that export a single class ... are often named in MixedCase, with the module name being the same as the class name"
17:45:29 <dc_rdfig> commented item A
17:45:32 * tim2 leaves fro lunch leaving notation3 and cwm.py locally modified -- error handling improvements
17:45:35 <tim2> tim2 is now known as t-lunch
17:46:14 <DanC> A:this argues to call the new swap module we're discussing RDFSink.py
17:46:14 <dc_rdfig> commented item A
17:47:44 <dmiles> Ah interesing glad. i looked at window
17:48:22 <dmiles> so ow goes the war on generically being able to read everything into one form?
17:53:34 <DanC> war? er... we're just building some apps that seem useful.
18:01:11 <dmiles> well i was refering to xml2rdf/sax2rdf
18:16:12 * DanC splits out RDFSink.py from notation3.py ... lightly tests...
18:20:42 <t-lunch> t-lunch is now known as timbl
18:24:03 <DanC> crap. segmentation fault in the first test.
18:36:31 <DanC> whew... tests mostly passing now...
18:37:26 <timbl> Not so easy to recreate the original excetion - you get passed its class and a thing which may be an arg oir a tuple of args used to initialize it ... not the object itself.
18:37:55 <DanC> really?
18:38:11 <DanC> tim, diff: ref/environ.n3: No such file or directory
18:40:11 <DanC> hmm... sameDan.n3 test... not sure if it's really passing or failing.
18:40:26 <DanC> anyway... I think I'm gonna check this RDFSink.py refactoring in.
18:42:26 <bijan> timbl: I don't think python has resumable exceptions per se.
18:42:30 <bijan> Stackless might.
18:44:37 <DanC> I don't think he's trying to resume... just reraise
18:46:36 <timbl> I got it - info[1] is in fact the exception instance.
18:47:06 <timbl> ref/environ.n3 - feel free to make it
18:47:11 <timbl> i must have forgotten
18:47:43 <tim> __main__.DocumentAccessError: Unable to access document <fobar>, because:
18:47:44 <tim> [Errno 2] No such file or directory: 'fobar'
18:47:55 <tim> That's more like it. Nested reasons for what went wrong.
18:48:05 * tim happier
18:48:46 <DanC> cwm.py 1.74; notation3.py 1.90; sax2rdf.py 1.9; KIFSink.py 1.5;
18:48:55 <DanC> tested and checked ii
18:48:56 <DanC> in
18:49:17 <DanC> oh... not to mention RDFSink.py 1.1
18:49:37 <DanC> oops... some lines are still >79chars
18:49:46 <DanC> and I forgot the Open Source license blurb
18:49:50 <tim> I would like to see: Can't parse <http://www.foobar.com/baz> because DNS service times out, seems that I can't ping your defualt server 111.222.33.1 - traceroute suggets linkfr from rcn.net to mit.edu has gone."
18:50:11 <tim> " .... call 1-800-RCN".
18:50:32 <tim> That ismore lik ean error message than IOError!
18:50:33 <DanC> I don't necessarily want the machine to hunt down *extra* info on errors... just so long as it doesn't throw away what info it did find.
18:51:00 <tim> Not even run a traceroute on the offdning IP hst? Ofetn by the tim eyou get the message the net has recovered.
18:51:18 <tim> I suppose it should be optional.
19:04:01 <timbl> Ihave just committed the errro handling, merged with your diffs, danc.
19:07:28 <DanC> nifty
19:15:35 <timbl> Do yu need to check in a RDFSink.py?
19:16:30 <timbl> DanC?
19:30:33 <DanC> oops... RDFSink.py is now checked in, 1.1
19:34:09 <timbl> Thanks!
20:19:42 * DanC wonders what's up with all the joining and leaving today
20:29:09 * dajobe sighs and reads familiar w3 cvs error: failed to create lock directory in repository `/sources/public/2000/10/swap': Permission denied
20:29:36 * DanC consults w3c systems gurus...
20:30:40 <DanC> dave, I have an action to ask you what 3 to 10 resources every RDF developer should know about.
20:30:53 <DanC> i.e. how to clean up http://www.w3.org/RDF/#developers
20:31:07 <dajobe> hmm, have to think about that
20:31:15 <dajobe> can I get back to you next week?
20:31:20 <DanC> any time.
20:31:32 <gerald> dajobe, does that error happen, go away for a while, and then come back? or does it always do that?
20:31:45 <dajobe> gerald: it is intermittent
20:31:52 <dajobe> (although not working at the moment)
20:32:45 <gerald> oh... there's a cron job that rsync's those ,v files from our internal repository, so the public one shouldn't be writable, should it?
20:32:59 <gerald> (the cron job purposely does a chmod -R a-w)
20:33:08 <DanC> not writeable, no.
20:33:11 <dajobe> you can set the CVS config so the lock dir root can be in a different place than the cvs tree
20:33:24 <dajobe> and make the lock dir area um, g+s writable whatever that means, I forget
20:33:46 <DanC> can you do a cvs -n update, dajobe?
20:33:52 <gerald> ah, you were reading, not writing. got it.
20:33:57 <DanC> (-n doesn't try to acquire any locks, I don't think)
20:34:00 <deltab> g+s sets the gid of created files/dirs
20:34:11 <gerald> cvs -n doesn't modify local files though
20:34:12 <dajobe> DanC: seems happy
20:34:26 <DanC> local: ah. good point.
20:34:29 <dajobe> DanC: ie cvs -n update happily did no work
20:35:15 <DanC> kifbot, help
20:35:40 <gerald> oh... looks like our other cron job kicked in, and you should be able to read now (until 17 past the next hour :)
20:36:15 <dajobe> gerald: regular cvs update worked, thx
20:37:29 <tim> Ah, I see: The RDF 1.0 schema <http://www.w3.org/1999/02/22-rdf-syntax-ns> used <http://www.w3.org/TR/WD-rdf-schema> as a namespace for s:comment.
20:37:48 <DanC> yes, there are quite a few dead bodies in the RDF schema for RDF and RDFS.
20:38:33 * DanC waves to Nabil, wonders when he stopped by
20:38:36 <tim> Can we fix it?
20:38:48 <DanC> yes, I think we can fix it, Tim.
20:39:06 <tim> Do you think I should ask the webmaster or the RDF WG?
20:39:06 <DanC> I fixed an XML-level bug in the RDF schema for RDF schema.
20:39:16 <DanC> or rather: maybe I just reported it and worked around it.
20:39:18 <tim> (or use Amaya?)
20:39:42 <DanC> you should at least notify the RDF WG of any changes you make; via www-rdf-comments
20:39:46 <tim> Namespace persistence policy allows bug fixes.
20:40:26 <DanC> the RDFS CR suggested a "change no bytes" policy for schemas, but... it's just a CR, and the implementation experience I've seen says fixing bugs is worthwhile.
20:40:48 <tim> (There remains an issue as to why cwm was verifying the RDF schema itself, when it was supposed to be verifying documents but is my problem.)
20:41:14 <DanC> AaronSw, are you there, or is that your machine that keeps coming and going?
20:41:29 <sbp> It's just his machine - Jewish holiday
20:41:36 <DanC> AaronSw, btw... TimBL's working on RDF schema validation. you might want to offer it as a web service, ala the N3/RDF-xml converter.
20:42:29 <dajobe> what does an rdf schema validator validate?
20:42:40 <sbp> Schema validation: I had some thoughts on that... check to see if a schema uses any terms whose URIs start with whatever namespace you're checking, but do not contain any of the terms in that namespace
20:42:43 * DanC forgets where the main test case...
20:43:19 <dajobe> an rdf schema (whatever that is) doesn't have to be terms from just one namespace
20:43:26 <bijan> A schema validator would validate what a schema validator could validate if a schema validator could only get a valid date.
20:43:26 * DanC finds the test case... chacls...
20:43:38 <sbp> of course not, but it's usually arranged like that
20:43:53 <sbp> other things you can do are simply checking inconsistencies
20:44:07 <DanC>http://www.w3.org/2000/10/swap/test/includes/check.n3
20:44:07 <dc_rdfig> B: http://www.w3.org/2000/10/swap/test/includes/check.n3 from DanC
20:44:19 <DanC> B:|check.n3 -- Test whether a schema mentions the predicates used in this data
20:44:19 <dc_rdfig> titled item B
20:44:21 <sbp> e.g. make sure that there are no terms that belong to two disjoint classes
20:44:50 <DanC> the stuff TimBL is working on is more along the heuristic/lint/typo level than the disjoint/inconsistent level
20:45:07 <dajobe> I was wondering if there should be a well known rdfs:Class something like rdfs:Schema so you could describe schemas; link to their contents via other properties or bags...
20:45:18 <sbp> { :x a :y, :z . (:x :y) a daml:Disjoint } log:implies { :x a :InconsistentTerm } .
20:45:44 <sbp> yeah, like the ol' RDF Lint stuff
20:45:45 <DanC> inconsistent thing, not term.
20:45:52 <DanC> RDF Lint stuff?
20:45:55 <bijan> inconsistent document?
20:46:11 <sbp> s/Thing/Term
20:46:24 <sbp> RDF Lint: http://infomesh.net/2001/05/rdflint/
20:46:35 <sbp> my server's down though, I think. Email has been intermittent
20:47:30 <sbp> sparser.n3 contained rules that noted inconsistencies like bad spelling, things being properties and classes, that sort of thing
20:47:40 <DanC> check.n3 takes a document, and for each { :s :p :o } in the document, follows :p, looks for isDefinedBy, looks for { :p a rdf:Property} and complains if not found. or something like that.
20:48:26 <sbp> check.n3: neat!
20:49:01 <sbp> we should combine all of this stuff together at one point... I found RDF Lint really useful for debugging schemata
20:49:43 <sbp> parsers can tell you the syntactic errors, but when you're working on something complex and call a class a property somewhere by mistake... it's useful
20:49:51 * DanC tries check.n3 on daml+oil...
20:50:03 <DanC> File "cwm.py", line 620, in storeQuad
20:50:04 <DanC> raise internalError #should only once
20:50:04 <DanC> NameError: There is no variable named 'internalError'
20:50:30 <DanC> tim, I suggest using RuntimeError in stead of internalError
20:50:59 <tim> ok - I don't know the magic list of errors so I makem one up - it gives you a stack dump after all. But now I know I can use a string....
20:51:19 <bijan> Or an object!
20:51:31 * DanC suggests TimBL spend a couple minutes reading some python docs.
20:51:47 <sbp> "make them up" :-)
20:52:03 <tim> Object - but then you have to make the obejct. I'll do that when I actaully have parameters to pass on. I have added a coupel to cwm.py recently
20:52:28 * sbp plucks up the courage to ask...
20:52:29 <sbp> How long 'till CWM has decent croyptography built ins?
20:52:52 <dajobe> right after you submit the patch, sbp :)
20:53:01 <sbp> :-)
20:53:14 <DanC> er... should I expect check.n3 to work with RDF/xml input?
20:53:34 <tim> re: the stuff TimBL is working on is more along the heuristic/lint/typo level than the disjoint/inconsistent level -- test/includes/check.n3 is that, but an earlier one (quoted in swap/Examples.html) does the inconsistency business.
20:54:20 <tim> re crypto - I think critical step is my installing amkCrypto under Cygwin. The modules i have but I think it needs some c compilation too.
20:54:53 <tim> If you want to have a go at it, then cwm_string.py is the the thing to clone into cwm_crypot.py
20:55:00 <sbp> aha: http://www.w3.org/2000/10/swap/test/schema-rules.n3
20:55:35 <sbp> cwm_string.py: I just looked at that today, and played about with string: concat. Was able to make an XHTML document out of RDF! :-)
20:56:07 <sbp> I was thinking of using a PGP Python wrapper...
20:56:25 * dajobe notices cwm_string.n3: LITERAL_URI_prefix = "data:application/n3;"
20:56:55 <sbp> that doesn't get output... for the store only, I presume
20:59:08 <DanC> I'm not sure LITERAL_URI_prefix is used at all. it might be dead code.
20:59:26 <DanC> tim? should I expect check.n3 to work with RDF/xml input?
20:59:52 <tim> DanC; Yes, check.n3 should work onRDF input grace au loadToStore which you wrote.
20:59:57 <tim> s/;/:/
21:00:32 <DanC> ah... loadToStore depends on RDF/xml being served as text/xml or application/rdf or some such
21:01:01 <tim> sbp: I found amkCrypto which seems to be the most current ... though no one is jumping up and down to maintain it forever.
21:01:15 <DanC> there are lots of practical questions about MIME types and format negoation that I'm not sure how to answer because I don't have a good grip on them formally.
21:01:19 <tim> But amk at least tried to make a clean consistent interface .
21:01:45 <DanC> tim, have you seen JoeR's implementation of XML c14n in python?
21:01:52 * sbp checks out amk...
21:02:25 <tim> No, I have not seen JoeR's implementation of XML c14n in python.
21:02:33 * DanC hunts...
21:03:34 * DanC waits for dev.w3.org and waits and waits...
21:03:50 <gerald> dan, I'm unable to reach MIT (for the last ~2 mins)
21:04:04 <DanC> ah
21:05:48 * timbl finds laptop dropped tunnel, can't reconnect
21:06:18 <gerald> hi tim... MIT seems to be unreachable
21:06:20 * timbl we have a problem, Houston
21:06:36 <sbp> Down goes w3.org...
21:08:18 <DanC> tim, is your list redesign done? I'm trying to read daml+oil.daml and losing:
21:08:20 <DanC> python2 cwm.py --rdf http://www.daml.org/2001/03/daml+oil --n3 >,xxx
21:08:29 <DanC> File "notation3.py", line 1224, in makeStatement
21:08:30 <DanC> raise RuntimeError ("Should only see first and rest in list mode", triple)
21:08:30 <DanC> RuntimeError: ('Should only see first and rest in list mode', ((1, 'http://www.daml.org/2001/03/daml+oil#_formula'), (0, 'http://www.w3.org/2000/01/rdf-schema#comment'), (0, 'http://www.daml.org/2001/03/daml+oil#nil'), (2, u'\012 the empty list; this used to be called Empty.\012 ')))
21:09:09 <gerald> MIT's back
21:09:30 <DanC> dev.w3.org is still slow
21:10:24 <DanC>http://dev.w3.org/cvsweb/2001/xmlsec-python/
21:10:24 <dc_rdfig> C: http://dev.w3.org/cvsweb/2001/xmlsec-python/ from DanC
21:11:10 <DanC> C:|xmlsec-python -- XML c14n in python
21:11:10 <dc_rdfig> titled item C
21:12:47 * timbl-lap tries cwm --rdf http://www.daml.org/2001/03/daml+oil --n3 -- crashes, in pretty printing it seems. Rats
21:13:36 <timbl-lap> Oh, it was trying to print a list and found a property other than :first and :last.
21:13:52 <timbl-lap> IT eihter shouldn't have started, or should print th esublist as a separate thing.
21:13:59 <DanC> indeed, I add --ugly and it doesn't crash
21:14:43 <DanC> this still crashes, though: TARGET=http://www.daml.org/2001/03/daml+oil python2 cwm.py test/includes/check.n3 --think --purge --ugly
21:14:55 <DanC> File "sax2rdf.py", line 354, in startElementNS
21:14:55 <DanC> self.sink.makeStatement(( c, # Link in new pair
21:14:55 <DanC> File "cwm.py", line 545, in makeStatement
21:14:55 <DanC> self.storeQuad(q)
21:14:55 <DanC> File "cwm.py", line 620, in storeQuad
21:14:56 <DanC> raise RuntimeError, "should only [@@] once"
21:14:58 <DanC> RuntimeError: should only [@@] once
21:16:36 * sbp tries out some of the mxCrypto functions...
21:30:32 * DanC takes Justin to soccer practice...
21:41:57 * timbl goes to collect kids
21:42:04 <timbl> timbl is now known as timbl-gone
22:05:12 <sbp> Hmm... has MIT gone again?
22:10:13 <gerald> not completely, but I can't get through to W3C's web servers
22:10:47 <gerald> the servers are fine, but it seems all port 80 traffic is firewalled off or something
22:20:20 <timbl-lap> But seemed to be a triple aserting that w list was of type <#List> rather than dpo:List which woul dhave been OK (ignored).
22:20:27 <timbl-lap> s/But/Bug
22:37:03 <gerald> fyi, MIT has shut down all port 80 traffic to debug a likely code red attack
22:37:23 <Morbus> you mean nimda?
22:37:47 <gerald> that's what I expected, but I was told code red
22:38:00 <Morbus> a lot of people are mistaking it for a variant of code red.
22:38:12 <gerald> (message might have been garbled somewhere on the way to me)
22:38:16 <Morbus> i'm still getting code red hits on my site, but nothing to shut down the port for.
22:38:26 <Morbus> i've gotten about 12000 nimda hits though
22:39:27 <gerald> MIT's net folks really know their stuff, so I'm sure they shut it down for a good reason
22:39:52 <Morbus> i'm surprised they didn't block just its signature in their routers.
22:40:16 <gerald> I'm sure they're working towards that.
22:41:06 <gerald> I saw this the other day: "We are currently receiving
22:41:07 <gerald> over 8000 hits per second from as many as one hundred thousand NT servers
22:41:07 <gerald> on the Internet. Network performance has not been affected.
22:41:07 <gerald> " -- http://www.pair.com/pair/support/notices/
23:00:12 <Morbus> Morbus is now known as morbus-msgMe
23:10:35 <sbp> Gerald: thanks for the FYI. I was watching Monty Python :-)
23:48:26 <MorbusIff> MorbusIff is now known as Morbus
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.