It occurs to me that OWL provides a way to close RDF containers, now that a common superproperty is defined for rdf:_1, rdf:_2, etc. E.g., using Notation3, [[ test:threeElementContainer a owl:Class ; rdfs:subClassOf rdfs:Container, [ a owl:Restriction ; owl:onProperty rdf:_1 ; owl:cardinality "1"^^xsd:nonNegativeInteger ], [ a owl:Restriction ; owl:onProperty rdf:_2 ; owl:cardinality "1"^^xsd:nonNegativeInteger ], [ a owl:Restriction ; owl:onProperty rdf:_3 ; owl:cardinality "1"^^xsd:nonNegativeInteger ], [ a owl:Restriction ; owl:onProperty rdfs:member ; owl:maxCardinality "3"^^xsd:nonNegativeInteger ] . ]] This seems to me to be sufficient to enforce that any RDF container declared to be an instance of test:threeElementContainer must have: exactly one value for each of rdf:_1, rdf:_2, rdf:_3, and no values for any other properties rdf:_nn. #g ------------ Graham Klyne For email: http://www.ninebynine.org/#ContactReceived on Monday, 10 November 2003 13:23:54 GMT
This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:52:47 GMT