accept ISSUE-12: annotation of multi-triple properties

ISSUE-12 points out a problem with the RDF mapping of annotation for
axioms that produce more than one triple in the mapping.  I thus believe
that it should be accepted.

I also believe that the problem can be fixed by providing a construct
that, in essence, ties together the reifications of the triples.

The solution would be to do the following:

Axioms with annotations are reified. 

Consider an axiom that contains annotations 
	Annotation(apIDi cti), 1 <=i<= n


If the unannotated axiom produces only one triple in the RDF
serialization s p o,  
then *add* triples  _:b rdf:type owl11:Axiom, _:b rdf:subject s,
     	 	    _:b rdf:predicate p, _:b rdf:object o
and annotions become
	_:b T(apIDi) T(cti)  1<=i<=n

If the unannotated axiom is already "reified" (negative property
assertions)  then use the initial blank node of the reification (_:x) 
and annotations become
	_:x T(apIDi) T(cti)  1<=i<=n

Otherwise, if s1 p1 o1, ...., sm pm om (m>1) is the RDF serialization 
of the corresponding axiom without annotations,
the following triples are added:

- each triple is reified, for each 1<=i<=m
  adding triples _:bi rdf:type rdf:Statement, _:bi rdf:subject si,
  	 	 _:bi rdf:predicate pi, _:bi rdf:object oi
- the reifications are put into a list [_:b1,...,_:bn] with initial
  blank node _:b and the following triple is added
  _:b rdf:type owl11:Axiom
- this blank node is use as the main node for the annotations, adding
	_:x T(apIDi) T(cti)  1<=i<=n

Note that the Label and Comment annotations are just abbreviations. They
are serialized into RDF triples by expanding the abbreviation and then
applying the transformation from Table 2. 

This would do for the text of Section 2.1.  The reverse mapping would
have to be appropriately changed.

peter

Received on Thursday, 13 December 2007 15:58:00 UTC