Semantic Web Interest Group IRC Chat Logs for 2003-03-02

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 > 2003 > 2003-03 > 2003-03-02 (Latest) (Search)

00:00:04 * dmiles hopes spelling is still readable

00:00:28 <dmiles> so Bijan has made the reasoner work of foaf right?

00:00:41 <DanC> ?

00:00:57 <dmiles> Bijan has made a reasoner for RDF tripples

00:01:11 * JosD_ would like to give DanC a snip; it't a Leffe (though not a triple, just a double)

00:01:16 <dmiles> and i was guessing he was up agaist some looping problems

00:01:40 <dmiles> then beyond looping.. there also identity problems

00:02:14 <dmiles> some software it looks to exist that deals with both of these things.. but separately

00:02:15 * JosD_ 's loopings problems started in 86 with Tutbo Prolog...

00:02:29 <DanC> interesting!

00:03:06 * JosD_ meant Turbo Prolog

00:03:15 <dmiles> there are 3 ways i know to solve looping: 1) creating a unlooped flat space

00:03:29 <DanC> I gather Bijan's recent work is on OWL Lite. rather on the 'neat' end of the spectrum. foaf is rather scruffy. I'd be quite surprised if these foaf data made any sense in OWL Lite.

00:03:34 <dmiles> (forward chain and cache universe)

00:04:24 <dmiles> did OWL start out with a reasoner?

00:04:28 * JosD_ finds the lack of #'s in http://xmlns.com/foaf/0.1/index.rdf quite unacceptable

00:04:46 <DanC> see A:, jos. ;-)

00:04:58 <eikeon> A:

00:04:58 <dc_rdfig>http://rdfweb.org/issues/show_bug.cgi?id=9

00:04:59 <dc_rdfig> looking up foaf properties fails/misleads

00:05:00 <dc_rdfig> (1:DanC) on the use of # vs / in foaf

00:05:01 <dc_rdfig> (2:danbri) Yeah, I spent an afternoon trying to get Apache httpd.conf to redirect all those URIs to http://xmlns.com/foaf/0.1/

00:05:02 <dc_rdfig> (3:DanC) then you'd run into httpRange-14, and I still wouldn't be happy.

00:05:03 <dc_rdfig> (4:danbri) But I didn't manage it with regexes etc., I forget why now. I might have to do it by hand, ie. a separate moved-temporarily for each property and class.

00:05:04 <dc_rdfig> (5:danbri) Re httpRange-14, I'm in the same boat as Dublin Core, RSS 1.0, my wordnet-in-rdf vocab, Adobe (http://ns.adobe.com/iX/1.0/), ...

00:05:06 <dc_rdfig> (6:DanC) same boat... yes... but those others haven't bitten me as hard yet. ouch... adobe too? sigh.

00:05:08 <dc_rdfig> (7:danbri) Can you give an example of a system that thinks "that documents and properties are disjoint", and has proved useful? (Note that the 'error-finding diagnostic' case is only compelling for those that believe they're disjoint, so I'm not gonna change to seeing them as disjoint solely because it'll then create a new class of errors to detect!)

00:05:13 <dc_rdfig> (8:DanC) not yet. but the future is longer than the past, and you can decide later that two names mean the same thing. if you ever agree that you're using the same name for two different things, you're hosed.

00:05:16 <dc_rdfig> (9:danbri) I buy that argument. Strangely enough it is why I steered clear of '#' in my ns names. I was worried that http://www.w3.org/Icons/w3c_main#foo denoted at least two things, depending on context.

00:05:19 <dc_rdfig> (10:danbri) I've closed this [http://rdfweb.org/issues/show_bug.cgi?id=9|issue]: property names such as [http://xmlns.com/foaf/0.1/name|foaf:name] should now dereference OK (by tmp redirects). See issue text for details.

00:05:22 * JosD_ Oh you were actually stronger...

00:06:22 <dmiles> future is longer than the past, and you can decide later that two names mean the same thing.

00:06:45 <dmiles> yeah meaning the same thing is very much a delve into the future

00:07:16 <dmiles> deskolemization is what i have heard this called once

00:07:20 * JosD_ thinks that code can be tolerant w.r.t. lack of #, but it's leading to ambiguity

00:07:36 <dmiles> you are unengineering the meaning of the names

00:07:59 <dmiles> until now you identity riddles are solved via meanings intersection

00:08:20 <dmiles> errm your identity riddles are solved via meanings intersection

00:08:44 <DanC> A:he closed this bug after fixing the bug, and opened [a new issue on # vs /|http://rdfweb.org/issues/show_bug.cgi?id=10]

00:08:45 <dc_rdfig> Added comment A11.

00:08:54 <dmiles> one of the first ways to get there is to allow open-world reasoning i think

00:08:59 <DanC> A11:he closed this bug after fixing the 404 part of the bug, and opened [a new issue on # vs /|http://rdfweb.org/issues/show_bug.cgi?id=10]

00:08:59 <dc_rdfig> Replaced comment A11.

00:09:28 <dmiles> if one can be sound in an openworld then its much easier to do soundness for the rest of the project

00:10:37 <dmiles> i think i am looking for a way to contributer now that things take prolog bends

00:11:54 <dmiles> i think i need to install the current things and see what they do.. and if in prolog maybe add extra interfaces

00:12:25 <DanC> 'did OWL start with a reasoner?' ... er... no? yes? several? hmm... not sure what you meant. Many WG members implement reasoners.

00:13:26 * JosD_ likes that "open-world reasoning3

00:13:28 <dmiles> oh yeahj i was asking if there was any particualr reasoner to use

00:13:33 * DanC really underestimated the size of the job when he agreed to co-chair http://www.w3.org/2001/sw/meetings/tech-200303/ . 52 people are registered!

00:13:43 <dmiles> but sounds like thats still open for developement

00:14:05 * JosD_ thinks that DanC can manage that

00:14:27 <dmiles> JosD_: if one canonicalizes logic to explicit negation it becomes open-world

00:14:52 <dmiles> just sometimes this level of completeness can get very hairy

00:15:19 <JosD_> OK, what would you do with log:complementOf

00:15:20 <dmiles> and i found that 2 differnt prolog balckboards handle the problem better

00:16:18 <dmiles> that is a symetric binary predicate to inverted arguments?

00:16:28 <JosD_> that n different stuff is indeed the way to go I think

00:16:39 <dmiles> ok i see the question now..

00:16:56 <dmiles> (a log:complementOf b) in prolog would be:

00:16:58 <DanC> jos, I don't understand your issue with log:complementOf. You can't completely axiomatize it in horn rules, but that's not news, is it?

00:17:14 <dmiles> it can be yes turned to horne

00:17:16 <JosD_> oops dmiles, I meant owl:complementOf

00:17:18 * DanC thinks it's owl:complementOf, no?

00:17:32 <dmiles> but only in openworld reasoner does it stay sound

00:17:59 <dmiles> well its not iself unsound in closed world ;P

00:18:08 <JosD_> DanC, it contains the rest of the world!

00:18:09 <DanC> { ?X a ?C1. ?Y a ?C2. ?C1 owl:complementOf ?C2 } => { ?X owl:differentFrom ?Y } . #one theorem about complementOf

00:18:48 <dmiles> allows us to NOT a single class, i.e. designates the class of instances that are not instances of that class

00:18:50 <DanC> complementOf assumes the law of excluded middle, yes, jos. makes me uneasy. but LEM is all thru OWL.

00:19:30 <JosD_> well, we had about 5 of such theorems; USELESS

00:19:30 * dmiles is sure he can Horne clasue it out but needs an example

00:20:04 * DanC doubts dmiles can axiomatize complement in horn clauses

00:20:05 <dmiles> complient of is an example of good explicit negation

00:20:32 <JosD_> dmiles, even your fingernail is in that class ;-)

00:21:09 <dmiles> well i add one wrapper that destinguishes the type of negation

00:21:10 * danbri wanders past, catches up

00:21:19 <JosD_> ... and I think even unicorns...

00:21:20 <danbri> JosD, sorry you dissaprove of the lack of #

00:21:22 <dmiles> ~a is very definert then the literal not a

00:22:11 <JosD_> yes danbri, on the grounds that the page is different from the formula written on it

00:22:13 <DanC> (forall (?C1 ?C2) (<=> (owl:complementOf ?C1 ?C2) (forall (?X) (<=> (rdf:type ?X ?C1) (not (rdf:type ?X ?C2)))))) # a specification of owl:complementOf in terms of rdf:type, in KIF

00:22:41 <dmiles> ok 3 minites to canonicalize to horne clause

00:22:58 <dmiles> me thanks for the KIF version :)

00:22:59 <JosD_> DanC, would that work for OWL Full, I don't think so...

00:23:09 <DanC> why not, jos?

00:23:36 <danbri> JosD, works are also different from the representations you can HTTP GET / negotiatiate of them from HTTP servers

00:24:33 <danbri> try

00:24:34 <danbri> HEAD -H 'Accept: image/bogus' http://www.w3.org/Icons/w3c_main

00:24:40 <danbri> 406 Not Acceptable

00:24:40 <danbri> Connection: close

00:24:40 <danbri> Date: Sun, 02 Mar 2003 00:24:25 GMT

00:24:40 <danbri> Server: Apache/1.3.27 (Unix) PHP/3.0.18

00:24:40 <danbri> Vary: negotiate,accept

00:24:41 <danbri> Content-Type: text/html; charset=iso-8859-1

00:24:43 <danbri> Alternates: {"w3c_main.png" 0.7 {type image/png} {length 5904}}, {"w3c_main.gif" 0.5 {type image/gif} {length 5684}}

00:24:46 <danbri> Client-Date: Sun, 02 Mar 2003 00:24:29 GMT

00:24:50 <danbri> Client-Response-Num: 1

00:24:52 <danbri> TCN: list

00:24:52 <dc_rdfig> Label TCN not found.

00:24:54 <danbri> one thing, two representations

00:25:43 <danbri> I'm prepared to be persuaded on this. We could just about move FOAF over to using http://xmlns.com/foaf/1.0/# if we act quick...

00:26:14 <JosD_> DanC, can you entail that your broken finger is in owl:complementOf (rdf:Class)?

00:26:38 * danbri muses on possible compromises...

00:27:03 <eikeon> "Strangely enough it is why I steered clear of '#' in my ns names. I was worried that http://www.w3.org/Icons/w3c_main#foo denoted at least two things, depending on context."

00:27:11 <danbri> we might agree that no things with http: names are SpatialThings

00:27:23 <danbri> which covers classes and properties as well as abstract works

00:27:25 <JosD_> DanBri, so you think that CONNEG solves the ambiguity?

00:27:27 * eikeon is curious if there are any examples of the clashes that come up when using #

00:27:47 <danbri> No, I think conneg + rfc2396 is part of the confusion

00:28:03 <danbri>http://www.ietf.org/rfc/rfc2396.txt

00:28:03 <dc_rdfig> A: http://www.ietf.org/rfc/rfc2396.txt from danbri

00:28:13 <danbri> A:|RFC2396 - Uniform Resource Identifiers (URI): Generic Syntax

00:28:13 <dc_rdfig> Titled item A.

00:29:17 <JosD_> OK DanBri, but being explicit e.g. with log:semantics isn't that great?

00:29:19 <danbri> A:section 4.1. Fragment Identifier, "The semantics of a fragment identifier is a property of the data

00:29:19 <danbri> resulting from a retrieval action, regardless of the type of URI used

00:29:19 <danbri> in the reference."

00:29:19 <dc_rdfig> Added comment A1.

00:29:40 <danbri> A:section 4.1. Fragment Identifier, "The semantics of a fragment identifier is a property of the data resulting from a retrieval action, regardless of the type of URI used in the reference."

00:29:40 <dc_rdfig> Added comment A2.

00:29:48 <danbri> A2=""

00:29:52 <danbri> A2:""

00:29:52 <dc_rdfig> Deleted comment A2.

00:29:56 <danbri> A1:section 4.1. Fragment Identifier, "The semantics of a fragment identifier is a property of the data resulting from a retrieval action, regardless of the type of URI used in the reference."

00:29:56 <dc_rdfig> Replaced comment A1.

00:30:12 <danbri> JosD, I'm not sure what you mean.

00:30:38 <danbri> I prefer to use URI(refs) that have a single denotation, rather than ones that RFC2396 suggests may have context-specific denotation/meaning

00:30:43 <DanC> woah... new Z-day?

00:31:00 <danbri> z-day?

00:31:18 <dmiles> ok canicialized

00:31:21 <DanC> did we cross 0000Z?

00:31:38 <eikeon> 32 mins ago.

00:31:47 <DanC> the chump rolled over like it's a new day

00:31:53 <danbri> yup, good point. I should be packing for Boston!

00:31:53 <danbri> And soldering the power connector back on my laptop...

00:32:03 <danbri> it _is_ a new day, yankees

00:32:17 <dmiles> (entails((not type(C, A)and type(C, A)or not type(C, A))and (type(C, A)or not type(C, A)and type(C, A)), type(C, B))and entails((type(C, B)and not type(C, B)or type(C, B))and (not type(C, B)and type(C, B)or not type(C, B)), not type(C, A))and entails((type(C, B)and not type(C, B)or not type(C, B))and (not type(C, B)and type(C, B)or type(C, B)), type(C, A))and entails((type(C, A)or not type(C, A)and type(C, A))and (not type(C, A)and type(C, A)

00:32:40 * eikeon needs to fix power connector on vaio... wonder if danbri has any advice.

00:32:45 <dmiles> erm i'll post it to a webpage ;(

00:32:47 <danbri> bummer, I can't comment on 'yesterdays' chumpings any more

00:33:02 <danbri> eikeon, my advise: don't let me near it with a soldering iron!

00:33:12 <eikeon> danbri: lol

00:33:26 <danbri> you'll thank me for it when you see mine...

00:33:34 <JosD_> DanBri, the uri log:semantics ?f is the case where ?f denotes the rdf formula and not the web page

00:33:50 * DanC dons 'will solder for beer' sign

00:34:05 <eikeon> Yet to see how mine is going to turn out... have been putting off hacking on it out of fear... but it needs fixing.

00:34:35 <danbri> JosD, thats a handy approximation, but HTTP takes a bunch of arguments and context etc to model properly (DanC had some nice stuff in Larch to that end, a while ago...)

00:34:50 <LTjake> Hello all.

00:34:55 <mortenf> nn.

00:34:56 * danbri waves

00:35:00 <danbri> cu mortenf

00:36:17 <DanC> JosD_, the argument about document vs. formulas is actually not compelling. cwm worked fine before we 'fixed' that. The argument becomes convincing (to me anyway) if you can zoom out, but it's not compelling in any one local case.

00:36:55 <JosD_> I understand DanBri, it's just that an appropriate level of explicitness seems to be in place

00:38:06 <danbri> I'd be more convinced/concerned if there were a library of useful knowledge about 'Document' in the HTTP sense, one that encompassed everything that can have a non-#-http-name, and not just stereotypical Web 'page' (eg. HTTP SOAP services; streaming media, 404s, ...).

00:38:15 <JosD_> That's right DanC (our Euler code also worked well) and I think Tim said that very well in a mail

00:39:28 <DanC> timbl's gift is for seeing the effect of the "gas laws" at scale when the rest of us are just getting the first 10 or 20 molecules bouncing off each other.

00:40:13 <dmiles> DanC: i horned claused that definating

00:40:19 <dmiles> there are 14 clauses

00:40:23 <DanC> do tell, dmiles

00:40:33 <dmiles> here is the first

00:40:34 <dmiles> entails((not type(C, A)and type(C, A)or not type(C, A))and (type(C, A)or not type(C, A)and type(C, A)), type(C, B))

00:40:54 <DanC> or?

00:40:56 <dmiles> this means that type(C, B) may be proven if (not type(C, A)and type(C, A)or not type(C, A))and (type(C, A)or not type(C, A)and type(C, A))

00:41:08 <dmiles> i can list all 14

00:41:13 <DanC> there's no or in a horn clause, is there?

00:41:27 * JosD_ agrees

00:41:40 <dmiles> the not/1 is meta predicate thats used for a DB.. NOT negation

00:41:55 <dmiles> ok well you can create two worlds

00:42:00 <DanC> no not/1 in a horn clause either.

00:42:03 <dmiles> one world everything is proven false

00:42:13 <dmiles> the otehr can only prove things truie

00:42:38 <dmiles> in the true world it produced 7 clauses

00:42:43 * DanC isn't quite clear on what a horn clause is, actually; any pointers to canonical/consensus definitions?

00:42:45 <dmiles> in the false wiorld the other 7

00:43:02 <dmiles> so to do open world infernce you must use all 7

00:43:07 <dmiles> err all 14

00:43:28 <DanC> dmiles, we don't seem to be using "horn clause" the same way.

00:43:29 <dmiles> basicly i create two horn DBs.. the accessorFn for the other db is not(_)

00:43:54 <dmiles> yes a little defiernt but your defination subsumes mine

00:44:09 <DanC> ?

00:44:15 <dmiles> horn cluase is a list of entailments corect?

00:44:17 <dmiles> Lemmes

00:44:49 <dmiles> basicly a horne clause is a rule you cannot use Modus Tollens on

00:44:51 * JosD_ is living with disjunction with at most 1 positive literal

00:44:55 <DanC> it's Q <- P, P2, P3... where the Q and P are positive literals.

00:45:16 <DanC> i.e. no not, no or.

00:45:43 <dmiles> ok i will skolem the negs :)

00:45:49 <DanC> and no forall in the P's. (only an implicit forall around the whole set of clauses)

00:45:53 <dmiles> (will make it easier for you to read)

00:46:09 <JosD_> which is ~P v ~P2 v ... Q

00:46:13 <DanC> yes.

00:46:57 <dmiles> let me show you how i turn P->Q into horne clauses

00:47:14 <dmiles> Q:-P , ~P:-~Q

00:47:14 <dc_rdfig> Label Q not found.

00:47:20 <DanC> "A set of atomic literals with at most one positive literal." -- http://wombat.doc.ic.ac.uk/foldoc/foldoc.cgi?Horn+clause

00:47:45 <dmiles> or Q:-P , not(P):-not(Q)

00:47:58 <dmiles> is this correct?

00:48:11 * DanC isn't following

00:48:35 <dmiles> can you conver P->Q into a Horne?

00:48:39 <dmiles> err convert

00:48:58 <DanC> er... yeah: Q<-P. trivial, no?

00:49:18 <dmiles> i would think that is incoect

00:49:24 <dmiles> incorrect

00:49:27 <JosD_> no, not(P) V Q

00:49:42 <dmiles> ok thats conjuctive normal form

00:50:03 <JosD_> I think so

00:50:10 <dmiles> not(P) V Q converted to horne clauses would be?

00:50:23 <DanC> it is a horn clause.

00:50:32 * DanC looked it up... no 'e' on the end. horn

00:50:38 * JosD_ takes another beer

00:51:17 <DanC> and not(P) V Q is the same thing as Q<-P. just different ways to write the same horn clause

00:51:18 <dmiles> ok :) no "e".. but your saying conjuctive normal form is horn clause.. i say clausual normal form is horn clause

00:51:32 <dmiles> clausual normal form = horn clause?

00:52:11 <dmiles> thats prenix normal form: "P->Q"

00:52:25 <DanC> I dunno what clausual normal form is. But I take google+foldoc as authoritative: http://wombat.doc.ic.ac.uk/foldoc/foldoc.cgi?Horn+clause

00:52:27 <dmiles> converted to conjunctive normal form is "not(P) V Q"

00:52:40 <dmiles> ok looking at that

00:54:05 <dmiles> so would "Q <- P" be a horn clause?

00:54:10 <DanC> yes

00:54:17 <JosD__> yes

00:54:25 <dmiles> what about "Q -> P"

00:54:38 <DanC> um... sorta... if it means P <- Q

00:54:49 * JosD__ looses ADSL connection eveytime he takes a beer

00:54:59 <dmiles> but it doesnt just mean that (what about the rules of modus tollens?)

00:55:25 <dmiles> horn clauses can only denote modus ponens relations

00:55:54 <dmiles> so one has to create two horn clauses for "P->Q"

00:56:18 <DanC> ?

00:56:36 <DanC> P->Q and Q<-P mean the same thing, to me.

00:56:40 <dmiles> the first is: Q<-P

00:57:02 <dmiles> the sencond: not(P)<-not(Q)

00:57:21 <dmiles> -> is implication, <- is entailment

00:57:26 * JosD__ thinks modus tollens is just p=>c & ~c |= ~p

00:57:36 <dmiles> yes

00:57:52 <JosD__> ... which is a kind of resolution

00:58:19 <dmiles> i am producing horn clauses compatible with resolution

00:58:23 <JosD__> they indeed mean the same DanC

00:58:27 <dmiles> (propositional resolution)

00:58:45 <DanC> P->Q, Q<-P, and not(P)<-not(Q) all mean the same thing. the latter is not a horn clause because the literals are not all positive.

00:59:17 <JosD__> :me agrees

00:59:26 <dmiles> so we actuallyu have to produce two special entities

00:59:45 <dmiles> ~P and ~Q

00:59:46 <DanC> why?

00:59:50 <dmiles> those are positive

01:00:03 <DanC> are you assuming some particular proof theory?

01:00:09 <dmiles> yes

01:00:16 <dmiles> propositional resulation

01:00:30 <dmiles> that the entire world consits of only positive literals

01:00:42 <dmiles> not(_) is an index into another world

01:00:50 <DanC> hmm.

01:00:53 <dmiles> but we can ~P and pretend it's possivive

01:01:17 * eikeon is curious why JosD__ loses asdl connection upon taking a beer.

01:01:20 <DanC> is this a textbook technique?

01:01:48 <dmiles> yes.. i'll get two links

01:02:08 * JosD__ has no idea eikeon...

01:02:35 <dmiles> .google Propositional resolution

01:02:37 <danbri> anyone know of an 'rss wishlist' page?

01:02:37 <datum> Propositional resolution: http://logic.stanford.edu/classes/cs157/2003/notes/chap05.pdf

01:02:50 <danbri> eg. I'd love to have http://www.un.org/apps/news/search.asp as an RSS feed...

01:03:08 <dmiles> here is the text book way to produce horn clauses from FOL

01:03:38 <dmiles> (looking)

01:04:22 <dmiles> at: http://cs.wwc.edu/~aabyan/Logic/Horn.html

01:05:04 <JosD__> dmiles, how is owl:complementOf [ owl:oneOf (rdfs:Class)] positive?

01:05:25 <eikeon> ri: no, but I wish that it did not use rdf:Seq for items... and that the schema qualified the domain and range for the properties.

01:05:50 <dmiles> JosD__: owl:complementOf definition produces 14 horn clauses

01:06:11 <DanC> BLURB: making horn clauses from FOL

01:06:12 <dc_rdfig> B: making horn clauses from FOL from DanC

01:06:37 <DanC> B:cf [Propositional resolution|http://logic.stanford.edu/classes/cs157/2003/notes/chap05.pdf]

01:06:38 <dc_rdfig> Added comment B1.

01:06:57 <dmiles> 7 live in the possitive universe 7 in the negation (which is a possitive univase about impossibities)

01:06:59 <DanC> B:and [the text book way to produce horn clauses from FOL|http://cs.wwc.edu/~aabyan/Logic/Horn.html], per dmiles

01:06:59 <dc_rdfig> Added comment B2.

01:07:33 <dmiles> mean i dont really mean 'not' i mean 'absolutely_possitively_impossible' :)

01:07:56 <dmiles> meaning P->Q

01:08:17 <dmiles> 'absolutely_possitively_impossible'(Q) :- 'absolutely_possitively_impossible'(P)

01:08:34 <dmiles> eeks

01:08:43 <DanC> B:gotta noodle on this

01:08:43 <dc_rdfig> Added comment B3.

01:08:45 <dmiles> 'absolutely_possitively_impossible'(P) :- 'absolutely_possitively_impossible'(Q)

01:08:51 <DanC> logger, pointer?

01:08:56 <DanC> logger_1 , pointer?

01:09:00 <DanC> logger_1, pointer?

01:09:00 <DanC> See http://ilrt.org/discovery/chatlogs/rdfig/2003-03-02#T01-09-00

01:09:19 <dmiles> so if you proved 'absolutely_possitively_impossible'(Q) you have also proved (entailed) 'absolutely_possitively_impossible'(P)

01:09:22 <DanC> B:also: [discussion|http://ilrt.org/discovery/chatlogs/rdfig/2003-03-02#T01-09-00]

01:09:22 <dc_rdfig> Added comment B4.

01:09:41 <dmiles> using this system allows a open-world infernce

01:09:50 <sbp`> reg

01:10:03 <JosD__> dmiles, will definitely look into that, I have a belief in log:notIncludes and some such where documents are finite, but still

01:10:05 <dmiles> it just the database is huge and ugly.. but its !00% and 100% complete

01:10:25 <dmiles> err 100% sound and 100% complete

01:10:40 <dmiles> no other system can do that

01:10:45 <dmiles> (that i know of)

01:11:15 <dmiles> so: (forall (?C1 ?C2) (<=> (owl:complementOf ?C1 ?C2) (forall (?X) (<=> (rdf:type ?X ?C1) (not (rdf:type ?X ?C2))))))

01:11:23 <dmiles> compiles into 14 prolog statements

01:11:49 <dmiles> (and two tautolgies that i removed)

01:12:29 <dmiles> (which didnt mean the origianl statement conatied tautolgy)

01:13:03 <dmiles> <JosD__> dmiles, how is owl:complementOf [ owl:oneOf (rdfs:Class)] positive?

01:13:15 <dmiles> i dont understand about the oneOf: part

01:13:33 <dmiles> but i can treat it as thereExistsAtLeastOne

01:14:00 <JosD__> it's a way to define a class by enumerating its elements

01:14:28 <dmiles> for each existential that is used it creates a special function (sometimes called skollems) but not always nescisary

01:14:35 <DanC> dmiles, can you mail those 14 prolog statements to www-archive@w3.org?

01:14:44 <dmiles> yes

01:14:54 <JosD__> very good idea!

01:14:58 <dmiles> :P

01:15:24 <dmiles> KIF or Prolog form?

01:15:33 <DanC> both, if you've got them

01:15:39 <dmiles> yup

01:16:00 <JosD__> we could then try again the DL tests in http://www.w3.org/2002/03owlt/editors-draft/snapshot

01:17:53 * DanC is glad he only said "I doubt it" and not "it cannot be done" when dmiles offered to convert my KIF formula to horn clause form

01:18:00 <DanC> this could be a breakthru

01:18:10 <DanC> for my own personal understanding, anywya

01:20:09 <JosD__> dmiles, could you tackle e.g. tests starting at http://www.w3.org/2002/03owlt/description-logic/Manifest001

01:21:24 <dmiles> yes

01:21:40 <dmiles> still getting my term writer to produce kif

01:21:48 <JosD__> i.e. that http://www.w3.org/2002/03owlt/description-logic/premises001 entails http://www.w3.org/2002/03owlt/description-logic/conclusions001

01:21:55 <dmiles> errm well be a few more minutes

01:26:58 <dmiles> note .. i work arround existentials (so every varible in the resulting prolog form is universal (like the languages))

01:27:24 <DanC> yes, I'd expec that

01:28:17 <JosD__> that's better dmiles

01:29:05 * danbri postpones packing til the morning

01:29:18 <danbri> this owl testing stuff looks interesting

01:30:11 * danbri tries to browse http://www.w3.org/2002/03owlt/ -- finds a bunch of 'forbiddens'

01:30:55 <danbri> DanC, could we set the default ACL to public?

01:31:14 <dmiles> preview at: http://12-212-75-114.client.attbi.com/root/opt/sourceforge/logicmoo/openmodality/iso-prolog/complientOf.pl.txt

01:31:21 <JosD__> well, danbri, click on the links in http://www.w3.org/2002/03owlt/editors-draft/snapshot

01:32:28 <danbri> nice :)

01:32:34 <danbri> i'd not looked at that properly before...

01:34:44 <DanC> ACL: be my guest, danbei

01:34:45 <dc_rdfig> Label ACL not found.

01:35:09 <JosD__> dmiles, just to make sure ; means or isn't it and 'negDB' means?

01:36:04 <dmiles> yes ; = or

01:36:18 <dmiles> and negDB(_) is a dynamic predicate

01:37:26 <dmiles> and op(400,fy,'negDB')

01:38:09 <dmiles> i am not sure of the status on the caniclaizer.. i created an opimizer that may not have taken out the reducancies

01:39:27 <dmiles> the execution order is important on ;

01:39:28 <JosD__> not sure how to write ('negDB' type(C, A), type(C, A); 'negDB' type(C, A)) in N3...

01:39:56 <dmiles> negDB is like a new snamespace

01:40:05 <dmiles> posDB would say be the default

01:40:43 <dmiles> 'negDB' type(C, A) means got over to page negDB and loojk up type(C,A)

01:41:21 <dmiles> which when you look at it 'negDB' you see pointers back to posDB

01:41:45 <dmiles> i really should have put better specifiers on it

01:42:20 <dmiles> looking at complementOf(C1, C2) :- 'negDB' type(X, C2), type(X, C2); 'negDB' type(X, C2), type(X, C1); 'negDB' type(X, C1), type(X, C1); 'negDB' type(X, C1), type(X, C2).

01:42:26 * JosD__ is afraid he either had too much beer, or is just not understanding it...

01:42:27 <dmiles> for instance

01:43:12 <dmiles> on page 1 you can prove complementOf(C1, C2) if

01:43:42 <dmiles> if one page 2 type(X, C2) and.. and so on

01:44:10 <JosD__> dmiles, namespace and page n?

01:44:10 <dmiles> hrrm boy the email is goign to be wuired to line wrap

01:44:51 <dmiles> i made that confussing

01:45:06 <dmiles> forget i said namespace for amoment

01:45:15 <JosD__> ok

01:45:38 <dmiles> and pretend that forAll ?page thereExists ?negDb

01:45:57 <JosD__> ok

01:46:24 <dmiles> while proving something in the context of negDb if its not there its in the origianl Db

01:46:54 <dmiles> i mean unles negDB is wrapped on a litteral then its in the orignal page

01:48:04 <JosD__> wait, is negDB is in the scope of some universals, so its a skolem function, no?

01:48:53 <dmiles> actualy yes in a twisted way :P .. i double negate the skolems to keep them from never apearing

01:49:10 <dmiles> like you know how some people say not exists -> foall not

01:49:35 <JosD__> OK, that I understand

01:49:51 <dmiles> yeah i stay in the universal mode

01:49:57 <dmiles> i avoided making skolems :P

01:50:22 <dmiles> its pretty crazy system.. i have some test results

01:50:59 <dmiles> that show it proving bunch of theoems

01:51:19 <dmiles> the problem is this is 100% and complete.. therefore blows up in real world use

01:53:34 <JosD__> how would you write ('negDB' type(C, A), type(C, A); 'negDB' type(C, A)) in Cloksin Mellish Prolog?

01:54:38 <JosD__> or ISO Prolog?

01:54:52 <dmiles> almost have your answer

01:55:01 <dmiles> negDB(type(_G157, _G158)), type(_G157, _G158);negDB(type(_G157, _G158))

01:55:11 <dmiles> oops lost my varibles

01:55:42 <JosD__> sound terible

01:55:49 <dmiles> :P

01:55:54 <dmiles> it feature of prolog

01:56:15 <dmiles> :-op(400,fy,'negDB').

01:56:25 <dmiles> then it will be able to read it

01:56:34 <JosD__> documented bug

01:57:04 * JosD__ feels it's coming

01:58:21 <dmiles> which prolog are you using?

01:59:26 <JosD__> XSB, SWI, ISO Prolog Executable Specification, ...

01:59:28 * dmiles is trying to find that email to send it to

02:00:02 <dmiles> ok i will have it write canonically

02:00:10 <dmiles> so that it works in all prologs

02:00:29 <dmiles> (canonical means even ; , ops are not special)

02:00:38 <JosD__> that's very nice of yoy :-)

02:01:39 <JosD__> these days I'm mostly using N3, which is really great!

02:03:25 <JosD__> e-mailing to www-archive@w3.org ?

02:04:10 <dmiles> i am rewiting the printer so i dont have to tranliterate

02:04:18 <dmiles> for KIF vs PRolog

02:05:08 <dmiles> this would be very easy for me to trun back on the webpage that you enter log in and combox to the form you want

02:05:42 <dmiles> it output in DNF,CNF,KIF,CLF,Prolog etc

02:06:31 <JosD__> that sounds indeed very interesting

02:08:51 <dmiles> heh it took me 18 months to write it

02:09:04 <dmiles> (the engine) not that part

02:13:26 <JosD__> I can understand that, and I think that you must have had deep feelings in writing that engine

02:14:03 <JosD__> I mean a graet time

02:14:55 <dmiles> yeah.. so i ran it trough most of the constancy tests .. but many people at work fought the whole time ;P

02:15:01 <dmiles> the type of logic choosen

02:15:27 <dmiles> but propositional resolution on horn clasue is greate

02:17:04 <JosD__> I fully agree with that, more than agree

02:17:13 <dmiles> d http://12-212-75-114.client.attbi.com/root/opt/sourceforge/logicmoo/openmodality/iso-prolog/complementOf.pl.txt

02:17:28 <dmiles> that is easier to load maybe

02:18:10 <dmiles> hrrm if i put that into email without explaination.. i dont know

02:18:20 <DanC> what do we do with negDb(complementOf(A, B)) ?

02:18:34 <dmiles> run that over the shawdow DB

02:18:41 <DanC> 'run'?

02:18:48 <dmiles> its a possitive litteral

02:18:48 <DanC> DB?

02:19:23 <dmiles> ah well works as an open-world logic

02:19:25 <DanC> can we just sorta make up a complementOf-not for each relation?

02:19:45 <dmiles> yes

02:19:48 <dmiles> that would work

02:19:58 <DanC> does that make sense, jos?

02:20:21 <DanC> complementOf-not aux:converse complementOf.

02:20:22 <dmiles> rel + rel-not

02:20:51 <dmiles> oh.. this will though you for a sec...

02:20:59 <dmiles> err throw

02:21:41 <dmiles> they actually have a failure relation from each other

02:22:31 <JosD__> oops... lost my connection again, this time without beer (guess it's because they upgraded to 3 MBit/sec)

02:22:48 <dmiles> becaseu you cant prove complementOf-not means you have a legal complementOf

02:22:51 <JosD__> OK, that is perfect dmiles, I sleep over it (it's 3:21 at night here) and try in N3

02:23:30 <dmiles> aux:converse probibly is correct

02:23:37 <dmiles> what is the defination of aux:converse ?

02:24:59 <DanC> I made it up... if P aux:converse Q then P(x,y) <=> not Q(x,y)

02:25:03 <JosD__> DanC (checked weblog) not sure at the moment, I take dmiles for his word and I'm looking forward to test it in N3

02:25:28 <DanC> e.g. owl:sameAs aux:converse owl:differentFrom

02:25:35 <dmiles> ok ./. i forget what am i going to do again?

02:25:46 <dmiles> run a test suite and set up a webpage

02:26:00 <DanC> sigh... more identity glitches...

02:26:02 <DanC> <itin-ij2.n3#feb5> a :Wednesday;

02:26:02 <DanC> dt:date "2003-02-05" .

02:26:04 <DanC> vs.

02:26:09 <dmiles> the suite is at: http://www.w3.org/2002/03owlt/editors-draft/snapshot

02:26:10 <DanC> <itin1.n3#_gdayWEDNESDAY05_2> a :Wednesday;

02:26:10 <DanC> dt:date "2003-02-05" .

02:27:23 <dmiles> oh and the w3 email ;P

02:28:18 <dmiles> well hrrm that webpage complimentOf.pl.txt ddi you see that DanC?

02:28:57 <JosD__>http://12-212-75-114.client.attbi.com/root/opt/sourceforge/logicmoo/openmodality/iso-prolog/complementOf.pl.txt

02:28:57 <dc_rdfig> C: http://12-212-75-114.client.attbi.com/root/opt/sourceforge/logicmoo/openmodality/iso-prolog/complementOf.pl.txt from JosD__

02:29:25 <dmiles> negDb(type(C, B)) is the same as 'type-not'(C,B)

02:29:29 <DanC> yes, complementOf.pl.txt fills much of my screen

02:29:36 <DanC> type-not... yes.

02:30:16 <dmiles> 'type-not'(C,B) you notice uses no negation by failure

02:30:40 <DanC> I didn't notice, but I'm pleased to hear

02:31:12 <dmiles> the idea is that nothing is proved by failure .. (why it's openworld)

02:31:47 <dmiles> but there is very much it cant prove

02:32:00 <JosD__> C:| Prolog clause for owl:complementOf

02:32:00 <dc_rdfig> Titled item C.

02:32:45 <JosD__> looks very promising; propositional resolution; by dmiles

02:32:57 <JosD__> C: looks very promising; propositional resolution; by dmiles

02:32:57 <dc_rdfig> Added comment C1.

02:34:32 <dmiles> well i am hoping to see what could be intergrated.. Bijan has been workinbg on an Owl prover

02:34:55 <dmiles> i have been writting a planner that uses a prop resolution db

02:35:22 <DanC> ah... cool... cwm learned something I didn't mean to tell it...

02:35:40 <dmiles> ?

02:35:46 <DanC> I told it "if you take a trip somewhere, there's a cyc:subAbs of you while you're there"

02:36:15 <DanC> and I told it about my trip to SNA, and it learned about 'me in the SNA area', as expected...

02:36:37 <dmiles> ah created a functional you

02:36:38 <DanC> but it also discovered 'me in DFW', cuz I stopped there along the way.

02:36:50 <DanC> [[[------

02:36:51 <DanC> <http://www.w3.org/People/Connolly/home-smart#me> :subAbs [

02:36:52 <DanC> :endingDate <itin1.n3#_gdaySATURDAY08_6>;

02:36:52 <DanC> :myEntity <http://www.w3.org/People/Connolly/home-smart#me>;

02:36:52 <DanC> :objectFoundInLocation <#_g2>;

02:36:52 <DanC> :startingDate <itin1.n3#_gdaySATURDAY08_6> ],

02:36:53 <DanC> [

02:36:55 <DanC> :endingDate <itin1.n3#_gdaySATURDAY08_6>;

02:36:57 <DanC> :myEntity <http://www.w3.org/People/Connolly/home-smart#me>;

02:36:59 <DanC> :objectFoundInLocation <#_g3>;

02:37:03 <DanC> :startingDate <itin1.n3#_gdayWEDNESDAY05_2> ] .

02:37:05 <DanC> ]]]

02:37:57 <DanC> g2 is the/a cyc:UrbanArea aound DFW. g2 is around Sna

02:39:00 <JosD__> that's cool DanC

02:39:37 * DanC is gonna get everybody putting their travel schedules on the semweb yet!

02:40:04 <DanC> some of the foaf guys have tackled PGP-encrypted distribution

02:40:18 <DanC> so you don't even have to take huge privacy risks.

02:41:00 * DanC tends to domestic stuff for a bit..

02:41:46 <JosD__> well indeed and cwm-crypto is TODO

02:43:04 <dmiles> % API server started on port 3677.

02:43:04 <dmiles> [PROLOG SYSTEM ERROR: Thread 3

02:43:13 <dmiles> hrrm almost have it

02:43:26 <JosD__> dmiles, that was an amazing trip, thanks a thousand times and have a great time

02:43:51 <dmiles> DanC you meant

02:45:18 <dmiles> ok http://12-212-75-114.client.attbi.com:3766/ night work

02:46:45 <dmiles> adding a link next to Tests: _infernce_ _canonicalizer_

02:47:04 <dmiles> _canonicalizer_ will be the Log form veiwer

04:58:43 <dmiles> hrrm

05:51:02 <dmiles>http://12-212-75-114.client.attbi.com:3677/canonicalizer.moo?formula=%28forall+%28%3FC1+%3FC2%29+%28%3C%3D%3E+%28owl%3AcomplementOf+%3FC1+%3FC2%29+%28forall+%28%3FX%29+%28%3C%3D%3E+%28rdf%3Atype+%3FX+%3FC1%29+%28not+%28rdf%3Atype+%3FX+%3FC2%29%29%29%29%29%29&submit=Convert

05:51:02 <dc_rdfig> D: http://12-212-75-114.client.attbi.com:3677/canonicalizer.moo?formula=%28forall+%28%3FC1+%3FC2%29+%28%3C%3D%3E+%28owl%3AcomplementOf+%3FC1+%3FC2%29+%28forall+%28%3FX%29+%28%3C%3D%3E+%28rdf%3Atype+%3FX+%3FC1%29+%28not+%28rdf%3Atype+%3FX+%3FC2%29%29%29%29%29%29&submit=Convert from dmiles

05:51:40 <dmiles> D|: Canonicalizer that converts KIF froms to Entailments for Resolution

05:51:47 <dmiles> D:| Canonicalizer that converts KIF froms to Entailments for Resolution

05:51:48 <dc_rdfig> Titled item D.

05:52:26 <dmiles> D:| Canonicalizer that converts KIF forms to Entailments for Resolution Proving

05:52:26 <dc_rdfig> Titled item D.

05:53:24 <dmiles> D: The output can be a little anoying in that it defines a new operator "entails"

05:53:25 <dc_rdfig> Added comment D1.

05:55:10 <dmiles> D: Easier to read and understand [http://12-212-75-114.client.attbi.com:3677/canonicalizer.moo?formula=%28forall+%3Fx+%28%3D%3E+%28p+%3Fx%29%28q+%3Fx%29%29%29&submit=Convert]

05:55:10 <dc_rdfig> Added comment D2.

05:55:14 <dmiles> d:

05:55:18 <dmiles> D:

05:55:18 <dc_rdfig>http://12-212-75-114.client.attbi.com:3677/canonicalizer.moo?formula=%28forall+%28%3FC1+%3FC2%29+%28%3C%3D%3E+%28owl%3AcomplementOf+%3FC1+%3FC2%29+%28forall+%28%3FX%29+%28%3C%3D%3E+%28rdf%3Atype+%3FX+%3FC1%29+%28not+%28rdf%3Atype+%3FX+%3FC2%29%29%29%29%29%29&submit=Convert

05:55:19 <dc_rdfig> Canonicalizer that converts KIF forms to Entailments for Resolution Proving

05:55:20 <dc_rdfig> (1:dmiles) The output can be a little anoying in that it defines a new operator "entails"

05:55:21 <dc_rdfig> (2:dmiles) Easier to read and understand [http://12-212-75-114.client.attbi.com:3677/canonicalizer.moo?formula=%28forall+%3Fx+%28%3D%3E+%28p+%3Fx%29%28q+%3Fx%29%29%29&submit=Convert]

05:55:39 <dmiles> D: "(forall (?x) (=> (p ?x) (q ?x)))"

05:55:40 <dc_rdfig> Added comment D3.

05:55:52 <dmiles> D: converts to:

05:55:52 <dc_rdfig> Added comment D4.

05:56:02 <dmiles> D: "(entails (not (q ?x)) (not (p ?x)))"

05:56:02 <dc_rdfig> Added comment D5.

05:56:12 <dmiles> D: "(entails (p ?x) (q ?x))"

05:56:13 <dc_rdfig> Added comment D6.

05:56:49 <dmiles> D: the form of (not (q ?x)) is virtually (q-not ?x)

05:56:50 <dc_rdfig> Added comment D7.

05:58:10 <dmiles> D: under this form, there are two universes positive and negative KB.. a much better form will be the 4 universe form which will soon be put on page

05:58:10 <dc_rdfig> Added comment D8.

05:58:50 <dmiles> D8: under this form, there are two universes positive and negative KB.. but a much better form will be in 4 universes form which will soon be put on page

05:58:50 <dc_rdfig> Replaced comment D8.

06:00:19 <dmiles> D: First 2 Universes - positive universally quantified literals,negative universally quantified literals

06:00:19 <dc_rdfig> Added comment D9.

06:00:52 <dmiles> D: Last 2 Universes - positive existentually quantified literals,negative existentually quantified literals

06:00:52 <dc_rdfig> Added comment D10.

06:01:35 <dmiles> D: In the last two, every variable that appears in literal can only be bound once

06:01:35 <dc_rdfig> Added comment D11.

06:20:39 <DanC> whoohoo! http://www.w3.org/2001/sw/meetings/tech-200303/tpreg.rdf

06:21:11 <DanC> that went SQL->RDF via dbview.py , then got formatted, client-side, using whoFmt.xsl

06:21:26 <dmiles> excelent

06:21:48 <dmiles> so you can make a DB source into something we can do RDFish infernce on

06:22:04 <dmiles> (is what i am gathering)

06:22:22 <DanC> yup

06:23:04 <DanC> dbview.py is pretty dumb, but EricP and I are working with timbl to do some pretty cool N3/SQL stuff.

06:23:31 <dmiles> well dbview.py is a good tool for what its intended ;P

06:23:33 <DanC> i.e. pushing as much of the N3 query down into SQL as we can

06:24:09 <dmiles> well .. question i have about that: once you have pushed some N3 to SQL and not others..

06:24:29 <dmiles> the engine that leverages the data would need to cache it

06:24:47 <dmiles> meaing you dont want to take the same trip to SQL over and over

06:24:51 <dmiles> err

06:24:53 <dmiles> meaning you dont want to take the same trip to SQL over and over

06:25:16 <dmiles> anyways one interesting area is how to make the total query optimized

06:25:41 <dmiles> so that if there is a cool JOIN one can prefactor it

06:26:21 <DanC> ah... better formatting now... http://www.w3.org/2001/sw/meetings/tech-200303/tpreg.rdf

06:26:44 <dmiles> still getting "Keyword xsl:stylesheet may not contain PCDATA nodes.

06:26:49 <DanC> hmm... XSLT sort didn't work.

06:27:09 <dmiles> but source is more balanced

06:27:31 <dmiles> hrrm wait i got the same

06:28:37 <DanC> sigh... so many people left the http:// out of the URI when they registered

06:30:08 <dmiles> the http://12-212-75-114.client.attbi.com:3677/canonicalizer.moo is the page i was talking abnout earlier that shows the logical forms of statements

06:30:51 <dmiles> but i see it was left off hiding the skolems from sures.. still have to fix that

06:30:59 <dmiles> from users

06:32:44 <dmiles> (forall ?x (exists ?y (=> (isa ?x human) (and (isa ?y heart) (has ?x ?y)))))

06:32:55 <dmiles> is a good thing to do on that page

06:35:54 <DanC> try once more? http://www.w3.org/2001/sw/meetings/tech-200303/tpreg.rdf

06:36:18 <dmiles> Keyword xsl:stylesheet may not contain PCDATA nodes.

06:36:31 <DanC> dunno what that's about

06:37:52 <dmiles> seems like it's cached.. will dump it

06:38:49 <dmiles> Cannot view XML input using XSL style sheet

06:39:00 <dmiles> ok IE thong

06:39:04 <dmiles> thing

06:42:20 <DanC> aha! sorted, now. http://www.w3.org/2001/sw/meetings/tech-200303/tpreg.rdf

06:46:51 <dmiles> nice .. is that tux.w3.org:7000/administraton special to the DB software?

06:47:19 <DanC> er... yeah...

06:47:31 <dmiles> oops i asked that wrong

06:47:44 * DanC shuts down dbview on tux:7000

06:47:45 <dmiles> xmlns:tables= for al tables in SQL?

06:48:24 <DanC> yes, that's a namespace of the tables in the administraton DB

06:48:43 <dmiles> ok so each DB server should try to export their pown tales=

06:48:59 <dmiles> there own tables=

06:49:20 <DanC> yup

06:49:42 <dmiles> pretty cool.. you are getting together a system that i dont have to know anything about RDF yet i can publish my data

06:49:52 <DanC> yup!

06:51:38 <dmiles> :)

06:52:18 * DanC noodles on rules to make foaf data out of http://www.w3.org/2001/sw/meetings/tech-200303/tpreg.rdf

06:53:13 <DanC> hm... but I'm not exporting the email addresses, for privacy (ha!) reasons

06:54:28 <DanC> hm...

06:54:30 <DanC> com.jclark.xsl.om.XSLException: illegal data characters inside xsl:stylesheet

06:56:47 <dmiles> (same error as i got)

06:58:09 <dmiles> might be header on whoFmt.xsl

06:58:31 <dmiles> (or not finding)

06:58:43 <DanC> I just moved the comment from inside the xsl:stylesheet to outside/before

06:59:33 <DanC> aha! found it...

07:00:04 <dmiles> you just updated it?

07:00:23 <DanC> now I did

07:00:30 <dmiles> refering to http://www.w3.org/2001/sw/meetings/tech-200303/whoFmt.xsl

07:00:38 <dmiles> works now

07:00:44 <DanC> whoFmt.xsl,v 1.13 2003/03/02 07:00:20

07:00:48 <DanC> good.

07:01:04 <DanC> it was an extra >

07:01:15 <dmiles> *nod*

07:01:42 <DanC> output, via xsltproc: http://www.w3.org/2001/sw/meetings/tech-200303/tpreg-out.html

07:02:08 <dmiles> yup looks the same

07:07:17 <mdupont-ZZZZ> mdupont-ZZZZ is now known as mdupont

07:13:41 <DanC> added "Aside: Fun with Relational Databases on the Semantic Web" to http://www.w3.org/2001/sw/meetings/tech-200303/#who

07:14:58 <mdupont> dmiles: you still awake?

07:20:21 <dmiles> yes

07:20:28 <dmiles> putting babyto bed

07:20:41 <dmiles> will be back in 30 minutes

07:30:04 <dmiles> baby pics: http://home.attbi.com/~chanpigface/zaltana.htm

07:33:26 <dmiles> ok ten more minutes

07:33:50 * dmiles can only accasionally reach for keyboard

07:58:15 <dmiles> mdupont: the infernce engine part of the code is under new work but i am happy to leverage other engines ..

07:58:35 <mdupont> dmiles: i am just looking into mercury

07:58:40 <mdupont> it has a dotgnu backend

07:58:43 <mdupont> that i am testing

07:59:18 <dmiles> the planning codebase is what i am still working on

07:59:40 <dmiles> pilot knows: isa(pilot, Pilot)

07:59:40 <dmiles> guest knows: isa(airplane666, Airplane)

07:59:40 <dmiles> pilot remembers: Walking

07:59:40 <dmiles> pilot knows: [isa(airplane666, Airplane), at(airplane666, GateFn(seatac_wa))] makes true: pathTraversal(Walking, GateFn(seatac_wa), CabinFn(airplane666))

07:59:40 <dmiles> From GateFn(seatac_wa), pilot does Walking to CabinFn(airplane666)

07:59:41 <dmiles> pilot knows: [isa(airplane666, Airplane)] makes true: pathTraversal(Walking, CabinFn(airplane666), CockpitFn(airplane666))

07:59:44 <dmiles> From CabinFn(airplane666), pilot does Walking to CockpitFn(airplane666)

07:59:46 <dmiles> pilot knows: [isa(pilot, Pilot), isa(airplane666, Airplane), in(pilot, CockpitFn(airplane666))] makes true: doesPilot(pilot, airplane666)

07:59:49 <dmiles> pilot taxiied airplane666 to the runway at seatac_wa

07:59:51 <dmiles> airplane666 took off from seatac_wa.

07:59:53 <dmiles> airplane666 raised landing gear

07:59:55 <dmiles> pilot knows: flight_path(seatac_wa, fort_worth_tx)

07:59:57 <dmiles> airplane666 cruised towards fort_worth_tx.

07:59:59 <dmiles> thats an example of the planner so far

08:00:06 <dmiles> i am making sure each agent is in control though of their tasks

08:00:42 <dmiles> alot of this depends on the performance of testing facts

08:01:28 <dmiles> each cyc microtheory has a scope.. and so do the agents.. so i reuse that system

08:03:39 <dmiles> eariler you mentioned packaging up the code

08:03:45 <mdupont> dmiles: you are working on planes?

08:03:47 <mdupont> cool

08:03:48 <dmiles> ( mdupont ) but i forgot which feature

08:04:00 <dmiles> thats one of it's test cases

08:04:06 <dmiles> (airplane databases)

08:04:13 <mdupont> do you have a copy of the IATA SSIS file format spec?

08:04:38 <dmiles> ?

08:04:48 <dmiles> .google IATA SSIS

08:04:48 <datum> IATA SSIS: http://www.blonnet.com/2002/02/21/99hdline.htm

08:05:30 <mdupont> wait

08:05:35 <mdupont> my spelling is bad

08:05:57 <mdupont> .google IATA Standard Scheduling Information

08:05:57 <datum> IATA Standard Scheduling Information: http://www.iata.org/sked/sisc

08:06:50 <mdupont> .google IATA Standard Scheduling Information Manual (SSIM)

08:06:51 <datum> IATA Standard Scheduling Information Manual (SSIM): http://www1.iata.org/atdi/courses/talm13_03.htm

08:07:08 <mdupont> dmiles: SSIM

08:07:08 <dmiles> well excellecnt

08:07:12 <mdupont> that is it

08:07:21 <mdupont> i am learning all about this for my new job

08:07:30 <dmiles> i also working on PDDL input data..

08:07:35 <mdupont> (will be working indirectly for lufthansa)

08:07:41 <mdupont> PDDL?

08:07:41 * danbri wakes up

08:07:45 <mdupont> dmiles: PDDL

08:07:46 <danbri> my god, you guys still going? :)

08:07:54 <dmiles> i am back to 24/7

08:07:55 <mdupont> .google PDDL

08:07:56 <datum> PDDL: http://www.dur.ac.uk/d.p.long/IPC/pddl.html

08:07:56 <dc_rdfig> Label PDDL not found.

08:08:10 <mdupont> danbri: i was off for 8 hours sleeping

08:08:35 <mdupont> dmiles is taking care of the baby, i dont think that he wants to be up for that long!

08:09:01 <dmiles> yeah.. will be going to sleep in 2 hours

08:09:08 * danbri grins, good morning anyway

08:09:12 <dmiles> so.. the PDDL gives me axioms for planning

08:09:30 <dmiles> and looks like SSIM will make it seem more real-world

08:09:55 <dmiles> i just picked ut airplanes becasue it leads to good planning and agent to agnt excite,mnt

08:09:58 <mdupont> dmiles: looks good

08:10:32 <dmiles> i can do airport scheduling, pilot fatigue and hijackings

08:10:51 <dmiles> things that will make the simulator interesting

08:11:37 <dmiles> so defenately going to be .gnu-ing the prolog parts

08:11:49 <dmiles> dotgnu-ing

08:12:35 <mdupont> ok

08:12:42 <mdupont> and what about mercury?

08:12:50 <dmiles> so your doing a contract that lufthansa is paying for?

08:13:14 <dmiles> well i am affrade to use mercury until i can write a prolog in mercury

08:13:26 <dmiles> meaning to write prolog in prolog is easy

08:13:27 <mdupont> well, i am joining a company that contracts to lufthansa

08:13:42 <dmiles> (writing a prolog complier/evalator in prolog is easy)

08:13:49 <mdupont> dmiles: that is cool

08:13:57 <dmiles> but i need to be good enough to write prolog compiler in Merc

08:14:03 <mdupont> I have not learned merc

08:14:06 <dmiles> (at Mercury)

08:14:14 <mdupont> but got now the Art of Prolog

08:14:18 <dmiles> i studied it one day

08:14:29 <mdupont> so i should be learning something

08:14:34 <mdupont> from it

08:14:38 <mdupont> i will need some weeks

08:14:40 <dmiles> i think you will

08:14:46 <mdupont> i was reading about the MOP

08:14:48 <dmiles> also this: http://www.amzi.com/AdventureInProlog/

08:14:53 <mdupont> it seems to be pretty weak

08:14:55 <dmiles> thats a great tutorial

08:15:02 <mdupont> thks

08:15:10 <dmiles> MOP ?

08:15:20 <dmiles> merc object programming?>

08:15:31 <mdupont> Meta Object Predicates in Prolog

08:16:36 <mdupont> like value

08:16:54 <mdupont> or ground

08:17:00 * mdupont gets his book

08:17:20 <dmiles> ah yeah i remember those now

08:17:32 <dmiles> it sorta codegens a bit

08:17:58 <dmiles> its actually a cool system.. i wrote a runtime to emulate it i think last year

08:18:19 <dmiles> becasue i got handed very cool MOP code i couldnt do anything with

08:18:22 <dmiles> (in SWI)

08:18:33 <mdupont> Var, nonvar, integer, ground, constant, compound, functor, arg

08:18:46 <dmiles> *nod*

08:18:59 <dmiles> those are type testing predicates

08:19:01 <mdupont> these are related to the introspector

08:19:14 <mdupont> becuase i extract similar data from the gcc

08:19:25 <mdupont> functor, arg etc

08:19:38 <mdupont> basically all that type of data is there

08:19:50 <mdupont> i just want to find the similarities

08:20:35 <dmiles> between prolog object systems and other systems

08:20:57 <dmiles> well the nice thing is whatever is in prolog is completely veiwable as data even though it is ocde

08:21:00 <dmiles> err code

08:21:11 <mdupont> that is why it is interesting

08:21:32 <mdupont> so the idea is that i can load the data from the gcc into the same set of predicates

08:21:38 <mdupont> as in prolog

08:21:48 <dmiles> yeah so i'd imagine MOP proxies for the original objects could be abductive

08:22:13 <mdupont> abductive? you mean abducted?

08:22:15 <dmiles> well i think they should rewrite gcc in prolog anyways;P

08:22:21 <mdupont> well

08:22:25 <mdupont> that would be a good step

08:22:36 <mdupont> mrlc has build a prolog backend for the gcc

08:22:38 <dmiles> that would definetly show you the universe

08:22:40 <mdupont> using the introspector

08:23:06 <dmiles> then you can reuse and understand the universe by abductive reasoner

08:23:24 <dmiles> (the universe of programs/programming)

08:23:27 <mdupont> what is the abductive reasoner exactly?

08:23:46 <mdupont> sure, the universe of programming, as expressed in c code

08:23:53 <dmiles> it resolves analogy between scripts

08:24:07 <mdupont> ahh

08:24:10 <mdupont> that is interesting

08:24:13 <mdupont> tell me more?

08:24:33 <dmiles> the man is to the woman as penutbutter to chocolate

08:24:45 <dmiles> err is to chocolate

08:25:16 <dmiles> so it can make an axiom that transitions both

08:25:21 <dmiles> (under the same rules)

08:25:27 <mdupont> ok

08:25:30 <mdupont> that is what i need

08:25:38 <mdupont> that is how i think

08:25:49 <mdupont> how can i get started with this in prolog

08:25:55 <dmiles> that is why the planner code become more important then infernce code

08:26:09 <mdupont> i want to make a set of translations between different object models

08:26:24 <mdupont> so you can link modules with each other without layering

08:26:30 <dmiles> well first you decompose them (in the tokens you use)

08:26:32 <mdupont> just by transforming them

08:26:35 <mdupont> i have that

08:26:44 <mdupont> the introspector decomposes already

08:26:49 <dmiles> *nod*

08:26:51 <mdupont> it can take any c code

08:26:58 <mdupont> and turn it into a graph

08:27:27 <dmiles> so it would seem you are trying to find a graph A-> graphB Dif

08:27:56 <dmiles> i seen code for that in prolog.. written by Richard O'Keefe

08:27:59 <mdupont> yes

08:28:05 <mdupont> i think so

08:28:16 <dmiles> you give it two graphs and it outputs a dif

08:28:17 <mdupont> two graphs connected by a set of translations

08:28:26 <mdupont> i guess it would be a unification of them

08:28:31 <dmiles> the dif can be later applied to a new graph

08:28:34 <dmiles> yes

08:28:45 <mdupont> take two equivalent graphs with different terms

08:28:46 <dmiles> well all the places they didnt unify

08:28:48 <mdupont> and unify them

08:28:52 <mdupont> sure the diff

08:28:53 <mdupont> ok

08:28:56 <mdupont> sounds good

08:29:00 * mdupont googles

08:29:05 <dmiles> then you just transpose onto one or the other

08:29:13 <mdupont> yeah

08:29:17 <mdupont> that sounds good

08:29:17 <dmiles> .google ugraph wgraph prolog

08:29:20 <datum> ugraph wgraph prolog: http://clip.dia.fi.upm.es/Software/Ciao/ciao_html/ciao_117.html

08:29:29 <dmiles> theres the oce

08:29:30 <dmiles> code

08:30:29 <dmiles> hrrm ok its in their libtrary

08:30:51 <dmiles> you need more of ugraph

08:31:40 <dmiles> like at: http://www.sics.se/~alf/prolog/akl/library/ugraph.pl

08:32:37 <dmiles> oh my yeah that code would let you write an abducer of tree's

08:32:57 <mdupont> thanks

08:33:04 <mdupont> i think i will start there!

08:35:17 <mdupont> dmiles: thanks for the tips

08:35:25 <mdupont> i am going to start looking into this

08:36:30 <dmiles> yeah the AMZI tutorial will make you feel strong at prolog in less then an afternoon

08:36:39 <mdupont> hehe

08:44:11 * danbri heads to boston, bye all

08:44:50 <mdupont> dmiles: ok thanks again dude

08:44:56 <mdupont> you are very helpful!

08:44:57 <dmiles> you bet

09:11:54 <dmiles> B:

09:11:54 <dc_rdfig> blurb

09:11:55 <dc_rdfig> making horn clauses from FOL

09:11:57 <dc_rdfig> (1:DanC) cf [Propositional resolution|http://logic.stanford.edu/classes/cs157/2003/notes/chap05.pdf]

09:11:57 <dc_rdfig> (2:DanC) and [the text book way to produce horn clauses from FOL|http://cs.wwc.edu/~aabyan/Logic/Horn.html], per dmiles

09:11:58 <dc_rdfig> (3:DanC) gotta noodle on this

09:11:59 <dc_rdfig> (4:DanC) also: [discussion|http://ilrt.org/discovery/chatlogs/rdfig/2003-03-02#T01-09-00]

09:12:04 <dmiles> A:

09:12:04 <dc_rdfig>http://www.ietf.org/rfc/rfc2396.txt

09:12:05 <dc_rdfig> RFC2396 - Uniform Resource Identifiers (URI): Generic Syntax

09:12:06 <dc_rdfig> (1:danbri) section 4.1. Fragment Identifier, "The semantics of a fragment identifier is a property of the data resulting from a retrieval action, regardless of the type of URI used in the reference."

09:12:24 <dmiles> maybe it was yesterday.. hrrm

09:12:26 <dmiles> C:

09:12:26 <dc_rdfig>http://12-212-75-114.client.attbi.com/root/opt/sourceforge/logicmoo/openmodality/iso-prolog/complementOf.pl.txt

09:12:27 <dc_rdfig> Prolog clause for owl:complementOf

09:12:28 <dc_rdfig> (1:JosD__) looks very promising; propositional resolution; by dmiles

09:12:47 <dmiles> how do i call yesterday C: ?

09:13:43 <mortenf> no can do (they roll over at 0000Z)... :(

09:14:02 <dmiles> hrrm looing for Bijan's PDF

09:15:10 <mortenf> there are archives at http://rdfig.xmlhack.com/ (not updatable)

10:43:29 <mdupont> mdupont is now known as mdupont-away3h

12:13:33 <mdupont-away3h> mdupont-away3h is now known as mdupont

12:45:20 <arnarl-home> hi

12:50:02 <mdupont> arnarl-home: hey whats new?

12:51:54 <arnarl-home> mdupont: well, since you ask :-) http://www.hoyre.no

12:52:02 <arnarl-home> That is a topicmap driven website

12:54:15 <mdupont> you working on that?

12:55:02 <arnarl-home> yeah, for the last three months

12:55:13 <mdupont> is that you? the pic?

12:55:17 <arnarl-home> that is our 8th TopicMap driven portal

12:55:22 <arnarl-home> heh, no

12:55:28 <arnarl-home> some politician

12:55:39 <mdupont> nye - does that mean neu? new?

12:55:51 <arnarl-home> jepp

12:55:52 <mdupont> neue?

12:56:00 <arnarl-home> They launched on friday

12:56:13 <mdupont> Wilkomman auf unser neue Webseite?

12:56:19 <arnarl-home> jepp

12:56:21 <mdupont> Willkommen auf unser neue Webseite?

12:56:24 <mdupont> cool

12:56:38 <mdupont> a little Deutch goes along way

12:56:43 <mdupont> a little Deutsch goes along way

12:57:38 <arnarl-home> heh. We built the portal on commision for a political party here in Norway.

12:58:22 <arnarl-home> The cool part is how we use scope to share topics between the various sub-comitees and local organisasions of that party.

12:58:47 <mdupont> interesting

12:59:03 <mdupont> why does searching for RDF Topic map return

12:59:05 <mdupont>http://www.hoyre.no/Hoyre/Sentralt/Import/personer/1045216682.75

12:59:05 <dc_rdfig> E: http://www.hoyre.no/Hoyre/Sentralt/Import/personer/1045216682.75 from mdupont

12:59:16 <mdupont> oops

12:59:20 <arnarl-home> probably a coincidence

12:59:32 <mdupont> try searching for xml, rdf or topicmaps

12:59:38 <mdupont> 2800 hits

12:59:41 <mdupont> very strange

13:00:11 <arnarl-home> actually, looks like you found a bug :-)

13:00:16 <arnarl-home> how embarassing :-)

13:00:41 <mdupont> ;(

13:00:43 <mdupont> sorry

13:01:06 <arnarl-home> he he, np

13:39:41 <mdupont> hey dmiles, good sleep?

17:08:43 <mdupont> mdupont is now known as mdupont-away

17:12:12 * dmiles back

17:19:15 <mdupont-away> hey dmiles

17:19:35 <mdupont-away> i cannot get mercury running without java :(

17:19:46 <dmiles> [09:19] <dmiles> yeah. the ability to move graph blocks arround and costumize is good

17:19:46 <dmiles> [09:20] <ham[let]> all programms are also graphs

17:19:46 <dmiles> [09:20] <dmiles> like for example member/2

17:20:02 <dmiles> thats going on in #ai right now ;P

17:20:04 <mdupont-away> hmm

17:20:07 <mdupont-away> oh

17:20:09 <mdupont-away> thanks

17:20:19 <dmiles> a guy is working on a graph editor for program editor

17:20:33 <mdupont-away> cool

17:20:37 <mdupont-away> i will log it

17:20:40 <mdupont-away> can you tell me a link?

17:21:54 <dmiles> at http://tunes.org/~nef/logs/ai/03.03.02

17:22:29 <dmiles> 4k under a flush though

17:22:54 <mdupont-away> tahnks

17:23:03 <mdupont-away> tunes

17:23:03 <mdupont-away> ?

17:23:46 <dmiles> the bot 'clog'

17:24:02 <mdupont-away> thanks

17:24:06 <dmiles> he logs a few channels to http://tunes.org/~nef/logs/

17:26:30 <mdupont-away> ok

17:26:31 <mdupont-away> thanks

17:26:36 <mdupont-away> cu l8ter

19:04:31 <AaronSw-SF> AaronSw-SF is now known as AaronSF

19:18:04 <dmiles> whats up with DAML now? seems its heard about less andless

20:00:22 <eikeon> re: [[[

20:00:26 <eikeon> <dajobe> simple test really. Can you parse this:[[

20:00:26 <eikeon> <dajobe> <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">

20:00:26 <eikeon> <dajobe> <rdf:_1 rdf:about="http://example.org/node"/>

20:00:26 <eikeon> <dajobe> </rdf:RDF>

20:00:26 <eikeon> <dajobe> ]]

20:00:26 <eikeon> ]]]

20:00:40 <eikeon> Yep... rdflib parses it.

20:00:54 <dajobe> ok

20:01:11 <dajobe> now I have to wonder whether to call arp2's generation of a warning for it a problem

20:01:14 <eikeon> re: [[[

20:01:16 <eikeon> <dajobe> if you grab ex-46.rdf & ex-47.rdf from http://cvs.ilrt.org/cvsweb/redland/raptor/tests/

20:01:16 <eikeon> <dajobe> should parse without errors

20:01:16 <eikeon> ]]]

20:01:27 <eikeon> <dajobe> 53 & 24 triples

20:01:46 <dajobe> that was to bijan, IIRC

20:01:50 <dajobe> but what did you get?

20:01:52 <eikeon> I get 52 and 24... but pass the test case...

20:01:58 <dajobe> hmm!

20:02:05 <eikeon> Two of the triples are the same.

20:02:08 <dajobe> did you diff ex-46.out and what you got?

20:02:09 <dajobe> ah

20:02:15 <dajobe> I forgot that

20:02:38 <dajobe> I should change the XML literal contents to be different

20:02:41 <eikeon> Line 31 and 32 in the expected output.

20:03:20 <eikeon> Namely: [[[<http://example.org/node1> <http://www.w3.org/1999/02/22-rdf-syntax-ns#_1> <http://example.org/node2> .

20:03:20 <eikeon> <http://example.org/node1> <http://www.w3.org/1999/02/22-rdf-syntax-ns#_1> <http://example.org/node2> .

20:03:20 <eikeon> ]]]

20:03:41 <dajobe> argh

20:04:22 <dajobe> this is why I test my parse with other parsers

20:04:28 <dajobe> s/my parse/my parser/

20:04:48 <MysticOne> :[FreenodeRadio] Hi All! This is just a notice to let everyone know that WOPN has emerged from alpha testing and is now a beta project, and we're exclusively known as Freenode Radio. We're on the air right now, with new music, new artists, and me! So tune in. Join #FNR to take part in the show, or point your ogg vorbis decoder to http://stream.radio.freenode.net:10000/modem.ogg (or broadband.ogg). Further announcements will be made via wallops

20:05:16 <dajobe> I'll change the rdf:_1 to rdf:_2

20:05:48 <dajobe> arp and raptor emit the triples at the parser level - streaming - whereas I guess you are dumping the resulting graph, a different thing

20:06:33 <eikeon> Yeah... my test harness compares the resulting graphs.

20:10:08 <dajobe> hmm, I've got a bug in my code somewhere

20:10:10 <dajobe> so this was useful

20:10:43 <dajobe> ah, no I understand now

20:13:45 <eikeon> Another thing I noticed this morning... ARP issues a warning and not an error for: http://www.w3.org/TR/rdf-syntax-grammar/#rdf-id

20:13:46 <dajobe> so now the triples will be different so a dumb triple compare vs graph compare mostly works (depends on how you name/rename bnodes)

20:14:05 <dajobe> for what?

20:14:35 <dajobe> for "rdf:id"? - not allowed

20:14:43 <dajobe> or for illegal rdf:ID attribute values?

20:15:21 <eikeon> For example: http://www.ecademy.com/module.php?mod=network&op=foafrdf&uid=22259

20:15:35 <eikeon> The space... unless that is an rdflib bug.

20:15:45 <dajobe> and which arp? the w3c's validator? that's broken (out of date)

20:16:11 <dajobe> yes, you can't have spaces in RDF (XML) ID values

20:16:18 <dajobe> just doesn't match the grammar

20:16:33 <dajobe> i.e. fails to match http://www.w3.org/TR/REC-xml-names/#NT-NCName

20:17:26 <eikeon> Yep... was thinking http://www.w3.org/RDF/Validator/ should flag it as an error instead of warning

20:18:36 <dajobe> [[rapper: Error - URI file:ecademy.rdf:8 - Illegal rdf:ID value 'Deon Erwee]]

20:18:46 <eikeon> Cool :)

20:19:25 <dajobe> aren't there some error tests?

20:19:35 <dajobe> I see some below rdfms-rdf-id

20:19:35 <eikeon> That is what I am doing... finally got around to adding an error page for the rdf I am spidering: http://eikeon.com/2003/02/errors

20:19:51 <dajobe> hmm "PENDING"

20:20:10 <dajobe> if you look in the manifest

20:20:19 <eikeon> I think there were approved test cases that covered the NCName bits of rdf/xml.

20:20:55 <dajobe> yes, above should be

20:21:21 <dajobe> i.e. these: http://www.w3.org/2000/10/rdf-tests/rdfcore/rdfms-rdf-id/

20:21:33 <dajobe> ah, I was out of date re CVS

20:21:36 <dajobe> they are approved now

20:23:25 <eikeon> The validator, http://www.w3.org/RDF/Validator/ is listed as being up to date with the lastest working draft I thought.

20:23:31 <dajobe> no

20:23:34 <dajobe> it doesn't do datatypes

20:24:37 <eikeon> Ah... feedback re: parsing to Jeremy Carroll... I should fire off an email.

20:26:32 <dajobe> so your errors lists shows lots of striping issues, parsing non-rdf/xml docs, non-XML even

20:26:55 <dajobe> then the rdf:ID one seems next

20:27:14 <dajobe> but that ecademy stuff is all generated I guess, so just need to contact Julian(?)

20:28:38 <eikeon> I try to parse all the rdfs:seeAlso as if they are RDF... need to start paying attention to mime-types. Have not checked lately to see where things stand re: mime-type for rdf.

20:28:59 <dajobe> aaron sent out a req for a new draft

20:29:06 <dajobe> but IIRC he forgot to update the WD references

20:30:09 <eikeon> My spider is now capturing more metadata and so I will be able to see how many people are using which mime-types etc.

20:37:36 <dajobe> D2:

20:37:36 <dc_rdfig> (dmiles) Easier to read and understand [http://12-212-75-114.client.attbi.com:3677/canonicalizer.moo?formula=%28forall+%3Fx+%28%3D%3E+%28p+%3Fx%29%28q+%3Fx%29%29%29&submit=Convert]

20:37:58 <dajobe> D2:[Easier to read and understand|http://12-212-75-114.client.attbi.com:3677/canonicalizer.moo?formula=%28forall+%3Fx+%28%3D%3E+%28p+%3Fx%29%28q+%3Fx%29%29%29&submit=Convert]

20:37:58 <dc_rdfig> Replaced comment D2.

20:38:14 <dajobe> although that url looks like it won't last long dmiles ;)


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: RDF Resource Description Framework Metadata and Text

Provided by Dave Beckett. Hosted by Useful Information Company.