- From: Martin Gudgin <martin.gudgin@btconnect.com>
- Date: Wed, 17 Apr 2002 09:09:35 +0100
- To: "Jonathan Marsh" <jmarsh@microsoft.com>, <www-ws-desc@w3.org>
----- Original Message ----- From: "Jonathan Marsh" <jmarsh@microsoft.com> To: <www-ws-desc@w3.org> Sent: Tuesday, April 16, 2002 10:34 PM Subject: RE: issue: support cross references within a WSDL file using ncnames? > Hmmm, I got something completely different, and less fundamental, out of > the discussion of this issue at the FTF. > > <definitions name="StockQuote" > targetNamespace="http://example.com/stockquote.wsdl" > xmlns:tns="http://example.com/stockquote.wsdl" > ...> > <portType name="StockQuotePortType" > ... > </portType> > <binding name="StockQuoteSoapBinding" type="tns:StockQuotePortType"> > ... > </binding> > ... > </definitions> > > What I thought Keith said at the FTF is that it is common to forget the > "tns:" in the binding/type attribute. The type attribute looks like a > reference to the name attribute, but the lexical values don't match. > That is, the targetNamespace attribute acts as a kind of default > namespace for name attributes, but not for type attributes. It's a bit > confusing that xmlns declarations aren't used for placing something in > the namespace, but they are used for referring to that something. The > redundancy of the information carried by the targetNamespace and > xmlns:tns attributes clearly shows that parallel mechanisms are > employed. > > Some possible (mostly syntactic) solutions are: > 1) Make both name and type QNames. But then it's different from XML > Schema. > 2) Make both name and type NCNames. But then it's different from XML > Schema. > 3) Make the type attribute recognize the default namespace of the WSDL > document -- I think that's the suggestion in the issue text. But then > it's not a real xs:QName. What do you mean here by 'default namespace'. Do you mean the namespace which does not have a prefix? Or the namespace specified by the targetNamespace attribute? I have a feeling you must mean the latter, as the former is already supported by the QName resolution mechanism in XML Schema. I really don't think we should go there. It would take us out of line with XML Schema, for no good technical reason. I also think that potentially having two defaults, the 'default' from targetNamespace and the default if someone says xmlns='urn:baz:quux' leads to even more confusion. Gudge
Received on Wednesday, 17 April 2002 04:09:34 UTC