- From: Jeffrey Schlimmer <jeffsch@windows.microsoft.com>
- Date: Tue, 2 Jul 2002 11:27:00 -0700
- To: <www-ws-desc@w3.org>
+1 to making the change both to the uniqueness of the port@name (discussed earlier at [1]) and to removing the wording that implies that it must not be reference-able as a QName. FYI, the change to make port@name unique within a service has already been made to the XML Schema for WSDL 1.2. From [2]: <xs:element name="service" type="wsdl:tService"> <xs:unique name="port"> <xs:selector xpath="wsdl:port"/> <xs:field xpath="@name"/> </xs:unique> </xs:element> [1] http://lists.w3.org/Archives/Public/www-ws-desc/2002Jun/0173.html [2] http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/wsdl12/wsdl12.xsd -----Original Message----- From: Sanjiva Weerawarana [mailto:sanjiva@watson.ibm.com] Sent: Saturday, June 29, 2002 6:37 PM To: www-ws-desc@w3.org; Steve Tuecke Subject: Re: service name as local part of a qname "Steve Tuecke" <tuecke@mcs.anl.gov> writes: > Section 2.6 Service Description Component states: > > "A port has a REQUIRED "name" property, which is used to identify this > port. The name property MUST be unique across the entire descriptions group > in which the containing service description component resides. Note that > while the name property is of type NCName, it SHALL NOT be used as the > localPart of a qualified name with the targetNamespace of the containing > descriptions group as the namespace name." > > Sorry if I missed this discussion previously, but why is there the > restriction on using the name property as the local part of a qualified > name? This seems to be a new restriction since WSDL 1.1. First of all, note that this text is talking about *port* names and not *service* names. This is not a new restriction. Here's the text from WSDL 1.1 (from section 2.6): "The name attribute provides a unique name among all ports defined within in the enclosing WSDL document." Your note reminded me that I felt that this restriction was a bit arbitrary as ports live within a service element. It seems much more natural to me to say that portNames must be unique *within* the service that the ports are defined in. Requiring them to be unique across all ports defined in the enclosing *document* is rather weird, especially in light of imports and such. I have introduced the following issue: <issue id="issue-port-name-uniqueness"> <head>Should portName uniqueness be restricted to be across the containing service only?</head> <source>Sanjiva Weerwarana</source> <p>Since ports are within <service> elements, it seems much more natural to say that the port name must be unique across the containing service element only. Requiring them to be unique across all ports defined in the enclosing <emph>document</emph> is rather weird, especially in light of imports and such. I propose relaxing this requirement to say it must be unique within the enclosing service element.</p> </issue> > There is obviously no need for it to be a qname within the closed universe > of WSDL, since nothing else in WSDL needs to refer to a service > element. However, if I want to be able to unambiguously refer to a > particular service from elsewhere (i.e. some application specific XML), it > seems very useful to be able to use the service name as the local part of a > qualified name. > > Also, given this restriction, then what is the point of naming the service > at all? What else is that name used for? *Service* element names are referenceable and are regular QNames. The issue here is about ports. Do you agree? Bye, Sanjiva.
Received on Tuesday, 2 July 2002 14:27:31 UTC