Re: RDFS compatibility information in OWL-DL documents

Last for me in this thread for a while.

On 19 Apr 2007, at 18:37, Xiaoshu Wang wrote:

> Bijan,
>> In practice, owl:imports (and owl:Ontology) are just magic syntax.  
>> Thinking of them as a property and a class and wondering if they  
>> get the modeling "right" is hugely pointless and  
>> counterproductive. owl:imports is definitely  not flexible enough  
>> for what people want to do in building their ontologies (we need  
>> something like an XML Catalog or schemaLocation  or something  
>> better as well, because people want to work with private variants  
>> but not have their URIs all screwed up).
> Fair enough, let's put if owl:imports gets right or not aside.  It  
> is a side point.
>
> But what I really want to know is what kind of meaning, in terms of  
> RDF graphs, a simple statement like
>
> _:x a http://example.com/o1#A .
>
> convey?  If it only conveys what it says

It only *means* what it says, yes. There are complexities, e.g., you  
can interpret it according to OWL DL or OWL Full semantics and there  
will be discernable differences, alas, though they'll agree on a lot.  
There is no standard mechanism to indicate under which semantics you  
intend that graph to be interpreted.

> (as you said most RDF reasoners do).  Then how can I instruct the  
> reasoner to include additional statement stored elsewhere?

Use an API?

> Should I use owl:imports?

This is another possibility.

> Then would a reasoner reject my statement since there is no  
> owl:Ontology header?

? Why not have one? The boiler plate is :

	<owl:Ontology rdf:about="">
		<owl:imports>
			<owl:Ontology rdf:about="toBeImported URI"/>
		</>
	</>

Just treat that as magic syntax and no tool will have any problem.

(I have to say that I don't know, off hand, exactly how putting  
different uris in the first about will trigger different behavior,  
e.g., what if the subject and object are both FOO? I suspect that FOO  
gets imported into the current document. Ugh)

Even if you don't include the type triples, Pellet will "repair" this  
owl fullness and reasonaway.

> Or should I use rdfs:isDefinedBy, rdfs:seeAlso?

No reasoner that I know of is, by default, sensitive to these. You  
could preprocess and then feed into the reasoner, but that doesn't  
currently have wide spread use.

> If so, where is it specified?

isDefinedBy and seeAlso are rather *un*defined. FOAF suggests using  
seeAlso links, but I think the *content* of a foaf document is still  
just the assertions in it, not the seeAlso's closure.

> When writing ontologies, it, of course, doesn't matter.  I can just  
> use owl:imports in case the reasoner only support explicit import.   
> But when I am writing plain RDF statements,

If you want some level of interoperability, then use owl:imports.  
Some plain jane rdf stores won't recognize it, alas, but a fair  
number of systems will.

> such as a personal profile, don't I have to know what it means to a  
> reasoner before I write something?  On the other hand, if I am to  
> write a RDF/OWL based agents, don't I have to know the exact model  
> to work satisfactorily.
>
> I am sorry this thread side-stepped into the design of owl:imports  
> and owl:Ontology.  But the trigger is Alan's proposal on a  
> conditional rdfs:imports.

Alan, IIRC, is trying to distinguish between owl:imports and  
rdfs:imports to handle the problem of rich reasoning over annotation  
properties and OWL DL.

>   Hence, I was saying that  we should clarify the "default" import  
> model first before adding new tag?

The default is clear: There is only owl:imports. No other  
transclusion is standardized, so any other form is application  
dependent. I personally would encourage rdf stores to use owl:imports  
if they are going to do anything by default because then we have a  
chance at some consistent behavior.

I argued back in the day that owl:imports should have been  
rdf:imports so I'm not thrilled with the situation either.

> But it still seems a haze to me what should be is the standard  
> practice.

Well, what *is* is clear. What *should be* is less so.

Cheers,
Bijan.

Received on Thursday, 19 April 2007 17:56:49 UTC