- From: Lawrence Mandel <lmandel@ca.ibm.com>
- Date: Wed, 6 Jul 2005 09:58:52 -0400
- To: www-ws-desc@w3.org
- Message-ID: <OF35F23B56.FBB5D594-ON85257036.004C4CEB-85257036.004CCE85@ca.ibm.com>
Sanjiva, I believe the following is what you're asking about. The description element information item has the following Infoset properties: A [local name] of description . A [namespace name] of "http://www.w3.org/@@@@/@@/wsdl". One or more attribute information items amongst its [attributes] as follows: A REQUIRED targetNamespace attribute information item as described below in 2.1.2.1 targetNamespace attribute information item. Zero or more namespace qualified attribute information items whose [namespace name] is NOT "http://www.w3.org/@@@@/@@/wsdl". Zero or more element information items amongst its [children], in order as follows: 1. Zero or more documentation element information items (see 5. Documentation). 2. Zero or more element information items from among the following, in any order: Zero or more include element information items (see 4.1 Including Descriptions) Zero or more import element information items (see 4.2 Importing Descriptions) Zero or more namespace-qualified element information items whose [namespace name] is NOT "http://www.w3.org/@@@@/@@/wsdl". 3. An OPTIONAL types element information item (see 3. Types). 4. Zero or more element information items from among the following, in any order: interface element information items (see 2.2.2 XML Representation of Interface Component). binding element information items (see 2.9.2 XML Representation of Binding Component). service element information items (see 2.14.2 XML Representation of Service Component). Zero or more namespace-qualified element information items whose [namespace name] is NOT "http://www.w3.org/@@@@/@@/wsdl". Following from this description, can someone give me an example of a problem that may arise if the schema is defined as follows? (I updated it to allow extensibility elements before the types element.) <xs:complexType name='DescriptionType' > <xs:annotation> <xs:documentation> Please refer to the WSDL 2.0 specification for additional constraints on the contents of this type. </xs:documentation> </xs:annotation> <xs:complexContent> <xs:extension base='wsdl:ExtensibleDocumentedType' > <xs:sequence> <xs:choice minOccurs='0' maxOccurs='unbounded' > <xs:element ref='wsdl:import' /> <xs:element ref='wsdl:include' /> <xs:any namespace='##other' processContents='lax' /> </xs:choice> <xs:element ref='wsdl:types' minOccurs="0" maxOccurs="1"/> <xs:choice minOccurs='0' maxOccurs='unbounded' > <xs:element ref='wsdl:interface' /> <xs:element ref='wsdl:binding' /> <xs:element ref='wsdl:service' /> <xs:any namespace='##other' processContents='lax' /> </xs:choice> </xs:sequence> <xs:attribute name='targetNamespace' type='xs:anyURI' use='required' /> </xs:extension> </xs:complexContent> </xs:complexType> Thanks, Lawrence Mandel Software Developer IBM Rational Software Phone: 905 - 413 - 3814 Fax: 905 - 413 - 4920 lmandel@ca.ibm.com Sanjiva Weerawarana <sanjiva@opensource.lk> 07/05/2005 11:07 PM To Arthur Ryman/Toronto/IBM@IBMCA cc Jonathan Marsh <jmarsh@microsoft.com>, Lawrence Mandel/Toronto/IBM@IBMCA, www-ws-desc@w3.org, www-ws-desc-request@w3.org Subject RE: WSDL 2.0 element order enforcement in schema Lawrence, did you not find those extra constraints written in prose in the spec? If not we have a problem to be fixed. Sanjiva. On Tue, 2005-07-05 at 15:50 -0400, Arthur Ryman wrote: > > Lawrence/Jonathan, > > The technical problem is that extension elements are allowed anywhere > and if you describe that using choice then the resulting schema is > non-deterministic, which is apparently a very bad thing. > > The resolution of this issue was to leave the schema as it is and add > rules to the validator. (more coding for Woden) > > Arthur Ryman, > Rational Desktop Tools Development > > phone: +1-905-413-3077, TL 969-3077 > assistant: +1-905-413-2411, TL 969-2411 > fax: +1-905-413-4920, TL 969-4920 > mobile: +1-416-939-5063, text: 4169395063@fido.ca > intranet: http://labweb.torolab.ibm.com/DRY6/ > > > "Jonathan Marsh" > <jmarsh@microsoft.com> > Sent by: > www-ws-desc-request@w3.org > > 07/05/2005 03:20 PM > > > To > Lawrence > Mandel/Toronto/IBM@IBMCA, <www-ws-desc@w3.org> > cc > > Subject > RE: WSDL 2.0 > element order > enforcement in > schema > > > > > > > > > Your schema appears to limit extension elements to > post-import/include/types, right? We looked at that before and found > it unacceptable. We have looked at several different ways to describe > the order of top-level elements in Schema several times, including > using substitution groups, but we?ve never found a solution that > didn?t impose other restrictions. > > > > ______________________________________________________________________ > > From: www-ws-desc-request@w3.org [mailto:www-ws-desc-request@w3.org] > On Behalf Of Lawrence Mandel > Sent: Tuesday, July 05, 2005 9:10 AM > To: www-ws-desc@w3.org > Subject: WSDL 2.0 element order enforcement in schema > > > While looking at the WSDL 2.0 schema today I came across a question > about the ordering of elements in a WSDL 2.0 document. > > Section 2.1.2 of the WSDL 2.0 spec defines the following XML > representation of WSDL 2.0, > > <description > targetNamespace="xs:anyURI" > > <documentation />* > [ <import /> | <include /> ]* > <types />? > [ <interface /> | <binding /> | <service /> ]* > </description> > > This definition imposes ordering constraints on the elements in the > WSDL 2.0 document. The WSDL 2.0 schema does not currently enforce this > ordering. The description type is defined as follows, > > <xs:complexType name='DescriptionType' > > <xs:annotation> > <xs:documentation> > > Please refer to the WSDL 2.0 specification for > additional constraints on the contents of this type. > </xs:documentation> > </xs:annotation> > <xs:complexContent> > <xs:extension base='wsdl:ExtensibleDocumentedType' > > <xs:choice minOccurs='0' maxOccurs='unbounded' > > <xs:element ref='wsdl:import' /> > <xs:element ref='wsdl:include' /> > <xs:element ref='wsdl:types'/> > > <xs:element ref='wsdl:interface' /> > <xs:element ref='wsdl:binding' /> > <xs:element ref='wsdl:service' /> > <xs:any namespace='##other' processContents='lax' /> > </xs:choice> > <xs:attribute name='targetNamespace' type='xs:anyURI' > use='required' /> > </xs:extension> > </xs:complexContent> > </xs:complexType> > > The schema can be updated as follows to enforce the ordering outlined > in the spec. > > <xs:complexType name='DescriptionType' > > <xs:annotation> > <xs:documentation> > Please refer to the WSDL 2.0 specification for > additional constraints on the contents of this type. > </xs:documentation> > </xs:annotation> > <xs:complexContent> > <xs:extension base='wsdl:ExtensibleDocumentedType' > > <xs:sequence> > <xs:choice minOccurs='0' maxOccurs='unbounded' > > <xs:element ref='wsdl:import' /> > <xs:element ref='wsdl:include' /> > </xs:choice> > <xs:element ref='wsdl:types' minOccurs="0" maxOccurs="1"/> > <xs:choice minOccurs='0' maxOccurs='unbounded' > > <xs:element ref='wsdl:interface' /> > <xs:element ref='wsdl:binding' /> > <xs:element ref='wsdl:service' /> > <xs:any namespace='##other' processContents='lax' /> > </xs:choice> > </xs:sequence> > <xs:attribute name='targetNamespace' type='xs:anyURI' > use='required' /> > </xs:extension> > </xs:complexContent> > </xs:complexType> > > Is the omission of ordering constraints from the schema intentional? > Can someone update the schema to enforce section 2.1.2 of the spec? > > > Thanks, > > Lawrence Mandel > > Software Developer > IBM Rational Software > Phone: 905 - 413 - 3814 Fax: 905 - 413 - 4920 > lmandel@ca.ibm.com
Received on Wednesday, 6 July 2005 13:59:02 UTC