W3C home > Mailing lists > Public > www-webont-wg@w3.org > March 2002

XML datatypes

From: Jonathan Borden <jonathan@openhealth.org>
Date: Tue, 12 Mar 2002 14:36:12 -0500
Message-ID: <060801c1c9fd$2b8aa560$0a2e249b@nemc.org>
To: "WebOnt WG" <www-webont-wg@w3.org>
Some thoughts about integrating XML datatypes with OWL

DAML+OIL currently makes the distinction between ObjectProperties and

XML Schema makes the distinction between ComplexTypes and SimpleTypes.

Roughly speaking the XML lexical space of a SimpleType is a restriction on a
character string e.g. xsd:string. The lexical space of a ComplexType is a
piece of XML itself.

XML Schema further distinguishes between "local" and "global" types. A local
type is context dependent. Looking through various DAMLs at
http://www.daml.org I notice the following idiom:

<Property rdf:ID="name">

<Property rdf:ID="name">

This looks to me like a desire to have something like "local" properties in
DAML, yet isn't legal RDF -- values of an rdf:ID must be unique.

This is a real issue. The solution is to use a hierarchical naming space
(within an ontology) rather than a global space per ontology. For example
the path specifiers:


corresponding to the URIs:


"bind" the "name" property to the class "book" or "article", much as a local
XML schema declaration.

Back to the ObjectProperty vs. DatatypeProperty: it is not entirely clear to
me that there _need be_ this distinction: Both ObjectProperties ala
ComplexTypes and DatatypeProperties ala SimpleTypes might indicate XML
Schema (or XQuery) datatypes.

For example (I hope I am expressing this in an intelligible fashion !): The
intention is to say that the Property "person.name" has a value of the
indicated type "PersonName" which has the properties:
{family,given,middle,prefix, suffix}. This property "person.name" is the
"same as" a property whose range is the XML Schema type "myxsd:person.name".
By such a mechanism we would have the ability to infer based on D+O/OWL
descriptions as well as provide the syntactic constraints of XML

<Property rdf:ID="person.name">
                        <rdfs:range rdf:resource="myxsd:person.name"/>
                           <onProperty rdf:resource="#family"/>
                           <toClass rdf:resource="#string"/>
                           <onProperty rdf:resource="#given"/>
                           <toClass rdf:resource="#string"/>
                           <onProperty rdf:resource="#middle"/>
                           <toClass rdf:resource="#string"/>

Received on Tuesday, 12 March 2002 16:41:20 UTC

This archive was generated by hypermail 2.4.0 : Friday, 17 January 2020 23:04:28 UTC