2002/ws/desc/test-suite/interchange wsdlcm-rpc.xsd,NONE,1.1 wsdlcm-soap.xsd,NONE,1.1 wsdlcm-http.xsd,NONE,1.1 wsdlcm-extensions.xsd,NONE,1.1 wsdlcm-base.xsd,NONE,1.1 wsdlcm.xsd,1.5,1.6

Update of /sources/public/2002/ws/desc/test-suite/interchange
In directory hutz:/tmp/cvs-serv21922/test-suite/interchange

Modified Files:
	wsdlcm.xsd 
Added Files:
	wsdlcm-rpc.xsd wsdlcm-soap.xsd wsdlcm-http.xsd 
	wsdlcm-extensions.xsd wsdlcm-base.xsd 
Log Message:
Added extensions to WSDL 2.0 component model interchange format.

--- NEW FILE: wsdlcm-rpc.xsd ---
<?xml version="1.0" encoding="UTF-8"?>
<!-- 
	
	Schema for WSDL 2.0 RPC Extension Component Model Interchange Format
	
	This format is used to compare component model instances computed by different implementation.
	
	ChangeLog:
	
	2005-05-08 Arthur Ryman ryman@ca.ibm.com
	- created
	
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
	xmlns="http://www.w3.org/2002/ws/desc/wsdl/component-rpc"
	targetNamespace="http://www.w3.org/2002/ws/desc/wsdl/component-rpc"
	elementFormDefault="qualified">

	<xs:element name="rpcSignature" type="xs:string" />

</xs:schema>
--- NEW FILE: wsdlcm-http.xsd ---
<?xml version="1.0" encoding="UTF-8"?>
<!-- 
	
	Schema for WSDL 2.0 HTTP Binding Component Model Interchange Format
	
	This format is used to compare component model instances computed by different implementation.
	
	ChangeLog:
	
	2005-05-08 Arthur Ryman ryman@ca.ibm.com
	- created.
	
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
	xmlns:cmbase="http://www.w3.org/2002/ws/desc/wsdl/component-base"
	xmlns="http://www.w3.org/2002/ws/desc/wsdl/component-http"
	targetNamespace="http://www.w3.org/2002/ws/desc/wsdl/component-http"
	elementFormDefault="qualified">

	<xs:import
		namespace="http://www.w3.org/2002/ws/desc/wsdl/component-base"
		schemaLocation="wsdlcm-base.xsd" />



	<xs:element name="httpAuthenticationRealm" type="xs:string" />

	<xs:element name="httpAuthenticationScheme"
		type="HttpAuthenticationSchemeType" />

	<xs:element name="httpCookies" type="xs:boolean" />

	<xs:element name="httpErrorStatusCode" type="HttpErrorStatusCodeType" />

	<xs:element name="httpFaultSerialization" type="xs:string" />

	<xs:element name="httpHeaders" type="HttpHeaderComponents" />

	<xs:element name="httpInputSerialization" type="xs:string" />

	<xs:element name="httpLocation" type="xs:anyURI" />

	<xs:element name="httpLocationIgnoreUncited" type="xs:boolean" />

	<xs:element name="httpMethod" type="xs:string" />

	<xs:element name="httpMethodDefault" type="xs:string" />

	<xs:element name="httpOutputSerialization" type="xs:string" />

	<xs:element name="httpQueryParameterSeparator" type="xs:string" />

	<xs:element name="httpQueryParameterSeparatorDefault"
		type="xs:string" />

	<xs:element name="httpTransferCoding" type="xs:string" />

	<xs:element name="httpTransferCodingDefault" type="xs:string" />

	<xs:simpleType name="HttpAuthenticationSchemeType">
		<xs:restriction base="xs:token">
			<xs:enumeration value="basic" />
			<xs:enumeration value="digest" />
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="HttpErrorStatusCodeType">
		<xs:union memberTypes="xs:int">
			<xs:simpleType>
				<xs:restriction base="xs:token">
					<xs:enumeration value="#any" />
				</xs:restriction>
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>

	<xs:complexType name="HttpHeaderComponents">
		<xs:annotation>
			<xs:documentation>
				The sequence is sorted by the key of HTTP Header.
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="HttpHeaderComponent"
				type="HttpHeaderComponent" maxOccurs="unbounded" />
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="HttpHeaderComponent">
		<xs:annotation>
			<xs:documentation>
				The key of HTTP Header is (name).
			</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:restriction base="cmbase:Component">
				<xs:sequence>
					<xs:element name="name" type="xs:string" />
					<xs:element name="typeDefinition" type="cmbase:Ref" />
					<xs:element name="required" type="xs:boolean" />
					<xs:element name="parent" type="cmbase:Ref" />
				</xs:sequence>
			</xs:restriction>
		</xs:complexContent>
	</xs:complexType>

</xs:schema>
--- NEW FILE: wsdlcm-extensions.xsd ---
<?xml version="1.0" encoding="UTF-8"?>
<!-- 
	
	Schema for WSDL 2.0 Extensions Component Model Interchange Format
	
	This format is used to compare component model instances computed by different implementation.
	
	ChangeLog:
	
	2005-05-08 Arthur Ryman ryman@ca.ibm.com
	- created
	
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
	xmlns="http://www.w3.org/2002/ws/desc/wsdl/component-extensions"
	targetNamespace="http://www.w3.org/2002/ws/desc/wsdl/component-extensions"
	elementFormDefault="qualified">

	<xs:element name="safety" type="xs:boolean" />

</xs:schema>
Index: wsdlcm.xsd
===================================================================
RCS file: /sources/public/2002/ws/desc/test-suite/interchange/wsdlcm.xsd,v
retrieving revision 1.5
retrieving revision 1.6
diff -C2 -d -r1.5 -r1.6
*** wsdlcm.xsd	8 May 2006 01:24:05 -0000	1.5
--- wsdlcm.xsd	9 May 2006 01:04:43 -0000	1.6
***************
*** 14,21 ****
  <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
  	xmlns="http://www.w3.org/2002/ws/desc/wsdl/component"
  	targetNamespace="http://www.w3.org/2002/ws/desc/wsdl/component"
  	elementFormDefault="qualified">
! 	<xs:import namespace="http://www.w3.org/XML/1998/namespace"
! 		schemaLocation="http://www.w3.org/2001/xml.xsd" />
  	<xs:annotation>
  		<xs:documentation>
--- 14,45 ----
  <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
  	xmlns="http://www.w3.org/2002/ws/desc/wsdl/component"
+ 	xmlns:cmbase="http://www.w3.org/2002/ws/desc/wsdl/component-base"
+ 	xmlns:cmextensions="http://www.w3.org/2002/ws/desc/wsdl/component-extensions"
+ 	xmlns:cmhttp="http://www.w3.org/2002/ws/desc/wsdl/component-http"
+ 	xmlns:cmrpc="http://www.w3.org/2002/ws/desc/wsdl/component-rpc"
+ 	xmlns:cmsoap="http://www.w3.org/2002/ws/desc/wsdl/component-soap"
  	targetNamespace="http://www.w3.org/2002/ws/desc/wsdl/component"
  	elementFormDefault="qualified">
! 
! 	<xs:import
! 		namespace="http://www.w3.org/2002/ws/desc/wsdl/component-base"
! 		schemaLocation="wsdlcm-base.xsd" />
! 
! 	<xs:import
! 		namespace="http://www.w3.org/2002/ws/desc/wsdl/component-extensions"
! 		schemaLocation="wsdlcm-extensions.xsd" />
! 
! 	<xs:import
! 		namespace="http://www.w3.org/2002/ws/desc/wsdl/component-http"
! 		schemaLocation="wsdlcm-http.xsd" />
! 
! 	<xs:import
! 		namespace="http://www.w3.org/2002/ws/desc/wsdl/component-rpc"
! 		schemaLocation="wsdlcm-rpc.xsd" />
! 
! 	<xs:import
! 		namespace="http://www.w3.org/2002/ws/desc/wsdl/component-soap"
! 		schemaLocation="wsdlcm-soap.xsd" />
! 
  	<xs:annotation>
  		<xs:documentation>
***************
*** 83,154 ****
  	</xs:annotation>
  
- 	<xs:complexType name="Any">
- 		<xs:sequence>
- 			<xs:any namespace="##any" processContents="lax"
- 				minOccurs="0" maxOccurs="unbounded" />
- 		</xs:sequence>
- 	</xs:complexType>
- 
- 	<xs:simpleType name="Direction">
- 		<xs:restriction base="xs:token">
- 			<xs:enumeration value="in" />
- 			<xs:enumeration value="out" />
- 		</xs:restriction>
- 	</xs:simpleType>
- 
- 	<xs:simpleType name="MessageContentModel">
- 		<xs:restriction base="xs:token">
- 			<xs:enumeration value="#any" />
- 			<xs:enumeration value="#none" />
- 			<xs:enumeration value="#other" />
- 			<xs:enumeration value="#element" />
- 		</xs:restriction>
- 	</xs:simpleType>
- 
- 	<xs:complexType name="QName">
- 		<xs:annotation>
- 			<xs:documentation>
- 				QName is used as the key type for several component
- 				types such as Interface, Binding, Service, Element
- 				Declaration, and Type Definition. The key of a QName is
- 				(namespaceName, localName).
- 			</xs:documentation>
- 		</xs:annotation>
- 		<xs:sequence>
- 			<xs:element name="namespaceName" type="xs:anyURI" />
- 			<xs:element name="localName" type="xs:NCName" />
- 		</xs:sequence>
- 	</xs:complexType>
- 
- 	<xs:complexType name="Ref">
- 		<xs:attribute name="ref" type="xs:IDREF" />
- 	</xs:complexType>
- 
- 	<xs:complexType name="Uris">
- 		<xs:annotation>
- 			<xs:documentation>
- 				The sequence is sorted by uri.
- 			</xs:documentation>
- 		</xs:annotation>
- 		<xs:sequence>
- 			<xs:element name="uri" type="xs:anyURI"
- 				maxOccurs="unbounded" />
- 		</xs:sequence>
- 	</xs:complexType>
- 
- 	<xs:complexType name="Component" abstract="true">
- 		<xs:sequence>
- 			<xs:any namespace="##any" processContents="strict"
- 				minOccurs="0" maxOccurs="unbounded" />
- 		</xs:sequence>
- 		<xs:attribute ref="xml:id" />
- 		<xs:anyAttribute namespace="##other" processContents="lax" />
- 	</xs:complexType>
- 
  	<xs:element name="descriptionComponent" type="DescriptionComponent" />
  
  	<xs:complexType name="DescriptionComponent">
  		<xs:complexContent>
! 			<xs:restriction base="Component">
  				<xs:sequence>
  					<xs:element name="interfaces"
--- 107,115 ----
  	</xs:annotation>
  
  	<xs:element name="descriptionComponent" type="DescriptionComponent" />
  
  	<xs:complexType name="DescriptionComponent">
  		<xs:complexContent>
! 			<xs:restriction base="cmbase:Component">
  				<xs:sequence>
  					<xs:element name="interfaces"
***************
*** 186,192 ****
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="Component">
  				<xs:sequence>
! 					<xs:element name="name" type="QName" />
  					<xs:element name="extendedInterfaces"
  						type="InterfaceRefs" minOccurs="0" />
--- 147,153 ----
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="cmbase:Component">
  				<xs:sequence>
! 					<xs:element name="name" type="cmbase:QName" />
  					<xs:element name="extendedInterfaces"
  						type="InterfaceRefs" minOccurs="0" />
***************
*** 211,215 ****
  		</xs:annotation>
  		<xs:sequence>
! 			<xs:element name="interface" type="Ref"
  				maxOccurs="unbounded" />
  		</xs:sequence>
--- 172,176 ----
  		</xs:annotation>
  		<xs:sequence>
! 			<xs:element name="interface" type="cmbase:Ref"
  				maxOccurs="unbounded" />
  		</xs:sequence>
***************
*** 235,248 ****
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="Component">
  				<xs:sequence>
! 					<xs:element name="name" type="QName" />
! 					<xs:element name="elementDeclaration" type="Ref"
! 						minOccurs="0" />
  					<xs:element name="features" type="FeatureComponents"
  						minOccurs="0" />
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
! 					<xs:element name="parent" type="Ref" />
  				</xs:sequence>
  			</xs:restriction>
--- 196,209 ----
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="cmbase:Component">
  				<xs:sequence>
! 					<xs:element name="name" type="cmbase:QName" />
! 					<xs:element name="elementDeclaration"
! 						type="cmbase:Ref" minOccurs="0" />
  					<xs:element name="features" type="FeatureComponents"
  						minOccurs="0" />
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
! 					<xs:element name="parent" type="cmbase:Ref" />
  				</xs:sequence>
  			</xs:restriction>
***************
*** 253,257 ****
  		<xs:annotation>
  			<xs:documentation>
! 				The sequence is sorted by the key of Interface Operation.
  			</xs:documentation>
  		</xs:annotation>
--- 214,219 ----
  		<xs:annotation>
  			<xs:documentation>
! 				The sequence is sorted by the key of Interface
! 				Operation.
  			</xs:documentation>
  		</xs:annotation>
***************
*** 270,276 ****
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="Component">
  				<xs:sequence>
! 					<xs:element name="name" type="QName" />
  					<xs:element name="messageExchangePattern"
  						type="xs:anyURI" />
--- 232,238 ----
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="cmbase:Component">
  				<xs:sequence>
! 					<xs:element name="name" type="cmbase:QName" />
  					<xs:element name="messageExchangePattern"
  						type="xs:anyURI" />
***************
*** 279,288 ****
  					<xs:element name="interfaceFaultReferences"
  						type="InterfaceFaultReferenceComponents" minOccurs="0" />
! 					<xs:element name="style" type="Uris" minOccurs="0" />
  					<xs:element name="features" type="FeatureComponents"
  						minOccurs="0" />
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
! 					<xs:element name="parent" type="Ref" />
  				</xs:sequence>
  			</xs:restriction>
--- 241,258 ----
  					<xs:element name="interfaceFaultReferences"
  						type="InterfaceFaultReferenceComponents" minOccurs="0" />
! 					<xs:element name="style" type="cmbase:Uris"
! 						minOccurs="0" />
  					<xs:element name="features" type="FeatureComponents"
  						minOccurs="0" />
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
! 					<xs:element name="parent" type="cmbase:Ref" />
! 
! 					<!-- Extensions -->
! 					<xs:element ref="cmextensions:safety" minOccurs="0" />
! 
! 					<!-- RPC Extension -->
! 					<xs:element ref="cmrpc:rpcSignature" minOccurs="0" />
! 
  				</xs:sequence>
  			</xs:restriction>
***************
*** 293,297 ****
  		<xs:annotation>
  			<xs:documentation>
! 				The sequence is sorted by the key of Interface Message Reference.
  			</xs:documentation>
  		</xs:annotation>
--- 263,268 ----
  		<xs:annotation>
  			<xs:documentation>
! 				The sequence is sorted by the key of Interface Message
! 				Reference.
  			</xs:documentation>
  		</xs:annotation>
***************
*** 305,325 ****
  		<xs:annotation>
  			<xs:documentation>
! 				The key of Interface Message Reference is (messageLabel).
  			</xs:documentation>
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="Component">
  				<xs:sequence>
  					<xs:element name="messageLabel" type="xs:NCName" />
! 					<xs:element name="direction" type="Direction" />
  					<xs:element name="messageContentModel"
! 						type="MessageContentModel" />
! 					<xs:element name="elementDeclaration" type="Ref"
! 						minOccurs="0" />
  					<xs:element name="features" type="FeatureComponents"
  						minOccurs="0" />
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
! 					<xs:element name="parent" type="Ref" />
  				</xs:sequence>
  			</xs:restriction>
--- 276,298 ----
  		<xs:annotation>
  			<xs:documentation>
! 				The key of Interface Message Reference is
! 				(messageLabel).
  			</xs:documentation>
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="cmbase:Component">
  				<xs:sequence>
  					<xs:element name="messageLabel" type="xs:NCName" />
! 					<xs:element name="direction"
! 						type="cmbase:Direction" />
  					<xs:element name="messageContentModel"
! 						type="cmbase:MessageContentModel" />
! 					<xs:element name="elementDeclaration"
! 						type="cmbase:Ref" minOccurs="0" />
  					<xs:element name="features" type="FeatureComponents"
  						minOccurs="0" />
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
! 					<xs:element name="parent" type="cmbase:Ref" />
  				</xs:sequence>
  			</xs:restriction>
***************
*** 330,334 ****
  		<xs:annotation>
  			<xs:documentation>
! 				The sequence is sorted by the key of Interface Fault Reference.
  			</xs:documentation>
  		</xs:annotation>
--- 303,308 ----
  		<xs:annotation>
  			<xs:documentation>
! 				The sequence is sorted by the key of Interface Fault
! 				Reference.
  			</xs:documentation>
  		</xs:annotation>
***************
*** 342,359 ****
  		<xs:annotation>
  			<xs:documentation>
! 				The key of Interface Fault Reference is (name of interfaceFault, messageLabel).
  			</xs:documentation>
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="Component">
  				<xs:sequence>
! 					<xs:element name="interfaceFault" type="Ref" />
  					<xs:element name="messageLabel" type="xs:NCName" />
! 					<xs:element name="direction" type="Direction" />
  					<xs:element name="features" type="FeatureComponents"
  						minOccurs="0" />
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
! 					<xs:element name="parent" type="Ref" />
  				</xs:sequence>
  			</xs:restriction>
--- 316,335 ----
  		<xs:annotation>
  			<xs:documentation>
! 				The key of Interface Fault Reference is (name of
! 				interfaceFault, messageLabel).
  			</xs:documentation>
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="cmbase:Component">
  				<xs:sequence>
! 					<xs:element name="interfaceFault" type="cmbase:Ref" />
  					<xs:element name="messageLabel" type="xs:NCName" />
! 					<xs:element name="direction"
! 						type="cmbase:Direction" />
  					<xs:element name="features" type="FeatureComponents"
  						minOccurs="0" />
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
! 					<xs:element name="parent" type="cmbase:Ref" />
  				</xs:sequence>
  			</xs:restriction>
***************
*** 380,388 ****
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="Component">
  				<xs:sequence>
  					<xs:element name="ref" type="xs:anyURI" />
  					<xs:element name="required" type="xs:boolean" />
! 					<xs:element name="parent" type="Ref" />
  				</xs:sequence>
  			</xs:restriction>
--- 356,364 ----
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="cmbase:Component">
  				<xs:sequence>
  					<xs:element name="ref" type="xs:anyURI" />
  					<xs:element name="required" type="xs:boolean" />
! 					<xs:element name="parent" type="cmbase:Ref" />
  				</xs:sequence>
  			</xs:restriction>
***************
*** 409,419 ****
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="Component">
  				<xs:sequence>
  					<xs:element name="ref" type="xs:anyURI" />
! 					<xs:element name="valueConstraint" type="Ref"
  						minOccurs="0" />
! 					<xs:element name="value" type="Any" minOccurs="0" />
! 					<xs:element name="parent" type="Ref" />
  				</xs:sequence>
  			</xs:restriction>
--- 385,396 ----
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="cmbase:Component">
  				<xs:sequence>
  					<xs:element name="ref" type="xs:anyURI" />
! 					<xs:element name="valueConstraint" type="cmbase:Ref"
  						minOccurs="0" />
! 					<xs:element name="value" type="cmbase:Any"
! 						minOccurs="0" />
! 					<xs:element name="parent" type="cmbase:Ref" />
  				</xs:sequence>
  			</xs:restriction>
***************
*** 440,447 ****
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="Component">
  				<xs:sequence>
! 					<xs:element name="name" type="QName" />
! 					<xs:element name="interface" type="Ref"
  						minOccurs="0" />
  					<xs:element name="type" type="xs:anyURI" />
--- 417,424 ----
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="cmbase:Component">
  				<xs:sequence>
! 					<xs:element name="name" type="cmbase:QName" />
! 					<xs:element name="interface" type="cmbase:Ref"
  						minOccurs="0" />
  					<xs:element name="type" type="xs:anyURI" />
***************
*** 454,457 ****
--- 431,452 ----
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
+ 
+ 					<!-- HTTP Binding Extension -->
+ 					<xs:element ref="cmhttp:httpCookies" minOccurs="0" />
+ 					<xs:element ref="cmhttp:httpMethodDefault"
+ 						minOccurs="0" />
+ 					<xs:element
+ 						ref="cmhttp:httpQueryParameterSeparatorDefault" minOccurs="0" />
+ 					<xs:element ref="cmhttp:httpTransferCodingDefault"
+ 						minOccurs="0" />
+ 
+ 					<!-- SOAP Binding Extension -->
+ 					<xs:element ref="cmsoap:soapMepDefault"
+ 						minOccurs="0" />
+ 					<xs:element ref="cmsoap:soapModules" minOccurs="0" />
+ 					<xs:element ref="cmsoap:soapUnderlyingProtocol"
+ 						minOccurs="0" />
+ 					<xs:element ref="cmsoap:soapVersion" minOccurs="0" />
+ 
  				</xs:sequence>
  			</xs:restriction>
***************
*** 478,489 ****
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="Component">
  				<xs:sequence>
! 					<xs:element name="interfaceFault" type="Ref" />
  					<xs:element name="features" type="FeatureComponents"
  						minOccurs="0" />
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
! 					<xs:element name="parent" type="Ref" />
  				</xs:sequence>
  			</xs:restriction>
--- 473,500 ----
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="cmbase:Component">
  				<xs:sequence>
! 					<xs:element name="interfaceFault" type="cmbase:Ref" />
  					<xs:element name="features" type="FeatureComponents"
  						minOccurs="0" />
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
! 					<xs:element name="parent" type="cmbase:Ref" />
! 
! 					<!-- HTTP Binding Extension -->
! 					<xs:element ref="cmhttp:httpErrorStatusCode"
! 						minOccurs="0" />
! 					<xs:element ref="cmhttp:httpHeaders" minOccurs="0" />
! 					<xs:element ref="cmhttp:httpTransferCoding"
! 						minOccurs="0" />
! 
! 					<!-- SOAP Binding Extension -->
! 					<xs:element ref="cmsoap:soapFaultCode"
! 						minOccurs="0" />
! 					<xs:element ref="cmsoap:soapFaultSubcodes"
! 						minOccurs="0" />
! 					<xs:element ref="cmsoap:soapHeaders" minOccurs="0" />
! 					<xs:element ref="cmsoap:soapModules" minOccurs="0" />
! 
  				</xs:sequence>
  			</xs:restriction>
***************
*** 506,516 ****
  		<xs:annotation>
  			<xs:documentation>
! 				The key of Binding Operation is (name of interfaceOperation).
  			</xs:documentation>
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="Component">
  				<xs:sequence>
! 					<xs:element name="interfaceOperation" type="Ref" />
  					<xs:element name="bindingFaultReferences"
  						type="BindingFaultReferenceComponents" minOccurs="0" />
--- 517,529 ----
  		<xs:annotation>
  			<xs:documentation>
! 				The key of Binding Operation is (name of
! 				interfaceOperation).
  			</xs:documentation>
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="cmbase:Component">
  				<xs:sequence>
! 					<xs:element name="interfaceOperation"
! 						type="cmbase:Ref" />
  					<xs:element name="bindingFaultReferences"
  						type="BindingFaultReferenceComponents" minOccurs="0" />
***************
*** 521,525 ****
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
! 					<xs:element name="parent" type="Ref" />
  				</xs:sequence>
  			</xs:restriction>
--- 534,560 ----
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
! 					<xs:element name="parent" type="cmbase:Ref" />
! 
! 					<!-- HTTP Binding Extension -->
! 					<xs:element ref="cmhttp:httpFaultSerialization"
! 						minOccurs="0" />
! 					<xs:element ref="cmhttp:httpInputSerialization"
! 						minOccurs="0" />
! 					<xs:element ref="cmhttp:httpLocation" minOccurs="0" />
! 					<xs:element ref="cmhttp:httpLocationIgnoreUncited"
! 						minOccurs="0" />
! 					<xs:element ref="cmhttp:httpMethod" minOccurs="0" />
! 					<xs:element ref="cmhttp:httpOutputSerialization"
! 						minOccurs="0" />
! 					<xs:element ref="cmhttp:httpQueryParameterSeparator"
! 						minOccurs="0" />
! 					<xs:element ref="cmhttp:httpTransferCodingDefault"
! 						minOccurs="0" />
! 
! 					<!-- SOAP Binding Extension -->
! 					<xs:element ref="cmsoap:soapAction" minOccurs="0" />
! 					<xs:element ref="cmsoap:soapMep" minOccurs="0" />
! 					<xs:element ref="cmsoap:soapModules" minOccurs="0" />
! 
  				</xs:sequence>
  			</xs:restriction>
***************
*** 530,534 ****
  		<xs:annotation>
  			<xs:documentation>
! 				The sequence is sorted by the key of Binding Message Reference.
  			</xs:documentation>
  		</xs:annotation>
--- 565,570 ----
  		<xs:annotation>
  			<xs:documentation>
! 				The sequence is sorted by the key of Binding Message
! 				Reference.
  			</xs:documentation>
  		</xs:annotation>
***************
*** 542,558 ****
  		<xs:annotation>
  			<xs:documentation>
! 				The key of Binding Message Reference is (messageLabel of interfaceMessageReference).
  			</xs:documentation>
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="Component">
  				<xs:sequence>
  					<xs:element name="interfaceMessageReference"
! 						type="Ref" />
  					<xs:element name="features" type="FeatureComponents"
  						minOccurs="0" />
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
! 					<xs:element name="parent" type="Ref" />
  				</xs:sequence>
  			</xs:restriction>
--- 578,605 ----
  		<xs:annotation>
  			<xs:documentation>
! 				The key of Binding Message Reference is (messageLabel of
! 				interfaceMessageReference).
  			</xs:documentation>
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="cmbase:Component">
  				<xs:sequence>
  					<xs:element name="interfaceMessageReference"
! 						type="cmbase:Ref" />
  					<xs:element name="features" type="FeatureComponents"
  						minOccurs="0" />
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
! 					<xs:element name="parent" type="cmbase:Ref" />
! 
! 					<!-- HTTP Binding Extension -->
! 					<xs:element ref="cmhttp:httpHeaders" minOccurs="0" />
! 					<xs:element ref="cmhttp:httpTransferCoding"
! 						minOccurs="0" />
! 
! 					<!-- SOAP Binding Extension -->
! 					<xs:element ref="cmsoap:soapHeaders" minOccurs="0" />
! 					<xs:element ref="cmsoap:soapModules" minOccurs="0" />
! 
  				</xs:sequence>
  			</xs:restriction>
***************
*** 563,567 ****
  		<xs:annotation>
  			<xs:documentation>
! 				The sequence is sorted by the key of Binding Fault Reference.
  			</xs:documentation>
  		</xs:annotation>
--- 610,615 ----
  		<xs:annotation>
  			<xs:documentation>
! 				The sequence is sorted by the key of Binding Fault
! 				Reference.
  			</xs:documentation>
  		</xs:annotation>
***************
*** 575,592 ****
  		<xs:annotation>
  			<xs:documentation>
! 				The key of Binding Fault Reference is (name of interfaceFault of interfaceFaultReference, messageLabel of interfaceFaultReference).
  			</xs:documentation>
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="Component">
  				<xs:sequence>
  					<xs:element name="interfaceFaultReference"
! 						type="Ref" />
  					<xs:element name="features" type="FeatureComponents"
  						minOccurs="0" />
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
! 					<xs:element name="parent" type="Ref" />
  				</xs:sequence>
  			</xs:restriction>
  		</xs:complexContent>
--- 623,647 ----
  		<xs:annotation>
  			<xs:documentation>
! 				The key of Binding Fault Reference is (name of
! 				interfaceFault of interfaceFaultReference, messageLabel
! 				of interfaceFaultReference).
  			</xs:documentation>
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="cmbase:Component">
  				<xs:sequence>
  					<xs:element name="interfaceFaultReference"
! 						type="cmbase:Ref" />
  					<xs:element name="features" type="FeatureComponents"
  						minOccurs="0" />
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
! 					<xs:element name="parent" type="cmbase:Ref" />
! 
! 					<!-- SOAP Binding Extension -->
! 					<xs:element ref="cmsoap:soapModules" minOccurs="0" />
! 
  				</xs:sequence>
+ 
  			</xs:restriction>
  		</xs:complexContent>
***************
*** 612,619 ****
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="Component">
  				<xs:sequence>
! 					<xs:element name="name" type="QName" />
! 					<xs:element name="interface" type="Ref" />
  					<xs:element name="endpoints"
  						type="EndpointComponents" />
--- 667,674 ----
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="cmbase:Component">
  				<xs:sequence>
! 					<xs:element name="name" type="cmbase:QName" />
! 					<xs:element name="interface" type="cmbase:Ref" />
  					<xs:element name="endpoints"
  						type="EndpointComponents" />
***************
*** 646,653 ****
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="Component">
  				<xs:sequence>
  					<xs:element name="name" type="xs:NCName" />
! 					<xs:element name="binding" type="Ref" />
  					<xs:element name="address" type="xs:anyURI"
  						minOccurs="0" />
--- 701,708 ----
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="cmbase:Component">
  				<xs:sequence>
  					<xs:element name="name" type="xs:NCName" />
! 					<xs:element name="binding" type="cmbase:Ref" />
  					<xs:element name="address" type="xs:anyURI"
  						minOccurs="0" />
***************
*** 656,660 ****
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
! 					<xs:element name="parent" type="Ref" />
  				</xs:sequence>
  			</xs:restriction>
--- 711,722 ----
  					<xs:element name="properties"
  						type="PropertyComponents" minOccurs="0" />
! 					<xs:element name="parent" type="cmbase:Ref" />
! 
! 					<!-- HTTP Binding Extension -->
! 					<xs:element ref="cmhttp:httpAuthenticationRealm"
! 						minOccurs="0" />
! 					<xs:element ref="cmhttp:httpAuthenticationScheme"
! 						minOccurs="0" />
! 
  				</xs:sequence>
  			</xs:restriction>
***************
*** 665,669 ****
  		<xs:annotation>
  			<xs:documentation>
! 				The sequence is sorted by the key of Element Declaration.
  			</xs:documentation>
  		</xs:annotation>
--- 727,732 ----
  		<xs:annotation>
  			<xs:documentation>
! 				The sequence is sorted by the key of Element
! 				Declaration.
  			</xs:documentation>
  		</xs:annotation>
***************
*** 681,687 ****
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="Component">
  				<xs:sequence>
! 					<xs:element name="name" type="QName" />
  					<xs:element name="system" type="xs:anyURI" />
  				</xs:sequence>
--- 744,750 ----
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="cmbase:Component">
  				<xs:sequence>
! 					<xs:element name="name" type="cmbase:QName" />
  					<xs:element name="system" type="xs:anyURI" />
  				</xs:sequence>
***************
*** 709,715 ****
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="Component">
  				<xs:sequence>
! 					<xs:element name="name" type="QName" />
  					<xs:element name="system" type="xs:anyURI" />
  				</xs:sequence>
--- 772,778 ----
  		</xs:annotation>
  		<xs:complexContent>
! 			<xs:restriction base="cmbase:Component">
  				<xs:sequence>
! 					<xs:element name="name" type="cmbase:QName" />
  					<xs:element name="system" type="xs:anyURI" />
  				</xs:sequence>

--- NEW FILE: wsdlcm-base.xsd ---
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<!-- 
	
	Schema for WSDL 2.0 Component Model Interchange Format Base Types
	
	This format is used to compare component model instances computed by different implementation.
	
	ChangeLog:
	
	2005-05-08 Arthur Ryman ryman@ca.ibm.com
	- refactored wsdlcm.xsd
	
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
	xmlns="http://www.w3.org/2002/ws/desc/wsdl/component-base"
	targetNamespace="http://www.w3.org/2002/ws/desc/wsdl/component-base"
	elementFormDefault="qualified">

	<xs:import namespace="http://www.w3.org/XML/1998/namespace"
		schemaLocation="http://www.w3.org/2001/xml.xsd" />

	<xs:complexType name="Any">
		<xs:sequence>
			<xs:any namespace="##any" processContents="lax"
				minOccurs="0" maxOccurs="unbounded" />
		</xs:sequence>
	</xs:complexType>

	<xs:simpleType name="Direction">
		<xs:restriction base="xs:token">
			<xs:enumeration value="in" />
			<xs:enumeration value="out" />
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="MessageContentModel">
		<xs:restriction base="xs:token">
			<xs:enumeration value="#any" />
			<xs:enumeration value="#none" />
			<xs:enumeration value="#other" />
			<xs:enumeration value="#element" />
		</xs:restriction>
	</xs:simpleType>

	<xs:complexType name="QName">
		<xs:annotation>
			<xs:documentation>
				QName is used as the key type for several component
				types such as Interface, Binding, Service, Element
				Declaration, and Type Definition. The key of a QName is
				(namespaceName, localName).
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="namespaceName" type="xs:anyURI" />
			<xs:element name="localName" type="xs:NCName" />
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="Ref">
		<xs:attribute name="ref" type="xs:IDREF" />
	</xs:complexType>

	<xs:complexType name="Uris">
		<xs:annotation>
			<xs:documentation>
				The sequence is sorted by uri.
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="uri" type="xs:anyURI"
				maxOccurs="unbounded" />
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="Component" abstract="true">
		<xs:sequence>
			<xs:any namespace="##any" processContents="strict"
				minOccurs="0" maxOccurs="unbounded" />
		</xs:sequence>
		<xs:attribute ref="xml:id" />
		<xs:anyAttribute namespace="##other" processContents="lax" />
	</xs:complexType>

</xs:schema>

--- NEW FILE: wsdlcm-soap.xsd ---
<?xml version="1.0" encoding="UTF-8"?>
<!-- 
	
	Schema for WSDL 2.0 SOAP Binding Component Model Interchange Format
	
	This format is used to compare component model instances computed by different implementation.
	
	ChangeLog:
	
	2005-05-08 Arthur Ryman ryman@ca.ibm.com
	- created
	
-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
	xmlns="http://www.w3.org/2002/ws/desc/wsdl/component-soap"
	xmlns:cmbase="http://www.w3.org/2002/ws/desc/wsdl/component-base"
	targetNamespace="http://www.w3.org/2002/ws/desc/wsdl/component-soap"
	elementFormDefault="qualified">

	<xs:import
		namespace="http://www.w3.org/2002/ws/desc/wsdl/component-base"
		schemaLocation="wsdlcm-base.xsd" />

	<xs:element name="soapAction" type="xs:anyURI" />

	<xs:element name="soapFaultCode" type="SoapFaultCodeType" />

	<xs:element name="soapFaultSubcodes" type="SoapFaultSubcodesType" />

	<xs:element name="soapHeaders" type="SoapHeaderBlockComponents" />

	<xs:element name="soapMep" type="xs:anyURI" />

	<xs:element name="soapMepDefault" type="xs:anyURI" />

	<xs:element name="soapModules" type="SoapModuleComponents" />

	<xs:element name="soapUnderlyingProtocol" type="xs:anyURI" />

	<xs:element name="soapVersion" type="xs:string" />

	<xs:simpleType name="AnyToken">
		<xs:restriction base="xs:token">
			<xs:enumeration value="#any" />
		</xs:restriction>
	</xs:simpleType>

	<xs:simpleType name="SoapFaultCodeType">
		<xs:union memberTypes="xs:int AnyToken"/>
	</xs:simpleType>

	<xs:simpleType name="SoapFaultSubcodesType">
		<xs:union memberTypes="AnyToken">
			<xs:simpleType>
				<xs:list itemType="xs:QName" />
			</xs:simpleType>
		</xs:union>
	</xs:simpleType>

	<xs:complexType name="SoapHeaderBlockComponents">
		<xs:annotation>
			<xs:documentation>
				The sequence is sorted by the key of SOAP Header Block.
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="SoapHeaderBlockComponent"
				type="SoapHeaderBlockComponent" maxOccurs="unbounded" />
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="SoapHeaderBlockComponent">
		<xs:annotation>
			<xs:documentation>
				The key of SOAP Header Block is (name of
				elementDeclaration).
			</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:restriction base="cmbase:Component">
				<xs:sequence>
					<xs:element name="elementDeclaration"
						type="cmbase:Ref" />
					<xs:element name="mustUnderstand" type="xs:boolean" />
					<xs:element name="required" type="xs:boolean" />
					<xs:element name="parent" type="cmbase:Ref" />
				</xs:sequence>
			</xs:restriction>
		</xs:complexContent>
	</xs:complexType>

	<xs:complexType name="SoapModuleComponents">
		<xs:annotation>
			<xs:documentation>
				The sequence is sorted by the key of SOAP Module.
			</xs:documentation>
		</xs:annotation>
		<xs:sequence>
			<xs:element name="SoapModuleComponent"
				type="SoapModuleComponent" maxOccurs="unbounded" />
		</xs:sequence>
	</xs:complexType>

	<xs:complexType name="SoapModuleComponent">
		<xs:annotation>
			<xs:documentation>
				The key of SOAP Module is (ref).
			</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:restriction base="cmbase:Component">
				<xs:sequence>
					<xs:element name="ref" type="xs:anyURI" />
					<xs:element name="required" type="xs:boolean" />
					<xs:element name="parent" type="cmbase:Ref" />
				</xs:sequence>
			</xs:restriction>
		</xs:complexContent>
	</xs:complexType>

</xs:schema>

Received on Tuesday, 9 May 2006 01:04:55 UTC