protegeproject/cellfie-plugin

Possibly incorrect handling of rdfs:seeAlso annotation

Closed this issue · 2 comments

When I try to make an OWL individual the object of the rdfs:seeAlso annotation I get the following error:

screen shot 2016-08-23 at 8 56 57 am

Is this correct behaviour?

The following

https://www.w3.org/TR/2004/REC-rdf-schema-20040210/#ch_seealso

says

A triple of the form:

S rdfs:seeAlso O

states that the resource O may provide additional information about S.
It may be possible to retrieve representations of O from the Web, but this is not required. 
When such representations may be retrieved, no constraints are placed on the format 
of those representations.

I think the message is correct, as the value of an annotation property in OWL is either an OWL literal or an IRI.
Annotations are ignored be the reasoner, so if you want your rdfs:seeAlso annotation to point to an individual, you just specify its IRI as the value. The reasoner does not care if that IRI represent an individual, a URL, or any random RDF resource. So I guess the correct way of typing the value of @B* in your rule, would be @B*(mm:IRI).
Regarding the use of literals as values for annotations, there is a way to type them (for example, as xsd:string, or xsd:dateTime), but I haven't tested if Cellfie/MappingMaster can handle it correctly.
This is the relevant section about annotations in OWL from the OWL Primer:
https://www.w3.org/TR/owl-ref/#Annotations

Maybe @matthewhorridge can also comment on this.

Forgot that OWL has its own semantics on top. If that is what the OWL spec says then it seems like correct behaviour.