Re: Resolution to issue 139

Do we care that this means that it will be impossible to ever add in new 
elements in the wsdl namespace in the future if the change is intended 
to be backwards compatible?
	Thanks,
		Yaron

Roberto Chinnici wrote:

> Hi,
> 
> At the face to face we decided to accept Gudge's proposed resolution
> for issue 139 (nondeterminism of schema for WSDL 2.0), letting the
> editors come up with the appropriate schema gobbledygook.
> 
> Here's a quick reminder of the issue:
>  > The content model of wsdl:definitions is non-deterministic. I notice it
>  > has been this way since the substitution group based extensibility was
>  > removed on 2003-08-04. I note in passing that one of the reasons we went
>  > with substitution groups was that it gave us a deterministic
>  > content-model. The only fix I can see given the current grammer is to
>  > change the content model of wsdl:definitions to be <xs:any
>  > namespace='##any' minOccurs='0' maxOccurs='unbounded' />, which doesn't
>  > capture any of the contraints regarding wsdl:include, wsdl:import,
>  > wsdl:types, but there you go!
> 
> Over beers, Gudge and I discussed a slight improvement over an element
> wildcard, i.e.
> 
>    <xs:complexType name='DefinitionsType' >
>      <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>
> 
> This way at least we make it easier to spot which WSDL elements
> can appear under definitions. Plus, the order they're listed in
> is also intended to suggest the correct one.
> 
> I modified the schema in CVS to use the definition given above,
> please let me know if there are any problems with it.
> 
> Thanks,
> Roberto
> 

Received on Thursday, 18 March 2004 18:21:14 UTC