← Prev in month ← Prev in thread

Re: [sca-bindings] BINDINGS-127: Problems with the Extension Pointsin the XSD for binding.ws

From
Eric Johnson <>
Date
2010-04-14T16:34:39+00:00
ID
Thread
Re: [sca-bindings] BINDINGS-127: Problems with the Extension Pointsin the XSD for binding.ws
Logged as: http://www.osoa.org/jira/browse/BINDINGS-127

-Eric.

On 04/14/2010 03:37 AM, Mike Edwards wrote:

  Target:        
       sca-wsbinding-1.1-spec-cd03-rev3.doc
  

  

  Description:
  

  

  The SCA XSDs mix two different forms
of extensibility and this causes significant problems such as UPA
errors.
  

  

  The two forms of extensibility are:
  

  

  1) The use of substitution groups
for
the extensibility of: 
  

  

  implementation 
  

  interface 
  

  binding 
  

  wireFormat 
  

  operationSelector 
  

  importBase 
  

  exportBase 
  

  

  2) The use of 
  

  

  <any namespace="##other"
processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
  

  

  for extensibility in many locations
  

  

  

  A UPA problem potentially exists in
any place where ONE or MORE of the elements in the list 1) above is
declared
  

  to be used within another element in
combination with 2) in a sequence or choice where it may occur that one
of the 
  

  list 1) elements is validly
succeeded
by an <any/> of the form in 2). IF an extended version of any of
the 1) elements 
  

  is created, in a non-sca namespace
(this
is REQUIRED for any non-standard extension), then a UPA error will be 
  

  reported whenever such an extension
is used. 
  

  

  This occurs in the XSD
sca-binding-ws-1.1-cd04.xsd
  

  

      <complexType
  name="WebServiceBinding">
  

          <complexContent>
  

           
  <extension
  base="sca:Binding">
  

           
      <sequence>
  

           
          <element
  name="endpointReference"
  type="wsa:EndpointReferenceType"
  

       
                     
 minOccurs="0"
  maxOccurs="unbounded"/>
  

           
          <any
  namespace="##other"
  processContents="lax"
  

       
                   minOccurs="0"
  maxOccurs="unbounded"/>
  

           
      </sequence>
  

           
      <attribute
  name="wsdlElement"
  type="anyURI"
  use="optional"/>
  

           
      <attribute
  ref="wsdli:wsdlLocation"
  use="optional"/>
  

           
  </extension>
  

          </complexContent>
  

      </complexType>
  

  

  The sca:Binding base contains both
wireFormat
and operationSelector elements - these then clash with the <any/>
extensibility
  

  

  Proposal:
  

  

  Replace the <any/>
extensibility
with extensibility using the sca:extensions element as follows:
  

  

      <complexType
  name="WebServiceBinding">
  

          <complexContent>
  

           
  <extension
  base="sca:Binding">
  

           
      <sequence>
  

           
          <element
  name="endpointReference"
  type="wsa:EndpointReferenceType"
  

       
                     
 minOccurs="0"
  maxOccurs="unbounded"/>
  

           
          <element
ref="sca:extensions"
minOccurs="0" maxOccurs="1"
/> 
  

           
      </sequence>
  

           
      <attribute
  name="wsdlElement"
  type="anyURI"
  use="optional"/>
  

           
      <attribute
  ref="wsdli:wsdlLocation"
  use="optional"/>
  

           
  </extension>
  

          </complexContent>
  

      </complexType>
  

  

  

Yours,  Mike.

  

Strategist - Emerging Technologies, SCA & SDO.

Co Chair OASIS SCA Assembly TC.

IBM Hursley Park, Mail Point 146, Winchester, SO21 2JN, Great Britain.

Phone & FAX: +44-1962-818014    Mobile: +44-7802-467431  

Email:  

  
  

  

  
  

  

  
  
Unless stated otherwise above:

IBM United Kingdom Limited - Registered in England and Wales with
number
741598. 

Registered office: PO Box 41, North Harbour, Portsmouth, Hampshire PO6
3AU
← Prev in month ← Prev in thread