Re: Input sought on datatyping tradeoff

I have a question about datatyping used with untidy literals. Given test
case D:

Test D:

   <Jenny>      <ageInYears> "10" .
   <ageInYears> rdfs:range xsd:decimal .

   <John>  <ageInYears>   _:a .
   _:a     xsdr:decimal   "10" .


My understanding is that in a world of untidy literals, literals are
(potentially) ambiguous names. Not only can many literals refer to one
thing, but the same literal can refer to many things (as opposed to uris
which are supposedly unambiguous names - i.e. a uri can only identify one
thing though many uris could refer to the same thing). With this
understanding a datatype identifies by uri a black-box that performs name
resolution - i.e. the datatype is able to functionally identify a
thing/object/value based solely upon its
(potentially-ambiguous-wrt-the-world-at-large-but-not-wrt-the-datatype)
name. A datatype has a set of names that it is able to resolve and a
corresponding set of things/values.  The members of the datatype class (when
the datatype is used as a class) are simply the things/values it is able to
resolve names to.

But what specifically is the meaning of the datatype when used as a
property? Clearly in test D above the first "10" is meant to denote the
decimal value 10, as is node _:a. But what does the second "10" (the object
of xsdr:decimal) denote? One possibility is that it is also the decimal 10.
Then a datatype used as a property states the equality under the datatype of
the subject and object (which would be enough in this instance for a
datatype-aware processor to figure out that _:a denotes the decimal 10).
Another possibility might be that it is referring to the name itself (which
I guess would make use of a datatype property some sort of a quoting
mechanism?). But if that is the case, how is the rdf processor to know that?
what range constraint on the datatype property would indicate that? just
rdfs:Literal? does rdfs:Literal become a "built-in" datatype that maps
string values to themselves? (I often confuse myself here because in the
whole discussion of tidyness vs untidyness I understand the term "literal"
as used to talk about the name/label of the graph node while "rdfs:Literal"
obviously is referring to the type of the value - little difference I guess
in the world of tidy literals).

Thanks,

Geoff Chappell

Received on Monday, 15 July 2002 08:51:10 UTC