- 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>
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 UTC