- From: Jos De_Roo <jos.deroo.jd@belgium.agfa.com>
- Date: Fri, 11 Oct 2002 10:27:05 +0200
- To: "Jeremy Carroll <jjc" <jjc@hplb.hpl.hp.com>
- Cc: RDF core WG <w3c-rdfcore-wg@w3.org>, "Graham Klyne" <GK@NineByNine.org>
> I am worried about Pat's proposals for *any* RDF list semantics. > > I had believed that we were going to provide a list syntax, and leave > the semantics to WebOnt. > > Pat's current proposal appears to have three unfortunate features: > > EQUALITY > ======== > > _:l rdf:first <a> . > _:l rdf:first <b> . > <a> <foo> <val> . > > entails > > <b> <foo> <val> . in our tests this is not entailed i.e. we get # No proof found > INFINITY > ======== > > RDF closures of the empty rdf graph are infinite. also not in our case, having some closure rules like IF | THEN ------------------------------------------------------- ?s rdf:first ?x . | ?s owl:item ?x . ------------------------------------------------------- ?s rdf:rest ?b . | ?b owl:item ?x . | ?s owl:item ?x . ------------------------------------------------------- | ?x :includes rdf:nil . ------------------------------------------------------- ?s rdf:first ?a . | ?x owl:item ?a . | ?s rdf:rest ?b . | ?x :includes ?b . | ?x :includes ?s . ------------------------------------------------------- | ?x :inAllOf rdf:nil . ------------------------------------------------------- ?s rdf:first ?a . | ?x rdf:type ?a . | ?s rdf:rest ?b . | ?x :inAllOf ?b . | ?x :inAllOf ?s . ------------------------------------------------------- ?s rdf:first ?a . | ?x rdf:type ?a . | ?x :inSomeOf ?s . ------------------------------------------------------- ?s rdf:rest ?b . | ?x :inSomeOf ?b . | ?x :inSomeOf ?s . ------------------------------------------------------- | rdf:nil owl:notItem ?x . ------------------------------------------------------- ?s rdf:first ?a . | ?a owl:differentFrom ?x . | ?s rdf:rest ?b . | ?b owl:notItem ?x . | ?s owl:notItem ?x . > CONTRADICTION > ============= > > The following rdf graph has no interpretations: > > rdf:nil rdf:first <foo> . should it? > (I note that we will have datatype errors in RDF graphs soon, but that > feels to me like a significantly more limited style of 'contradiction'). we have some builtins so that nothing is needed to entail ( "a" "b" "c") str:concatenation "abc". ( "a" "b" "c") str:concatenation "abc". "xyz" str:greaterThan "abc". "abc" str:notGreaterThan "xyz". "abc" str:lessThan "xyz". "xyz" str:notLessThan "abc". "xyz" str:notLessThan "xyz". "abc" str:startsWith "ab". "abc" str:endsWith "bc". "abc" str:endsWith "abc". ( "1" "2" "3") math:sum "6.0". ( "6.0" "1") math:difference "5.0". ( "1" "2" "3") math:product "6.0". ( "6.0" "3") math:quotient "2.0". ( "5.0" "2.0") math:remainder "1.0". "-5" math:negation "5.0". ( "2" "10") math:exponentiation "1024.0". ( "a" ( "b" "c") "d") math:memberCount "3". "6.0" math:greaterThan "2.0". "2.0" math:notGreaterThan "6.0". "2.0" math:lessThan "6.0". "6.0" math:notLessThan "2.0". "6.0" math:equalTo "6.0". "2.0" math:notEqualTo "6.0". the () are used here as a shorthand for RDF lists in the sense that (<a> <b>) is actually _:l1 a rdf:List . _:l1 rdf:first <a> . _:l1 rdf:rest _:l2 . _:l2 a rdf:List . _:l2 rdf:first <b> . _:l2 rdf:rest rdf:nil . I agree that we easily can get e.g. java.lang.NumberFormatException: jc for ( "jc" "2" "3" ) math:sum _:y . I also don't see for the moment how rdf:format can help here, as we have _:l1 rdf:first "jc" and it would be hard to say rdf:first rdfs:format xsd:double . but the B proposal of course also works as the A proposal (w.r.t. to C, having a mixture of "1" xsd:float"1" xsd:decimal"1" xsd:double"1" xsd:integer"1" xsd:nonNegativeInteger"1" xsd:positiveInteger"1" etc. seems a bit less k.i.s.s. to me but it can work of course) > On the basis of these three features, which are more characteristic of > OWL than RDF I suggest we ask WebOnt to handle List semantics. OK -- , Jos De Roo, AGFA http://www.agfa.com/w3c/jdroo/
Received on Friday, 11 October 2002 04:28:47 UTC