datatypes and RDF Schema

From: Peter F. Patel-Schneider (pfps@research.bell-labs.com)
Date: 10/04/01


Hi:

Here is a little document that I prepared.  It takes (most) of the datatype
ideas from DAML+OIL (March 2001) and recasts them informally as an
extension to RDF Schema.

Now for the political part:

1/ I think it would be better if this were to come from the
   joint committee.  Can we discuss this at the next meeting and adopt it
   (or not)?

2/ Things are moving fast on the RDF front, so if the joint committee can't
   make a decision soon, I may have to unilaterally reluctantly decide to
   push it out from just me.

3/ Where should this go?  I'm almost of the opinion that it should go to
   the Semantic Web coordination group instead of the RDF Core Working
   Group.

Comments, please.

peter





			Adding Datatypes to RDF Schema

			Peter F. Patel-Schneider


Here is a method for adding datatypes to RDF Schema that fits well
with what I see as the RDF Schema philosophy.


INTRODUCTION


First some desiderata:

1/ The datatype scheme should be backward compatible with RDF and RDF
   Schema as they are currently constituted.  

   From this, I get that the following n-triples should still be allowed:

	John age "5" .
	John streetAddress "12a" .
	Mary streetAddress "5" .

2/ The datatype scheme should allow type information to be specified in the
   same way that RDF Schema provides ``type'' information for resources.

   From this, I get that the following is a (or, perhaps, the) way to
   specify the type of a literal:

	Mary age "07" .
	age rdfs:range ????:integer .
	John age "05" .


THE PROPOSAL


The basic idea of the proposal is quite simple.

1/ Change the value space for literals from an uninterpreted
   quasi-character space to the disjoint union of a collection of value
   spaces.

2/ Allow untyped literals to denote any element of this value space for
   which they are lexical representations.

3/ Use special URIs to refer to these value spaces and incorporate their
   meaning into the meaning of RDF Schema.

For technical details on one way to do something very close to this, see
the model theory for DAML+OIL at
	http://www.daml.org/2001/03/model-theoretic-semantics.html


What sort of URIs and value spaces could be used?  Just about any kind.
Primitive XML Schema datatypes would work and will be used in the following
examples.  The mechanism can be extended to all XML Schema datatypes and
with some extensions probably even to all of XML Schema.


EXAMPLES AND COMMENTARY


A n-triple example using XML Schema datatypes:


	John age "5" .

All that is known so far is that John's age is some data value that can be
lexicalized as 5.

	John streetAddress "05" .
	Mary streetAddress "5" .

It is not know yet whether John's age is the same data value as Mary's
street address.  Also John and Mary could turn out to have the same
streetAddress

	John age "05" .

It is not known yet whether John has two ages.  

	age rdfs:range xsd:integer .

Now we know that the two statements about John's age denote the same
information.  

	streetAddress rdfs:range xsd:string .

Now we know that John's street address is different from Mary's street
address.


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>


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