- From: Boris Motik <boris.motik@comlab.ox.ac.uk>
- Date: Thu, 11 Dec 2008 18:42:16 -0000
- To: <public-rdf-text@w3.org>
Hello,
Please allow me to explain how we meant rdf:text to be interpreted. Consider the following two graphs:
(G1) eg:a eg:p "foo"@en .
(G2) eg:a eg:p "foo@en"^^rdf:text .
Our intention was that (G1) and (G2) are semantically equivalent. This is because we indented the rdf:text spec to be interpreted
such that, whenever you see somewhere "foo"@en, you actually mean "foo@en"^^rdf:text. There are no entailment rules in RDF for this,
but these are not really needed: "foo"@en is *identical* to "foo@en"^^rdf:text --that is, the two should be interpreted in the same
way and one should be treated as a syntactic shortcut for the other.
Similarly, "foo" is to be taken as a syntactic shortcut for "foo"^^xsd:string; thus, both are actually identical to each other.
Now let's consider the impact of this change to SPARQL. In our opinion, we thought the following should be the case:
Lang("Padre de familia@es"^^rdf:text) ==> "es"
Lang("Padre de familia"@es) ==> "es"
Lang("Padre de familia") ==> ""
Datatype("Padre de familia@es"^^rdf:text) ==> rdf:text
Datatype("Padre de familia") ==> xs:string
I believe that all this is unequivocal, and I see only one possible difference. In your e-mail, you said the following:
Datatype("Padre de familia"@es) ==> error
I can't say I really thought about this particular thing in advance, but instinctively I'd say that the following should be the
case:
Datatype("Padre de familia"@es) ==> rdf:text
I believe this might make sense from the SPARQL point of view. If, however, this is really causes problems for some people, we can
add to the rdf:text document and "exception" and say that Datatype("Padre de familia"@es) should return "error".
Regards,
Boris
Received on Thursday, 11 December 2008 18:43:06 UTC