Re: Defining subsets of existing OWL / RDF-S vocabularies in another vocabulary?

(Fighting followupitis.)

On 1 Oct 2007, at 09:32, Richard Cyganiak wrote:

> Alan,
>
> On 29 Sep 2007, at 23:33, Alan Ruttenberg wrote:
>>> But if you exchange data with the rest of the world, then you'll  
>>> have to keep in mind that some agents are web-aware, and will get  
>>> their definition of foaf:name from http://xmlns.com/foaf/0.1/ 
>>> name, and not from your copy, regardless of whatever owl:imports  
>>> you may have declared.
>>
>> An agent that is "web-aware" in such a way as to ignore  
>> owl:imports, and retrieve definitions of terms in an OWL ontology  
>> from the web would be in variance with the OWL specification. If  
>> something is to be fixed, it is the web agent. To build anything  
>> to conform to a buggy system is a corrupting influence on the web,  
>> vis browser hassles with ensuring compatibility with IE, bugs and  
>> all.
>
> OWL is layered on top of RDF and RDFS. There are several agents  
> that do not understand OWL, but employ semantic extensions such as  
> follow-your-nose and other breadcrumb protocols. These are popular  
> modes of operation in the FOAF and LOD communities, and I wouldn't  
> consider them “buggy systems”.

If it ignores the owl:imports, and grabs its own things to imports,  
*and* claims to be following the specs *and* capturing my intent,  
then they are clearly broken.

Aggregators are one thing; language features are another. I think its  
a *much* better way to think of the "breadcrumb protocols" as aspects  
of spidering rather than of the semantics of the language.

If Pellet, for example, when asked to classify this ontology:

	<> owl:imports <http://ex.org/foo>
	:sally <http://ex.org/foobar#p> :mary.
	:sally <http://ex.org/foobar#p> :joanne.

And http://ex.org/foobar defined p to be functional and foo didn't,  
then yes, pellet is broken here. Any agent that did this and claimed  
to be working with the semantics of the language is also broken.

However, an agent might define a service which tried to aggregate  
everything it can find about :sally into one owl document and then  
pass it to a reasoner. No worries there.

> If Martin intends to publish his data on the Semantic Web, then I  
> think it is good advice to consider the behaviour of such clients.  
> As I said before, if he just builds a silo and doesn't intend to  
> publish his data, then he does not need to consider this.

[snip]

If Martin can't rely on the specced behavior, then we should change  
the specs. However, I fail to see there is a real problem here except  
in calling agents that go off and spider like this "web-aware" and  
suggesting that others are not. Pellet is web aware but does not, and  
should not do, this behavior. Web browser are web aware, but don't  
download the link closure of a webpage (though they do download some  
bits, like, oh, imgs and scripts, etc.)

Note that this is not owl specific. If a sparql engine downloaded a  
bunch of crap whenever I loaded an rdf document and the authors  
claimed that this was legitimate, I would throw away that engine  
pretty damn quickly. If it let me turn that spidering off, I'd be  
more ok with that though I would certain file a bug report if it were  
on be default.

Similarly, I'd like a FOAF agent to do *more* than just spider foaf  
files. It should sniff my address book and maybe my email files and  
oh XFN microformats. This sniffing isn't part of the semantics  of  
any of the documents; it's just what the foaf agent does.

Cheers,
Bijan.

Received on Monday, 1 October 2007 17:51:54 UTC