using "undeclared" properties and classes

From: Frank van Harmelen (Frank.van.Harmelen@cs.vu.nl)
Date: 12/25/00


In the ammended version of our introductory example (at http://www.cs.vu.nl/~frankh/spool/DAML+OIL/daml+oil-ex.daml) there are a few places where I refer to a property without having declared it as a property first. 

For example:

<rdfs:Class rdf:about="#Person">
  <restrictedBy>
    <Restriction>
      <onProperty rdf:resource="#spouse"/>
      <maxcardinalityQ>1</maxcardinalityQ>
      <hasClassQ rdf:resource="#Person"/>
    </Restriction>
  </restrictedBy>
</rdfs:Class>

places a qualified cardinality restriction on the property spouse applied to persons, while there has never been a statement declaring spouse to be a property, ie nothing like
  <rdf:Property rdf:ID="spouse/>
appears anywhere (earlier or later) in the file. 

QUESTION: is this legal? In DAML? In RDF? in RDF Schema? 

The same happens with a class that is mentioned but never defined:

<Disjoint parseType="daml:collection">
  <rdfs:Class rdf:about="#Car">
  <rdfs:Class rdf:about="#Person">
  <rdfs:Class rdf:about="#Plant">
</Disjoint>

appears without there ever being anywere anything like:

<rdfs:Class rdf:ID="Plant"/>

SAME QUESTION.

Frank.
   ----


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