- From: Asir Vedamuthu <asirv@webmethods.com>
- Date: Mon, 10 Jan 2005 12:57:35 -0800
- To: 'Arthur Ryman' <ryman@ca.ibm.com>, Asir Vedamuthu <asirv@webmethods.com>
- Cc: public-ws-desc-comments@w3.org, Vlad Klicnik <klicnik@ca.ibm.com>
- Message-ID: <5B10E50E14A4594EB1B5566B69AD9407068E697B@maileast>
Arthur, > The above grammar is deterministic and enforces the ordering > constraint expressed in the spec using XSD constructs Yes, it is deterministic. Yes, it enforces the ordering constraints. But, at a cost (at a glance): (a) rules out extensibility elements (b) types element is required if either include or import element is present (c) .. so on > I am in favour of expressing as many as possible constraints in XSD I agree with you, whenever feasible. Asir -----Original Message----- From: public-ws-desc-comments-request@w3.org [mailto:public-ws-desc-comments-request@w3.org] On Behalf Of Arthur Ryman Sent: Monday, January 10, 2005 9:34 AM To: Asir Vedamuthu Cc: public-ws-desc-comments@w3.org; Vlad Klicnik Subject: RE: The WSDL 2.0 XSD for Root Element is Too Loose Asir, I agree that the given schema is non-deterministic, but it is easy to define a deterministic content model by using a <choice> and having the following 3 deterministic cases: 1. (include | import)+, types, (interface | binding | service)? 2. types, (interface | binding | service)?, 3. (interface | binding | service)? The above grammar is deterministic and enforces the ordering constraint expressed in the spec using XSD constructs. As a general principle, I am in favour of expressing as many as possible constraints in XSD, provided that it does not overly complicate the schema. I request that this suggestion be given further consideration. Thx. 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/ Asir Vedamuthu <asirv@webmethods.com> 01/10/2005 09:06 AM To Arthur Ryman/Toronto/IBM@IBMCA, public-ws-desc-comments@w3.org cc Vlad Klicnik/Toronto/IBM@IBMCA Subject RE: The WSDL 2.0 XSD for Root Element is Too Loose Arthur, Your suggested XML schema complex type 'DefinitionsType' is invalid. Because, its content model is non-deterministic. Lots of info on non-deterministic content model related questions can be found at <http://lists.w3.org/Archives/Public/xmlschema-dev/> http://lists.w3.org/Archives/Public/xmlschema-dev/ My recollection is .., it is just for this reason why the content model of definitions or descriptions is loose, see pre-last call issue 139 <http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/issues/wsd-issues.html#x13 9> http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/issues/wsd-issues.html#x139 This is a non-issue, right? Regards, Asir -----Original Message----- From: public-ws-desc-comments-request@w3.org [mailto:public-ws-desc-comments-request@w3.org] On Behalf Of Arthur Ryman Sent: Sunday, January 09, 2005 4:12 PM To: public-ws-desc-comments@w3.org Cc: Vlad Klicnik Subject: The WSDL 2.0 XSD for Root Element is Too Loose The wsdl20.xsd definition [1] for the root element doesn't constrain the order of the top level elements as described in the spec.[2] The current xsd is like: <xs:complexType name="DefinitionsType" mixed="false"> <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" minOccurs="1" maxOccurs="1"/> </xs:choice> <xs:attribute name="targetNamespace" type="xs:anyURI" use="required"/> </xs:extension> </xs:complexContent> </xs:complexType> It should be like: <xs:complexType name="DefinitionsType" mixed="false"> <xs:annotation> <xs:documentation> blah, blah, blah ... </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" minOccurs="1" maxOccurs="1"/> </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" minOccurs="1" maxOccurs="1"/> </xs:choice> </xs:sequence> <xs:attribute name="targetNamespace" type="xs:anyURI" use="required"/> </xs:extension> </xs:complexContent> </xs:complexType> [1] http://www.w3.org/2004/08/wsdl [2] http://www.w3.org/TR/2004/WD-wsdl20-20040803/#Definitions_XMLRep 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/
Received on Monday, 10 January 2005 20:58:23 UTC