- From: Jonathan Marsh <jmarsh@microsoft.com>
- Date: Wed, 24 Apr 2002 14:38:35 -0700
- To: "Anne Thomas Manes" <anne@manes.net>, <www-ws-desc@w3.org>
> -----Original Message----- > From: Anne Thomas Manes [mailto:anne@manes.net] > Sent: Wednesday, April 24, 2002 6:03 AM > To: Sanjiva Weerawarana; www-ws-desc@w3.org > Subject: RE: issue: support cross references within a WSDL file using > ncnames? > > I have one concern regarding this discussion. Jonathan said: > > > > That is, the targetNamespace attribute acts as a kind of default > > > namespace for name attributes, but not for type attributes. > > The default namespace is whatever namespace is defined as xmlns="uri" -- > and > in most circumstances, the default namespace (if there is one) is the wsdl > namespace, not the targetnamespace. That's why I said "kind of" a default namespace. Perhaps this was a poor description. The full name of an abstract portType (for instance) is really the combination the value of the name attribute (the local name) and the value of the targetNamespace attribute. References to the portType require the full name, represented as a QName. I think that's the fundamental usability problem recorded in this issue - that in some places the abstract name is represented using targetNamespace/name and in some places a QName. (Please correct me if I've missed the whole point of the issue here :-) I imagine the primary reason for the two different forms is that they allow different syntactic restrictions. For instance, targetNamespace/name forces all the names in the document to come from the same targetNamespace, while QName allows references to imported items. > If we're following schema syntax rules, then we should require a Qname in > the <binding type= attribute. After all it might refer to a <portType> > defined in an imported schema. I believe that is what WSDL 1.1 does now. > Anne > > > -----Original Message----- > > From: www-ws-desc-request@w3.org [mailto:www-ws-desc-request@w3.org]On > > Behalf Of Sanjiva Weerawarana > > Sent: Wednesday, April 24, 2002 7:34 AM > > To: www-ws-desc@w3.org > > Subject: Re: issue: support cross references within a WSDL file using > > ncnames? > > > > > > Discussion on this topic seems to have died down. Do we have > > consensus to leave intra-document cross-refs as-is with > > improved wording? > > > > Sanjiva. > > > > ----- Original Message ----- > > From: "Martin Gudgin" <martin.gudgin@btconnect.com> > > To: "Jonathan Marsh" <jmarsh@microsoft.com>; <www-ws-desc@w3.org> > > Sent: Wednesday, April 17, 2002 3:59 AM > > Subject: Re: issue: support cross references within a WSDL file using > > ncnames? > > > > > > > I would suggest we leave WSDL in line with XML Schema. In XML Schema > the > > > name AIIs of things are all NCNames and the names of things at the > > top-level > > > ( child EIIs of the schema EII ( let's forget about keys for > > now )) become > > > part of the target namespace for that schema. So the full name of such > > > constructs is a QName; {namespace name, localname}. All references in > > schema > > > are QNames; element refs, attribute refs, group refs, attribute > > group refs > > > and type refs ( again leaving keys out ) > > > > > > This AFAIR is the state of affairs in WSDL today WRT message, > > portType and > > > binding. All of these constructs have a name AII which becomes > > part of the > > > target namespace. message EIIs are referred to by message AIIs on > input, > > > output and fault EIIs. portType EIIs are referred to by the > > type AII on a > > > binding EII. binding EIIs are referred to by the binding AII on a port > > EII. > > > > > > The element and type AIIs on part EIIs can also be used to refer to > > > constructs in XML Schema in the same way. > > > > > > This approach works. It's been proven to work in XML Schema. It > > deals well > > > with constructs from multiple namespaces. It helps when building > modular > > > descriptions. I can't see any reason why we would want to move away > from > > > this. > > > > > > Gudge > > > > > > ----- 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. > > > > 4) Make sure the spec or primer addresses this point of confusion > > > > thoroughly. But then who reads the spec :-). > > > > > > > > Did I totally miss Keith's point? > > > > > > > > > -----Original Message----- > > > > > From: Sanjiva Weerawarana [mailto:sanjiva@watson.ibm.com] > > > > > Sent: Friday, April 12, 2002 9:21 PM > > > > > To: www-ws-desc@w3.org > > > > > Subject: issue: support cross references within a WSDL file using > > > > ncnames? > > > > > > > > > > The WG would like to solicit your comments on whether we should > > > > > support references within a WSDL document with just an NCName > > > > > instead of always requiring a QName. > > > > > > > > > > Here's the issue from the latest part1 document: > > > > > > > > > > <issue id="issue-references-with-qname"> > > > > > <head>Should intra-namespace references using only localParts be > > > > > supported?</head> > > > > > WSDL 1.1 requires all references to be QNames. For example, a > > > > > reference to a portType from a binding element must always use > > > > > a QName even if that portType is in the same namespace and even > > > > > if it is defined in the same document. It would be convenient > > > > > to support local part references for intra-namespace references. > > > > > <source>Sanjiva Weerawarana</source> > > > > > </issue> > > > > > > > > > > Sanjiva. > > > > > >
Received on Wednesday, 24 April 2002 17:39:08 UTC