RE: Namespaces -- Out of scope of OWL?

> 
> One goal behind the design of a new textual syntax was to 
> provide a parsable syntax. This is why we call the new syntax 
> "functional-style syntax", and not "abstract syntax": the new 
> syntax is quite concrete. 
> 
> For this, namespaces seem to be really important; without 
> them, any file would be just horribly difficult to read or 
> edit.

Oh, I'm not saying that you shouldn't *use* namespaces when you
serialise an ontology, just that they should be an implementation
detail, not part of the ontology itself. Implementations are currently
given a lot of freedom to manipulate namespace declarations, which
allows us to work around corner cases (like 'amp' - see below), but
making them an explicit part of the OWL syntax will make this job
harder.

> Therefore, we simply imported the XML style of defining 
> and expanding namespaces. We did not believe that this would 
> be difficult to implement: if you see an URI of the form 
> "a:b", just replace "a" with the declared namespace.

Yes, that's right, and that happens at a much lower level than OWL. In
particular, in an RDF/XML document the namespace declarations are not
part of its semantics, and they usually get expanded at parse-time.
Implementations are currently free to throw them away and use full URIs
if it doesn't like them for some reason, or to introduce new ones if
appropriate.

> I did 
> not quite understand your point with "amp"; could you please 
> elaborate?

If I use a namespace 'ns', in some places in the XML the entity '&ns;'
has to be used; if the namespace is called 'amp' then you cannot use
'&' because that entity is already defined. I'm led to believe that
corner-cases to do with namespaces are a recurring support issue in
Jena, which suggests that getting them correctly specified would be a
nightmare, and that it's safer to leave it up to implementors to worry
about them.

Cheers,

Dave


-- 
Dave Turner  Cube T400, HP Labs Bristol, Filton Road, Bristol BS34 8QZ
davidt@hp.com          +44 117 3129104 (Work) +44 7962 811627 (Mobile)

Hewlett-Packard Limited. Registered No: 690597 England
Registered Office: Cain Road, Bracknell, Berks RG12 1HN

Received on Thursday, 19 April 2007 09:44:33 UTC