W3C home > Mailing lists > Public > www-ws-desc@w3.org > January 2003

Re: R120 URI-references, input for editors

From: Jacek Kopecky <jacek@systinet.com>
Date: 16 Jan 2003 18:19:20 +0100
To: Arthur Ryman <ryman@ca.ibm.com>
Cc: WS Description WG <www-ws-desc@w3.org>
Message-Id: <1042737560.25420.527.camel@krava.in.idoox.com>

Arthur, please see my replies inside.

Jacek

On Thu, 2003-01-16 at 17:54, ryman@ca.ibm.com wrote:
> I read [1]. My understanding is that you are making 2 points:
> 
> 1. if 2 components have the same qname then they should be viewed as
> representing a single concept, e.g. an XML type and element named date in
> the namespace http://example.org are conceptually related
> 
> 2. the syntax for mapping a qname to a uri should be concatenation, as is
> done in RDF/XML: e.g. http://example.org/date

Both correct.

> 1. In WSDL there are scopes that isolate component names. For example, the
> <part> elements of a <message> have names that are local to the <message>.
> It would be very awkward to find unique names for all <part>s. This
> requirement would be like saying that the parameter names for a Java method
> had to be unique within a package. Finding unique names would be very
> awkward.

WSDL message parts are not named with a QName (actually, XName is more
appropriate term here, but it's not yet widely used), therefore I'm not
claiming anything about their names. What I'm saying is that parts
should not be referenced with a single URI. Note that WSDL uses message
QName *and* a part name to reference a part, why do we want to invent an
atomic identifier for parts, above what XPointer/XPath and document
locators already give us? We are trying to add unnecessary
complications.

> 2. The concatenation syntax can lead to name conflicts. For example,
> suppose http://example.org/date is already the namespace of another schema.
> The the URIs you create in the http://example.org namespace conflict with
> it. The solution is to use the fragment syntax, e.g.
> http://example.org#date. My proposal for R120 is just a variant of this to
> remove the above objection to making names unique.

Oh yes, concatenation approach does have its problems. It works for RDF
because they are in a different position - in RDF most everything is a
URI and the QNames are only created for use in serialization. Possibly
without saying it in so many words, RDF suggests what URIs should look
like - that they should end with an NCname which can then be used as the
local part of a QName.

RDF doesn't have namespaces. XML has namespaces as a way to distinguish
identifiers (say element names). Many people seem to think that the
local part is very much separated from the namespace name and that the
namespace name alone carries a lot of information. I disagree with both
points.

There is a good practice in RDF to end namespace URIrefs with a pound
sign, making the local parts of QNames fragment identifiers. This is a
good way of grouping URIrefs - one resource with multiple fragments.

So, the following two XNames seem related by means of their namespaces:

{http://example.org/}foo
{http://example.org/}bar

My position is that the two XNames above are exactly as much related as
the URIs formed by concatenation. On the other hand, the following pair
is different:

{http://example.org/#}foo
{http://example.org/#}bar

Again, the two XNames are as related as the URIs (after concatenation)
are, but because of the use of fragment identifiers they are much more
related.

BTW, this approach also nicely says what is the "namespace resource", or
"namespace document", as some call it.

Best regards,

                   Jacek Kopecky

                   Senior Architect, Systinet Corporation
                   http://www.systinet.com/
Received on Thursday, 16 January 2003 12:19:41 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 7 December 2009 10:58:22 GMT