Two minor points on mapping rules

Hi Peter,

I have thought a bit more about the datatyping rule; and also realized we
did not discuss one other aspect of difference (blankNode rdf:type
rdfs:Class .)

The datatype rule is:

datatypeID

=>

datatypeID rdf:type rdfs:Datatype .

I think it will be easier to simply not permit rdfs:Datatype anywhere; and
change the rule to:

datatypeID

=>

// empty

Rationale:
1)  The rule as is needs some change, since this should be at most optional
for builtin datatypes (which are the only ones we have).

2) Making it optional then still leaves the orphaned datatype declaration
problem; made worse since a datatype that is only used in a cardinality
constraint gets orphaned.

i.e.

xsd:int rdf:type rdfs:Datatype .
_:x rdf:type owl:Restriction .
_:x owl:onProperty eg:p.
eg:p rdf:type owl:DatatypeProperty .
_:x owl:minCardinality 1^^xsd:int .

is in OWL Full and not OWL DL, by the current mapping rules.

3) Two possible fixes to the orphaned datatype are:
   a) add new datatype declaration directive to Abstract Syntax (my
preference)
   b) change mapping rule to not output any triple (easier)

=====================

There are a number of places where the mapping rules include
_:x rdf:type rdfs:Class . [opt]

I have a mild preference for deleting them all; but leaving triples like

classID rdf:type rdfs:Class . [opt]

I requested the addition of such triples for uriref subjects for
compatibility with RDFS; but I cannot think of a use case in which the
corresponding triples for blank nodes aid compatibility. This is
remembering: (a) blank nodes cannot be shared between documents and (b) RDFS
does not use blank nodes as classes or properties (it is not actually
prohibited, just not useful).

Jeremy

Received on Monday, 10 March 2003 08:31:55 UTC