So I looked over the DAML+OIL syntax and model theory and came up with the
following conclusions:
1/ All triples are actually carried into the model theory, so Richard is
somewhat justified in trying to query them. I now view this as a mistake,
so I wouldn't count on the situation staying stable. Also querying logical
triples is not likely to get what you want.
2/ If you only carry reasonable triples into the model theory, then you get
the following division of DAML+OIL syntax.
RDF Syntax - doesn't even make it to the RDF graph, so can't be queried
xmlns:*
rdf:RDF rdf:Description
rdf:ID rdf:about rdf:resource
rdf:parseType
Untouchable - should not make it into the model theory
Ontology versionInfo imports
unionOf intersectionOf disjointUnionOf oneOf
complementOf
onProperty toClass hasValue
hasClass minCardinality maxCardinality cardinality
hasClassQ minCardinalityQ maxCardinalityQ cardinalityQ
equivalentTo sameClassAs samePropertyAs sameIndividualAs
disjointWith differentIndividualFrom inverseOf
Questionable - it may be possible to take these into the model theory
rdf:type
rdfs:subClassOf rdfs:subPropertyOf
rdfs:domain rdfs:range
rdfs:Class rdfs:Literal rdf:Property
Class Datatype Thing Nothing
Restriction
ObjectProperty DatatypeProperty
TransitiveProperty UniqueProperty UnambiguousProperty
OK, except in DAML+OIL logical constructs
List nil first rest item
OK - no change is required to make these work because they are not really
syntax
rdfs:label rdfs:comment
rdf:value
rdfs:seeAlso rdfs:isDefinedBy
peter