- From: Jeremy Carroll <jjc@hplb.hpl.hp.com>
- Date: Mon, 28 Jan 2002 14:51:25 -0000
- To: "Dan Connolly" <connolly@w3.org>
- Cc: <w3c-rdfcore-wg@w3.org>
> > we write stuff like: > > :Fred :hairColor "red". > > { ?x :hairColor "red" } > log:implies { ?x a :RedHead }. > > and we expect our system to conclude > > :Fred a :RedHead. > Sorry Dan, I had missed this part of the message on Friday, (the first part of your message was true so I didn't go further). In TDL the model theory maps a literal to a pair. So "red" ==> ( "red", x ) The first component is the (untyped) lexicalization, and the second component reflects the (typed) interpretation of this string. At an application level you could decide that you always wanted to refer to the untyped lexicalization within your log:implies. Personally, I think a better approach would be to declare a range constraint on :hairColor e.g. :hairColor rdfs:range xsd:string . then "red" in the contexts given is unambiguously interpreted as < "red", "red" > , and everything works as desired. (Modulo the fixes to the model theory already required by the main "Duh" example). If I may change your example a little: > > :Fred :shoeSize "44". > > { ?x :shoeSize "44" } > log:implies { ?x a :bigFoot }. :Thelma :shoeSize "044". In S-B we can declare that :shoeSize rdfs:range xsd:integer.lex . In this case, :Fred is a :bigFoot, but :Thelma isn't. S-B treats its objects as strings, and does not interpret them, and so cannot equate "44" with "044". In TDL we can declare :shoeSize rdfs:range xsd:integer . If we either: make a closed world assumption about datatypes (i.e. that there aren't datatypes that we don't know about) or: say that log:implies only cares about the typed values then: we also have :Thelma is a :bigFoot. (The issue about the closed world assumption is that if there is say an octal integer type, requiring lexicalization beginning in "0", and somewhere a range constraint that :shoeSize rdfs:range eg:octal . then the description of :Thelma is ill-formed and the conclusion is false.) I think TDL is a lot closer than S-B to what is desired in your example, which in my view, is inference based on typed values. I don't think TDL is perfect but ... Jeremy
Received on Monday, 28 January 2002 09:51:28 UTC