[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
RE: A valuable lesson on the difference between XML Schemas andontologies
- From: "Costello, Roger L." <costello@mitre.org>
- To: "xml-dev@lists.xml.org" <xml-dev@lists.xml.org>
- Date: Sun, 6 Nov 2011 13:48:57 +0000
Hi Folks,
I added the following section to the paper:
------------------------------
What Kind Of Thing Is It?
------------------------------
Suppose processing of XML instance documents requires answers to these questions:
- What kind of thing is Book?
- What kind of thing is Person?
- What kind of thing is title?
- What kind of thing is author?
- What kind of thing is name?
Here are the answers we expect to get:
- Book is an Object
- Person is an Object
- title is a property
- author is a property
- name is a property
In this paper I have attempted to persuade you that "what-kind-of-thing-is-it" questions are best answered with an ontology, not an XML Schema. The relationship of each element to a semantic identifier such as Object or property is readily expressed in an RDF Schema, as shown below. The below RDF Schema is read as: "A Book is a subclass of Object (i.e., a Book is an Object). A Person is an Object. A title is a property. An author is a property. A name is a property."
<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#">
<rdfs:Class rdf:ID="Object">
</rdfs:Class>
<rdfs:Class rdf:ID="property">
</rdfs:Class>
<rdfs:Class rdf:ID="Book">
<rdfs:subClassOf rdf:resource="#Object"/>
</rdfs:Class>
<rdfs:Class rdf:ID="Person">
<rdfs:subClassOf rdf:resource="#Object"/>
</rdfs:Class>
<rdfs:Class rdf:ID="title">
<rdfs:subClassOf rdf:resource="#property"/>
</rdfs:Class>
<rdfs:Class rdf:ID="author">
<rdfs:subClassOf rdf:resource="#property"/>
</rdfs:Class>
<rdfs:Class rdf:ID="name">
<rdfs:subClassOf rdf:resource="#property"/>
</rdfs:Class>
</rdf:RDF>
More ... http://www.xfront.com/What-Kind-Of-Thing-Is-It.pdf
Comments welcome.
/Roger
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]