Re: datatypes and RDF Schema

From: Peter F. Patel-Schneider (
Date: 10/04/01

From: Pat Hayes <>
Subject: Re: datatypes and RDF Schema
Date: Thu, 4 Oct 2001 10:41:14 -0500


> >2/ The datatype scheme should allow type information to be specified in the
> >    same way that RDF Schema provides ``type'' information for resources.
> This suggests a problem to me, since this kind of typing is 
> inherently subject to inference; it can't be checked by a parser. 
> Isn't that the whole point of having literals in the first place, 
> that you can determine their identity (and some of their properties, 
> eg length of strings, value of numerals) just by looking at them? 
> Unlike logical constants, they aren't replaceable by gensyms.

Hmm.  I think that this may be a philosophical difference.  One view of
literals is that their lexical representation determines all.  Another view
is that literals map into pre-specified domains, but that their lexical
representation by itself may not determine all.  This difference appears in
programming languages, by the way, with ML having the first view and C++
(more of) the second.

> There ought to be some way in which the typing information for 
> literals is distinguishable from general rdf:type assertions, so that 
> it can be picked out by a processor in one scan of a document or 
> graph on purely syntactic grounds. That may be compatible with your 
> suggestion below, but I'd like to see it made explicit.

I'm arguing against this.  Literal typing information can follow lots of
routes, in my view, including from superproperties, etc., etc.  (However, it
can't come from rdf:type, as literals can't be subjects.)


> >3/ Use special URIs to refer to these value spaces and incorporate their
> >    meaning into the meaning of RDF Schema.
> How does this differ from the proposal that Patrick Stickler has been 
> outlining on rdf-logic?

Patrick wants, I think, int:20 to be the way you get the integer 20.  This
proposal does not use qualified literals at all.  Instead it uses something
like xsd:integer to get from the vague notion of 20 to the precise notion
of the integer 20.


> >An RDF/XML version of more-or-less the above example:
> >
> ><rdf:RDF>
> >
> >....
> >
> ><rdf:Property rdf:ID="streetAddress">
> >   <rdfs:range rdf:resource="xsd:string" />
> ></rdf:Property>
> >
> ><Person rdf:ID="John">
> >   <age>5</age>
> >   <streetAddress>05</streetAddress>
> ></Person>
> >
> ><Person rdf:ID="Mary">
> >   <streetAddress>5</streetAddress>
> ></Person>
> >
> ><Person rdf:about="John">
> >   <age>05</age>
> ></Person>
> >
> >....
> >
> ><rdf:Property rdf:ID="age">
> >   <rdfs:range rdf:resource="xsd:integer" />
> ></rdf:Property>
> >
> ></rdf:RDF>
> That does look very pretty, I agree.

If I was arguing esthetics, I would point out this advantage.  :-)

> Pat


This archive was generated by hypermail 2.1.4 : 04/02/02 EST