2002/ws/desc/wsdl20 wsdl20-bindings.html,1.37,1.38 wsdl20.html,1.85,1.86 wsdl20.xml,1.94,1.95

Update of /sources/public/2002/ws/desc/wsdl20
In directory hutz:/tmp/cvs-serv9590

Modified Files:
	wsdl20-bindings.html wsdl20.html wsdl20.xml 
Log Message:
made @style be a list

Index: wsdl20-bindings.html
===================================================================
RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20-bindings.html,v
retrieving revision 1.37
retrieving revision 1.38
diff -C2 -d -r1.37 -r1.38
*** wsdl20-bindings.html	2 Jul 2004 06:09:55 -0000	1.37
--- wsdl20-bindings.html	2 Jul 2004 07:02:22 -0000	1.38
***************
*** 1214,1218 ****
          </div>
          <div class="div3">
- 
            
  <h4><a name="http-binding-decl-mapping"></a>3.2.4 Mapping Between HTTP Binding's XML Representation to Component
--- 1214,1217 ----

Index: wsdl20.html
===================================================================
RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20.html,v
retrieving revision 1.85
retrieving revision 1.86
diff -C2 -d -r1.85 -r1.86
*** wsdl20.html	2 Jul 2004 06:09:55 -0000	1.85
--- wsdl20.html	2 Jul 2004 07:02:22 -0000	1.86
***************
*** 84,90 ****
  <h2><a name="contents">Table of Contents</a></h2><p class="toc">1. <a href="#intro">Introduction</a><br>&nbsp;&nbsp;&nbsp;&nbsp;1.1 <a href="#intro_ws">Web Service</a><br>&nbsp;&nbsp;&nbsp;&nbsp;1.2 <a href="#notation">Notational Conventions</a><br>2. <a href="#component_model">Component Model</a><br>&nbsp;&nbsp;&nbsp;&nbsp;2.1 <a href="#Definitions">Definitions</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.1.1 <a href="#Definitions_details">The Definitions Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.1.2 <a href="#Definitions_XMLRep">XML Representation of Definitions Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.1.2.1 <a href="#Definitions_targetnamespace_attribute">targetNamespace attribute information item</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.1.3 <a href="#Definitions_Mapping">Mapping Definitions' XML Representation to Component
        Properties</a><br>&nbsp;&nbsp;&nbsp;&nbsp;2.2 <a href="#Interface">Interface</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.2.1 <a href="#Interface_details">The Interface Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.2.2 <a href="#Interface_XMLRep">XML Representation of Interface Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.2.2.1 <a href="#Interface_name_attribute">name attribute information item with interface [owner]</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.2.2.2 <a href="#Interface_extends_attribute">extends attribute information item</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.2.2.3 <a href="#Interface_styleDefault_attribute">styleDefault attribute information item</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.2.3 <a href="#Interface_Mapping">Mapping Interface's XML Representation to Component Properties</a><br>&nbsp;&nbsp;&nbsp;&nbs;2.3 <a href="#InterfaceFault">Interface Fault</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.3.1 <a href="#InterfaceFault_details">The Interface Fault Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.3.2 <a href="#InterfaceFault_XMLRep">XML Representation of Interface Fault Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.3.2.1 <a href="#Interfacefault_name_attribute">name attribute information item with fault [owner]</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.3.2.2 <a href="#Interface_element_attribute">element attribute information item with fault [owner]</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.3.3 <a href="#InterfaceFault_Mapping">Mapping Interface Fault's XML Representation to
! 	  Component Properties</a><br>&nbsp;&nbsp;&nbsp;&nbsp;2.4 <a href="#InterfaceOperation">Interface Operation</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.1 <a href="#InterfaceOperation_details">The Interface Operation Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.1.1 <a href="#InterfaceOperationStyle">Operation Style</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.2 <a href="#InterfaceOperation_XMLRep">XML Representation of Interface Operation Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.2.1 <a href="#Interfaceoperation_name_attribute">name attribute information item with operation [owner]</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.2.2 <a href="#Interfaceoperation_pattern_attribute">pattern attribute information item with operation [owner]</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.2.3 <a href="#InterfaceOpertion_style_attribute">style attribute information item with operation [owner]</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.2.4 <a href="#InterfaceOperation_safe_attribute">safe attribute information item with operation [owner]</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.3 <a href="#InterfaceOperation_Mapping">Mapping Interface Operation's XML Representation to
! 	  Component Properties</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.4 <a href="#RPCStyle">RPC Style</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.4.1 <a href="#InterfaceOperation_RPC_Signature_Definition">wrpc:signature Extension</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.4.2 <a href="#InterfaceOperation_RPC_Signature_XMLRep">XML Representation of the wrpc:signature Extension</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.4.3 <a href="#InterfaceOperation_RPC_Signature_Mapping">wrpc:signature Extension Mapping To Properties of an
! 	  Interface Operation Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;2.5 <a href="#MessageReference">Message Reference</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.5.1 <a href="#MessageReference_details">The Message Reference Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.5.2 <a href="#MessageReference_XMLRep">XML Representation of Message Reference Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.5.2.1 <a href="#MessageReference_messageReference_attribute">messageLabel attribute information item with input,
          or output [owner]</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.5.2.2 <a href="#MessageReference_element_attribute">element attribute information item with input,
          or output [owner]</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.5.3 <a href="#MessageReference_Mapping">Mapping Message Reference's XML Representation to Component Properties</a><br>&nbsp;&nbsp;&nbsp;&nbsp;2.6 <a href="#FaultReference">Fault Reference</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.6.1 <a href="#FaultReference_details">The Fault Reference Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.6.2 <a href="#FaultReference_XMLRep">XML Representation of Fault Reference Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.6.2.1 <a href="#FaultReference_ref_attribute">ref attribute information item with infault,
--- 84,90 ----
  <h2><a name="contents">Table of Contents</a></h2><p class="toc">1. <a href="#intro">Introduction</a><br>&nbsp;&nbsp;&nbsp;&nbsp;1.1 <a href="#intro_ws">Web Service</a><br>&nbsp;&nbsp;&nbsp;&nbsp;1.2 <a href="#notation">Notational Conventions</a><br>2. <a href="#component_model">Component Model</a><br>&nbsp;&nbsp;&nbsp;&nbsp;2.1 <a href="#Definitions">Definitions</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.1.1 <a href="#Definitions_details">The Definitions Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.1.2 <a href="#Definitions_XMLRep">XML Representation of Definitions Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.1.2.1 <a href="#Definitions_targetnamespace_attribute">targetNamespace attribute information item</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.1.3 <a href="#Definitions_Mapping">Mapping Definitions' XML Representation to Component
        Properties</a><br>&nbsp;&nbsp;&nbsp;&nbsp;2.2 <a href="#Interface">Interface</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.2.1 <a href="#Interface_details">The Interface Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.2.2 <a href="#Interface_XMLRep">XML Representation of Interface Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.2.2.1 <a href="#Interface_name_attribute">name attribute information item with interface [owner]</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.2.2.2 <a href="#Interface_extends_attribute">extends attribute information item</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.2.2.3 <a href="#Interface_styleDefault_attribute">styleDefault attribute information item</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.2.3 <a href="#Interface_Mapping">Mapping Interface's XML Representation to Component Properties</a><br>&nbsp;&nbsp;&nbsp;&nbs;2.3 <a href="#InterfaceFault">Interface Fault</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.3.1 <a href="#InterfaceFault_details">The Interface Fault Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.3.2 <a href="#InterfaceFault_XMLRep">XML Representation of Interface Fault Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.3.2.1 <a href="#Interfacefault_name_attribute">name attribute information item with fault [owner]</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.3.2.2 <a href="#Interface_element_attribute">element attribute information item with fault [owner]</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.3.3 <a href="#InterfaceFault_Mapping">Mapping Interface Fault's XML Representation to
! 	  Component Properties</a><br>&nbsp;&nbsp;&nbsp;&nbsp;2.4 <a href="#InterfaceOperation">Interface Operation</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.1 <a href="#InterfaceOperation_details">The Interface Operation Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.1.1 <a href="#InterfaceOperationStyle">Operation Style</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.2 <a href="#RPCStyle">RPC Style</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.2.1 <a href="#InterfaceOperation_RPC_Signature_Definition">wrpc:signature Extension</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.2.2 <a href="#InterfaceOperation_RPC_Signature_XMLRep">XML Representation of the wrpc:signature Extension</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.2.3 <a href="#InterfaceOperation_RPC_Signature_Mapping">wrpc:signature Extension Mapping To Properties of an
! 	  Interface Operation Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.3 <a href="#InterfaceOperation_XMLRep">XML Representation of Interface Operation Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.3.1 <a href="#Interfaceoperation_name_attribute">name attribute information item with operation [owner]</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.3.2 <a href="#Interfaceoperation_pattern_attribute">pattern attribute information item with operation [owner]</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.3.3 <a href="#InterfaceOperation_style_attribute">style attribute information item with operation [owner]</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.3.4 <a href="#InterfaceOperation_safe_attribute">safe attribute information item with operation [owner]</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.4.4 <a href="#InterfaceOeration_Mapping">Mapping Interface Operation's XML Representation to
! 	  Component Properties</a><br>&nbsp;&nbsp;&nbsp;&nbsp;2.5 <a href="#MessageReference">Message Reference</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.5.1 <a href="#MessageReference_details">The Message Reference Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.5.2 <a href="#MessageReference_XMLRep">XML Representation of Message Reference Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.5.2.1 <a href="#MessageReference_messageReference_attribute">messageLabel attribute information item with input,
          or output [owner]</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.5.2.2 <a href="#MessageReference_element_attribute">element attribute information item with input,
          or output [owner]</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.5.3 <a href="#MessageReference_Mapping">Mapping Message Reference's XML Representation to Component Properties</a><br>&nbsp;&nbsp;&nbsp;&nbsp;2.6 <a href="#FaultReference">Fault Reference</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.6.1 <a href="#FaultReference_details">The Fault Reference Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.6.2 <a href="#FaultReference_XMLRep">XML Representation of Fault Reference Component</a><br>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;2.6.2.1 <a href="#FaultReference_ref_attribute">ref attribute information item with infault,
***************
*** 694,698 ****
  		    <li>
  			  <p>
! 			  Zero or more <code>operation</code>  <em>element information item</em>s <a href="#InterfaceOperation_XMLRep"><b>2.4.2 XML Representation of Interface Operation Component</b></a>.
  			  </p>
  			</li>
--- 694,698 ----
  		    <li>
  			  <p>
! 			  Zero or more <code>operation</code>  <em>element information item</em>s <a href="#InterfaceOperation_XMLRep"><b>2.4.3 XML Representation of Interface Operation Component</b></a>.
  			  </p>
  			</li>
***************
*** 783,789 ****
  		<p>
  		The type of the <code>styleDefault</code>  <em>attribute information item</em> is
! 		<em>xs:anyURI</em>. Moreover, the value of the
! 		<code>styleDefault</code>  <em>attribute information item</em>, if present, MUST be
! 		an absolute URI (see [<cite><a href="#RFC2396">IETF RFC 2396</a></cite>]).
  		</p>
  
--- 783,789 ----
  		<p>
  		The type of the <code>styleDefault</code>  <em>attribute information item</em> is
! 		<em>list of xs:anyURI</em>. Moreover, the value of the
! 		<code>styleDefault</code>  <em>attribute information item</em>, if present, MUST contain
! 		absolute URIs (see [<cite><a href="#RFC2396">IETF RFC 2396</a></cite>]).
  		</p>
  
***************
*** 1182,1189 ****
  	    sends. (See <a href="#FaultReference"><b>2.6 Fault Reference</b></a>.)</p></li>
  
!             <li><p> {style} A URI identifying the rules that were
!             used to construct the {element} properties of {message
!             references}. (See <a href="#InterfaceOperationStyle"><b>2.4.1.1 Operation Style</b></a>.) This URI MUST be an
!             absolute URI (see [<cite><a href="#RFC2396">IETF RFC 2396</a></cite>]).</p></li>
  
              <li><p>{safety} A boolean indicating whether the
--- 1182,1189 ----
  	    sends. (See <a href="#FaultReference"><b>2.6 Fault Reference</b></a>.)</p></li>
  
!             <li><p> {style} A list of URIs identifying the rules
!             that were used to construct the {element} properties of
!             {message references}. (See <a href="#InterfaceOperationStyle"><b>2.4.1.1 Operation Style</b></a>.) These URIs MUST be
!             absolute URIs (see [<cite><a href="#RFC2396">IETF RFC 2396</a></cite>]).</p></li>
  
              <li><p>{safety} A boolean indicating whether the
***************
*** 1253,1265 ****
  
          <p>If the {style} property of an Interface Operation component
!         has a value then that value (a URI) implies the rules that
          were used to define the {element} properties (or other
          property which defines the content of the message properties;
          see <a href="#other-types"><b>3.2 Using Other Schema Languages</b></a>) of <em>all</em> the
  	Message Reference components which are members of the {message
!         references} property of that component.  Note that the property MAY
!         not have any value. If this property has a given value, then
!         the rules implied by that value (such as rules that govern the
!         schemas) MUST be followed or it is an error.</p>
  
          <p>This specification defines the following pre-defined 
--- 1253,1270 ----
  
          <p>If the {style} property of an Interface Operation component
!         has a value then that value (a list of URIs) implies the rules that
          were used to define the {element} properties (or other
          property which defines the content of the message properties;
          see <a href="#other-types"><b>3.2 Using Other Schema Languages</b></a>) of <em>all</em> the
  	Message Reference components which are members of the {message
!         references} property of that component.</p>
! 
!         <p>Note that the property MAY not have any value. If this
!         property has a given value, then the rules implied by that
!         value (such as rules that govern the schemas) MUST be followed
!         or it is an error. If list of QNames has more than one item in
!         it, then the order of the URIs is NOT significant; the rules
!         implied by ALL the URIs must be adhered to by the content
!         definitions.</p>
  
          <p>This specification defines the following pre-defined 
***************
*** 1267,1271 ****
  
          <ul>
!           <li><p>RPC Style (see <a href="#RPCStyle"><b>2.4.4 RPC Style</b></a>)</p></li>
  
          </ul>
--- 1272,1276 ----
  
          <ul>
!           <li><p>RPC Style (see <a href="#RPCStyle"><b>2.4.2 RPC Style</b></a>)</p></li>
  
          </ul>
***************
*** 1277,1282 ****
  
      <div class="div3">
        
! <h4><a name="InterfaceOperation_XMLRep"></a>2.4.2 XML Representation of Interface Operation Component</h4>
  
  <div class="exampleInner"><pre>&lt;definitions&gt;
--- 1282,1514 ----
  
      <div class="div3">
+     	
+ <h4><a name="RPCStyle"></a>2.4.2 RPC Style</h4>
+ 	
+ 	 <p>The RPC style is selected by assigning to an Interface
+ 	 Operation component's {style} property the value
+ 	 <em>http://www.w3.org/@@@@/@@/wsdl/style/rpc</em>.</p>
+ 	
+ 	 <p>The RPC style MUST NOT be used for Interface Operation
+ 	 components whose {message exchange pattern} property has a
+ 	 value other than 'http://www.w3.org/@@@@/@@/wsdl/in-only' or 'http://www.w3.org/@@@@/@@/wsdl/in-out'.</p>
+ 	
+ 	 <p>Use of this value indicates that XML Schema [<cite><a href="#XMLSchemaP1">XML Schema: Structures</a></cite>] was used to define the schemas of the
+ 	 {element} properties of all {message reference} components of
+ 	 the Interface Operation component. Those schemas MUST adhere
+ 	 to the rules below.</p>
+ 	
+ 	 <p>Note that if the Interface Operation component uses the
+ 	 {message exchange pattern} 'http://www.w3.org/@@@@/@@/wsdl/in-only' then there is
+ 	 no output element and hence the rules which refer to the
+ 	 output element do not apply.</p>
+ 	
+ 	 <ul>
+ 	
+ 	   <li><p> The content model of input and output {element}
+ 	   elements are defined using a complex type that contains a
+ 	   sequence from XML Schema.</p></li>
+ 	
+ 	   <li><p> The sequence MUST only contain elements. It
+ 	   MUST NOT contain other structures such as
+ 	   xs:choice.</p></li>
+ 	
+ 	   <li><p>The sequence MUST contain only local element
+ 	   children. Note that these child elements MAY contain the
+ 	   following attributes: nillable, minOccurs and
+ 	   maxOccurs.</p></li>
+ 	
+ 	   <li><p>The LocalPart of input element's QName MUST be
+ 	   the same as the Interface operation component's
+ 	   name.</p></li>
+ 	
+ 	   <li><p> The LocalPart of the output element's QName is
+ 	   obtained by concatenating the name of the operation and
+ 	   the string value "Response",
+ 	   i.e. concat(operation/@name,"Response").</p></li>
+ 	
+ 	   <li><p>Input and output elements MUST both be in the
+ 	   same namespace.</p></li>
+ 	
+ 	   <li><p> The complex type that defines the body of an
+ 	   input or an output element MUST NOT contain any
+ 	   attributes.</p></li>
+ 	
+ 	   <li><p> If elements with the same qualified name appear
+ 	   as children of both the input and output elements, then
+ 	   they MUST both be declared using the same type.</p></li>
+ 	
+ 	   <li><p>The input or output sequence MUST NOT contain
+ 	   multiple children elements declared with the same
+ 	   name.</p></li>
+ 	
+ 	  </ul>
+     <div class="div4">
        
! <h5><a name="InterfaceOperation_RPC_Signature_Definition"></a>2.4.2.1 <code>wrpc:signature</code>  Extension</h5>
! 	
! 	<p>The <code>wrpc:signature</code>  extension AII MAY be be used in conjunction with
! 	the RPC style to describe the exact signature of the function represented
! 	by an operation that uses the RPC style.</p>
!     
! 	<p>When present, the <code>wrpc:signature</code>  extension contributes the following
! 	property to the interface operation component it is applied to:</p>
!        <ul>
! 	<li><p>{rpc-signature} A (possibly empty) list of pairs <em>(q, t)</em> whose
! 	first component is of type <em>xs:QName</em> (as defined by [<cite><a href="#XMLNS">XML Namespaces</a></cite>])
! 	and whose second component is of type <em>xs:Token</em>
! 	(as defined by [<cite><a href="#XMLNS">XML Namespaces</a></cite>]). Values for the second component MUST be
! 	chosen among the following four:
! 	"#in", "#out", "#inout" "#return".</p></li>
! 	
! 	</ul>
! 	<p>
! 	The value of the {rpc-signature} property MUST satisfy the following conditions:
! 	</p>
! 	<ul>
! 	  <li><p>The value of the first component of each pair <em>(q, t)</em> MUST
! 	  be unique within the list.</p></li>
! 	  <li><p>For each child element of the input and output messages of the operation,
! 	  a pair <em>(q, t)</em> whose first component <em>q</em> is equal to
! 	  the qualified name of that element MUST be present in the list, with the caveat
! 	  that elements that appear with cardinality greater than one MUST be treated as
! 	  as a single element.</p></li>
! 	  <li><p>For each pair <em>(q, #in)</em>, there MUST be a child element of the
! 	  input element with a name of <em>q</em> and there MUST NOT be a child element
! 	  of the output element with the same name.</p></li>
! 	  <li><p>For each pair <em>(q, #out)</em>, there MUST be a child element of the
! 	  output element with a name of <em>q</em> and there MUST NOT be a child element
! 	  of the input element with the same name.</p></li>
! 	  <li><p>For each pair <em>(q, #inout)</em>, there MUST be a child element of the
! 	  input element with a name of <em>q</em> and there MUST be a child element
! 	  of the output element with the same name. Furthermore, those two elements MUST
! 	  have the same type.</p></li>
! 	  <li><p>For each pair <em>(q, #return)</em>, there MUST be a child element of the
! 	  output element with a name of <em>q</em> and there MUST NOT be a child element
! 	  of the input element with the same name.</p></li>
! 	</ul>
! 	<p>
! 	The function signature defined by a <code>wrpc:signature</code>  extension is
! 	determined as follows:
! 	<ol>
! 	  <li><p>Start with the value of the {rpc-signature} property, a (possibly empty)
! 	  list of pairs of this form:</p>
! 	  <p>&nbsp;&nbsp;&nbsp;&nbsp;<em>[(q0, t0), (q1, t1), ...]</em></p></li>
! 	  <li><p>Filter the elements of this list into two lists, the first one <em>(L1)</em>
! 	     comprising pairs
! 	     whose <em>t</em> component is one of <em>{#in, #out, #inout}</em>,
! 	     the second <em>(L2)</em> pairs
! 	     whose <em>t</em> component is <em>#return</em>.</p>
! 	     <p>For ease of visualization, let's denote the two lists as</p>
! 	     <p>&nbsp;&nbsp;&nbsp;&nbsp;(L1)&nbsp;&nbsp;&nbsp;&nbsp;<em>[(a0, u0), (a1, u1),...]</em></p>
! 	     <p>and</p>
! 	     <p>&nbsp;&nbsp;&nbsp;&nbsp;(L2)&nbsp;&nbsp;&nbsp;&nbsp;<em>[(r0, #return), (r1, #return),...]</em></p>
! 	     <p>respectively.</p></li>
! 	  <li><p>Then the formal signature of the function is</p>
! 	     <p>&nbsp;&nbsp;&nbsp;&nbsp;<em>f([d0] a0, [d1] a1, ...) =&gt; (r0, r1, ...)</em></p>
! 	     <p>i.e.</p>
! 	     <p>
! 	       <ul>
! 		 <li><p>the list of formal arguments to the function is <em>[a0, a1, ...]</em>;
! 		 </p></li>
! 		 <li><p>the direction of each formal argument <em>a</em> is one of
! 		 <em>[in]</em>, <em>[out]</em>, <em>[inout]</em>,
! 		 determined according to the value of its corresponding <em>u</em> token;
! 		 </p></li>
! 		 <li><p>the list of formal return parameters of the function is
! 		   <em>[r0, r1, ...]</em>;</p></li>
! 		 <li><p>each formal argument and formal return parameter is typed
! 		 according to the type of the child element identified by it
! 		 (unique per the conditions given above).</p></li>
! 	       </ul>
! 	     </p>
! 	    </li>
! 	</ol>
! 	</p>
! 	</div>
! 
!       <div class="div4">
!         
! <h5><a name="InterfaceOperation_RPC_Signature_XMLRep"></a>2.4.2.2 XML Representation of the <code>wrpc:signature</code>  Extension</h5>
!           <p>
! 	  The XML representation for the RPC signature extension is an
! 	  <em>attribute information item</em> with the following Infoset properties:
! 	  </p>
! 	  <ul>
! 	      <li><p>A [local name] of <code>signature</code> </p></li>
! 	      <li><p>A [namespace name] of "http://www.w3.org/@@@@/@@/wsdl/rpc"</p></li>
! 	  </ul>
! 	  <p>
! 	  The type of the <code>name</code>  <em>attribute information item</em> is a list type whose item type is
! 	  the union of the <em>xs:QName</em> type and the subtype of
! 	  the <em>xs:Token</em> type restricted to the following
! 	  four values: "#in", "#out", "#inout",
! 	  "#return". See <a href="#rpc-signature-xsd">Example 2-1</a> for
! 	  a definition of this type.
! 	  </p>
! 	  <p>Additionally, each even-numbered item (0, 2, 4, ...) in the list
! 	  MUST be of type <em>xs:QName</em> and each odd-numbered item (1, 3, 5, ...)
! 	  in the list MUST be of type <em>xs:Token</em>.
! 	  </p>
! 	  <p></p>
!           <p>
! 	    <div class="exampleOuter">
! 	    <p class="exampleHead" style="text-align: left"><a name="rpc-signature-xsd"></a><i><span>Example 2-1. </span>Definition of the wrpc:signature extension</i></p>
! 	    <div class="exampleInner"><pre>
! &lt;xs:attribute name="signature" type="wrpc:signatureType"/&gt;
! 
! &lt;xs:simpleType name="signatureType"&gt;
!   &lt;xs:list itemType="wrpc:signatureItemType"/&gt;
! &lt;/xs:simpleType&gt;
! 
! &lt;xs:simpleType name="signatureItemType"&gt;
!   &lt;xs:union memberTypes="wrpc:directionToken xsd:QName"/&gt;
! &lt;/xs:simpleType&gt;
! 
! &lt;xs:simpleType name="directionToken"&gt;
!   &lt;xs:restriction base="xs:token"&gt;
!     &lt;xs:enumeration value="#in"/&gt;
!     &lt;xs:enumeration value="#out"/&gt;
!     &lt;xs:enumeration value="#inout"/&gt;
!     &lt;xs:enumeration value="#return"/&gt;
!   &lt;/xs:restriction&gt;
! &lt;/xs:simpleType&gt;
! 	  
! 	   </pre></div>
! 	   </div>
!           </p>
!       </div>
! 
!     <div class="div4">
! 	  
! <h5><a name="InterfaceOperation_RPC_Signature_Mapping"></a>2.4.2.3 <code>wrpc:signature </code> Extension Mapping To Properties of an
! 	  Interface Operation Component</h5>
! 
! 	  <p>A <code>wrpc:signature</code>  extension <em>attribute information item</em> is mapped to the following
! 	  property of the Interface Operation component (see <a href="#InterfaceOperation_details"><b>2.4.1 The Interface Operation Component</b></a>) defined by its [owner].</p>
! 
! 	  <a name="tab_InterfaceOperation_RPC_Signature_Mapping"></a><br><table border="1">
! 	    <caption>Table 2-4. Mapping of a <code>wrpc:signature</code>  Extension to Interface Operation Component Properties</caption>
! 	    <tbody>
! 		  <tr>
! 		    <th rowspan="1" colspan="1">Property</th>
! 		    <th rowspan="1" colspan="1">Mapping</th>
! 		  </tr>
! 		  <tr>
! 		    <td rowspan="1" colspan="1">{rpc-signature}</td>
! 			<td rowspan="1" colspan="1"> A list of <em>(xs:QName, xs:Token)</em> pairs formed
! 			by grouping the items present in the actual value of the
! 			<code>wrpc:signature</code>  <em>attribute information item</em> in the order in which they appear
! 			there.</td>
! 		  </tr>
! 		</tbody>
! 	  </table><br>
! 
!     </div>
!       
!     </div>
! 
!     <div class="div3">
!       
! <h4><a name="InterfaceOperation_XMLRep"></a>2.4.3 XML Representation of Interface Operation Component</h4>
  
  <div class="exampleInner"><pre>&lt;definitions&gt;
***************
*** 1285,1289 ****
            name="<em>xs:NCName</em>" 
            pattern="<em>xs:anyURI</em>"
!           style="<em>xs:anyURI</em>"? 
            safe="<em>xs:boolean</em>"? &gt;
        &lt;documentation /&gt;?
--- 1517,1521 ----
            name="<em>xs:NCName</em>" 
            pattern="<em>xs:anyURI</em>"
!           style="<em>list of xs:anyURI</em>"? 
            safe="<em>xs:boolean</em>"? &gt;
        &lt;documentation /&gt;?
***************
*** 1311,1315 ****
  		  <p>
  		  A REQUIRED <code>name</code>  <em>attribute information item</em> 
! 		  as described below in <a href="#Interfaceoperation_name_attribute"><b>2.4.2.1 name attribute information item with operation [owner]</b></a>.
  		  </p>
  		</li>
--- 1543,1547 ----
  		  <p>
  		  A REQUIRED <code>name</code>  <em>attribute information item</em> 
! 		  as described below in <a href="#Interfaceoperation_name_attribute"><b>2.4.3.1 name attribute information item with operation [owner]</b></a>.
  		  </p>
  		</li>
***************
*** 1317,1321 ****
  		  <p>
  		  A REQUIRED <code>pattern</code>  <em>attribute information item</em> 
! 		  as described below in <a href="#Interfaceoperation_pattern_attribute"><b>2.4.2.2 pattern attribute information item with operation [owner]</b></a>.
  		  </p>
  		</li>
--- 1549,1553 ----
  		  <p>
  		  A REQUIRED <code>pattern</code>  <em>attribute information item</em> 
! 		  as described below in <a href="#Interfaceoperation_pattern_attribute"><b>2.4.3.2 pattern attribute information item with operation [owner]</b></a>.
  		  </p>
  		</li>
***************
*** 1323,1327 ****
  		  <p>
  		  An OPTIONAL <code>style</code>  <em>attribute information item</em> as
! 		  described below in <a href="#InterfaceOperation_style_attribute"><b>2.4.2.3 style attribute information item with operation [owner]</b></a>.
  		  </p>
  		</li>
--- 1555,1559 ----
  		  <p>
  		  An OPTIONAL <code>style</code>  <em>attribute information item</em> as
! 		  described below in <a href="#InterfaceOperation_style_attribute"><b>2.4.3.3 style attribute information item with operation [owner]</b></a>.
  		  </p>
  		</li>
***************
*** 1329,1333 ****
  		  <p>
  		  An OPTIONAL <code>safe</code>  <em>attribute information item</em> as
! 		  described below in <a href="#InterfaceOperation_safe_attribute"><b>2.4.2.4 safe attribute information item with operation [owner]</b></a>.
  		  </p>
  		</li>
--- 1561,1565 ----
  		  <p>
  		  An OPTIONAL <code>safe</code>  <em>attribute information item</em> as
! 		  described below in <a href="#InterfaceOperation_safe_attribute"><b>2.4.3.4 safe attribute information item with operation [owner]</b></a>.
  		  </p>
  		</li>
***************
*** 1390,1394 ****
        <div class="div4">
          
! <h5><a name="Interfaceoperation_name_attribute"></a>2.4.2.1 <code>name</code>  <em>attribute information item</em> with <code>operation</code>  [owner]</h5>
  	    <p>
  		The <code>name</code>  <em>attribute information item</em> identifies a given <code>operation</code> 
--- 1622,1626 ----
        <div class="div4">
          
! <h5><a name="Interfaceoperation_name_attribute"></a>2.4.3.1 <code>name</code>  <em>attribute information item</em> with <code>operation</code>  [owner]</h5>
  	    <p>
  		The <code>name</code>  <em>attribute information item</em> identifies a given <code>operation</code> 
***************
*** 1410,1414 ****
        <div class="div4">
          
! <h5><a name="Interfaceoperation_pattern_attribute"></a>2.4.2.2 <code>pattern</code>  <em>attribute information item</em> with <code>operation</code>  [owner]</h5>
  	    <p>
  		The <code>pattern</code>  <em>attribute information item</em> identifies the message
--- 1642,1646 ----
        <div class="div4">
          
! <h5><a name="Interfaceoperation_pattern_attribute"></a>2.4.3.2 <code>pattern</code>  <em>attribute information item</em> with <code>operation</code>  [owner]</h5>
  	    <p>
  		The <code>pattern</code>  <em>attribute information item</em> identifies the message
***************
*** 1430,1434 ****
        <div class="div4">
          
! <h5><a name="InterfaceOperation_style_attribute"></a>2.4.2.3 <code>style</code>  <em>attribute information item</em> with <code>operation</code>  [owner]</h5>
  
  	    <p>The <code>style</code>  <em>attribute information item</em> indicates the rules that
--- 1662,1666 ----
        <div class="div4">
          
! <h5><a name="InterfaceOperation_style_attribute"></a>2.4.3.3 <code>style</code>  <em>attribute information item</em> with <code>operation</code>  [owner]</h5>
  
  	    <p>The <code>style</code>  <em>attribute information item</em> indicates the rules that
***************
*** 1446,1450 ****
  
              <p> The type of the <code>style</code>  <em>attribute information item</em> is
!             <em>xs:anyURI</em>.  </p>
  
        </div>
--- 1678,1682 ----
  
              <p> The type of the <code>style</code>  <em>attribute information item</em> is
!             <em>list of xs:anyURI</em>.  </p>
  
        </div>
***************
*** 1452,1456 ****
        <div class="div4">
          
! <h5><a name="InterfaceOperation_safe_attribute"></a>2.4.2.4 <code>safe</code>  <em>attribute information item</em> with <code>operation</code>  [owner]</h5>
  
  	    <p>The <code>safe</code>  <em>attribute information item</em> indicates whether the operation
--- 1684,1688 ----
        <div class="div4">
          
! <h5><a name="InterfaceOperation_safe_attribute"></a>2.4.3.4 <code>safe</code>  <em>attribute information item</em> with <code>operation</code>  [owner]</h5>
  
  	    <p>The <code>safe</code>  <em>attribute information item</em> indicates whether the operation
***************
*** 1474,1487 ****
      <div class="div3">
  	  
! <h4><a name="InterfaceOperation_Mapping"></a>2.4.3 Mapping Interface Operation's XML Representation to
  	  Component Properties</h4>
  
  	  <p>The mapping between the properties of the Interface
  	  Operation component (see <a href="#InterfaceOperation_details"><b>2.4.1 The Interface Operation Component</b></a>) and the XML
! 	  Representation of the <code>operation</code>  <em>element information item</em> (see <a href="#InterfaceOperation_XMLRep"><b>2.4.2 XML Representation of Interface Operation Component</b></a>) is as described in
! 	  <a href="#tab_InterfaceOperation_Mapping">Table 2-4</a>.  </p>
  
  	  <a name="tab_InterfaceOperation_Mapping"></a><br><table border="1">
! 	    <caption>Table 2-4. Mapping between Interface Operation Component Properties and XML Representation</caption>
  	    <tbody>
  		  <tr>
--- 1706,1719 ----
      <div class="div3">
  	  
! <h4><a name="InterfaceOperation_Mapping"></a>2.4.4 Mapping Interface Operation's XML Representation to
  	  Component Properties</h4>
  
  	  <p>The mapping between the properties of the Interface
  	  Operation component (see <a href="#InterfaceOperation_details"><b>2.4.1 The Interface Operation Component</b></a>) and the XML
! 	  Representation of the <code>operation</code>  <em>element information item</em> (see <a href="#InterfaceOperation_XMLRep"><b>2.4.3 XML Representation of Interface Operation Component</b></a>) is as described in
! 	  <a href="#tab_InterfaceOperation_Mapping">Table 2-5</a>.  </p>
  
  	  <a name="tab_InterfaceOperation_Mapping"></a><br><table border="1">
! 	    <caption>Table 2-5. Mapping between Interface Operation Component Properties and XML Representation</caption>
  	    <tbody>
  		  <tr>
***************
*** 1559,1788 ****
      </div>
      
-     <div class="div3">
-     	
- <h4><a name="RPCStyle"></a>2.4.4 RPC Style</h4>
- 	
- 	 <p>The RPC style is selected by assigning to an Interface
- 	 Operation component's {style} property the value
- 	 <em>http://www.w3.org/@@@@/@@/wsdl/style/rpc</em>.</p>
- 	
- 	 <p>The RPC style MUST NOT be used for Interface Operation
- 	 components whose {message exchange pattern} property has a
- 	 value other than 'http://www.w3.org/@@@@/@@/wsdl/in-only' or 'http://www.w3.org/@@@@/@@/wsdl/in-out'.</p>
- 	
- 	 <p>Use of this value indicates that XML Schema [<cite><a href="#XMLSchemaP1">XML Schema: Structures</a></cite>] was used to define the schemas of the
- 	 {element} properties of all {message reference} components of
- 	 the Interface Operation component. Those schemas MUST adhere
- 	 to the rules below.</p>
- 	
- 	 <p>Note that if the Interface Operation component uses the
- 	 {message exchange pattern} 'http://www.w3.org/@@@@/@@/wsdl/in-only' then there is
- 	 no output element and hence the rules which refer to the
- 	 output element do not apply.</p>
- 	
- 	 <ul>
- 	
- 	   <li><p> The content model of input and output {element}
- 	   elements are defined using a complex type that contains a
- 	   sequence from XML Schema.</p></li>
- 	
- 	   <li><p> The sequence MUST only contain elements. It
- 	   MUST NOT contain other structures such as
- 	   xs:choice.</p></li>
- 	
- 	   <li><p>The sequence MUST contain only local element
- 	   children. Note that these child elements MAY contain the
- 	   following attributes: nillable, minOccurs and
- 	   maxOccurs.</p></li>
- 	
- 	   <li><p>The LocalPart of input element's QName MUST be
- 	   the same as the Interface operation component's
- 	   name.</p></li>
- 	
- 	   <li><p> The LocalPart of the output element's QName is
- 	   obtained by concatenating the name of the operation and
- 	   the string value "Response",
- 	   i.e. concat(operation/@name,"Response").</p></li>
- 	
- 	   <li><p>Input and output elements MUST both be in the
- 	   same namespace.</p></li>
- 	
- 	   <li><p> The complex type that defines the body of an
- 	   input or an output element MUST NOT contain any
- 	   attributes.</p></li>
- 	
- 	   <li><p> If elements with the same qualified name appear
- 	   as children of both the input and output elements, then
- 	   they MUST both be declared using the same type.</p></li>
- 	
- 	   <li><p>The input or output sequence MUST NOT contain
- 	   multiple children elements declared with the same
- 	   name.</p></li>
- 	
- 	  </ul>
-     <div class="div4">
-       
- <h5><a name="InterfaceOperation_RPC_Signature_Definition"></a>2.4.4.1 <code>wrpc:signature</code>  Extension</h5>
- 	
- 	<p>The <code>wrpc:signature</code>  extension AII MAY be be used in conjunction with
- 	the RPC style to describe the exact signature of the function represented
- 	by an operation that uses the RPC style.</p>
-     
- 	<p>When present, the <code>wrpc:signature</code>  extension contributes the following
- 	property to the interface operation component it is applied to:</p>
-        <ul>
- 	<li><p>{rpc-signature} A (possibly empty) list of pairs <em>(q, t)</em> whose
- 	first component is of type <em>xs:QName</em> (as defined by [<cite><a href="#XMLNS">XML Namespaces</a></cite>])
- 	and whose second component is of type <em>xs:Token</em>
- 	(as defined by [<cite><a href="#XMLNS">XML Namespaces</a></cite>]). Values for the second component MUST be
- 	chosen among the following four:
- 	"#in", "#out", "#inout" "#return".</p></li>
- 	
- 	</ul>
- 	<p>
- 	The value of the {rpc-signature} property MUST satisfy the following conditions:
- 	</p>
- 	<ul>
- 	  <li><p>The value of the first component of each pair <em>(q, t)</em> MUST
- 	  be unique within the list.</p></li>
- 	  <li><p>For each child element of the input and output messages of the operation,
- 	  a pair <em>(q, t)</em> whose first component <em>q</em> is equal to
- 	  the qualified name of that element MUST be present in the list, with the caveat
- 	  that elements that appear with cardinality greater than one MUST be treated as
- 	  as a single element.</p></li>
- 	  <li><p>For each pair <em>(q, #in)</em>, there MUST be a child element of the
- 	  input element with a name of <em>q</em> and there MUST NOT be a child element
- 	  of the output element with the same name.</p></li>
- 	  <li><p>For each pair <em>(q, #out)</em>, there MUST be a child element of the
- 	  output element with a name of <em>q</em> and there MUST NOT be a child element
- 	  of the input element with the same name.</p></li>
- 	  <li><p>For each pair <em>(q, #inout)</em>, there MUST be a child element of the
- 	  input element with a name of <em>q</em> and there MUST be a child element
- 	  of the output element with the same name. Furthermore, those two elements MUST
- 	  have the same type.</p></li>
- 	  <li><p>For each pair <em>(q, #return)</em>, there MUST be a child element of the
- 	  output element with a name of <em>q</em> and there MUST NOT be a child element
- 	  of the input element with the same name.</p></li>
- 	</ul>
- 	<p>
- 	The function signature defined by a <code>wrpc:signature</code>  extension is
- 	determined as follows:
- 	<ol>
- 	  <li><p>Start with the value of the {rpc-signature} property, a (possibly empty)
- 	  list of pairs of this form:</p>
- 	  <p>&nbsp;&nbsp;&nbsp;&nbsp;<em>[(q0, t0), (q1, t1), ...]</em></p></li>
- 	  <li><p>Filter the elements of this list into two lists, the first one <em>(L1)</em>
- 	     comprising pairs
- 	     whose <em>t</em> component is one of <em>{#in, #out, #inout}</em>,
- 	     the second <em>(L2)</em> pairs
- 	     whose <em>t</em> component is <em>#return</em>.</p>
- 	     <p>For ease of visualization, let's denote the two lists as</p>
- 	     <p>&nbsp;&nbsp;&nbsp;&nbsp;(L1)&nbsp;&nbsp;&nbsp;&nbsp;<em>[(a0, u0), (a1, u1),...]</em></p>
- 	     <p>and</p>
- 	     <p>&nbsp;&nbsp;&nbsp;&nbsp;(L2)&nbsp;&nbsp;&nbsp;&nbsp;<em>[(r0, #return), (r1, #return),...]</em></p>
- 	     <p>respectively.</p></li>
- 	  <li><p>Then the formal signature of the function is</p>
- 	     <p>&nbsp;&nbsp;&nbsp;&nbsp;<em>f([d0] a0, [d1] a1, ...) =&gt; (r0, r1, ...)</em></p>
- 	     <p>i.e.</p>
- 	     <p>
- 	       <ul>
- 		 <li><p>the list of formal arguments to the function is <em>[a0, a1, ...]</em>;
- 		 </p></li>
- 		 <li><p>the direction of each formal argument <em>a</em> is one of
- 		 <em>[in]</em>, <em>[out]</em>, <em>[inout]</em>,
- 		 determined according to the value of its corresponding <em>u</em> token;
- 		 </p></li>
- 		 <li><p>the list of formal return parameters of the function is
- 		   <em>[r0, r1, ...]</em>;</p></li>
- 		 <li><p>each formal argument and formal return parameter is typed
- 		 according to the type of the child element identified by it
- 		 (unique per the conditions given above).</p></li>
- 	       </ul>
- 	     </p>
- 	    </li>
- 	</ol>
- 	</p>
- 	</div>
- 
-       <div class="div4">
-         
- <h5><a name="InterfaceOperation_RPC_Signature_XMLRep"></a>2.4.4.2 XML Representation of the <code>wrpc:signature</code>  Extension</h5>
-           <p>
- 	  The XML representation for the RPC signature extension is an
- 	  <em>attribute information item</em> with the following Infoset properties:
- 	  </p>
- 	  <ul>
- 	      <li><p>A [local name] of <code>signature</code> </p></li>
- 	      <li><p>A [namespace name] of "http://www.w3.org/@@@@/@@/wsdl/rpc"</p></li>
- 	  </ul>
- 	  <p>
- 	  The type of the <code>name</code>  <em>attribute information item</em> is a list type whose item type is
- 	  the union of the <em>xs:QName</em> type and the subtype of
- 	  the <em>xs:Token</em> type restricted to the following
- 	  four values: "#in", "#out", "#inout",
- 	  "#return". See <a href="#rpc-signature-xsd">Example 2-1</a> for
- 	  a definition of this type.
- 	  </p>
- 	  <p>Additionally, each even-numbered item (0, 2, 4, ...) in the list
- 	  MUST be of type <em>xs:QName</em> and each odd-numbered item (1, 3, 5, ...)
- 	  in the list MUST be of type <em>xs:Token</em>.
- 	  </p>
- 	  <p></p>
-           <p>
- 	    <div class="exampleOuter">
- 	    <p class="exampleHead" style="text-align: left"><a name="rpc-signature-xsd"></a><i><span>Example 2-1. </span>Definition of the wrpc:signature extension</i></p>
- 	    <div class="exampleInner"><pre>
- &lt;xs:attribute name="signature" type="wrpc:signatureType"/&gt;
- 
- &lt;xs:simpleType name="signatureType"&gt;
-   &lt;xs:list itemType="wrpc:signatureItemType"/&gt;
- &lt;/xs:simpleType&gt;
- 
- &lt;xs:simpleType name="signatureItemType"&gt;
-   &lt;xs:union memberTypes="wrpc:directionToken xsd:QName"/&gt;
- &lt;/xs:simpleType&gt;
- 
- &lt;xs:simpleType name="directionToken"&gt;
-   &lt;xs:restriction base="xs:token"&gt;
-     &lt;xs:enumeration value="#in"/&gt;
-     &lt;xs:enumeration value="#out"/&gt;
-     &lt;xs:enumeration value="#inout"/&gt;
-     &lt;xs:enumeration value="#return"/&gt;
-   &lt;/xs:restriction&gt;
- &lt;/xs:simpleType&gt;
- 	  
- 	   </pre></div>
- 	   </div>
-           </p>
-       </div>
- 
-     <div class="div4">
- 	  
- <h5><a name="InterfaceOperation_RPC_Signature_Mapping"></a>2.4.4.3 <code>wrpc:signature </code> Extension Mapping To Properties of an
- 	  Interface Operation Component</h5>
- 
- 	  <p>A <code>wrpc:signature</code>  extension <em>attribute information item</em> is mapped to the following
- 	  property of the Interface Operation component (see <a href="#InterfaceOperation_details"><b>2.4.1 The Interface Operation Component</b></a>) defined by its [owner].</p>
- 
- 	  <a name="tab_InterfaceOperation_RPC_Signature_Mapping"></a><br><table border="1">
- 	    <caption>Table 2-5. Mapping of a <code>wrpc:signature</code>  Extension to Interface Operation Component Properties</caption>
- 	    <tbody>
- 		  <tr>
- 		    <th rowspan="1" colspan="1">Property</th>
- 		    <th rowspan="1" colspan="1">Mapping</th>
- 		  </tr>
- 		  <tr>
- 		    <td rowspan="1" colspan="1">{rpc-signature}</td>
- 			<td rowspan="1" colspan="1"> A list of <em>(xs:QName, xs:Token)</em> pairs formed
- 			by grouping the items present in the actual value of the
- 			<code>wrpc:signature</code>  <em>attribute information item</em> in the order in which they appear
- 			there.</td>
- 		  </tr>
- 		</tbody>
- 	  </table><br>
- 
-     </div>
-       
-     </div>
    </div>
  
--- 1791,1794 ----
***************
*** 2949,2953 ****
  		    <th rowspan="1" colspan="1">Mapping</th>
  		  </tr>
- 
  		  <tr>
  		    <td rowspan="1" colspan="1">{name}</td>
--- 2955,2958 ----
***************
*** 5398,5402 ****
    &lt;/types&gt;
  
!   &lt;interface name="<em>xs:NCName</em>" extends="<em>list of xs:QName</em>"? styleDefault="<em>xs:anyURI</em>"? &gt;
      &lt;documentation /&gt;?
  
--- 5403,5407 ----
    &lt;/types&gt;
  
!   &lt;interface name="<em>xs:NCName</em>" extends="<em>list of xs:QName</em>"? styleDefault="<em>list of xs:anyURI</em>"? &gt;
      &lt;documentation /&gt;?
  
***************
*** 5405,5409 ****
      &lt;/fault&gt;*
  
!     &lt;operation name="<em>xs:NCName</em>" pattern="<em>xs:anyURI</em>" style="<em>xs:anyURI</em>"? safe="<em>xs:boolean</em>"? &gt;
        &lt;documentation /&gt;?
  
--- 5410,5414 ----
      &lt;/fault&gt;*
  
!     &lt;operation name="<em>xs:NCName</em>" pattern="<em>xs:anyURI</em>" style="<em>list of xs:anyURI</em>"? safe="<em>xs:boolean</em>"? &gt;
        &lt;documentation /&gt;?
  
***************
*** 6383,6386 ****
--- 6388,6396 ----
            <td rowspan="1" colspan="1">20040702</td>
            <td rowspan="1" colspan="1">SW</td>
+           <td rowspan="1" colspan="1">Made operation/@style be a list of URIs.</td>
+         </tr>
+         <tr>
+           <td rowspan="1" colspan="1">20040702</td>
+           <td rowspan="1" colspan="1">SW</td>
            <td rowspan="1" colspan="1">Had forgotten to map to the {type} property of binding.</td>
          </tr>

Index: wsdl20.xml
===================================================================
RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20.xml,v
retrieving revision 1.94
retrieving revision 1.95
diff -C2 -d -r1.94 -r1.95
*** wsdl20.xml	2 Jul 2004 06:09:55 -0000	1.94
--- wsdl20.xml	2 Jul 2004 07:02:22 -0000	1.95
***************
*** 783,789 ****
  		<p>
  		The type of the <att>styleDefault</att> &AII; is
! 		<emph>xs:anyURI</emph>. Moreover, the value of the
! 		<att>styleDefault</att> &AII;, if present, MUST be
! 		an absolute URI (see <bibref ref="RFC2396"/>).
  		</p>
  
--- 783,789 ----
  		<p>
  		The type of the <att>styleDefault</att> &AII; is
! 		<emph>list of xs:anyURI</emph>. Moreover, the value of the
! 		<att>styleDefault</att> &AII;, if present, MUST contain
! 		absolute URIs (see <bibref ref="RFC2396"/>).
  		</p>
  
***************
*** 1184,1192 ****
  	    sends. (See <specref ref="FaultReference"/>.)</p></item>
  
!             <item><p> {style} A URI identifying the rules that were
!             used to construct the {element} properties of {message
!             references}. (See <specref
!             ref="InterfaceOperationStyle"/>.) This URI MUST be an
!             absolute URI (see <bibref ref="RFC2396"/>).</p></item>
  
              <item><p>{safety} A boolean indicating whether the
--- 1184,1192 ----
  	    sends. (See <specref ref="FaultReference"/>.)</p></item>
  
!             <item><p> {style} A list of URIs identifying the rules
!             that were used to construct the {element} properties of
!             {message references}. (See <specref
!             ref="InterfaceOperationStyle"/>.) These URIs MUST be
!             absolute URIs (see <bibref ref="RFC2396"/>).</p></item>
  
              <item><p>{safety} A boolean indicating whether the
***************
*** 1256,1268 ****
  
          <p>If the {style} property of an Interface Operation component
!         has a value then that value (a URI) implies the rules that
          were used to define the {element} properties (or other
          property which defines the content of the message properties;
          see <specref ref="other-types"/>) of <emph>all</emph> the
  	Message Reference components which are members of the {message
!         references} property of that component.  Note that the property MAY
!         not have any value. If this property has a given value, then
!         the rules implied by that value (such as rules that govern the
!         schemas) MUST be followed or it is an error.</p>
  
          <p>This specification defines the following pre-defined 
--- 1256,1273 ----
  
          <p>If the {style} property of an Interface Operation component
!         has a value then that value (a list of URIs) implies the rules that
          were used to define the {element} properties (or other
          property which defines the content of the message properties;
          see <specref ref="other-types"/>) of <emph>all</emph> the
  	Message Reference components which are members of the {message
!         references} property of that component.</p>
! 
!         <p>Note that the property MAY not have any value. If this
!         property has a given value, then the rules implied by that
!         value (such as rules that govern the schemas) MUST be followed
!         or it is an error. If list of QNames has more than one item in
!         it, then the order of the URIs is NOT significant; the rules
!         implied by ALL the URIs must be adhered to by the content
!         definitions.</p>
  
          <p>This specification defines the following pre-defined 
***************
*** 1280,1283 ****
--- 1285,1513 ----
      </div3>
  
+     <div3 id="RPCStyle">
+     	<head>RPC Style</head>
+ 	
+ 	 <p>The RPC style is selected by assigning to an Interface
+ 	 Operation component's {style} property the value
+ 	 <emph>&RPC-STYLE;</emph>.</p>
+ 	
+ 	 <p>The RPC style MUST NOT be used for Interface Operation
+ 	 components whose {message exchange pattern} property has a
+ 	 value other than '&wsdl-ns;/in-only' or '&wsdl-ns;/in-out'.</p>
+ 	
+ 	 <p>Use of this value indicates that XML Schema <bibref
+ 	 ref="XMLSchemaP1"/> was used to define the schemas of the
+ 	 {element} properties of all {message reference} components of
+ 	 the Interface Operation component. Those schemas MUST adhere
+ 	 to the rules below.</p>
+ 	
+ 	 <p>Note that if the Interface Operation component uses the
+ 	 {message exchange pattern} '&wsdl-ns;/in-only' then there is
+ 	 no output element and hence the rules which refer to the
+ 	 output element do not apply.</p>
+ 	
+ 	 <ulist>
+ 	
+ 	   <item><p> The content model of input and output {element}
+ 	   elements are defined using a complex type that contains a
+ 	   sequence from XML Schema.</p></item>
+ 	
+ 	   <item><p> The sequence MUST only contain elements. It
+ 	   MUST NOT contain other structures such as
+ 	   xs:choice.</p></item>
+ 	
+ 	   <item><p>The sequence MUST contain only local element
+ 	   children. Note that these child elements MAY contain the
+ 	   following attributes: nillable, minOccurs and
+ 	   maxOccurs.</p></item>
+ 	
+ 	   <item><p>The LocalPart of input element's QName MUST be
+ 	   the same as the Interface operation component's
+ 	   name.</p></item>
+ 	
+ 	   <item><p> The LocalPart of the output element's QName is
+ 	   obtained by concatenating the name of the operation and
+ 	   the string value "Response",
+ 	   i.e. concat(operation/@name,"Response").</p></item>
+ 	
+ 	   <item><p>Input and output elements MUST both be in the
+ 	   same namespace.</p></item>
+ 	
+ 	   <item><p> The complex type that defines the body of an
+ 	   input or an output element MUST NOT contain any
+ 	   attributes.</p></item>
+ 	
+ 	   <item><p> If elements with the same qualified name appear
+ 	   as children of both the input and output elements, then
+ 	   they MUST both be declared using the same type.</p></item>
+ 	
+ 	   <item><p>The input or output sequence MUST NOT contain
+ 	   multiple children elements declared with the same
+ 	   name.</p></item>
+ 	
+ 	  </ulist>
+     <div4 id="InterfaceOperation_RPC_Signature_Definition">
+       <head><att>wrpc:signature</att> Extension</head>
+ 	
+ 	<p>The <att>wrpc:signature</att> extension AII MAY be be used in conjunction with
+ 	the RPC style to describe the exact signature of the function represented
+ 	by an operation that uses the RPC style.</p>
+     
+ 	<p>When present, the <att>wrpc:signature</att> extension contributes the following
+ 	property to the interface operation component it is applied to:</p>
+        <ulist>
+ 	<item><p>{rpc-signature} A (possibly empty) list of pairs <emph>(q, t)</emph> whose
+ 	first component is of type <emph>xs:QName</emph> (as defined by <bibref ref="XMLNS"/>)
+ 	and whose second component is of type <emph>xs:Token</emph>
+ 	(as defined by <bibref ref="XMLNS"/>). Values for the second component MUST be
+ 	chosen among the following four:
+ 	&quot;#in&quot;, &quot;#out&quot;, &quot;#inout&quot; &quot;#return&quot;.</p></item>
+ 	
+ 	</ulist>
+ 	<p>
+ 	The value of the {rpc-signature} property MUST satisfy the following conditions:
+ 	</p>
+ 	<ulist>
+ 	  <item><p>The value of the first component of each pair <emph>(q, t)</emph> MUST
+ 	  be unique within the list.</p></item>
+ 	  <item><p>For each child element of the input and output messages of the operation,
+ 	  a pair <emph>(q, t)</emph> whose first component <emph>q</emph> is equal to
+ 	  the qualified name of that element MUST be present in the list, with the caveat
+ 	  that elements that appear with cardinality greater than one MUST be treated as
+ 	  as a single element.</p></item>
+ 	  <item><p>For each pair <emph>(q, #in)</emph>, there MUST be a child element of the
+ 	  input element with a name of <emph>q</emph> and there MUST NOT be a child element
+ 	  of the output element with the same name.</p></item>
+ 	  <item><p>For each pair <emph>(q, #out)</emph>, there MUST be a child element of the
+ 	  output element with a name of <emph>q</emph> and there MUST NOT be a child element
+ 	  of the input element with the same name.</p></item>
+ 	  <item><p>For each pair <emph>(q, #inout)</emph>, there MUST be a child element of the
+ 	  input element with a name of <emph>q</emph> and there MUST be a child element
+ 	  of the output element with the same name. Furthermore, those two elements MUST
+ 	  have the same type.</p></item>
+ 	  <item><p>For each pair <emph>(q, #return)</emph>, there MUST be a child element of the
+ 	  output element with a name of <emph>q</emph> and there MUST NOT be a child element
+ 	  of the input element with the same name.</p></item>
+ 	</ulist>
+ 	<p>
+ 	The function signature defined by a <att>wrpc:signature</att> extension is
+ 	determined as follows:
+ 	<olist>
+ 	  <item><p>Start with the value of the {rpc-signature} property, a (possibly empty)
+ 	  list of pairs of this form:</p>
+ 	  <p>&nbsp;&nbsp;&nbsp;&nbsp;<emph>[(q0, t0), (q1, t1), ...]</emph></p></item>
+ 	  <item><p>Filter the elements of this list into two lists, the first one <emph>(L1)</emph>
+ 	     comprising pairs
+ 	     whose <emph>t</emph> component is one of <emph>{#in, #out, #inout}</emph>,
+ 	     the second <emph>(L2)</emph> pairs
+ 	     whose <emph>t</emph> component is <emph>#return</emph>.</p>
+ 	     <p>For ease of visualization, let's denote the two lists as</p>
+ 	     <p>&nbsp;&nbsp;&nbsp;&nbsp;(L1)&nbsp;&nbsp;&nbsp;&nbsp;<emph>[(a0, u0), (a1, u1),...]</emph></p>
+ 	     <p>and</p>
+ 	     <p>&nbsp;&nbsp;&nbsp;&nbsp;(L2)&nbsp;&nbsp;&nbsp;&nbsp;<emph>[(r0, #return), (r1, #return),...]</emph></p>
+ 	     <p>respectively.</p></item>
+ 	  <item><p>Then the formal signature of the function is</p>
+ 	     <p>&nbsp;&nbsp;&nbsp;&nbsp;<emph>f([d0] a0, [d1] a1, ...) => (r0, r1, ...)</emph></p>
+ 	     <p>i.e.</p>
+ 	     <p>
+ 	       <ulist>
+ 		 <item><p>the list of formal arguments to the function is <emph>[a0, a1, ...]</emph>;
+ 		 </p></item>
+ 		 <item><p>the direction of each formal argument <emph>a</emph> is one of
+ 		 <emph>[in]</emph>, <emph>[out]</emph>, <emph>[inout]</emph>,
+ 		 determined according to the value of its corresponding <emph>u</emph> token;
+ 		 </p></item>
+ 		 <item><p>the list of formal return parameters of the function is
+ 		   <emph>[r0, r1, ...]</emph>;</p></item>
+ 		 <item><p>each formal argument and formal return parameter is typed
+ 		 according to the type of the child element identified by it
+ 		 (unique per the conditions given above).</p></item>
+ 	       </ulist>
+ 	     </p>
+ 	    </item>
+ 	</olist>
+ 	</p>
+ 	</div4>
+ 
+       <div4 id="InterfaceOperation_RPC_Signature_XMLRep">
+         <head>XML Representation of the <att>wrpc:signature</att> Extension</head>
+           <p>
+ 	  The XML representation for the RPC signature extension is an
+ 	  &AII; with the following Infoset properties:
+ 	  </p>
+ 	  <ulist>
+ 	      <item><p>A [local name] of <att>signature</att></p></item>
+ 	      <item><p>A [namespace name] of &quot;&wsdl-rpc-ns;&quot;</p></item>
+ 	  </ulist>
+ 	  <p>
+ 	  The type of the <att>name</att> &AII; is a list type whose item type is
+ 	  the union of the <emph>xs:QName</emph> type and the subtype of
+ 	  the <emph>xs:Token</emph> type restricted to the following
+ 	  four values: &quot;#in&quot;, &quot;#out&quot;, &quot;#inout&quot;,
+ 	  &quot;#return&quot;. See <specref ref='rpc-signature-xsd'/> for
+ 	  a definition of this type.
+ 	  </p>
+ 	  <p>Additionally, each even-numbered item (0, 2, 4, ...) in the list
+ 	  MUST be of type <emph>xs:QName</emph> and each odd-numbered item (1, 3, 5, ...)
+ 	  in the list MUST be of type <emph>xs:Token</emph>.
+ 	  </p>
+ 	  <p></p>
+           <p>
+ 	    <example id='rpc-signature-xsd'>
+ 	    <head>Definition of the wrpc:signature extension</head>
+ 	    <eg><![CDATA[
+ <xs:attribute name="signature" type="wrpc:signatureType"/>
+ 
+ <xs:simpleType name="signatureType">
+   <xs:list itemType="wrpc:signatureItemType"/>
+ </xs:simpleType>
+ 
+ <xs:simpleType name="signatureItemType">
+   <xs:union memberTypes="wrpc:directionToken xsd:QName"/>
+ </xs:simpleType>
+ 
+ <xs:simpleType name="directionToken">
+   <xs:restriction base="xs:token">
+     <xs:enumeration value="#in"/>
+     <xs:enumeration value="#out"/>
+     <xs:enumeration value="#inout"/>
+     <xs:enumeration value="#return"/>
+   </xs:restriction>
+ </xs:simpleType>
+ ]]>	  
+ 	   </eg>
+ 	   </example>
+           </p>
+       </div4>
+ 
+     <div4 id="InterfaceOperation_RPC_Signature_Mapping">
+ 	  <head><att>wrpc:signature </att>Extension Mapping To Properties of an
+ 	  Interface Operation Component</head>
+ 
+ 	  <p>A <att>wrpc:signature</att> extension &AII; is mapped to the following
+ 	  property of the Interface Operation component (see <specref
+ 	  ref="InterfaceOperation_details"/>) defined by its [owner].</p>
+ 
+ 	  <table border="1" id="tab_InterfaceOperation_RPC_Signature_Mapping">
+ 	    <caption>Mapping of a <att>wrpc:signature</att> Extension to Interface Operation Component Properties</caption>
+ 	    <tbody>
+ 		  <tr>
+ 		    <th>Property</th>
+ 		    <th>Mapping</th>
+ 		  </tr>
+ 		  <tr>
+ 		    <td>{rpc-signature}</td>
+ 			<td> A list of <emph>(xs:QName, xs:Token)</emph> pairs formed
+ 			by grouping the items present in the actual value of the
+ 			<att>wrpc:signature</att> &AII; in the order in which they appear
+ 			there.</td>
+ 		  </tr>
+ 		</tbody>
+ 	  </table>
+ 
+     </div4>
+       
+     </div3>
+ 
      <div3 id="InterfaceOperation_XMLRep">
        <head>XML Representation of Interface Operation Component</head>
***************
*** 1288,1292 ****
            name=&quot;<emph>xs:NCName</emph>&quot; 
            pattern=&quot;<emph>xs:anyURI</emph>&quot;
!           style=&quot;<emph>xs:anyURI</emph>&quot;? 
            safe=&quot;<emph>xs:boolean</emph>&quot;? &gt;
        &lt;documentation /&gt;?
--- 1518,1522 ----
            name=&quot;<emph>xs:NCName</emph>&quot; 
            pattern=&quot;<emph>xs:anyURI</emph>&quot;
!           style=&quot;<emph>list of xs:anyURI</emph>&quot;? 
            safe=&quot;<emph>xs:boolean</emph>&quot;? &gt;
        &lt;documentation /&gt;?
***************
*** 1461,1465 ****
  
              <p> The type of the <att>style</att> &AII; is
!             <emph>xs:anyURI</emph>.  </p>
  
        </div4>
--- 1691,1695 ----
  
              <p> The type of the <att>style</att> &AII; is
!             <emph>list of xs:anyURI</emph>.  </p>
  
        </div4>
***************
*** 1574,1801 ****
      </div3>
      
-     <div3 id="RPCStyle">
-     	<head>RPC Style</head>
- 	
- 	 <p>The RPC style is selected by assigning to an Interface
- 	 Operation component's {style} property the value
- 	 <emph>&RPC-STYLE;</emph>.</p>
- 	
- 	 <p>The RPC style MUST NOT be used for Interface Operation
- 	 components whose {message exchange pattern} property has a
- 	 value other than '&wsdl-ns;/in-only' or '&wsdl-ns;/in-out'.</p>
- 	
- 	 <p>Use of this value indicates that XML Schema <bibref
- 	 ref="XMLSchemaP1"/> was used to define the schemas of the
- 	 {element} properties of all {message reference} components of
- 	 the Interface Operation component. Those schemas MUST adhere
- 	 to the rules below.</p>
- 	
- 	 <p>Note that if the Interface Operation component uses the
- 	 {message exchange pattern} '&wsdl-ns;/in-only' then there is
- 	 no output element and hence the rules which refer to the
- 	 output element do not apply.</p>
- 	
- 	 <ulist>
- 	
- 	   <item><p> The content model of input and output {element}
- 	   elements are defined using a complex type that contains a
- 	   sequence from XML Schema.</p></item>
- 	
- 	   <item><p> The sequence MUST only contain elements. It
- 	   MUST NOT contain other structures such as
- 	   xs:choice.</p></item>
- 	
- 	   <item><p>The sequence MUST contain only local element
- 	   children. Note that these child elements MAY contain the
- 	   following attributes: nillable, minOccurs and
- 	   maxOccurs.</p></item>
- 	
- 	   <item><p>The LocalPart of input element's QName MUST be
- 	   the same as the Interface operation component's
- 	   name.</p></item>
- 	
- 	   <item><p> The LocalPart of the output element's QName is
- 	   obtained by concatenating the name of the operation and
- 	   the string value "Response",
- 	   i.e. concat(operation/@name,"Response").</p></item>
- 	
- 	   <item><p>Input and output elements MUST both be in the
- 	   same namespace.</p></item>
- 	
- 	   <item><p> The complex type that defines the body of an
- 	   input or an output element MUST NOT contain any
- 	   attributes.</p></item>
- 	
- 	   <item><p> If elements with the same qualified name appear
- 	   as children of both the input and output elements, then
- 	   they MUST both be declared using the same type.</p></item>
- 	
- 	   <item><p>The input or output sequence MUST NOT contain
- 	   multiple children elements declared with the same
- 	   name.</p></item>
- 	
- 	  </ulist>
-     <div4 id="InterfaceOperation_RPC_Signature_Definition">
-       <head><att>wrpc:signature</att> Extension</head>
- 	
- 	<p>The <att>wrpc:signature</att> extension AII MAY be be used in conjunction with
- 	the RPC style to describe the exact signature of the function represented
- 	by an operation that uses the RPC style.</p>
-     
- 	<p>When present, the <att>wrpc:signature</att> extension contributes the following
- 	property to the interface operation component it is applied to:</p>
-        <ulist>
- 	<item><p>{rpc-signature} A (possibly empty) list of pairs <emph>(q, t)</emph> whose
- 	first component is of type <emph>xs:QName</emph> (as defined by <bibref ref="XMLNS"/>)
- 	and whose second component is of type <emph>xs:Token</emph>
- 	(as defined by <bibref ref="XMLNS"/>). Values for the second component MUST be
- 	chosen among the following four:
- 	&quot;#in&quot;, &quot;#out&quot;, &quot;#inout&quot; &quot;#return&quot;.</p></item>
- 	
- 	</ulist>
- 	<p>
- 	The value of the {rpc-signature} property MUST satisfy the following conditions:
- 	</p>
- 	<ulist>
- 	  <item><p>The value of the first component of each pair <emph>(q, t)</emph> MUST
- 	  be unique within the list.</p></item>
- 	  <item><p>For each child element of the input and output messages of the operation,
- 	  a pair <emph>(q, t)</emph> whose first component <emph>q</emph> is equal to
- 	  the qualified name of that element MUST be present in the list, with the caveat
- 	  that elements that appear with cardinality greater than one MUST be treated as
- 	  as a single element.</p></item>
- 	  <item><p>For each pair <emph>(q, #in)</emph>, there MUST be a child element of the
- 	  input element with a name of <emph>q</emph> and there MUST NOT be a child element
- 	  of the output element with the same name.</p></item>
- 	  <item><p>For each pair <emph>(q, #out)</emph>, there MUST be a child element of the
- 	  output element with a name of <emph>q</emph> and there MUST NOT be a child element
- 	  of the input element with the same name.</p></item>
- 	  <item><p>For each pair <emph>(q, #inout)</emph>, there MUST be a child element of the
- 	  input element with a name of <emph>q</emph> and there MUST be a child element
- 	  of the output element with the same name. Furthermore, those two elements MUST
- 	  have the same type.</p></item>
- 	  <item><p>For each pair <emph>(q, #return)</emph>, there MUST be a child element of the
- 	  output element with a name of <emph>q</emph> and there MUST NOT be a child element
- 	  of the input element with the same name.</p></item>
- 	</ulist>
- 	<p>
- 	The function signature defined by a <att>wrpc:signature</att> extension is
- 	determined as follows:
- 	<olist>
- 	  <item><p>Start with the value of the {rpc-signature} property, a (possibly empty)
- 	  list of pairs of this form:</p>
- 	  <p>&nbsp;&nbsp;&nbsp;&nbsp;<emph>[(q0, t0), (q1, t1), ...]</emph></p></item>
- 	  <item><p>Filter the elements of this list into two lists, the first one <emph>(L1)</emph>
- 	     comprising pairs
- 	     whose <emph>t</emph> component is one of <emph>{#in, #out, #inout}</emph>,
- 	     the second <emph>(L2)</emph> pairs
- 	     whose <emph>t</emph> component is <emph>#return</emph>.</p>
- 	     <p>For ease of visualization, let's denote the two lists as</p>
- 	     <p>&nbsp;&nbsp;&nbsp;&nbsp;(L1)&nbsp;&nbsp;&nbsp;&nbsp;<emph>[(a0, u0), (a1, u1),...]</emph></p>
- 	     <p>and</p>
- 	     <p>&nbsp;&nbsp;&nbsp;&nbsp;(L2)&nbsp;&nbsp;&nbsp;&nbsp;<emph>[(r0, #return), (r1, #return),...]</emph></p>
- 	     <p>respectively.</p></item>
- 	  <item><p>Then the formal signature of the function is</p>
- 	     <p>&nbsp;&nbsp;&nbsp;&nbsp;<emph>f([d0] a0, [d1] a1, ...) => (r0, r1, ...)</emph></p>
- 	     <p>i.e.</p>
- 	     <p>
- 	       <ulist>
- 		 <item><p>the list of formal arguments to the function is <emph>[a0, a1, ...]</emph>;
- 		 </p></item>
- 		 <item><p>the direction of each formal argument <emph>a</emph> is one of
- 		 <emph>[in]</emph>, <emph>[out]</emph>, <emph>[inout]</emph>,
- 		 determined according to the value of its corresponding <emph>u</emph> token;
- 		 </p></item>
- 		 <item><p>the list of formal return parameters of the function is
- 		   <emph>[r0, r1, ...]</emph>;</p></item>
- 		 <item><p>each formal argument and formal return parameter is typed
- 		 according to the type of the child element identified by it
- 		 (unique per the conditions given above).</p></item>
- 	       </ulist>
- 	     </p>
- 	    </item>
- 	</olist>
- 	</p>
- 	</div4>
- 
-       <div4 id="InterfaceOperation_RPC_Signature_XMLRep">
-         <head>XML Representation of the <att>wrpc:signature</att> Extension</head>
-           <p>
- 	  The XML representation for the RPC signature extension is an
- 	  &AII; with the following Infoset properties:
- 	  </p>
- 	  <ulist>
- 	      <item><p>A [local name] of <att>signature</att></p></item>
- 	      <item><p>A [namespace name] of &quot;&wsdl-rpc-ns;&quot;</p></item>
- 	  </ulist>
- 	  <p>
- 	  The type of the <att>name</att> &AII; is a list type whose item type is
- 	  the union of the <emph>xs:QName</emph> type and the subtype of
- 	  the <emph>xs:Token</emph> type restricted to the following
- 	  four values: &quot;#in&quot;, &quot;#out&quot;, &quot;#inout&quot;,
- 	  &quot;#return&quot;. See <specref ref='rpc-signature-xsd'/> for
- 	  a definition of this type.
- 	  </p>
- 	  <p>Additionally, each even-numbered item (0, 2, 4, ...) in the list
- 	  MUST be of type <emph>xs:QName</emph> and each odd-numbered item (1, 3, 5, ...)
- 	  in the list MUST be of type <emph>xs:Token</emph>.
- 	  </p>
- 	  <p></p>
-           <p>
- 	    <example id='rpc-signature-xsd'>
- 	    <head>Definition of the wrpc:signature extension</head>
- 	    <eg><![CDATA[
- <xs:attribute name="signature" type="wrpc:signatureType"/>
- 
- <xs:simpleType name="signatureType">
-   <xs:list itemType="wrpc:signatureItemType"/>
- </xs:simpleType>
- 
- <xs:simpleType name="signatureItemType">
-   <xs:union memberTypes="wrpc:directionToken xsd:QName"/>
- </xs:simpleType>
- 
- <xs:simpleType name="directionToken">
-   <xs:restriction base="xs:token">
-     <xs:enumeration value="#in"/>
-     <xs:enumeration value="#out"/>
-     <xs:enumeration value="#inout"/>
-     <xs:enumeration value="#return"/>
-   </xs:restriction>
- </xs:simpleType>
- ]]>	  
- 	   </eg>
- 	   </example>
-           </p>
-       </div4>
- 
-     <div4 id="InterfaceOperation_RPC_Signature_Mapping">
- 	  <head><att>wrpc:signature </att>Extension Mapping To Properties of an
- 	  Interface Operation Component</head>
- 
- 	  <p>A <att>wrpc:signature</att> extension &AII; is mapped to the following
- 	  property of the Interface Operation component (see <specref
- 	  ref="InterfaceOperation_details"/>) defined by its [owner].</p>
- 
- 	  <table border="1" id="tab_InterfaceOperation_RPC_Signature_Mapping">
- 	    <caption>Mapping of a <att>wrpc:signature</att> Extension to Interface Operation Component Properties</caption>
- 	    <tbody>
- 		  <tr>
- 		    <th>Property</th>
- 		    <th>Mapping</th>
- 		  </tr>
- 		  <tr>
- 		    <td>{rpc-signature}</td>
- 			<td> A list of <emph>(xs:QName, xs:Token)</emph> pairs formed
- 			by grouping the items present in the actual value of the
- 			<att>wrpc:signature</att> &AII; in the order in which they appear
- 			there.</td>
- 		  </tr>
- 		</tbody>
- 	  </table>
- 
-     </div4>
-       
-     </div3>
    </div2>
  
--- 1804,1807 ----
***************
*** 5388,5392 ****
    &lt;/types&gt;
  
!   &lt;interface name=&quot;<emph>xs:NCName</emph>&quot; extends=&quot;<emph>list of xs:QName</emph>&quot;? styleDefault=&quot;<emph>xs:anyURI</emph>&quot;? &gt;
      &lt;documentation /&gt;?
  
--- 5394,5398 ----
    &lt;/types&gt;
  
!   &lt;interface name=&quot;<emph>xs:NCName</emph>&quot; extends=&quot;<emph>list of xs:QName</emph>&quot;? styleDefault=&quot;<emph>list of xs:anyURI</emph>&quot;? &gt;
      &lt;documentation /&gt;?
  
***************
*** 5395,5399 ****
      &lt;/fault&gt;*
  
!     &lt;operation name=&quot;<emph>xs:NCName</emph>&quot; pattern=&quot;<emph>xs:anyURI</emph>&quot; style=&quot;<emph>xs:anyURI</emph>&quot;? safe=&quot;<emph>xs:boolean</emph>&quot;? &gt;
        &lt;documentation /&gt;?
  
--- 5401,5405 ----
      &lt;/fault&gt;*
  
!     &lt;operation name=&quot;<emph>xs:NCName</emph>&quot; pattern=&quot;<emph>xs:anyURI</emph>&quot; style=&quot;<emph>list of xs:anyURI</emph>&quot;? safe=&quot;<emph>xs:boolean</emph>&quot;? &gt;
        &lt;documentation /&gt;?
  
***************
*** 6387,6390 ****
--- 6393,6401 ----
            <td>20040702</td>
            <td>SW</td>
+           <td>Made operation/@style be a list of URIs.</td>
+         </tr>
+         <tr>
+           <td>20040702</td>
+           <td>SW</td>
            <td>Had forgotten to map to the {type} property of binding.</td>
          </tr>

Received on Friday, 2 July 2004 03:02:25 UTC