- From: Jonathan Borden <jonathan@openhealth.org>
- Date: Sat, 28 Sep 2002 11:09:05 -0400
- To: "Peter F. Patel-Schneider" <pfps@research.bell-labs.com>, "pat hayes" <phayes@ai.uwf.edu>
- Cc: <www-webont-wg@w3.org>
> >Suppose that you have the following: > > > > foo rdfs:subPropertyOf bar . > > foo rdfs:range xsd:[integer union string] . > > bar rdfs:range xsd:[string union integer] . > > > > john foo 10 . > > > >how is 10 to be interpreted? > > integer. YOu can in this case also INFER that john bar 10, and now > you can infer that the literal in that second triple means a string. > So now, John's foo is ten and his bar is "10". > It occurs to me that this is merely a wrinkle on the datatyping issue of how to interpret the literal "10" Aside from ranges, "10" can be interpreted in many ways e.g. xsd:string"10" xsd:binary"10" xsd:integer"10" xsd:real"10" ... any application dependent interpretation... the idea of a datatype is to place a restriction on the above set of interpretations. given the two datatypes xsd:[integer union string], xsd:[string union integer] which are both in the rdf:subPropertyOf chain, the interpretation cannot be restricted to xsd:integer"10", but rather the set {xsd:integer"10", xsd:string"10"} ... which is simply the same as xsd:[integer union string]"10" and xsd:[string union integer]"10" In the presence of an rdfs:subPropertyOf chain, the interpretation of the literal would, I presume, be the disjunction of the conjunctions of the datatypes indicated by each of the ranges for each rdfs:subPropertyOf i.e. foo rdfs:range (Range(foo) union Range(bar)) ... foo rdfs:range _:x _:x owl:unionOf (xsd:[integer union string], xsd:[string union integer]) Jonathan
Received on Saturday, 28 September 2002 11:27:03 UTC