- From: Booth, David (HP Software - Boston) <dbooth@hp.com>
- Date: Wed, 15 Feb 2006 14:42:27 -0500
- To: "Alistair Miles" <a.j.miles@rl.ac.uk>
- Cc: <public-swbp-wg@w3.org>, "Ralph R. Swick" <swick@w3.org>
I for one didn't notice the distinction that you were making between the "namespace URI" and the "vocabulary URI", so if they can be the same I think it would cause less confusion. David Booth > -----Original Message----- > From: public-swbp-wg-request@w3.org > [mailto:public-swbp-wg-request@w3.org] On Behalf Of Alistair Miles > Sent: Wednesday, February 15, 2006 12:57 PM > To: Ralph R. Swick > Cc: public-swbp-wg@w3.org > Subject: Re: [VM] cookbook issue in naming 'hash namespaces' > > > > Hi Ralph, > > ... and I so foolishly remarked in the last telecon that > 'I've said all > I'm ever going to say about hash URIs' ... > > Sorry, I should have sent an email explicitly explaining my > decision to > revert your changes. I did send an email [10] noting some technical > issues regarding 'namespace URIs' and 'vocabulary URIs'. > > Typically (in my experience), RDF schemas and OWL ontologies do > something like the following: > > <rdf:RDF xml:base="http://example.com/foo" > xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" > xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" > xmlns:owl="http://www.w3.org/2002/07/owl#"> > > <owl:Ontology rdf:about=""> > <rdfs:comment>An Example OWL Ontology</rdfs:comment> > </owl:Ontology> > > <owl:Class rdf:ID="Bar"> > <rdfs:label>Bar</rdfs:label> > </owl:Class> > > </rdf:RDF> > > This document contains the following triples: > > <http://example.com/foo> rdfs:comment "An Example OWL > Ontology". <http://example.com/foo#Bar> rdfs:label "Bar". > > Note that, as I documented at [10], if the value of the xml:base > attribute were changed to "http://example.com/foo#" this does > not change > the triples at all. > > In this example, although the ontology uses a 'hash > namespace', the URI > that actually identifies the ontology is <http://example.com/foo>. > > This is what all the examples in the OWL specifications do. > This is also > the situation you get any time the ontology uses an empty rdf:about > attribute. > > In order to use the namespace URI as the ontology URI you have to do > something like: > > <owl:Ontology rdf:about="http://example.com/foo#"> > <rdfs:comment>An Example OWL Ontology</rdfs:comment> > ... > </owl:Ontology> > > ... I've not seen that done. I haven't eyeballed a particularly large > number of ontologies in my time, so I could be wrong about this - we > should ask SWOOGLE. > > In [10] I noted the following: > > ... we have to be careful not to confuse the 'vocabulary URI' (a.k.a. > the 'ontology URI', i.e. the URI that identifies the > vocabulary/ontology) and the 'namespace URI' (i.e. the actual URI you > append the local name of each term to). E.g. [for > vocabularies that use > a hash namespace ...] > > http://example.com/vocab - vocabulary URI. > http://example.com/vocab# - namespace URI. > > For RDFS/OWL vocabularies/ontologies that use a slash > namespace both the > vocabulary URI and the namespace URI are the same, e.g. > > http://example.com/anothervocab/ - vocabulary URI. > http://example.com/anothervocab/ - namespace URI. > > I saw no need to complicate the cookbook with this > distinction between > namespace URI and vocabulary URI. I therefore only ever made > reference > to a 'vocabulary URI', removed all references to 'namespace > URI' in the > main body of the text (although I missed some in the apache directive > comments, and in the PURLs section). I also removed the trailing hash > from any 'vocabulary URI' to be consistent with what I > understood to be > the most widely deployed practice. > > Al. > > [10] > http://lists.w3.org/Archives/Public/public-swbp-wg/2006Jan/0088.html > > Ralph R. Swick wrote: > > Alistair, > > > > I just noticed an issue in the way the current cookbook > editor's draft > > refers to hash namespace URIs. Sorry for not explicitly > raising this > > earlier, as I suspect that it may represent something > fundamental in > > your view of vocabulary naming. > > > > In recipes 1, 3, 1a, and 3a the current editor's draft [1], > rev 1.10 > > refers to vocabulary names as: > > > > For vocabulary ... > > > > http://isegserv.itd.rl.ac.uk/VM/http-examples/example1 > > > > ... defining classes ... > > > > http://isegserv.itd.rl.ac.uk/VM/http-examples/example1#ClassA > > http://isegserv.itd.rl.ac.uk/VM/http-examples/example1#ClassB > > > > i.e. the trailing '#' is consistently omitted from the vocabulary > > name. > > > > I claim this is a fundamental mistake and would argue it on > the basis > > of both semantics and what the RDF core specifications state. The > > semantic point is that [1] should be the name of the > vocabulary while > > [2] is the name of a document that might (should) describe that > > vocabulary. > > > > [1] http://isegserv.itd.rl.ac.uk/VM/http-examples/example1# > > [2] http://isegserv.itd.rl.ac.uk/VM/http-examples/example1 > > > > I believe that the terms "namespace name" and "vocabulary > name" should > > be considered synonymous when they apply to URI references for use > > within the Semantic Web. > > > > This is certainly related to the discussion thread [3] > (continued at > > [4], [5], and [6]) but I hope we can resolve this without forking > > those threads yet again. > > > > The RDF core specifications state [7] that RDF URI references are > > constructed by simple concatenation of the local name to > the namespace > > name. There is nothing in the RDF specifications that endorse an > > inference that clients should insert a '#' under some conditions. > > > > The RDF specification [8] uses the phrasing > > > > "The RDF namespace URI reference (or namespace name) is > > http://www.w3.org/1999/02/22-rdf-syntax-ns# ... The RDF > Vocabulary > > is identified by this namespace name ..." > > > > So it is a mistake for us to suggest in this cookbook that > clients add > > a "missing" '#'. > > > > (I will raise a similar issue with respect to the SKOS > Working Draft > > in a separate message.) > > > > I'd noticed this in the 2005-11-18 editor's draft [9] and > thought it > > was simply a typo so I corrected it in rev 12. That change was > > subsequently reverted in rev 15 but I can't tell from your commit > > comment whether you'd intentionally reverted it or not. So I don't > > know whether you mean to draw some distinction here -- and > if so we'd > > better explain that distinction with more words -- or > whether simply > > adding the trailing '#' to the vocabulary names is > acceptable to you. > > > > [3] > > > http://lists.w3.org/Archives/Public/public-swbp-wg/2006Jan/thr ead.html#msg113 > [4] http://lists.w3.org/Archives/Public/public-swbp-wg/2006Jan/thread.html#m sg129 > [5] http://lists.w3.org/Archives/Public/public-swbp-wg/2006Feb/thread.html#m sg6 > [6] http://lists.w3.org/Archives/Public/public-swbp-wg/2006Feb/thread.html#m sg0 > > [7] http://www.w3.org/TR/rdf-syntax-grammar/#section-Identifiers > [8] http://www.w3.org/TR/rdf-syntax-grammar/#section-Namespace > > [9] > http://www.w3.org/2001/sw/BestPractices/VM/http-examples/2006-01-18/ > > -Ralph > > > -- Alistair Miles Research Associate CCLRC - Rutherford Appleton Laboratory Building R1 Room 1.60 Fermi Avenue Chilton Didcot Oxfordshire OX11 0QX United Kingdom Email: a.j.miles@rl.ac.uk Tel: +44 (0)1235 445440
Received on Wednesday, 15 February 2006 19:42:47 UTC