RE: Namespaces in guide ontologies

Wine.owl has an xml:base declaration.  My local copy of
food.owl does also.  For some reason, the copy if food.owl
out on the web site does not.  I must have slipped up 
somewhere.  It will.

- Mike

-----Original Message-----
From: Sean Bechhofer [mailto:seanb@cs.man.ac.uk] 
Sent: Thursday, June 19, 2003 8:27 AM
To: www-webont-wg@w3.org
Subject: Namespaces in guide ontologies




I believe there are still some anomolies in the guide ontologies at:

http://www.w3.org/2001/sw/WebOnt/guide-src/food.owl
http://www.w3.org/2001/sw/WebOnt/guide-src/wine.owl

In, for example, food.owl, there is an xml namespace declaration in the
RDF header:

xmlns="http://www.w3.org/2001/sw/WebOnt/guide-src/food#"

This means that any "vanilla" elements used in this scope will be in this
namespace, e.g.

<DarkMeatFowl rdf:ID="Duck"/>             [1]

However according to my understanding of the rules for resolving names,
which seems to be borne out with experimental evidence from examining the
result of parsers, the xmlns declaration does *not* apply to attributes --
by default they get resolved to the base URI of the document. Somebody
*please* shout if I'm wrong here because to be honest I find this
namespace resolution highly confusing.... Assuming that I'm right though,
this means that the statement above is actually saying:

http://www.w3.org/2001/sw/WebOnt/guide-src/food.owl#Duck

rdf:type

http://www.w3.org/2001/sw/WebOnt/guide-src/food#DarkMeatFowl

which is not, I think, what is intended. In order to make sure that the
attributes end up in the same namespace, you need (I think) an xml:base
attribute, e.g:

xml:base="http://www.w3.org/2001/sw/WebOnt/guide-src/food"

As they currently stand, I believe the example ontologies are *not* DL due
to this mismatch, as a number of things are not explicity typed. For
example, there is a statement:

<owl:Class rdf:ID="DarkMeatFowl"/>

This then refers to a uri

http://www.w3.org/2001/sw/WebOnt/guide-src/food.owl#DarkMeatFowl

which is not the same "DarkMeatFowl" used in the earlier rdf:type
assertion, and this means that [1] is using an "untyped" class.

I think the /TR/owl-guide ontologies have the same problem.

It might be worth a note in one of the documents about this kind of thing
-- as I said above, it gives me a headache and I'm sure I'm not the only
one.....

Cheers,

	Sean

-- 
Sean Bechhofer
seanb@cs.man.ac.uk
http://www.cs.man.ac.uk/~seanb

Received on Thursday, 19 June 2003 12:01:10 UTC