- From: Arthur Ryman via cvs-syncmail <cvsmail@w3.org>
- Date: Sun, 01 May 2005 12:20:11 +0000
- To: public-ws-desc-eds@w3.org
Update of /sources/public/2002/ws/desc/wsdl20
In directory hutz:/tmp/cvs-serv29932
Modified Files:
wsdl20-z.html wsdl20.pdf wsdl20.html wsdl20-primer.html
wsdl20.xml wsdl20-z-ie.html wsdl20.tex wsdl20-primer.xml
wsdl20-adjuncts.html wsdl20.toc
Log Message:
Updated Service Reference section of Primer for LC117.
Index: wsdl20-adjuncts.html
===================================================================
RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20-adjuncts.html,v
retrieving revision 1.29
retrieving revision 1.30
diff -C2 -d -r1.29 -r1.30
*** wsdl20-adjuncts.html 29 Apr 2005 19:42:02 -0000 1.29
--- wsdl20-adjuncts.html 1 May 2005 12:20:08 -0000 1.30
***************
*** 1,15 ****
! <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
! "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
! <html lang="en" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
! <head>
! <meta name="generator" content=
! "HTML Tidy for Linux/x86 (vers 1st July 2004), see www.w3.org" />
! <meta http-equiv="Content-Type" content=
! "text/html; charset=utf-8" />
! <title>Web Services Description Language (WSDL) Version 2.0 Part 2:
! Adjuncts</title>
[...10890 lines suppressed...]
! <td rowspan="1" colspan="1">JJM</td>
! <td rowspan="1" colspan="1">Simplified the introduction; referred to Part1 for a longer introduction</td>
! </tr>
! <tr>
! <td rowspan="1" colspan="1">20020221</td>
! <td rowspan="1" colspan="1">JJM</td>
! <td rowspan="1" colspan="1">Renamed to "Part 2: Bindings"</td>
! </tr>
! <tr>
! <td rowspan="1" colspan="1">20020221</td>
! <td rowspan="1" colspan="1">JJM</td>
! <td rowspan="1" colspan="1">Created from http://www.w3.org/TR/2001/NOTE-wsdl-20010315</td>
! </tr>
! </tbody>
! </table><br>
! </div>
! </div>
! </div>
! </body></html>
\ No newline at end of file
Index: wsdl20-z-ie.html
===================================================================
RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20-z-ie.html,v
retrieving revision 1.11
retrieving revision 1.12
diff -C2 -d -r1.11 -r1.12
*** wsdl20-z-ie.html 22 Apr 2005 06:51:33 -0000 1.11
--- wsdl20-z-ie.html 1 May 2005 12:20:08 -0000 1.12
***************
*** 95,99 ****
output [owner element]</a><br> 2.12.2.2 <a href="#Binding_Message_Reference_extension_elements">Binding Message Reference extension elements</a><br> 2.12.3 <a href="#Binding_Message_Reference_Mapping">Mapping Binding Message Reference's XML Representation to Component Properties</a><br> 2.13 <a href="#Binding_Fault_Reference">Binding Fault Reference</a><br> 2.13.1 <a href="#Binding_Fault_Reference_details">The Binding Fault Reference Component</a><br> 2.13.2 <a href="#Binding_Fault_Reference_XMLRep">XML Representation of Binding Fault Reference Component</a><br> 2.13.2.1 <a href="#Binding_Fault_Reference_ref_attribute">ref attribute information item with infault or
outfault [owner element]</a><br> 2.13.2.2 <a href="#Binding_Fault_Reference_messageLabel_attribute">messageLabel attribute information item with infault or
! outfault [owner element]</a><br> 2.13.2.3 <a href="#Binding_Fault_Reference_extension_elements">Binding Fault Reference extension elements</a><br> 2.13.3 <a href="#Binding_Fault_Reference_Mapping">Mapping Binding Fault Reference's XML Representation to Component Properties</a><br> 2.14 <a href="#Service">Service</a><br> 2.14.1 <a href="#Service_details">The Service Component</a><br> 2.14.1.1 <a href="#Service_OperationName">Operation Name Mapping Requirement</a><br> 2.14.2 <a href="#Service_XMLRep">XML Representation of Service Component</a><br> 2.14.2.1 <a href="#Service_name_attribute">name attribute information item with serice [owner element]</a><br> 2.14.2.2 <a href="#Service_interface_attribute">interface attribute information item with service [owner element]</a><br> 2.14.3 <a href="#Service_Mapping">Mapping Service's XML Representation to Component Properties</a><br> 2.15 <a href="#Endpoint">Endpoint</a><br> 2.15.1 <a href="#Endpoint_details">The Endpoint Component</a><br> 2.15.2 <a href="#Endpoint_XMLRep">XML Representation of Endpoint Component</a><br> 2.15.2.1 <a href="#Endpoint_name_attribute">name attribute information item with endpoint [owner element]</a><br> 2.15.2.2 <a href="#Endpoint_binding_attribute">binding attribute information item with ndpoint [owner element]</a><br> 2.15.2.3 <a href="#Endpoint_address_attribute">address attribute information item with endpoint [owner element]</a><br> 2.15.2.4 <a href="#Endpoint_extension_elements">Endpoint extension elements</a><br> 2.15.3 <a href="#Endpoint_Mapping">Mapping Endpoint's XML Representation to Component Properties</a><br> 2.16 <a href="#simpletypes">XML Schema 1.0 Simple Types Used in the Component Model</a><br> 2.16.1 <a href="#ncname_type">NCName Type</a><br> 2.16.2 <a href="#anyuri_type">anyURI Type</a><br> 2.16.3 <a href="#qname_type">QName Type</a><br> 2.16.4 <a href="#boolean_type">boolean Tye</a><br> 2.17 <a href="#compequiv">Equivalence of Components</a><br> 2.18 <a href="#symbolspaces">Symbol Spaces</a><br> 2.19 <a href="#qnameres">QName resolution</a><br> 2.20 <a href="#uricompare">Comparing URIs</a><br>3. <a href="#eii-types">Types</a><br> 3.1 <a href="#xsd-types">Using W3C XML Schema Description Language</a><br> 3.1.1 <a href="#import-xsd">Importing XML Schema</a><br> 3.1.1.1 <a href="#namespace-attribute">namespace attribute information item</a><br> 3.1.1.2 <a href="#schemaLocation-attribute">schemaLocation attribute information item</a><br> 3.1.2 <a href="#embed-xsd">Embedding XML Schema</a><br> nbsp; 3.1.2.1 <a href="#targetNamespace-attribute">targetNamespace attribute information item</a><br> 3.1.3 <a href="#references-definitions">References to Element Declarations and Type Definitions</a><br> 3.2 <a href="#other-types">Using Other Schema Languages</a><br>4. <a href="#modularize">Modularizing WSDL descriptions</a><br> 4.1 <a href="#includes">Including Descriptions</a><br> 4.1.1 <a href="#include_location_attribute">location attribute information item with include [owner element]</a><br> 4.2 <a href="#imports">Importing Descriptions</a><br> 4.2.1 <a href="#import_namespace_attribute">namespace attribute information item</a><br> 4.2.2 <a href="#import_location_attribute">location attribute information item with import [owner elment]</a><br>5. <a href="#eii-documentation">Documentation</a><br>6. <a href="#language-extensibility">Language Extensibility</a><br> 6.1 <a href="#eii-extensibility">Element based Extensibility</a><br> 6.1.1 <a href="#mandatoryext">Mandatory extensions</a><br> 6.1.2 <a href="#required-aii">required attribute information item</a><br> 6.2 <a href="#aii-extensibility">Attribute-based Extensibility</a><br> 6.3 <a href="#extensibility-semantics">Extensibility Semantics</a><br>7. <a href="#wsdllocation">Locating WSDL Documents</a><br> 7.1 <a href="#wsdlLocation-aii">wsdli:wsdlLocation attribute information item</a><br>8. <a href="#conformance">Conformance</a><br> 8.1 <a href="#infoset">XML Information Set Conformance</a><br>9. <a href="#Syntax-Summary">XML Syntax Summary (Non-Normative)</a><br>10. <a href="References">References</a><br> 10.1 <a href="#Normative-References">Normative References</a><br> 10.2 <a href="#Informative-References">Informative References</a><br></p>
<h3><a id="appendix" name="appendix">Appendices</a></h3><p class="toc">A. <a href="#ietf-draft">The application/wsdl+xml Media Type</a><br> A.1 <a href="#ietf-reg">Registration</a><br> A.2 <a href="#frag-ids">Fragment Identifiers</a><br> A.2.1 <a href="#wsdl.interface">wsdl.interface(interface)</a><br> A.2.2 <a href="#wsdl.interfaceFault">wsdl.interfaceFault(interface/fault)</a><br> A.2.3 <a href="#wsdl.interfaceOperation">wsdl.interfaceOperation(interface/operation)</a><br> A.2.4 <a href="#wsdl.messageReference">wsdl.messageReference(interface/operation/message)</a><br> A.2.5 <a href="#wsdl.faultReference">wsdl.faultReference(interface/operation/message/fault)</a><br> A.2.6 <a href=#wsdl.binding">wsdl.binding(binding)</a><br> A.2.7 <a href="#wsdl.bindingFault">wsdl.bindingFault(binding/fault)</a><br> A.2.8 <a href="#wsdl.bindingOperation">wsdl.bindingOperation(binding/operation)</a><br> A.2.9 <a href="#wsdl.bindingMessageReference">wsdl.bindingMessageReference(binding/operation/message)</a><br> A.2.10 <a href="#wsdl.bindingFaultReference">wsdl.bindingFaultReference(binding/operation/fault/message)</a><br> A.2.11 <a href="#wsdl.service">
wsdl.service(service)
--- 95,99 ----
output [owner element]</a><br> 2.12.2.2 <a href="#Binding_Message_Reference_extension_elements">Binding Message Reference extension elements</a><br> 2.12.3 <a href="#Binding_Message_Reference_Mapping">Mapping Binding Message Reference's XML Representation to Component Properties</a><br> 2.13 <a href="#Binding_Fault_Reference">Binding Fault Reference</a><br> 2.13.1 <a href="#Binding_Fault_Reference_details">The Binding Fault Reference Component</a><br> 2.13.2 <a href="#Binding_Fault_Reference_XMLRep">XML Representation of Binding Fault Reference Component</a><br> 2.13.2.1 <a href="#Binding_Fault_Reference_ref_attribute">ref attribute information item with infault or
outfault [owner element]</a><br> 2.13.2.2 <a href="#Binding_Fault_Reference_messageLabel_attribute">messageLabel attribute information item with infault or
! outfault [owner element]</a><br> 2.13.2.3 <a href="#Binding_Fault_Reference_extension_elements">Binding Fault Reference extension elements</a><br> 2.13.3 <a href="#Binding_Fault_Reference_Mapping">Mapping Binding Fault Reference's XML Representation to Component Properties</a><br> 2.14 <a href="#Service">Service</a><br> 2.14.1 <a href="#Service_details">The Service Component</a><br> 2.14.1.1 <a href="#Service_OperationName">Operation Name Mapping Requirement</a><br> 2.14.2 <a href="#Service_XMLRep">XML Representation of Service Component</a><br> 2.14.2.1 <a href="#Service_references">Service References</a><br> nbsp; 2.14.2.2 <a href="#Service_name_attribute">name attribute information item with service [owner element]</a><br> 2.14.2.3 <a href="#Service_interface_attribute">interface attribute information item with service [owner element]</a><br> 2.14.3 <a href="#Service_Mapping">Mapping Service's XML Representation to Component Properties</a><br> 2.15 <a href="#Endpoint">Endpoint</a><br> 2.15.1 <a href="#Endpoint_details">The Endpoint Component</a><br> 2.15.2 <a href="#Endpoint_XMLRep">XML Representation of Endpoint Component</a><br> 2.15.2.1 <a href="#Endpoint_references">Endpoint References</a><br> &nsp;2.15.2.2 <a href="#Endpoint_name_attribute">name attribute information item with endpoint [owner element]</a><br> 2.15.2.3 <a href="#Endpoint_binding_attribute">binding attribute information item with endpoint [owner element]</a><br> 2.15.2.4 <a href="#Endpoint_address_attribute">address attribute information item with endpoint [owner element]</a><br> 2.15.2.5 <a href="#Endpoint_extension_elements">Endpoint extension elements</a><br> 2.15.3 <a href="#Endpoint_Mapping">Mapping Endpoint's XML Representation to Component Properties</a><br> 2.16 <a href="#simpletypes">XML Schema 1.0 Simple Types Used in the Component Model</a><br> 2.16.1 <a href="#ncname_type">NCName Type</a><br>  2.16.2 <a href="#anyuri_type">anyURI Type</a><br> 2.16.3 <a href="#qname_type">QName Type</a><br> 2.16.4 <a href="#boolean_type">boolean Type</a><br> 2.17 <a href="#compequiv">Equivalence of Components</a><br> 2.18 <a href="#symbolspaces">Symbol Spaces</a><br> 2.19 <a href="#qnameres">QName resolution</a><br> 2.20 <a href="#uricompare">Comparing URIs</a><br>3. <a href="#eii-types">Types</a><br> 3.1 <a href="#xsd-types">Using W3C XML Schema Description Language</a><br> 3.1.1 <a href="#import-xsd">Importing XML Schema</a><br> 3.1.1.1 <a href="#namespace-attribute">namespace attribute information item</a><br> &nbs; 3.1.1.2 <a href="#schemaLocation-attribute">schemaLocation attribute information item</a><br> 3.1.2 <a href="#embed-xsd">Embedding XML Schema</a><br> 3.1.2.1 <a href="#targetNamespace-attribute">targetNamespace attribute information item</a><br> 3.1.3 <a href="#references-definitions">References to Element Declarations and Type Definitions</a><br> 3.2 <a href="#other-types">Using Other Schema Languages</a><br>4. <a href="#modularize">Modularizing WSDL descriptions</a><br> 4.1 <a href="#includes">Including Descriptions</a><br> 4.1.1 <a href="#include_location_attribute">location attribute information item with include [owner element]</a><br> 4.2 <a href="#imports">Importing Descriptions</a><br> &nsp; 4.2.1 <a href="#import_namespace_attribute">namespace attribute information item</a><br> 4.2.2 <a href="#import_location_attribute">location attribute information item with import [owner element]</a><br>5. <a href="#eii-documentation">Documentation</a><br>6. <a href="#language-extensibility">Language Extensibility</a><br> 6.1 <a href="#eii-extensibility">Element based Extensibility</a><br> 6.1.1 <a href="#mandatoryext">Mandatory extensions</a><br> 6.1.2 <a href="#required-aii">required attribute information item</a><br> 6.2 <a href="#aii-extensibility">Attribute-based Extensibility</a><br> 6.3 <a href="#extensibility-semantics">Extensibility Semantics</a><br>7. <a href="#wsdllocation">Locating WSDL Documents</a><br> 7.1 <a href="#wsdlLocatin-aii">wsdli:wsdlLocation attribute information item</a><br>8. <a href="#conformance">Conformance</a><br> 8.1 <a href="#infoset">XML Information Set Conformance</a><br>9. <a href="#Syntax-Summary">XML Syntax Summary (Non-Normative)</a><br>10. <a href="#References">References</a><br> 10.1 <a href="#Normative-References">Normative References</a><br> 10.2 <a href="#Informative-References">Informative References</a><br></p>
<h3><a id="appendix" name="appendix">Appendices</a></h3><p class="toc">A. <a href="#ietf-draft">The application/wsdl+xml Media Type</a><br> A.1 <a href="#ietf-reg">Registration</a><br> A.2 <a href="#frag-ids">Fragment Identifiers</a><br> A.2.1 <a href="#wsdl.interface">wsdl.interface(interface)</a><br> A.2.2 <a href="#wsdl.interfaceFault">wsdl.interfaceFault(interface/fault)</a><br> A.2.3 <a href="#wsdl.interfaceOperation">wsdl.interfaceOperation(interface/operation)</a><br> A.2.4 <a href="#wsdl.messageReference">wsdl.messageReference(interface/operation/message)</a><br> A.2.5 <a href="#wsdl.faultReference">wsdl.faultReference(interface/operation/message/fault)</a><br> A.2.6 <a href=#wsdl.binding">wsdl.binding(binding)</a><br> A.2.7 <a href="#wsdl.bindingFault">wsdl.bindingFault(binding/fault)</a><br> A.2.8 <a href="#wsdl.bindingOperation">wsdl.bindingOperation(binding/operation)</a><br> A.2.9 <a href="#wsdl.bindingMessageReference">wsdl.bindingMessageReference(binding/operation/message)</a><br> A.2.10 <a href="#wsdl.bindingFaultReference">wsdl.bindingFaultReference(binding/operation/fault/message)</a><br> A.2.11 <a href="#wsdl.service">
[...1266 lines suppressed...]
+ Removed "is not dereferenceable or" from section 4.1.1 and removed references to
+ a WSDL processor.</td>
+ </tr>
+ <tr>
+ <td rowspan="1" colspan="1">20050429</td>
+ <td rowspan="1" colspan="1">RRC</td>
+ <td rowspan="1" colspan="1">Added clarification that an operation style MAY affect only input or only output
+ messages (or any other combination).</td>
+ </tr>
+ <tr>
<td rowspan="1" colspan="1">20050421</td>
<td rowspan="1" colspan="1">AGR</td>
***************
*** 10308,10311 ****
--- 10412,10416 ----
</tr>
<tr>
+
<td rowspan="1" colspan="1">20030120</td>
<td rowspan="1" colspan="1">MJG</td>
Index: wsdl20.tex
===================================================================
RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20.tex,v
retrieving revision 1.40
retrieving revision 1.41
diff -C2 -d -r1.40 -r1.41
*** wsdl20.tex 30 Apr 2005 13:35:20 -0000 1.40
--- wsdl20.tex 1 May 2005 12:20:08 -0000 1.41
***************
*** 1176,1180 ****
This document does not specify a means of producing an XML Infoset
representation from a component model instance.
! In particular, there are in general many valid ways to modularize a
a given component model instance into one or more XML Infosets.
--- 1176,1180 ----
This document does not specify a means of producing an XML Infoset
representation from a component model instance.
! In particular, there are in general many valid ways to modularize
a given component model instance into one or more XML Infosets.
[...1013 lines suppressed...]
+ Removed "is not dereferenceable or" from section 4.1.1 and removed references to
+ a WSDL processor.
+ \\ \hline
+
+ 20050429&
+ RRC&
+ Added clarification that an operation style MAY affect only input or only output
+ messages (or any other combination).
+ \\ \hline
+
20050421&
AGR&
***************
*** 11063,11066 ****
--- 11145,11149 ----
\\ \hline
+
20030120&
MJG&
Index: wsdl20.toc
===================================================================
RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20.toc,v
retrieving revision 1.23
retrieving revision 1.24
diff -C2 -d -r1.23 -r1.24
*** wsdl20.toc 22 Apr 2005 06:51:34 -0000 1.23
--- wsdl20.toc 1 May 2005 12:20:09 -0000 1.24
***************
*** 22,197 ****
\contentsline {subsection}{\numberline {2.2.2}XML Representation of Interface Component}{34}{subsection.2.2.2}
\contentsline {subsubsection}{\texttt {name} \textit {attribute information item} with \texttt {interface} [owner element]}{35}{section*.4}
! \contentsline {subsubsection}{\texttt {extends} \textit {attribute information item}}{35}{section*.5}
! \contentsline {subsubsection}{\texttt {styleDefault} \textit {attribute information item}}{35}{section*.6}
! \contentsline {subsection}{\numberline {2.2.3}Mapping Interface's XML Representation to Component Properties}{35}{subsection.2.2.3}
! \contentsline {section}{\numberline {2.3}Interface Fault}{36}{section.2.3}
! \contentsline {subsection}{\numberline {2.3.1}The Interface Fault Component}{36}{subsection.2.3.1}
! \contentsline {subsection}{\numberline {2.3.2}XML Representation of Interface Fault Component}{38}{subsection.2.3.2}
! \contentsline {subsubsection}{\texttt {name} \textit {attribute information item} with \texttt {fault} [owner element]}{39}{section*.7}
\contentsline {subsubsection}{\texttt {element} \textit {attribute information item} with \texttt {fault} [owner element]}{40}{section*.8}
! \contentsline {subsection}{\numberline {2.3.3}Mapping Interface Fault's XML Representation to Component Properties}{40}{subsection.2.3.3}
\contentsline {section}{\numberline {2.4}Interface Operation}{41}{section.2.4}
\contentsline {subsection}{\numberline {2.4.1}The Interface Operation Component}{41}{subsection.2.4.1}
! \contentsline {subsubsection}{Operation Style}{43}{section*.9}
! \contentsline {subsection}{\numberline {2.4.2}XML Representation of Interface Operation Component}{44}{subsection.2.4.2}
! \contentsline {subsubsection}{\texttt {name} \textit {attribute information item} with \texttt {operation} [owner element]}{45}{section*.10}
\contentsline {subsubsection}{\texttt {pattern} \textit {attribute information item} with \texttt {operation} [owner element]}{46}{section*.11}
! \contentsline {subsubsection}{\texttt {style} \textit {attribute information item} with \texttt {operation} [owner element]}{46}{section*.12}
! \contentsline {subsubsection}{\texttt {safe} \textit {attribute information item} with \texttt {operation} [owner element]}{46}{section*.13}
! \contentsline {subsection}{\numberline {2.4.3}Mapping Interface Operation's XML Representation to Component Properties}{46}{subsection.2.4.3}
! \contentsline {section}{\numberline {2.5}Message Reference}{47}{section.2.5}
! \contentsline {subsection}{\numberline {2.5.1}The Message Reference Component}{47}{subsection.2.5.1}
\contentsline {subsection}{\numberline {2.5.2}XML Representation of Message Reference Component}{50}{subsection.2.5.2}
! \contentsline {subsubsection}{\texttt {messageLabel} \textit {attribute information item} with \texttt {input}, or \texttt {output} [owner element]}{51}{section*.14}
! \contentsline {subsubsection}{\texttt {element} \textit {attribute information item} with \texttt {input}, or \texttt {output} [owner element]}{51}{section*.15}
! \contentsline {subsection}{\numberline {2.5.3}Mapping Message Reference's XML Representation to Component Properties}{51}{subsection.2.5.3}
! \contentsline {section}{\numberline {2.6}Fault Reference}{52}{section.2.6}
! \contentsline {subsection}{\numberline {2.6.1}The Fault Reference Component}{52}{subsection.2.6.1}
! \contentsline {subsection}{\numberline {2.6.2}XML Representation of Fault Reference}{54}{subsection.2.6.2}
! \contentsline {subsubsection}{\texttt {ref} \textit {attribute information item} with \texttt {infault}, or \texttt {outfault} [owner element]}{55}{section*.16}
\contentsline {subsubsection}{\texttt {messageLabel} \textit {attribute information item} with \texttt {infault}, or \texttt {outfault} [owner element]}{56}{section*.17}
! \contentsline {subsection}{\numberline {2.6.3}Mapping Fault Reference's XML Representation to Component Properties}{56}{subsection.2.6.3}
! \contentsline {section}{\numberline {2.7}Feature}{57}{section.2.7}
! \contentsline {subsection}{\numberline {2.7.1}The Feature Component}{57}{subsection.2.7.1}
! \contentsline {subsubsection}{Feature Composition Model}{58}{section*.18}
\contentsline {subsection}{\numberline {2.7.2}XML Representation of Feature Component}{61}{subsection.2.7.2}
! \contentsline {subsubsection}{\texttt {uri} \textit {attribute information item} with \texttt {feature} [owner element]}{61}{section*.19}
\contentsline {subsubsection}{\texttt {required} \textit {attribute information item} with \texttt {feature} [owner element]}{62}{section*.20}
! \contentsline {subsection}{\numberline {2.7.3}Mapping Feature's XML Representation to Component Properties}{62}{subsection.2.7.3}
! \contentsline {section}{\numberline {2.8}Property}{62}{section.2.8}
! \contentsline {subsection}{\numberline {2.8.1}The Property Component}{62}{subsection.2.8.1}
! \contentsline {subsubsection}{Property Composition Model}{64}{section*.21}
! \contentsline {subsection}{\numberline {2.8.2}XML Representation of Property Component}{66}{subsection.2.8.2}
! \contentsline {subsubsection}{\texttt {uri} \textit {attribute information item} with \texttt {property} [owner element]}{67}{section*.22}
! \contentsline {subsubsection}{\texttt {value} \textit {element information item} with \texttt {property} [parent]}{67}{section*.23}
! \contentsline {subsubsection}{\texttt {constraint} \textit {element information item} with \texttt {property} [parent]}{68}{section*.24}
! \contentsline {subsection}{\numberline {2.8.3}Mapping Property's XML Representation to Component Properties}{68}{subsection.2.8.3}
! \contentsline {section}{\numberline {2.9}Binding}{69}{section.2.9}
! \contentsline {subsection}{\numberline {2.9.1}The Binding Component}{69}{subsection.2.9.1}
! \contentsline {subsection}{\numberline {2.9.2}XML Representation of Binding Component}{71}{subsection.2.9.2}
! \contentsline {subsubsection}{\texttt {name} \textit {attribute information item} with \texttt {binding} [owner element]}{72}{section*.25}
! \contentsline {subsubsection}{\texttt {interface} \textit {attribute information item} with \texttt {binding} [owner element]}{72}{section*.26}
! \contentsline {subsubsection}{\texttt {type} \textit {attribute information item} with \texttt {binding} [owner element]}{72}{section*.27}
! \contentsline {subsubsection}{Binding extension elements}{73}{section*.28}
! \contentsline {subsection}{\numberline {2.9.3}Mapping Binding's XML Representation to Component Properties}{73}{subsection.2.9.3}
! \contentsline {section}{\numberline {2.10}Binding Fault}{73}{section.2.10}
! \contentsline {subsection}{\numberline {2.10.1}The Binding Fault Component}{73}{subsection.2.10.1}
! \contentsline {subsection}{\numberline {2.10.2}XML Representation of Binding Fault Component}{75}{subsection.2.10.2}
! \contentsline {subsubsection}{\texttt {ref} \textit {attribute information item} with \texttt {fault} [owner element]}{76}{section*.29}
! \contentsline {subsubsection}{Binding Fault extension elements}{76}{section*.30}
! \contentsline {subsection}{\numberline {2.10.3}Mapping Binding Fault's XML Representation to Component Properties}{76}{subsection.2.10.3}
! \contentsline {section}{\numberline {2.11}Binding Operation}{77}{section.2.11}
! \contentsline {subsection}{\numberline {2.11.1}The Binding Operation Component}{77}{subsection.2.11.1}
! \contentsline {subsection}{\numberline {2.11.2}XML Representation of Binding Operation Component}{78}{subsection.2.11.2}
! \contentsline {subsubsection}{\texttt {ref} \textit {attribute information item} with \texttt {operation} [owner element]}{79}{section*.31}
! \contentsline {subsubsection}{Binding Operation extension elements}{80}{section*.32}
! \contentsline {subsection}{\numberline {2.11.3}Mapping Binding Operation's XML Representation to Component Properties}{80}{subsection.2.11.3}
! \contentsline {section}{\numberline {2.12}Binding Message Reference}{80}{section.2.12}
! \contentsline {subsection}{\numberline {2.12.1}The Binding Message Reference Component}{80}{subsection.2.12.1}
! \contentsline {subsection}{\numberline {2.12.2}XML Representation of Binding Message Reference Component}{81}{subsection.2.12.2}
! \contentsline {subsubsection}{\texttt {messageLabel} \textit {attribute information item} with \texttt {input} or \texttt {output} [owner element]}{83}{section*.33}
! \contentsline {subsubsection}{Binding Message Reference extension elements}{83}{section*.34}
! \contentsline {subsection}{\numberline {2.12.3}Mapping Binding Message Reference's XML Representation to Component Properties}{83}{subsection.2.12.3}
! \contentsline {section}{\numberline {2.13}Binding Fault Reference}{84}{section.2.13}
! \contentsline {subsection}{\numberline {2.13.1}The Binding Fault Reference Component}{84}{subsection.2.13.1}
! \contentsline {subsection}{\numberline {2.13.2}XML Representation of Binding Fault Reference Component}{85}{subsection.2.13.2}
! \contentsline {subsubsection}{\texttt {ref} \textit {attribute information item} with \texttt {infault} or \texttt {outfault} [owner element]}{86}{section*.35}
! \contentsline {subsubsection}{\texttt {messageLabel} \textit {attribute information item} with \texttt {infault} or \texttt {outfault} [owner element]}{87}{section*.36}
! \contentsline {subsubsection}{Binding Fault Reference extension elements}{87}{section*.37}
! \contentsline {subsection}{\numberline {2.13.3}Mapping Binding Fault Reference's XML Representation to Component Properties}{87}{subsection.2.13.3}
! \contentsline {section}{\numberline {2.14}Service}{88}{section.2.14}
! \contentsline {subsection}{\numberline {2.14.1}The Service Component}{88}{subsection.2.14.1}
! \contentsline {subsubsection}{Operation Name Mapping Requirement}{89}{section*.38}
! \contentsline {subsection}{\numberline {2.14.2}XML Representation of Service Component}{90}{subsection.2.14.2}
! \contentsline {subsubsection}{\texttt {name} \textit {attribute information item} with \texttt {service} [owner element]}{91}{section*.39}
! \contentsline {subsubsection}{\texttt {interface} \textit {attribute information item} with \texttt {service} [owner element]}{92}{section*.40}
! \contentsline {subsection}{\numberline {2.14.3}Mapping Service's XML Representation to Component Properties}{92}{subsection.2.14.3}
! \contentsline {section}{\numberline {2.15}Endpoint}{93}{section.2.15}
! \contentsline {subsection}{\numberline {2.15.1}The Endpoint Component}{93}{subsection.2.15.1}
! \contentsline {subsection}{\numberline {2.15.2}XML Representation of Endpoint Component}{94}{subsection.2.15.2}
! \contentsline {subsubsection}{\texttt {name} \textit {attribute information item} with \texttt {endpoint} [owner element]}{95}{section*.41}
! \contentsline {subsubsection}{\texttt {binding} \textit {attribute information item} with \texttt {endpoint} [owner element]}{95}{section*.42}
! \contentsline {subsubsection}{\texttt {address} \textit {attribute information item} with \texttt {endpoint} [owner element]}{96}{section*.43}
! \contentsline {subsubsection}{Endpoint extension elements}{96}{section*.44}
! \contentsline {subsection}{\numberline {2.15.3}Mapping Endpoint's XML Representation to Component Properties}{96}{subsection.2.15.3}
! \contentsline {section}{\numberline {2.16}XML Schema 1.0 Simple Types Used in the Component Model}{97}{section.2.16}
! \contentsline {subsection}{\numberline {2.16.1}\textit {NCName} Type}{97}{subsection.2.16.1}
! \contentsline {subsection}{\numberline {2.16.2}\textit {anyURI} Type}{97}{subsection.2.16.2}
! \contentsline {subsection}{\numberline {2.16.3}\textit {QName} Type}{97}{subsection.2.16.3}
! \contentsline {subsection}{\numberline {2.16.4}\textit {boolean} Type}{98}{subsection.2.16.4}
! \contentsline {section}{\numberline {2.17}Equivalence of Components}{98}{section.2.17}
! \contentsline {section}{\numberline {2.18}Symbol Spaces}{98}{section.2.18}
! \contentsline {section}{\numberline {2.19}QName resolution}{99}{section.2.19}
! \contentsline {section}{\numberline {2.20}Comparing URIs}{99}{section.2.20}
! \contentsline {chapter}{\numberline {3}Types}{100}{chapter.3}
! \contentsline {section}{\numberline {3.1}Using W3C XML Schema Description Language}{101}{section.3.1}
! \contentsline {subsection}{\numberline {3.1.1}Importing XML Schema}{102}{subsection.3.1.1}
! \contentsline {subsubsection}{\texttt {namespace} \textit {attribute information item}}{102}{section*.45}
! \contentsline {subsubsection}{\texttt {schemaLocation} \textit {attribute information item}}{103}{section*.46}
! \contentsline {subsection}{\numberline {3.1.2}Embedding XML Schema}{103}{subsection.3.1.2}
! \contentsline {subsubsection}{\texttt {targetNamespace} \textit {attribute information item}}{104}{section*.47}
! \contentsline {subsection}{\numberline {3.1.3}References to Element Declarations and Type Definitions}{104}{subsection.3.1.3}
! \contentsline {section}{\numberline {3.2}Using Other Schema Languages}{105}{section.3.2}
! \contentsline {chapter}{\numberline {4}Modularizing WSDL descriptions}{106}{chapter.4}
! \contentsline {section}{\numberline {4.1}Including Descriptions}{106}{section.4.1}
! \contentsline {subsection}{\numberline {4.1.1}\texttt {location} \textit {attribute information item} with \texttt {include} [owner element]}{107}{subsection.4.1.1}
! \contentsline {section}{\numberline {4.2}Importing Descriptions}{108}{section.4.2}
! \contentsline {subsection}{\numberline {4.2.1}\texttt {namespace} \textit {attribute information item}}{109}{subsection.4.2.1}
! \contentsline {subsection}{\numberline {4.2.2}\texttt {location} \textit {attribute information item} with \texttt {import} [owner element]}{110}{subsection.4.2.2}
! \contentsline {chapter}{\numberline {5}Documentation}{111}{chapter.5}
! \contentsline {chapter}{\numberline {6}Language Extensibility}{112}{chapter.6}
! \contentsline {section}{\numberline {6.1}Element based Extensibility}{112}{section.6.1}
! \contentsline {subsection}{\numberline {6.1.1}Mandatory extensions}{113}{subsection.6.1.1}
! \contentsline {subsection}{\numberline {6.1.2}\texttt {required} \textit {attribute information item}}{114}{subsection.6.1.2}
! \contentsline {section}{\numberline {6.2}Attribute-based Extensibility}{114}{section.6.2}
! \contentsline {section}{\numberline {6.3}Extensibility Semantics}{114}{section.6.3}
! \contentsline {chapter}{\numberline {7}Locating WSDL Documents}{116}{chapter.7}
! \contentsline {section}{\numberline {7.1}\texttt {wsdli:wsdlLocation} \textit {attribute information item}}{116}{section.7.1}
! \contentsline {chapter}{\numberline {8}Conformance}{117}{chapter.8}
! \contentsline {section}{\numberline {8.1}XML Information Set Conformance}{117}{section.8.1}
! \contentsline {chapter}{\numberline {9}XML Syntax Summary (Non-Normative)}{118}{chapter.9}
! \contentsline {chapter}{\numberline {10}References}{122}{chapter.10}
! \contentsline {section}{\numberline {10.1}Normative References}{122}{section.10.1}
! \contentsline {section}{\numberline {10.2}Informative References}{124}{section.10.2}
! \contentsline {chapter}{\numberline {A}The application/wsdl+xml Media Type}{127}{appendix.A}
! \contentsline {section}{\numberline {A.1}Registration}{127}{section.A.1}
! \contentsline {section}{\numberline {A.2}Fragment Identifiers}{128}{section.A.2}
! \contentsline {subsection}{\numberline {A.2.1}wsdl.interface(\textit {interface})}{130}{subsection.A.2.1}
! \contentsline {subsection}{\numberline {A.2.2}wsdl.interfaceFault(\textit {interface}/\textit {fault})}{130}{subsection.A.2.2}
! \contentsline {subsection}{\numberline {A.2.3}wsdl.interfaceOperation(\textit {interface}/\textit {operation})}{130}{subsection.A.2.3}
! \contentsline {subsection}{\numberline {A.2.4}wsdl.messageReference(\textit {interface}/\textit {operation}/\textit {message})}{130}{subsection.A.2.4}
! \contentsline {subsection}{\numberline {A.2.5}wsdl.faultReference(\textit {interface}/\textit {operation}/\textit {message}/\textit {fault})}{130}{subsection.A.2.5}
! \contentsline {subsection}{\numberline {A.2.6}wsdl.binding(\textit {binding})}{131}{subsection.A.2.6}
! \contentsline {subsection}{\numberline {A.2.7}wsdl.bindingFault(\textit {binding}/\textit {fault})}{131}{subsection.A.2.7}
! \contentsline {subsection}{\numberline {A.2.8}wsdl.bindingOperation(\textit {binding}/\textit {operation})}{131}{subsection.A.2.8}
! \contentsline {subsection}{\numberline {A.2.9}wsdl.bindingMessageReference(\textit {binding}/\textit {operation}/\textit {message})}{131}{subsection.A.2.9}
! \contentsline {subsection}{\numberline {A.2.10}wsdl.bindingFaultReference(\textit {binding}/\textit {operation}/\textit {fault}/\textit {message})}{131}{subsection.A.2.10}
! \contentsline {subsection}{\numberline {A.2.11} wsdl.service(\textit {service}) }{132}{subsection.A.2.11}
! \contentsline {subsection}{\numberline {A.2.12}wsdl.endpoint(\textit {service}/\textit {endpoint})}{132}{subsection.A.2.12}
! \contentsline {subsection}{\numberline {A.2.13}wsdl.feature(\textit {parent}/\textit {feature})}{132}{subsection.A.2.13}
! \contentsline {subsection}{\numberline {A.2.14}wsdl.property(\textit {parent}/\textit {property})}{132}{subsection.A.2.14}
! \contentsline {subsection}{\numberline {A.2.15}wsdl.extension(\textit {extension-namespace}, \textit {extension-specific-syntax})}{132}{subsection.A.2.15}
! \contentsline {section}{\numberline {A.3}Security considerations}{133}{section.A.3}
! \contentsline {chapter}{\numberline {B}Acknowledgements (Non-Normative)}{134}{appendix.B}
! \contentsline {chapter}{\numberline {C}URI References for WSDL Components (Non-Normative)}{136}{appendix.C}
! \contentsline {section}{\numberline {C.1}WSDL URIs}{136}{section.C.1}
! \contentsline {section}{\numberline {C.2}Example}{137}{section.C.2}
! \contentsline {chapter}{\numberline {D}Migrating from WSDL 1.1 to WSDL 2.0 (Non-Normative)}{138}{appendix.D}
! \contentsline {section}{\numberline {D.1}Operation Overloading}{138}{section.D.1}
! \contentsline {section}{\numberline {D.2}PortTypes}{138}{section.D.2}
! \contentsline {section}{\numberline {D.3}Ports}{138}{section.D.3}
! \contentsline {section}{\numberline {D.4}Single Interface per Service}{138}{section.D.4}
! \contentsline {chapter}{\numberline {E}Examples of Specifications of Extension Elements for Alternative Schema Language Support. (Non-Normative)}{140}{appendix.E}
! \contentsline {section}{\numberline {E.1}DTD}{140}{section.E.1}
! \contentsline {subsection}{\numberline {E.1.1}\texttt {namespace} \textit {attribute information item}}{141}{subsection.E.1.1}
! \contentsline {subsection}{\numberline {E.1.2}\texttt {location} \textit {attribute information item}}{141}{subsection.E.1.2}
! \contentsline {subsection}{\numberline {E.1.3}References to Element Definitions}{141}{subsection.E.1.3}
! \contentsline {section}{\numberline {E.2}RELAX NG}{141}{section.E.2}
! \contentsline {subsection}{\numberline {E.2.1}Importing RELAX NG}{142}{subsection.E.2.1}
! \contentsline {subsubsection}{\texttt {ns} \textit {attribute information item}}{142}{section*.48}
! \contentsline {subsubsection}{\texttt {href} \textit {attribute information item}}{142}{section*.49}
! \contentsline {subsection}{\numberline {E.2.2}Embedding RELAX NG}{143}{subsection.E.2.2}
! \contentsline {subsubsection}{\texttt {ns} \textit {attribute information item}}{143}{section*.50}
! \contentsline {subsection}{\numberline {E.2.3}References to Element Declarations}{143}{subsection.E.2.3}
! \contentsline {chapter}{\numberline {F}Part 1 Change Log (Non-Normative)}{144}{appendix.F}
! \contentsline {section}{\numberline {F.1}WSDL Specification Changes}{144}{section.F.1}
--- 22,199 ----
\contentsline {subsection}{\numberline {2.2.2}XML Representation of Interface Component}{34}{subsection.2.2.2}
\contentsline {subsubsection}{\texttt {name} \textit {attribute information item} with \texttt {interface} [owner element]}{35}{section*.4}
! \contentsline {subsubsection}{\texttt {extends} \textit {attribute information item}}{36}{section*.5}
! \contentsline {subsubsection}{\texttt {styleDefault} \textit {attribute information item}}{36}{section*.6}
! \contentsline {subsection}{\numberline {2.2.3}Mapping Interface's XML Representation to Component Properties}{36}{subsection.2.2.3}
! \contentsline {section}{\numberline {2.3}Interface Fault}{37}{section.2.3}
! \contentsline {subsection}{\numberline {2.3.1}The Interface Fault Component}{37}{subsection.2.3.1}
! \contentsline {subsection}{\numberline {2.3.2}XML Representation of Interface Fault Component}{39}{subsection.2.3.2}
! \contentsline {subsubsection}{\texttt {name} \textit {attribute information item} with \texttt {fault} [owner element]}{40}{section*.7}
\contentsline {subsubsection}{\texttt {element} \textit {attribute information item} with \texttt {fault} [owner element]}{40}{section*.8}
! \contentsline {subsection}{\numberline {2.3.3}Mapping Interface Fault's XML Representation to Component Properties}{41}{subsection.2.3.3}
\contentsline {section}{\numberline {2.4}Interface Operation}{41}{section.2.4}
\contentsline {subsection}{\numberline {2.4.1}The Interface Operation Component}{41}{subsection.2.4.1}
! \contentsline {subsubsection}{Operation Style}{44}{section*.9}
! \contentsline {subsection}{\numberline {2.4.2}XML Representation of Interface Operation Component}{45}{subsection.2.4.2}
! \contentsline {subsubsection}{\texttt {name} \textit {attribute information item} with \texttt {operation} [owner element]}{46}{section*.10}
\contentsline {subsubsection}{\texttt {pattern} \textit {attribute information item} with \texttt {operation} [owner element]}{46}{section*.11}
! \contentsline {subsubsection}{\texttt {style} \textit {attribute information item} with \texttt {operation} [owner element]}{47}{section*.12}
! \contentsline {subsubsection}{\texttt {safe} \textit {attribute information item} with \texttt {operation} [owner element]}{47}{section*.13}
! \contentsline {subsection}{\numberline {2.4.3}Mapping Interface Operation's XML Representation to Component Properties}{47}{subsection.2.4.3}
! \contentsline {section}{\numberline {2.5}Message Reference}{48}{section.2.5}
! \contentsline {subsection}{\numberline {2.5.1}The Message Reference Component}{48}{subsection.2.5.1}
\contentsline {subsection}{\numberline {2.5.2}XML Representation of Message Reference Component}{50}{subsection.2.5.2}
! \contentsline {subsubsection}{\texttt {messageLabel} \textit {attribute information item} with \texttt {input}, or \texttt {output} [owner element]}{52}{section*.14}
! \contentsline {subsubsection}{\texttt {element} \textit {attribute information item} with \texttt {input}, or \texttt {output} [owner element]}{52}{section*.15}
! \contentsline {subsection}{\numberline {2.5.3}Mapping Message Reference's XML Representation to Component Properties}{52}{subsection.2.5.3}
! \contentsline {section}{\numberline {2.6}Fault Reference}{53}{section.2.6}
! \contentsline {subsection}{\numberline {2.6.1}The Fault Reference Component}{53}{subsection.2.6.1}
! \contentsline {subsection}{\numberline {2.6.2}XML Representation of Fault Reference}{55}{subsection.2.6.2}
! \contentsline {subsubsection}{\texttt {ref} \textit {attribute information item} with \texttt {infault}, or \texttt {outfault} [owner element]}{56}{section*.16}
\contentsline {subsubsection}{\texttt {messageLabel} \textit {attribute information item} with \texttt {infault}, or \texttt {outfault} [owner element]}{56}{section*.17}
! \contentsline {subsection}{\numberline {2.6.3}Mapping Fault Reference's XML Representation to Component Properties}{57}{subsection.2.6.3}
! \contentsline {section}{\numberline {2.7}Feature}{58}{section.2.7}
! \contentsline {subsection}{\numberline {2.7.1}The Feature Component}{58}{subsection.2.7.1}
! \contentsline {subsubsection}{Feature Composition Model}{59}{section*.18}
\contentsline {subsection}{\numberline {2.7.2}XML Representation of Feature Component}{61}{subsection.2.7.2}
! \contentsline {subsubsection}{\texttt {uri} \textit {attribute information item} with \texttt {feature} [owner element]}{62}{section*.19}
\contentsline {subsubsection}{\texttt {required} \textit {attribute information item} with \texttt {feature} [owner element]}{62}{section*.20}
! \contentsline {subsection}{\numberline {2.7.3}Mapping Feature's XML Representation to Component Properties}{63}{subsection.2.7.3}
! \contentsline {section}{\numberline {2.8}Property}{63}{section.2.8}
! \contentsline {subsection}{\numberline {2.8.1}The Property Component}{63}{subsection.2.8.1}
! \contentsline {subsubsection}{Property Composition Model}{65}{section*.21}
! \contentsline {subsection}{\numberline {2.8.2}XML Representation of Property Component}{67}{subsection.2.8.2}
! \contentsline {subsubsection}{\texttt {uri} \textit {attribute information item} with \texttt {property} [owner element]}{68}{section*.22}
! \contentsline {subsubsection}{\texttt {value} \textit {element information item} with \texttt {property} [parent]}{68}{section*.23}
! \contentsline {subsubsection}{\texttt {constraint} \textit {element information item} with \texttt {property} [parent]}{69}{section*.24}
! \contentsline {subsection}{\numberline {2.8.3}Mapping Property's XML Representation to Component Properties}{69}{subsection.2.8.3}
! \contentsline {section}{\numberline {2.9}Binding}{70}{section.2.9}
! \contentsline {subsection}{\numberline {2.9.1}The Binding Component}{70}{subsection.2.9.1}
! \contentsline {subsection}{\numberline {2.9.2}XML Representation of Binding Component}{72}{subsection.2.9.2}
! \contentsline {subsubsection}{\texttt {name} \textit {attribute information item} with \texttt {binding} [owner element]}{73}{section*.25}
! \contentsline {subsubsection}{\texttt {interface} \textit {attribute information item} with \texttt {binding} [owner element]}{73}{section*.26}
! \contentsline {subsubsection}{\texttt {type} \textit {attribute information item} with \texttt {binding} [owner element]}{73}{section*.27}
! \contentsline {subsubsection}{Binding extension elements}{74}{section*.28}
! \contentsline {subsection}{\numberline {2.9.3}Mapping Binding's XML Representation to Component Properties}{74}{subsection.2.9.3}
! \contentsline {section}{\numberline {2.10}Binding Fault}{74}{section.2.10}
! \contentsline {subsection}{\numberline {2.10.1}The Binding Fault Component}{74}{subsection.2.10.1}
! \contentsline {subsection}{\numberline {2.10.2}XML Representation of Binding Fault Component}{76}{subsection.2.10.2}
! \contentsline {subsubsection}{\texttt {ref} \textit {attribute information item} with \texttt {fault} [owner element]}{77}{section*.29}
! \contentsline {subsubsection}{Binding Fault extension elements}{77}{section*.30}
! \contentsline {subsection}{\numberline {2.10.3}Mapping Binding Fault's XML Representation to Component Properties}{77}{subsection.2.10.3}
! \contentsline {section}{\numberline {2.11}Binding Operation}{78}{section.2.11}
! \contentsline {subsection}{\numberline {2.11.1}The Binding Operation Component}{78}{subsection.2.11.1}
! \contentsline {subsection}{\numberline {2.11.2}XML Representation of Binding Operation Component}{79}{subsection.2.11.2}
! \contentsline {subsubsection}{\texttt {ref} \textit {attribute information item} with \texttt {operation} [owner element]}{80}{section*.31}
! \contentsline {subsubsection}{Binding Operation extension elements}{81}{section*.32}
! \contentsline {subsection}{\numberline {2.11.3}Mapping Binding Operation's XML Representation to Component Properties}{81}{subsection.2.11.3}
! \contentsline {section}{\numberline {2.12}Binding Message Reference}{81}{section.2.12}
! \contentsline {subsection}{\numberline {2.12.1}The Binding Message Reference Component}{81}{subsection.2.12.1}
! \contentsline {subsection}{\numberline {2.12.2}XML Representation of Binding Message Reference Component}{82}{subsection.2.12.2}
! \contentsline {subsubsection}{\texttt {messageLabel} \textit {attribute information item} with \texttt {input} or \texttt {output} [owner element]}{84}{section*.33}
! \contentsline {subsubsection}{Binding Message Reference extension elements}{84}{section*.34}
! \contentsline {subsection}{\numberline {2.12.3}Mapping Binding Message Reference's XML Representation to Component Properties}{84}{subsection.2.12.3}
! \contentsline {section}{\numberline {2.13}Binding Fault Reference}{85}{section.2.13}
! \contentsline {subsection}{\numberline {2.13.1}The Binding Fault Reference Component}{85}{subsection.2.13.1}
! \contentsline {subsection}{\numberline {2.13.2}XML Representation of Binding Fault Reference Component}{86}{subsection.2.13.2}
! \contentsline {subsubsection}{\texttt {ref} \textit {attribute information item} with \texttt {infault} or \texttt {outfault} [owner element]}{87}{section*.35}
! \contentsline {subsubsection}{\texttt {messageLabel} \textit {attribute information item} with \texttt {infault} or \texttt {outfault} [owner element]}{88}{section*.36}
! \contentsline {subsubsection}{Binding Fault Reference extension elements}{88}{section*.37}
! \contentsline {subsection}{\numberline {2.13.3}Mapping Binding Fault Reference's XML Representation to Component Properties}{88}{subsection.2.13.3}
! \contentsline {section}{\numberline {2.14}Service}{89}{section.2.14}
! \contentsline {subsection}{\numberline {2.14.1}The Service Component}{89}{subsection.2.14.1}
! \contentsline {subsubsection}{Operation Name Mapping Requirement}{90}{section*.38}
! \contentsline {subsection}{\numberline {2.14.2}XML Representation of Service Component}{91}{subsection.2.14.2}
! \contentsline {subsubsection}{Service References}{92}{section*.39}
! \contentsline {subsubsection}{\texttt {name} \textit {attribute information item} with \texttt {service} [owner element]}{92}{section*.40}
! \contentsline {subsubsection}{\texttt {interface} \textit {attribute information item} with \texttt {service} [owner element]}{93}{section*.41}
! \contentsline {subsection}{\numberline {2.14.3}Mapping Service's XML Representation to Component Properties}{93}{subsection.2.14.3}
! \contentsline {section}{\numberline {2.15}Endpoint}{94}{section.2.15}
! \contentsline {subsection}{\numberline {2.15.1}The Endpoint Component}{94}{subsection.2.15.1}
! \contentsline {subsection}{\numberline {2.15.2}XML Representation of Endpoint Component}{95}{subsection.2.15.2}
! \contentsline {subsubsection}{Endpoint References}{96}{section*.42}
! \contentsline {subsubsection}{\texttt {name} \textit {attribute information item} with \texttt {endpoint} [owner element]}{96}{section*.43}
! \contentsline {subsubsection}{\texttt {binding} \textit {attribute information item} with \texttt {endpoint} [owner element]}{97}{section*.44}
! \contentsline {subsubsection}{\texttt {address} \textit {attribute information item} with \texttt {endpoint} [owner element]}{97}{section*.45}
! \contentsline {subsubsection}{Endpoint extension elements}{97}{section*.46}
! \contentsline {subsection}{\numberline {2.15.3}Mapping Endpoint's XML Representation to Component Properties}{97}{subsection.2.15.3}
! \contentsline {section}{\numberline {2.16}XML Schema 1.0 Simple Types Used in the Component Model}{98}{section.2.16}
! \contentsline {subsection}{\numberline {2.16.1}\textit {NCName} Type}{98}{subsection.2.16.1}
! \contentsline {subsection}{\numberline {2.16.2}\textit {anyURI} Type}{98}{subsection.2.16.2}
! \contentsline {subsection}{\numberline {2.16.3}\textit {QName} Type}{99}{subsection.2.16.3}
! \contentsline {subsection}{\numberline {2.16.4}\textit {boolean} Type}{99}{subsection.2.16.4}
! \contentsline {section}{\numberline {2.17}Equivalence of Components}{99}{section.2.17}
! \contentsline {section}{\numberline {2.18}Symbol Spaces}{100}{section.2.18}
! \contentsline {section}{\numberline {2.19}QName resolution}{100}{section.2.19}
! \contentsline {section}{\numberline {2.20}Comparing URIs}{100}{section.2.20}
! \contentsline {chapter}{\numberline {3}Types}{102}{chapter.3}
! \contentsline {section}{\numberline {3.1}Using W3C XML Schema Description Language}{103}{section.3.1}
! \contentsline {subsection}{\numberline {3.1.1}Importing XML Schema}{104}{subsection.3.1.1}
! \contentsline {subsubsection}{\texttt {namespace} \textit {attribute information item}}{104}{section*.47}
! \contentsline {subsubsection}{\texttt {schemaLocation} \textit {attribute information item}}{105}{section*.48}
! \contentsline {subsection}{\numberline {3.1.2}Embedding XML Schema}{105}{subsection.3.1.2}
! \contentsline {subsubsection}{\texttt {targetNamespace} \textit {attribute information item}}{106}{section*.49}
! \contentsline {subsection}{\numberline {3.1.3}References to Element Declarations and Type Definitions}{106}{subsection.3.1.3}
! \contentsline {section}{\numberline {3.2}Using Other Schema Languages}{107}{section.3.2}
! \contentsline {chapter}{\numberline {4}Modularizing WSDL descriptions}{108}{chapter.4}
! \contentsline {section}{\numberline {4.1}Including Descriptions}{108}{section.4.1}
! \contentsline {subsection}{\numberline {4.1.1}\texttt {location} \textit {attribute information item} with \texttt {include} [owner element]}{109}{subsection.4.1.1}
! \contentsline {section}{\numberline {4.2}Importing Descriptions}{110}{section.4.2}
! \contentsline {subsection}{\numberline {4.2.1}\texttt {namespace} \textit {attribute information item}}{111}{subsection.4.2.1}
! \contentsline {subsection}{\numberline {4.2.2}\texttt {location} \textit {attribute information item} with \texttt {import} [owner element]}{112}{subsection.4.2.2}
! \contentsline {chapter}{\numberline {5}Documentation}{113}{chapter.5}
! \contentsline {chapter}{\numberline {6}Language Extensibility}{114}{chapter.6}
! \contentsline {section}{\numberline {6.1}Element based Extensibility}{114}{section.6.1}
! \contentsline {subsection}{\numberline {6.1.1}Mandatory extensions}{115}{subsection.6.1.1}
! \contentsline {subsection}{\numberline {6.1.2}\texttt {required} \textit {attribute information item}}{116}{subsection.6.1.2}
! \contentsline {section}{\numberline {6.2}Attribute-based Extensibility}{116}{section.6.2}
! \contentsline {section}{\numberline {6.3}Extensibility Semantics}{116}{section.6.3}
! \contentsline {chapter}{\numberline {7}Locating WSDL Documents}{118}{chapter.7}
! \contentsline {section}{\numberline {7.1}\texttt {wsdli:wsdlLocation} \textit {attribute information item}}{118}{section.7.1}
! \contentsline {chapter}{\numberline {8}Conformance}{119}{chapter.8}
! \contentsline {section}{\numberline {8.1}XML Information Set Conformance}{119}{section.8.1}
! \contentsline {chapter}{\numberline {9}XML Syntax Summary (Non-Normative)}{120}{chapter.9}
! \contentsline {chapter}{\numberline {10}References}{124}{chapter.10}
! \contentsline {section}{\numberline {10.1}Normative References}{124}{section.10.1}
! \contentsline {section}{\numberline {10.2}Informative References}{126}{section.10.2}
! \contentsline {chapter}{\numberline {A}The application/wsdl+xml Media Type}{129}{appendix.A}
! \contentsline {section}{\numberline {A.1}Registration}{129}{section.A.1}
! \contentsline {section}{\numberline {A.2}Fragment Identifiers}{130}{section.A.2}
! \contentsline {subsection}{\numberline {A.2.1}wsdl.interface(\textit {interface})}{132}{subsection.A.2.1}
! \contentsline {subsection}{\numberline {A.2.2}wsdl.interfaceFault(\textit {interface}/\textit {fault})}{132}{subsection.A.2.2}
! \contentsline {subsection}{\numberline {A.2.3}wsdl.interfaceOperation(\textit {interface}/\textit {operation})}{132}{subsection.A.2.3}
! \contentsline {subsection}{\numberline {A.2.4}wsdl.messageReference(\textit {interface}/\textit {operation}/\textit {message})}{132}{subsection.A.2.4}
! \contentsline {subsection}{\numberline {A.2.5}wsdl.faultReference(\textit {interface}/\textit {operation}/\textit {message}/\textit {fault})}{132}{subsection.A.2.5}
! \contentsline {subsection}{\numberline {A.2.6}wsdl.binding(\textit {binding})}{133}{subsection.A.2.6}
! \contentsline {subsection}{\numberline {A.2.7}wsdl.bindingFault(\textit {binding}/\textit {fault})}{133}{subsection.A.2.7}
! \contentsline {subsection}{\numberline {A.2.8}wsdl.bindingOperation(\textit {binding}/\textit {operation})}{133}{subsection.A.2.8}
! \contentsline {subsection}{\numberline {A.2.9}wsdl.bindingMessageReference(\textit {binding}/\textit {operation}/\textit {message})}{133}{subsection.A.2.9}
! \contentsline {subsection}{\numberline {A.2.10}wsdl.bindingFaultReference(\textit {binding}/\textit {operation}/\textit {fault}/\textit {message})}{133}{subsection.A.2.10}
! \contentsline {subsection}{\numberline {A.2.11} wsdl.service(\textit {service}) }{134}{subsection.A.2.11}
! \contentsline {subsection}{\numberline {A.2.12}wsdl.endpoint(\textit {service}/\textit {endpoint})}{134}{subsection.A.2.12}
! \contentsline {subsection}{\numberline {A.2.13}wsdl.feature(\textit {parent}/\textit {feature})}{134}{subsection.A.2.13}
! \contentsline {subsection}{\numberline {A.2.14}wsdl.property(\textit {parent}/\textit {property})}{134}{subsection.A.2.14}
! \contentsline {subsection}{\numberline {A.2.15}wsdl.extension(\textit {extension-namespace}, \textit {extension-specific-syntax})}{134}{subsection.A.2.15}
! \contentsline {section}{\numberline {A.3}Security considerations}{135}{section.A.3}
! \contentsline {chapter}{\numberline {B}Acknowledgements (Non-Normative)}{136}{appendix.B}
! \contentsline {chapter}{\numberline {C}URI References for WSDL Components (Non-Normative)}{138}{appendix.C}
! \contentsline {section}{\numberline {C.1}WSDL URIs}{138}{section.C.1}
! \contentsline {section}{\numberline {C.2}Example}{139}{section.C.2}
! \contentsline {chapter}{\numberline {D}Migrating from WSDL 1.1 to WSDL 2.0 (Non-Normative)}{140}{appendix.D}
! \contentsline {section}{\numberline {D.1}Operation Overloading}{140}{section.D.1}
! \contentsline {section}{\numberline {D.2}PortTypes}{140}{section.D.2}
! \contentsline {section}{\numberline {D.3}Ports}{140}{section.D.3}
! \contentsline {section}{\numberline {D.4}Single Interface per Service}{140}{section.D.4}
! \contentsline {chapter}{\numberline {E}Examples of Specifications of Extension Elements for Alternative Schema Language Support. (Non-Normative)}{142}{appendix.E}
! \contentsline {section}{\numberline {E.1}DTD}{142}{section.E.1}
! \contentsline {subsection}{\numberline {E.1.1}\texttt {namespace} \textit {attribute information item}}{143}{subsection.E.1.1}
! \contentsline {subsection}{\numberline {E.1.2}\texttt {location} \textit {attribute information item}}{143}{subsection.E.1.2}
! \contentsline {subsection}{\numberline {E.1.3}References to Element Definitions}{143}{subsection.E.1.3}
! \contentsline {section}{\numberline {E.2}RELAX NG}{143}{section.E.2}
! \contentsline {subsection}{\numberline {E.2.1}Importing RELAX NG}{144}{subsection.E.2.1}
! \contentsline {subsubsection}{\texttt {ns} \textit {attribute information item}}{144}{section*.50}
! \contentsline {subsubsection}{\texttt {href} \textit {attribute information item}}{144}{section*.51}
! \contentsline {subsection}{\numberline {E.2.2}Embedding RELAX NG}{145}{subsection.E.2.2}
! \contentsline {subsubsection}{\texttt {ns} \textit {attribute information item}}{145}{section*.52}
! \contentsline {subsection}{\numberline {E.2.3}References to Element Declarations}{145}{subsection.E.2.3}
! \contentsline {chapter}{\numberline {F}Part 1 Change Log (Non-Normative)}{146}{appendix.F}
! \contentsline {section}{\numberline {F.1}WSDL Specification Changes}{146}{section.F.1}
Index: wsdl20.xml
===================================================================
RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20.xml,v
retrieving revision 1.227
retrieving revision 1.228
diff -C2 -d -r1.227 -r1.228
*** wsdl20.xml 30 Apr 2005 13:35:20 -0000 1.227
--- wsdl20.xml 1 May 2005 12:20:08 -0000 1.228
***************
*** 6432,6447 ****
</ulist>
! <p>Note that the XML Schema <bibref ref="XMLSchemaP1"/> type of the
! &EII; <el>service</el> as defined in the WSDL schema MAY be
used as the basis for defining new elements which can be used
! as service references in message exchanges. To enable such
reuse, the WSDL schema defines the &AII; <att>name</att> as
! optional in the type of the &EII; <el>service</el>, while it
is REQUIRED for the &EII; <el>service</el> as indicated
! above.</p>
<note><p>See the primer <bibref ref="WSDL-PART0"/> for more
information and examples.</p></note>
<div4 id="Service_name_attribute">
--- 6432,6456 ----
</ulist>
+ <div4 id="Service_references">
+ <head>Service References</head>
! <p diff="chg">Note that <el>ServiceType</el>, which is the XML Schema <bibref ref="XMLSchemaP1"/> complex type of the
! &EII; <el>service</el> as defined in the WSDL schema, MAY be
used as the basis for defining new elements which can be used
! as service references in message exchanges.
! In the case that the message contains a reference to a service
! that implements a known interface, an element whose type
! restricts the complex type <el>ServiceType</el> to have a fixed value for the
! &AII; <att>interface</att> MAY be used.
! To enable such
reuse, the WSDL schema defines the &AII; <att>name</att> as
! optional in complex type <el>ServiceType</el>, while it
is REQUIRED for the &EII; <el>service</el> as indicated
! above.
! </p>
<note><p>See the primer <bibref ref="WSDL-PART0"/> for more
information and examples.</p></note>
+ </div4>
<div4 id="Service_name_attribute">
***************
*** 6729,6732 ****
--- 6738,6763 ----
</ulist>
+ <div4 id="Endpoint_references">
+ <head>Endpoint References</head>
+
+ <p diff="chg">Note that <el>EndpointType</el>, which is the XML Schema <bibref ref="XMLSchemaP1"/> complex type of the
+ &EII; <el>endpoint</el> as defined in the WSDL schema, MAY be
+ used as the basis for defining new elements which can be used
+ as endpoint references in message exchanges.
+ In the case that the message contains a reference to an endpoint
+ that implements a known binding, an element whose type
+ restricts the complex type <el>EndpointType</el> to have a fixed value for the
+ &AII; <att>binding</att> MAY be used.
+ To enable such
+ reuse, the WSDL schema defines the &AII; <att>name</att> as
+ optional in complex type <el>EndpointType</el>, while it
+ is REQUIRED for the &EII; <el>endpoint</el> as indicated
+ above.
+ </p>
+
+ <note><p>See the primer <bibref ref="WSDL-PART0"/> for more
+ information and examples.</p></note>
+ </div4>
+
<div4 id="Endpoint_name_attribute">
<head><att>name</att> &AII; with <el>endpoint</el> [owner element]</head>
***************
*** 9491,9494 ****
--- 9522,9532 ----
<th>Description</th>
</tr>
+
+ <tr>
+ <td>20050430</td>
+ <td>AGR</td>
+ <td><loc href="http://www.w3.org/2002/ws/desc/4/lc-issues/issues.html#LC117">LC117</loc>:
+ Added use of EndpointType for endpoint references.</td>
+ </tr>
<tr>
Index: wsdl20-z.html
===================================================================
RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20-z.html,v
retrieving revision 1.24
retrieving revision 1.25
diff -C2 -d -r1.24 -r1.25
*** wsdl20-z.html 29 Apr 2005 19:42:03 -0000 1.24
--- wsdl20-z.html 1 May 2005 12:20:06 -0000 1.25
***************
*** 1,15 ****
! <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
! "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
! <html lang="en" xmlns="http://www.w3.org/1999/xhtml" xml:lang="en">
! <head>
! <meta name="generator" content=
! "HTML Tidy for Linux/x86 (vers 1st July 2004), see www.w3.org" />
! <meta http-equiv="Content-Type" content=
! "text/html; charset=utf-8" />
! <title>Web Services Description Language (WSDL) Version 2.0 Part 1:
! Core Language</title>
[...25194 lines suppressed...]
! <tr>
! <td rowspan="1" colspan="1">20020620</td>
! <td rowspan="1" colspan="1">SW</td>
! <td rowspan="1" colspan="1">Started adding abstract model</td>
! </tr>
! <tr>
! <td rowspan="1" colspan="1">20020406</td>
! <td rowspan="1" colspan="1">SW</td>
! <td rowspan="1" colspan="1">Created document from WSDL 1.1</td>
! </tr>
! </tbody>
! </table><br>
!
! </div>
! </div>
!
! </div>
!
! </body></html>
\ No newline at end of file
Index: wsdl20.pdf
===================================================================
RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20.pdf,v
retrieving revision 1.31
retrieving revision 1.32
diff -C2 -d -r1.31 -r1.32
*** wsdl20.pdf 22 Apr 2005 06:51:32 -0000 1.31
--- wsdl20.pdf 1 May 2005 12:20:06 -0000 1.32
***************
*** 898,908 ****
endobj
605 0 obj <<
! /Length 991
/Filter /FlateDecode
>>
stream
! xÚVKoÛ8¾ûWèP`% ¢Dê“[;»H6ZÇØÚ‹±ÕÊ’CI1üïwfH9)’ÞEæ Ýò¸£C~a¢]Z¼‹ú-äÑH‘°Ž¶ÄŠ·±J;w¥ÇÔ¨rg¦vG<~`5ž½$ŠbÜ{yl •–88ü‘Z6Ò¢ g“™uJjC‰@Nsòê–´\Jh5„[;ÕÐTue‹+ë®5‚6¼a-jS
! 4»ÛoÇòtv§¡Ýo¨ITÙ›!œµy|½9Þžx%ƱËÌ…{…4–˜íìzau«ªÅ7Ñ.?bj#/q
! mu:Ã}©:¥MJ•N²1 '"wðDR~=“ÔùŠækn±z-Kµ£õ'jbz\›Ò@ý:aM¨šôP+ËJî÷8TG/OLã'W«É¿ê$Dendstream
endobj
[...28166 lines suppressed...]
! 0000814634 00000 n
! 0000814760 00000 n
! 0000814886 00000 n
! 0000814985 00000 n
! 0000815086 00000 n
! 0000829249 00000 n
! 0000848434 00000 n
! 0000848475 00000 n
! 0000848515 00000 n
! 0000848707 00000 n
trailer
<<
! /Size 2887
! /Root 2885 0 R
! /Info 2886 0 R
! /ID [<BCCC89DBFADB2F942A9A230133C30C42> <BCCC89DBFADB2F942A9A230133C30C42>]
>>
startxref
! 848955
%%EOF
Index: wsdl20-primer.xml
===================================================================
RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20-primer.xml,v
retrieving revision 1.75
retrieving revision 1.76
diff -C2 -d -r1.75 -r1.76
*** wsdl20-primer.xml 30 Apr 2005 14:24:56 -0000 1.75
--- wsdl20-primer.xml 1 May 2005 12:20:08 -0000 1.76
***************
*** 100,104 ****
<p>Section 3 gives more information on defining message types.</p><p>Section 4 gives more information on interfaces.</p><p>Section 5 gives more information on bindings.</p><p>Section 6 gives more information on defining services.</p>
! <p>Section 5 covers various advanced topics, including features and properties, flexible authoring styles, service references, use of URIs, etc. </p>
</div2><div2 id="notation">
--- 100,104 ----
<p>Section 3 gives more information on defining message types.</p><p>Section 4 gives more information on interfaces.</p><p>Section 5 gives more information on bindings.</p><p>Section 6 gives more information on defining services.</p>
! <p>Section 5 covers various advanced topics, including features and properties, flexible authoring styles, service and endpoint references, use of URIs, etc. </p>
</div2><div2 id="notation">
***************
*** 1587,1594 ****
<div2 id="adv-service-references">
! <head>Service References</head>
- <ednote><name>Kliu</name><date>2005-04-26</date><edtext>This section might be broken. It's pending on resolution of <xspecref href="http://www.w3.org/2002/ws/desc/4/lc-issues/#LC117">Last Call issue LC117</xspecref>. </edtext></ednote>
-
<p>
Hyperlinking is one of the defining characteristics
--- 1587,1592 ----
<div2 id="adv-service-references">
! <head>Service and Endpoint References</head>
<p>
Hyperlinking is one of the defining characteristics
***************
*** 1597,1604 ****
natural to apply this capability to Web services.
This section describes
! <emph>service references</emph>,
which are the Web service analogs of document
hyperlinks.
! </p><p>One may wonder, from a Web architectural point of view, why anything more than a URI would be needed to reference a Web service. Indeed, a service reference does make use of a URI to indicate the endpoint address of a service. However, it may also include additional metadata about that service, such as the WSDL 2.0 interface and binding that the service supports.</p><p>Services references will be illustrated by expanding the GreatH example already discussed.</p>
<div3 id="reservationDetails"><head>The Reservation Details Web Service</head>
--- 1595,1618 ----
natural to apply this capability to Web services.
This section describes
! <emph>service references</emph> and <emph>endpoint references</emph>,
which are the Web service analogs of document
hyperlinks.
! </p>
!
! <p>
! One may wonder, from a Web architectural point of
! view, why anything more than a URI would be needed
! to reference a Web service. Indeed, a service
! reference does make use of a URI to indicate the
! endpoint address of a service. However, it may also
! include additional metadata about that service,
! such as the WSDL 2.0 interface and binding that the
! service supports.
! </p>
!
! <p>
! Service and endpoint references will be illustrated
! by expanding the GreatH example already discussed.
! </p>
<div3 id="reservationDetails"><head>The Reservation Details Web Service</head>
***************
*** 1615,1619 ****
http://greath.example.com/2004/reservation/OMX736.
This URI will be the endpoint address for a
! Reservation Detail Web service that can retrieve and
update the state of a reservation.
<specref ref="reservationDetails-OMX736.xml"/>
--- 1629,1633 ----
http://greath.example.com/2004/reservation/OMX736.
This URI will be the endpoint address for a
! Reservation Details Web service that can retrieve and
update the state of a reservation.
<specref ref="reservationDetails-OMX736.xml"/>
***************
*** 1636,1647 ****
</example>
! <p>
! The Reservation Details Web service provides operations for retrieving and updating the detail for a reservation.
! <specref ref="reservationDetails.wsdl"/> shows the description for this Web service.
! Note that there is no <code>wsdl:service</code> element in this description since the set of reservations is dynamic.
! Instead, the endpoints for the reservations will be returned by querying the Reservation List Web service.
! </p>
! <example id="reservationDetails.wsdl">
<head>The Reservation Details Web Service Description: reservationDetails.wsdl</head>
<eg><![CDATA[<?xml version="1.0" encoding="utf-8" ?>
--- 1650,1668 ----
</example>
! <p>
! The Reservation Details Web service provides
! operations for retrieving and updating the detail
! for a reservation.
! <specref ref="reservationDetails.wsdl" />
! shows the description for this Web service. Note
! that there is no
! <code>wsdl:service</code>
! element in this description since the set of
! reservations is dynamic. Instead, the endpoints for
! the reservations will be returned by querying the
! Reservation List Web service.
! </p>
! <example id="reservationDetails.wsdl">
<head>The Reservation Details Web Service Description: reservationDetails.wsdl</head>
<eg><![CDATA[<?xml version="1.0" encoding="utf-8" ?>
***************
*** 1702,1706 ****
</description>
-
]]></eg></example>
--- 1723,1726 ----
***************
*** 1720,1727 ****
xmlns:tns="http://greath.example.com/2004/schemas/reservationDetails"
xmlns:wdetails="http://greath.example.com/2004/services/reservationDetails"
! xmlns:wsdl="http://www.w3.org/2004/08/wsdl">
! <import namespace="http://www.w3.org/2004/08/wsdl"
! schemaLocation="../../../xmlcatalog/wsdl/wsdl20.xsd" />
<element name="confirmationNumber" type="string" />
--- 1740,1749 ----
xmlns:tns="http://greath.example.com/2004/schemas/reservationDetails"
xmlns:wdetails="http://greath.example.com/2004/services/reservationDetails"
! xmlns:wsdl="http://www.w3.org/2004/08/wsdl"
! xmlns:wsdli="http://www.w3.org/2004/08/wsdl-instance">
! <import namespace="http://www.w3.org/2004/08/wsdl" />
!
! <import namespace="http://www.w3.org/2004/08/wsdl-instance" />
<element name="confirmationNumber" type="string" />
***************
*** 1743,1747 ****
</element>
! <complexType name="ReservationDetailsEndpointType">
<complexContent>
<restriction base="wsdl:EndpointType">
--- 1765,1769 ----
</element>
! <complexType name="ReservationDetailsSOAPEndpointType">
<complexContent>
<restriction base="wsdl:EndpointType">
***************
*** 1752,1764 ****
</complexType>
<complexType name="ReservationDetailsServiceType">
<complexContent>
<restriction base="wsdl:ServiceType">
<sequence>
! <element name="endpoint"
! type="tns:ReservationDetailsEndpointType" />
</sequence>
<attribute name="interface" type="QName" use="required"
fixed="wdetails:reservationDetailsInterface" />
</restriction>
</complexContent>
--- 1774,1802 ----
</complexType>
+ <element name="reservationDetailsSOAPEndpoint"
+ type="tns:ReservationDetailsSOAPEndpointType">
+ <annotation>
+ <documentation>
+ This element contains a reference to the Reservation
+ Details Web Service SOAP Endpoint for this reservation.
+ </documentation>
+ </annotation>
+ </element>
+
<complexType name="ReservationDetailsServiceType">
<complexContent>
<restriction base="wsdl:ServiceType">
<sequence>
! <sequence>
! <element ref='wsdl:documentation' minOccurs='0'
! maxOccurs='0' />
! </sequence>
! <choice minOccurs='1' maxOccurs='unbounded'>
! <element ref='wsdl:endpoint' />
! </choice>
</sequence>
<attribute name="interface" type="QName" use="required"
fixed="wdetails:reservationDetailsInterface" />
+ <attribute ref="wsdli:wsdlLocation" />
</restriction>
</complexContent>
***************
*** 1794,1797 ****
--- 1832,1841 ----
attribute whose value is the Reservation Details binding,
<code>wdetails:reservationDetailsSOAPBinding</code>.
+ The
+ <code>reservationDetailsSOAPEndpoint</code>
+ element is thus a restriction of the
+ <code>wsdl:endpoint</code>
+ element that has the binding for the Reservation
+ Details service. This element will be used in the Reservation List service.
</p>
***************
*** 1803,1817 ****
to have an
<code>interface</code>
! attribute whose have is the Reservation Details service
interace,
! <code>wdetails:reservationDetailsInterface</code>
! . The
<code>reservationDetailsService</code>
element is thus a restriction of the
<code>wsdl:service</code>
! element that has the interface and binding for the Reservation
! Details service and whose endpoint address is that of the
! corresponding reservation. This element is used in the definition
! of the Reservation List Web service.
</p>
--- 1847,1892 ----
to have an
<code>interface</code>
! attribute whose value is the Reservation Details service
interace,
! <code>wdetails:reservationDetailsInterface</code>. The
<code>reservationDetailsService</code>
element is thus a restriction of the
<code>wsdl:service</code>
! element that has the interface for the Reservation Details
! service. Note that the attributes of the
! <code>ReservationDetailsServiceType</code>
! complex type have also been restricted to allow only the
! additional
! <code>wsdli:wsdlLocation</code>
! attribute, which will be used in
! <specref ref="reservationServiceReferences-HSG635.xml" />
! to specify the location of the WSDL 2.0 document that contains
! the definition of the
! <code>wdetails:reservationDetailsInterface</code>
! interface.
! </p>
!
! <p>
! In general, when you want to describe messages that contain
! endpoint references, you may use elements that are based on the
! <code>wsdl:EndpointType</code>
! complex type. If the bindings of the endpoints are fixed, you
! can define a restriction of the
! <code>wsdl:EndpointType</code>
! complex type that has a fixed value for the
! <code>binding</code>
! attribute. Similarly, when you want to describe messages that
! contain service references, you may use elements that are based
! on the
! <code>wsdl:ServiceType</code>
! complex type. If the interfaces of the services are fixed, you
! can define a restriction of the
! <code>wsdl:ServiceType</code>
! complex type that has a fixed value for the
! <code>interface</code>
! attribute. Note that the rules of XML Schema do not allow
! <code>wsdl:ServiceType</code> to be further restricted
! to have a fixed value for the <code>binding</code> attribute
! of its nested <code>wsdl:endpoint</code> elements.
</p>
***************
*** 1825,1829 ****
Reservation Detail endpoints are not described
in a fixed WSDL document. Instead they are
! returned as service references in response to
requests made on a Reservation List Web service.
The endpoint for the Reservation List service
--- 1900,1904 ----
Reservation Detail endpoints are not described
in a fixed WSDL document. Instead they are
! returned as endpoint references in response to
requests made on a Reservation List Web service.
The endpoint for the Reservation List service
***************
*** 1832,1857 ****
</p>
- <ednote>
- <name>Arthur</name>
- <date>20050326</date>
- <edtext>
- There is a problem in the current design of
- the WSDL schema. At present, the
- <code>wsdl:endpoint</code>
- element is namespace qualified so it is
- impossible to restrict
- <code>wsdl:ServiceType</code>
- to use the restricted
- <code>wsdl:EndPoint</code>
- type that has a fixed value for the
- <code>binding</code>
- attribute. The workaround is to change the
- WSDL schema so that
- <code>endpoint</code>
- has no namespace. For consistency, other
- nested elements should also have no
- namespace.
- </edtext>
- </ednote>
<p>
<specref ref="reservationList-all.xml"/>
--- 1907,1910 ----
***************
*** 1864,1871 ****
Service</head>
<eg>
! <![CDATA[<?xml version="1.0" encoding="UTF-8"?>
<reservationList
xmlns="http://greath.example.com/2004/schemas/reservationList"
xmlns:details="http://greath.example.com/2004/schemas/reservationDetails"
xmlns:wsdli="http://www.w3.org/2004/08/wsdl-instance"
wsdli:wsdlLocation="http://greath.example.com/2004/services/reservationDetails reservationDetails.wsdl">
--- 1917,1926 ----
Service</head>
<eg>
! <![CDATA[<?xml version="1.0" encoding="UTF-8"?>
<reservationList
xmlns="http://greath.example.com/2004/schemas/reservationList"
xmlns:details="http://greath.example.com/2004/schemas/reservationDetails"
+ xmlns:wdetails="http://greath.example.com/2004/services/reservationDetails"
+ xmlns:wsdl="http://www.w3.org/2004/08/wsdl"
xmlns:wsdli="http://www.w3.org/2004/08/wsdl-instance"
wsdli:wsdlLocation="http://greath.example.com/2004/services/reservationDetails reservationDetails.wsdl">
***************
*** 1875,1884 ****
<details:checkInDate>2005-06-27</details:checkInDate>
<details:checkOutDate>2005-06-28</details:checkOutDate>
! <details:reservationDetailsService
! interface="wdetails:reservationDetailsInterface">
! <details:endpoint name="SOAP"
! binding="wdetails:reservationDetailsSOAPBinding"
! address="http://greath.example.com/2004/reservation/HSG635"/>
! </details:reservationDetailsService>
</reservation>
--- 1930,1936 ----
<details:checkInDate>2005-06-27</details:checkInDate>
<details:checkOutDate>2005-06-28</details:checkOutDate>
! <details:reservationDetailsSOAPEndpoint
! binding="wdetails:reservationDetailsSOAPBinding"
! address="http://greath.example.com/2004/reservation/HSG635" />
</reservation>
***************
*** 1887,1896 ****
<details:checkInDate>2005-06-01</details:checkInDate>
<details:checkOutDate>2005-06-03</details:checkOutDate>
! <details:reservationDetailsService
! interface="wdetails:reservationDetailsInterface">
! <details:endpoint name="SOAP"
! binding="wdetails:reservationDetailsSOAPBinding"
! address="http://greath.example.com/2004/reservation/OMX736"/>
! </details:reservationDetailsService>
</reservation>
--- 1939,1945 ----
<details:checkInDate>2005-06-01</details:checkInDate>
<details:checkOutDate>2005-06-03</details:checkOutDate>
! <details:reservationDetailsSOAPEndpoint
! binding="wdetails:reservationDetailsSOAPBinding"
! address="http://greath.example.com/2004/reservation/OMX736" />
</reservation>
***************
*** 1899,1911 ****
<details:checkInDate>2005-06-11</details:checkInDate>
<details:checkOutDate>2005-06-15</details:checkOutDate>
! <details:reservationDetailsService
! interface="wdetails:reservationDetailsInterface">
! <details:endpoint name="SOAP"
! binding="wdetails:reservationDetailsSOAPBinding"
! address="http://greath.example.com/2004/reservation/WUH663"/>
! </details:reservationDetailsService>
</reservation>
! </reservationList>]]></eg>
</example>
--- 1948,1958 ----
<details:checkInDate>2005-06-11</details:checkInDate>
<details:checkOutDate>2005-06-15</details:checkOutDate>
! <details:reservationDetailsSOAPEndpoint
! binding="wdetails:reservationDetailsSOAPBinding"
! address="http://greath.example.com/2004/reservation/WUH663" />
</reservation>
! </reservationList>
! ]]></eg>
</example>
***************
*** 1913,1934 ****
Here, the
<code>
! <details:reservationDetailsService>
</code>
! elements contain service references to the
Reservation Details Web services for the
reservations HSG635, OMX736, and WUH663. The
! service references given the interface, binding,
and endpoint address of each service. In this
! example, all endpoints have the same interface
! and binding, i.e.
! <code>
! wdetails:reservationDetailsInterface
! </code>
! and
<code>
wdetails:reservationDetailsSOAPBinding
! </code>
! . These QNames identify WSDL 2.0 Interface and
! Binding components that are defined in a WSDL
2.0 document. This example shows the use of the
<code>wsdli:wsdlLocation</code>
--- 1960,1975 ----
Here, the
<code>
! <details:reservationDetailsSOAPEndpoint>
</code>
! elements contain endpoint references to the
Reservation Details Web services for the
reservations HSG635, OMX736, and WUH663. The
! endpoint references give the binding
and endpoint address of each service. In this
! example, all endpoints have the same binding, i.e.
<code>
wdetails:reservationDetailsSOAPBinding
! </code>. This QName identifies the WSDL 2.0
! Binding component that is defined in a WSDL
2.0 document. This example shows the use of the
<code>wsdli:wsdlLocation</code>
***************
*** 1941,1945 ****
<specref ref="reservationList.wsdl"/>
shows the description of the Reservation List
! Web service. Note that is contains operations to
retrieve the entire list and to query for a list
of reservations by confirmation number, check-in
--- 1982,1986 ----
<specref ref="reservationList.wsdl"/>
shows the description of the Reservation List
! Web service. Note that it contains operations to
retrieve the entire list and to query for a list
of reservations by confirmation number, check-in
***************
*** 1954,1958 ****
</head>
<eg>
! <![CDATA[<?xml version="1.0" encoding="utf-8" ?>
<description xmlns="http://www.w3.org/2004/08/wsdl"
targetNamespace="http://greath.example.com/2004/services/reservationList"
--- 1995,1999 ----
</head>
<eg>
! <![CDATA[<?xml version="1.0" encoding="utf-8" ?>
<description xmlns="http://www.w3.org/2004/08/wsdl"
targetNamespace="http://greath.example.com/2004/services/reservationList"
***************
*** 2035,2039 ****
</service>
! </description>]]>
</eg>
</example>
--- 2076,2081 ----
</service>
! </description>
! ]]>
</eg>
</example>
***************
*** 2042,2046 ****
<example id="reservationList.xsd">
<head>The Reservation List Schema: reservationList.xsd</head>
! <eg><![CDATA[<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
--- 2084,2089 ----
<example id="reservationList.xsd">
<head>The Reservation List Schema: reservationList.xsd</head>
! <eg>
! <![CDATA[<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
***************
*** 2050,2055 ****
xmlns:wsdli="http://www.w3.org/2004/08/wsdl-instance">
! <import namespace="http://www.w3.org/2004/08/wsdl-instance"
! schemaLocation="../../../xmlcatalog/wsdl/wsdl20-instance.xsd" />
<import
--- 2093,2097 ----
xmlns:wsdli="http://www.w3.org/2004/08/wsdl-instance">
! <import namespace="http://www.w3.org/2004/08/wsdl-instance" />
<import
***************
*** 2070,2074 ****
<element ref="details:checkInDate" />
<element ref="details:checkOutDate" />
! <element ref="details:reservationDetailsService" />
</sequence>
</complexType>
--- 2112,2116 ----
<element ref="details:checkInDate" />
<element ref="details:checkOutDate" />
! <element ref="details:reservationDetailsSOAPEndpoint" />
</sequence>
</complexType>
***************
*** 2095,2098 ****
--- 2137,2202 ----
]]></eg>
</example>
+
+ <p>
+ In the preceeding example, there was a single
+ endpoint associated with each Reservation Detail
+ Web service. Suppose GreatH hotel decided to
+ provide a second, secure endpoint. In this case,
+ service references would be used to collect
+ together the endpoints for each reservation. The
+ reservationDetails.xsd schema defines the
+ <code>reservationDetailsService</code>
+ element for this purpose. It restricts the
+ <code>wsdl:ServiceType</code>
+ complex type to have a fixed value of
+ <code>reservationDetailsInterface</code>
+ for the interface attribute.
+ </p>
+ <p>
+ <specref
+ ref="reservationServiceReferences-HSG635.xml" />
+ shows an example of a message that contains a
+ service reference for reservation HGS635. Note
+ that the service contains two endpoints, one of
+ which provides secure access to the Reservation
+ Details Web service. Note the use of the
+ <code>wsdli:wsdlLocation</code>
+ to provide the location for the WSDL 2.0
+ document that defines the
+ <code>
+ wdetails:reservationDetailsInterface
+ </code>
+ interface and the
+ <code>
+ wdetails:reservationDetailsSOAPBinding
+ </code>
+ binding.
+ </p>
+
+ <example id="reservationServiceReferences-HSG635.xml">
+ <head>A Service Reference to the Reservation Details Web Service</head>
+ <eg>
+ <![CDATA[<?xml version="1.0" encoding="UTF-8"?>
+ <details:reservationDetailsService interface="wdetails:reservationDetailsInterface"
+ xmlns:details="http://greath.example.com/2004/schemas/reservationDetails"
+ xmlns:wdetails="http://greath.example.com/2004/services/reservationDetails"
+ xmlns:wsdl="http://www.w3.org/2004/08/wsdl"
+ xmlns:wsdli="http://www.w3.org/2004/08/wsdl-instance"
+ wsdli:wsdlLocation="http://greath.example.com/2004/services/reservationDetails reservationDetails.wsdl">
+
+ <wsdl:endpoint
+ name="SOAP"
+ binding="wdetails:reservationDetailsSOAPBinding"
+ address="http://greath.example.com/2004/reservation/HSG635" />
+
+ <wsdl:endpoint
+ name="SECURE-SOAP"
+ binding="wdetails:reservationDetailsSOAPBinding"
+ address="https://greath.example.com/2004/reservation/HSG635" />
+
+ </details:reservationDetailsService>
+ ]]></eg></example>
+
+
</div3>
<div3 id="reservationDetails_HTTP"><head>Reservation Details Web Service Using HTTP Transfer</head><p>This section presents a variation on the example in <specref ref="reservationDetails"/>. It illustrates the use of HTTP transfer operations, GET and PUT, to retrieve and update GreatH hotel reservation details using the Representational State Transfer (REST) architectural style described by Roy Fielding <bibref ref="rest"/>. REST is a distillation of the architectural properties that Dr. Fielding identified as being vital to the Web's robustness and enormous scalability. </p><p>Since each reservation in our example will have a distinct URI, the Reservation Details Web
Index: wsdl20.html
===================================================================
RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20.html,v
retrieving revision 1.182
retrieving revision 1.183
diff -C2 -d -r1.182 -r1.183
*** wsdl20.html 29 Apr 2005 22:55:27 -0000 1.182
--- wsdl20.html 1 May 2005 12:20:07 -0000 1.183
***************
*** 95,99 ****
output [owner element]</a><br> 2.12.2.2 <a href="#Binding_Message_Reference_extension_elements">Binding Message Reference extension elements</a><br> 2.12.3 <a href="#Binding_Message_Reference_Mapping">Mapping Binding Message Reference's XML Representation to Component Properties</a><br> 2.13 <a href="#Binding_Fault_Reference">Binding Fault Reference</a><br> 2.13.1 <a href="#Binding_Fault_Reference_details">The Binding Fault Reference Component</a><br> 2.13.2 <a href="#Binding_Fault_Reference_XMLRep">XML Representation of Binding Fault Reference Component</a><br> 2.13.2.1 <a href="#Binding_Fault_Reference_ref_attribute">ref attribute information item with infault or
outfault [owner element]</a><br> 2.13.2.2 <a href="#Binding_Fault_Reference_messageLabel_attribute">messageLabel attribute information item with infault or
! outfault [owner element]</a><br> 2.13.2.3 <a href="#Binding_Fault_Reference_extension_elements">Binding Fault Reference extension elements</a><br> 2.13.3 <a href="#Binding_Fault_Reference_Mapping">Mapping Binding Fault Reference's XML Representation to Component Properties</a><br> 2.14 <a href="#Service">Service</a><br> 2.14.1 <a href="#Service_details">The Service Component</a><br> 2.14.1.1 <a href="#Service_OperationName">Operation Name Mapping Requirement</a><br> 2.14.2 <a href="#Service_XMLRep">XML Representation of Service Component</a><br> 2.14.2.1 <a href="#Service_name_attribute">name attribute information item with serice [owner element]</a><br> 2.14.2.2 <a href="#Service_interface_attribute">interface attribute information item with service [owner element]</a><br> 2.14.3 <a href="#Service_Mapping">Mapping Service's XML Representation to Component Properties</a><br> 2.15 <a href="#Endpoint">Endpoint</a><br> 2.15.1 <a href="#Endpoint_details">The Endpoint Component</a><br> 2.15.2 <a href="#Endpoint_XMLRep">XML Representation of Endpoint Component</a><br> 2.15.2.1 <a href="#Endpoint_name_attribute">name attribute information item with endpoint [owner element]</a><br> 2.15.2.2 <a href="#Endpoint_binding_attribute">binding attribute information item with ndpoint [owner element]</a><br> 2.15.2.3 <a href="#Endpoint_address_attribute">address attribute information item with endpoint [owner element]</a><br> 2.15.2.4 <a href="#Endpoint_extension_elements">Endpoint extension elements</a><br> 2.15.3 <a href="#Endpoint_Mapping">Mapping Endpoint's XML Representation to Component Properties</a><br> 2.16 <a href="#simpletypes">XML Schema 1.0 Simple Types Used in the Component Model</a><br> 2.16.1 <a href="#ncname_type">NCName Type</a><br> 2.16.2 <a href="#anyuri_type">anyURI Type</a><br> 2.16.3 <a href="#qname_type">QName Type</a><br> 2.16.4 <a href="#boolean_type">boolean Tye</a><br> 2.17 <a href="#compequiv">Equivalence of Components</a><br> 2.18 <a href="#symbolspaces">Symbol Spaces</a><br> 2.19 <a href="#qnameres">QName resolution</a><br> 2.20 <a href="#uricompare">Comparing URIs</a><br>3. <a href="#eii-types">Types</a><br> 3.1 <a href="#xsd-types">Using W3C XML Schema Description Language</a><br> 3.1.1 <a href="#import-xsd">Importing XML Schema</a><br> 3.1.1.1 <a href="#namespace-attribute">namespace attribute information item</a><br> 3.1.1.2 <a href="#schemaLocation-attribute">schemaLocation attribute information item</a><br> 3.1.2 <a href="#embed-xsd">Embedding XML Schema</a><br> nbsp; 3.1.2.1 <a href="#targetNamespace-attribute">targetNamespace attribute information item</a><br> 3.1.3 <a href="#references-definitions">References to Element Declarations and Type Definitions</a><br> 3.2 <a href="#other-types">Using Other Schema Languages</a><br>4. <a href="#modularize">Modularizing WSDL descriptions</a><br> 4.1 <a href="#includes">Including Descriptions</a><br> 4.1.1 <a href="#include_location_attribute">location attribute information item with include [owner element]</a><br> 4.2 <a href="#imports">Importing Descriptions</a><br> 4.2.1 <a href="#import_namespace_attribute">namespace attribute information item</a><br> 4.2.2 <a href="#import_location_attribute">location attribute information item with import [owner elment]</a><br>5. <a href="#eii-documentation">Documentation</a><br>6. <a href="#language-extensibility">Language Extensibility</a><br> 6.1 <a href="#eii-extensibility">Element based Extensibility</a><br> 6.1.1 <a href="#mandatoryext">Mandatory extensions</a><br> 6.1.2 <a href="#required-aii">required attribute information item</a><br> 6.2 <a href="#aii-extensibility">Attribute-based Extensibility</a><br> 6.3 <a href="#extensibility-semantics">Extensibility Semantics</a><br>7. <a href="#wsdllocation">Locating WSDL Documents</a><br> 7.1 <a href="#wsdlLocation-aii">wsdli:wsdlLocation attribute information item</a><br>8. <a href="#conformance">Conformance</a><br> 8.1 <a href="#infoset">XML Information Set Conformance</a><br>9. <a href="#Syntax-Summary">XML Syntax Summary (Non-Normative)</a><br>10. <a href="References">References</a><br> 10.1 <a href="#Normative-References">Normative References</a><br> 10.2 <a href="#Informative-References">Informative References</a><br></p>
<h3><a id="appendix" name="appendix">Appendices</a></h3><p class="toc">A. <a href="#ietf-draft">The application/wsdl+xml Media Type</a><br> A.1 <a href="#ietf-reg">Registration</a><br> A.2 <a href="#frag-ids">Fragment Identifiers</a><br> A.2.1 <a href="#wsdl.interface">wsdl.interface(interface)</a><br> A.2.2 <a href="#wsdl.interfaceFault">wsdl.interfaceFault(interface/fault)</a><br> A.2.3 <a href="#wsdl.interfaceOperation">wsdl.interfaceOperation(interface/operation)</a><br> A.2.4 <a href="#wsdl.messageReference">wsdl.messageReference(interface/operation/message)</a><br> A.2.5 <a href="#wsdl.faultReference">wsdl.faultReference(interface/operation/message/fault)</a><br> A.2.6 <a href=#wsdl.binding">wsdl.binding(binding)</a><br> A.2.7 <a href="#wsdl.bindingFault">wsdl.bindingFault(binding/fault)</a><br> A.2.8 <a href="#wsdl.bindingOperation">wsdl.bindingOperation(binding/operation)</a><br> A.2.9 <a href="#wsdl.bindingMessageReference">wsdl.bindingMessageReference(binding/operation/message)</a><br> A.2.10 <a href="#wsdl.bindingFaultReference">wsdl.bindingFaultReference(binding/operation/fault/message)</a><br> A.2.11 <a href="#wsdl.service">
wsdl.service(service)
--- 95,99 ----
output [owner element]</a><br> 2.12.2.2 <a href="#Binding_Message_Reference_extension_elements">Binding Message Reference extension elements</a><br> 2.12.3 <a href="#Binding_Message_Reference_Mapping">Mapping Binding Message Reference's XML Representation to Component Properties</a><br> 2.13 <a href="#Binding_Fault_Reference">Binding Fault Reference</a><br> 2.13.1 <a href="#Binding_Fault_Reference_details">The Binding Fault Reference Component</a><br> 2.13.2 <a href="#Binding_Fault_Reference_XMLRep">XML Representation of Binding Fault Reference Component</a><br> 2.13.2.1 <a href="#Binding_Fault_Reference_ref_attribute">ref attribute information item with infault or
outfault [owner element]</a><br> 2.13.2.2 <a href="#Binding_Fault_Reference_messageLabel_attribute">messageLabel attribute information item with infault or
! outfault [owner element]</a><br> 2.13.2.3 <a href="#Binding_Fault_Reference_extension_elements">Binding Fault Reference extension elements</a><br> 2.13.3 <a href="#Binding_Fault_Reference_Mapping">Mapping Binding Fault Reference's XML Representation to Component Properties</a><br> 2.14 <a href="#Service">Service</a><br> 2.14.1 <a href="#Service_details">The Service Component</a><br> 2.14.1.1 <a href="#Service_OperationName">Operation Name Mapping Requirement</a><br> 2.14.2 <a href="#Service_XMLRep">XML Representation of Service Component</a><br> 2.14.2.1 <a href="#Service_references">Service References</a><br> nbsp; 2.14.2.2 <a href="#Service_name_attribute">name attribute information item with service [owner element]</a><br> 2.14.2.3 <a href="#Service_interface_attribute">interface attribute information item with service [owner element]</a><br> 2.14.3 <a href="#Service_Mapping">Mapping Service's XML Representation to Component Properties</a><br> 2.15 <a href="#Endpoint">Endpoint</a><br> 2.15.1 <a href="#Endpoint_details">The Endpoint Component</a><br> 2.15.2 <a href="#Endpoint_XMLRep">XML Representation of Endpoint Component</a><br> 2.15.2.1 <a href="#Endpoint_references">Endpoint References</a><br> &nsp;2.15.2.2 <a href="#Endpoint_name_attribute">name attribute information item with endpoint [owner element]</a><br> 2.15.2.3 <a href="#Endpoint_binding_attribute">binding attribute information item with endpoint [owner element]</a><br> 2.15.2.4 <a href="#Endpoint_address_attribute">address attribute information item with endpoint [owner element]</a><br> 2.15.2.5 <a href="#Endpoint_extension_elements">Endpoint extension elements</a><br> 2.15.3 <a href="#Endpoint_Mapping">Mapping Endpoint's XML Representation to Component Properties</a><br> 2.16 <a href="#simpletypes">XML Schema 1.0 Simple Types Used in the Component Model</a><br> 2.16.1 <a href="#ncname_type">NCName Type</a><br>  2.16.2 <a href="#anyuri_type">anyURI Type</a><br> 2.16.3 <a href="#qname_type">QName Type</a><br> 2.16.4 <a href="#boolean_type">boolean Type</a><br> 2.17 <a href="#compequiv">Equivalence of Components</a><br> 2.18 <a href="#symbolspaces">Symbol Spaces</a><br> 2.19 <a href="#qnameres">QName resolution</a><br> 2.20 <a href="#uricompare">Comparing URIs</a><br>3. <a href="#eii-types">Types</a><br> 3.1 <a href="#xsd-types">Using W3C XML Schema Description Language</a><br> 3.1.1 <a href="#import-xsd">Importing XML Schema</a><br> 3.1.1.1 <a href="#namespace-attribute">namespace attribute information item</a><br> &nbs; 3.1.1.2 <a href="#schemaLocation-attribute">schemaLocation attribute information item</a><br> 3.1.2 <a href="#embed-xsd">Embedding XML Schema</a><br> 3.1.2.1 <a href="#targetNamespace-attribute">targetNamespace attribute information item</a><br> 3.1.3 <a href="#references-definitions">References to Element Declarations and Type Definitions</a><br> 3.2 <a href="#other-types">Using Other Schema Languages</a><br>4. <a href="#modularize">Modularizing WSDL descriptions</a><br> 4.1 <a href="#includes">Including Descriptions</a><br> 4.1.1 <a href="#include_location_attribute">location attribute information item with include [owner element]</a><br> 4.2 <a href="#imports">Importing Descriptions</a><br> &nsp; 4.2.1 <a href="#import_namespace_attribute">namespace attribute information item</a><br> 4.2.2 <a href="#import_location_attribute">location attribute information item with import [owner element]</a><br>5. <a href="#eii-documentation">Documentation</a><br>6. <a href="#language-extensibility">Language Extensibility</a><br> 6.1 <a href="#eii-extensibility">Element based Extensibility</a><br> 6.1.1 <a href="#mandatoryext">Mandatory extensions</a><br> 6.1.2 <a href="#required-aii">required attribute information item</a><br> 6.2 <a href="#aii-extensibility">Attribute-based Extensibility</a><br> 6.3 <a href="#extensibility-semantics">Extensibility Semantics</a><br>7. <a href="#wsdllocation">Locating WSDL Documents</a><br> 7.1 <a href="#wsdlLocatin-aii">wsdli:wsdlLocation attribute information item</a><br>8. <a href="#conformance">Conformance</a><br> 8.1 <a href="#infoset">XML Information Set Conformance</a><br>9. <a href="#Syntax-Summary">XML Syntax Summary (Non-Normative)</a><br>10. <a href="#References">References</a><br> 10.1 <a href="#Normative-References">Normative References</a><br> 10.2 <a href="#Informative-References">Informative References</a><br></p>
<h3><a id="appendix" name="appendix">Appendices</a></h3><p class="toc">A. <a href="#ietf-draft">The application/wsdl+xml Media Type</a><br> A.1 <a href="#ietf-reg">Registration</a><br> A.2 <a href="#frag-ids">Fragment Identifiers</a><br> A.2.1 <a href="#wsdl.interface">wsdl.interface(interface)</a><br> A.2.2 <a href="#wsdl.interfaceFault">wsdl.interfaceFault(interface/fault)</a><br> A.2.3 <a href="#wsdl.interfaceOperation">wsdl.interfaceOperation(interface/operation)</a><br> A.2.4 <a href="#wsdl.messageReference">wsdl.messageReference(interface/operation/message)</a><br> A.2.5 <a href="#wsdl.faultReference">wsdl.faultReference(interface/operation/message/fault)</a><br> A.2.6 <a href=#wsdl.binding">wsdl.binding(binding)</a><br> A.2.7 <a href="#wsdl.bindingFault">wsdl.bindingFault(binding/fault)</a><br> A.2.8 <a href="#wsdl.bindingOperation">wsdl.bindingOperation(binding/operation)</a><br> A.2.9 <a href="#wsdl.bindingMessageReference">wsdl.bindingMessageReference(binding/operation/message)</a><br> A.2.10 <a href="#wsdl.bindingFaultReference">wsdl.bindingFaultReference(binding/operation/fault/message)</a><br> A.2.11 <a href="#wsdl.service">
wsdl.service(service)
***************
*** 1000,1003 ****
--- 1000,1005 ----
<a name="zed-InterfaceRI"></a>
+ <a name="zed-InterfaceParent"></a>
+
<a name="zed-InterfaceClosure"></a>
***************
*** 2719,2722 ****
--- 2721,2726 ----
<a name="zed-Feature"></a>
+ <a name="zed-FeatureRI"></a>
+
<div class="div4">
***************
*** 4848,4852 ****
<p>
A REQUIRED <code>name</code> <em>attribute information item</em>
! as described below in <a href="#Service_name_attribute"><b>2.14.2.1 name attribute information item with service [owner element]</b></a>.
</p>
</li>
--- 4852,4856 ----
<p>
A REQUIRED <code>name</code> <em>attribute information item</em>
! as described below in <a href="#Service_name_attribute"><b>2.14.2.2 name attribute information item with service [owner element]</b></a>.
</p>
</li>
***************
*** 4854,4858 ****
<p>
A REQUIRED <code>interface</code> <em>attribute information item</em>
! as described below in <a href="#Service_interface_attribute"><b>2.14.2.2 interface attribute information item with service [owner element]</b></a>.
</p>
</li>
--- 4858,4862 ----
<p>
A REQUIRED <code>interface</code> <em>attribute information item</em>
! as described below in <a href="#Service_interface_attribute"><b>2.14.2.3 interface attribute information item with service [owner element]</b></a>.
</p>
</li>
***************
*** 4898,4917 ****
</ul>
! <p>Note that the XML Schema [<cite><a href="#XMLSchemaP1">XML Schema: Structures</a></cite>] type of the
! <em>element information item</em> <code>service</code> as defined in the WSDL schema MAY be
used as the basis for defining new elements which can be used
! as service references in message exchanges. To enable such
reuse, the WSDL schema defines the <em>attribute information item</em> <code>name</code> as
! optional in the type of the <em>element information item</em> <code>service</code> , while it
is REQUIRED for the <em>element information item</em> <code>service</code> as indicated
! above.</p>
<div class="note"><p class="prefix"><b>Note:</b></p><p>See the primer [<cite><a href="#WSDL-PART0">WSDL 2.0 Primer</a></cite>] for more
information and examples.</p></div>
<div class="div4">
! <h5><a name="Service_name_attribute"></a>2.14.2.1 <code>name</code> <em>attribute information item</em> with <code>service</code> [owner element]</h5>
<p>
The <code>name</code> <em>attribute information item</em> together with the
--- 4902,4931 ----
</ul>
+ <div class="div4">
+
+ <h5><a name="Service_references"></a>2.14.2.1 Service References</h5>
! <p class="diff-chg">Note that <code>ServiceType</code> , which is the XML Schema [<cite><a href="#XMLSchemaP1">XML Schema: Structures</a></cite>] complex type of the
! <em>element information item</em> <code>service</code> as defined in the WSDL schema, MAY be
used as the basis for defining new elements which can be used
! as service references in message exchanges.
! In the case that the message contains a reference to a service
! that implements a known interface, an element whose type
! restricts the complex type <code>ServiceType</code> to have a fixed value for the
! <em>attribute information item</em> <code>interface</code> MAY be used.
! To enable such
reuse, the WSDL schema defines the <em>attribute information item</em> <code>name</code> as
! optional in complex type <code>ServiceType</code> , while it
is REQUIRED for the <em>element information item</em> <code>service</code> as indicated
! above.
! </p>
<div class="note"><p class="prefix"><b>Note:</b></p><p>See the primer [<cite><a href="#WSDL-PART0">WSDL 2.0 Primer</a></cite>] for more
information and examples.</p></div>
+ </div>
<div class="div4">
! <h5><a name="Service_name_attribute"></a>2.14.2.2 <code>name</code> <em>attribute information item</em> with <code>service</code> [owner element]</h5>
<p>
The <code>name</code> <em>attribute information item</em> together with the
***************
*** 4931,4935 ****
<div class="div4">
! <h5><a name="Service_interface_attribute"></a>2.14.2.2 <code>interface</code> <em>attribute information item</em> with <code>service</code> [owner element]</h5>
<p>
The <code>interface</code> <em>attribute information item</em> identifies the interface
--- 4945,4949 ----
<div class="div4">
! <h5><a name="Service_interface_attribute"></a>2.14.2.3 <code>interface</code> <em>attribute information item</em> with <code>service</code> [owner element]</h5>
<p>
The <code>interface</code> <em>attribute information item</em> identifies the interface
***************
*** 5101,5105 ****
<p>
A REQUIRED <code>name</code> <em>attribute information item</em>
! as described below in <a href="#Endpoint_name_attribute"><b>2.15.2.1 name attribute information item with endpoint [owner element]</b></a>.
</p>
</li>
--- 5115,5119 ----
<p>
A REQUIRED <code>name</code> <em>attribute information item</em>
! as described below in <a href="#Endpoint_name_attribute"><b>2.15.2.2 name attribute information item with endpoint [owner element]</b></a>.
</p>
</li>
***************
*** 5107,5111 ****
<p>
A REQUIRED <code>binding</code> <em>attribute information item</em>
! as described below in <a href="#Endpoint_binding_attribute"><b>2.15.2.2 binding attribute information item with endpoint [owner element]</b></a>.
</p>
</li>
--- 5121,5125 ----
<p>
A REQUIRED <code>binding</code> <em>attribute information item</em>
! as described below in <a href="#Endpoint_binding_attribute"><b>2.15.2.3 binding attribute information item with endpoint [owner element]</b></a>.
</p>
</li>
***************
*** 5113,5117 ****
<p>
An OPTIONAL <code>address</code> <em>attribute information item</em>
! as described below in <a href="#Endpoint_address_attribute"><b>2.15.2.3 address attribute information item with endpoint [owner element]</b></a>.
</p>
</li>
--- 5127,5131 ----
<p>
An OPTIONAL <code>address</code> <em>attribute information item</em>
! as described below in <a href="#Endpoint_address_attribute"><b>2.15.2.4 address attribute information item with endpoint [owner element]</b></a>.
</p>
</li>
***************
*** 5145,5149 ****
"http://www.w3.org/@@@@/@@/wsdl". Such <em>element information item</em>s are
considered to be endpoint extension
! elements as described below (see <a href="#Endpoint_extension_elements"><b>2.15.2.4 Endpoint extension elements</b></a>).
</p></li>
</ul>
--- 5159,5163 ----
"http://www.w3.org/@@@@/@@/wsdl". Such <em>element information item</em>s are
considered to be endpoint extension
! elements as described below (see <a href="#Endpoint_extension_elements"><b>2.15.2.5 Endpoint extension elements</b></a>).
</p></li>
</ul>
***************
*** 5153,5159 ****
</ul>
<div class="div4">
! <h5><a name="Endpoint_name_attribute"></a>2.15.2.1 <code>name</code> <em>attribute information item</em> with <code>endpoint</code> [owner element]</h5>
<p>
The <code>name</code> <em>attribute information item</em> together with the
--- 5167,5196 ----
</ul>
+ <div class="div4">
+
+ <h5><a name="Endpoint_references"></a>2.15.2.1 Endpoint References</h5>
+
+ <p class="diff-chg">Note that <code>EndpointType</code> , which is the XML Schema [<cite><a href="#XMLSchemaP1">XML Schema: Structures</a></cite>] complex type of the
+ <em>element information item</em> <code>endpoint</code> as defined in the WSDL schema, MAY be
+ used as the basis for defining new elements which can be used
+ as endpoint references in message exchanges.
+ In the case that the message contains a reference to an endpoint
+ that implements a known binding, an element whose type
+ restricts the complex type <code>EndpointType</code> to have a fixed value for the
+ <em>attribute information item</em> <code>binding</code> MAY be used.
+ To enable such
+ reuse, the WSDL schema defines the <em>attribute information item</em> <code>name</code> as
+ optional in complex type <code>EndpointType</code> , while it
+ is REQUIRED for the <em>element information item</em> <code>endpoint</code> as indicated
+ above.
+ </p>
+
+ <div class="note"><p class="prefix"><b>Note:</b></p><p>See the primer [<cite><a href="#WSDL-PART0">WSDL 2.0 Primer</a></cite>] for more
+ information and examples.</p></div>
+ </div>
+
<div class="div4">
! <h5><a name="Endpoint_name_attribute"></a>2.15.2.2 <code>name</code> <em>attribute information item</em> with <code>endpoint</code> [owner element]</h5>
<p>
The <code>name</code> <em>attribute information item</em> together with the
***************
*** 5173,5177 ****
<div class="div4">
! <h5><a name="Endpoint_binding_attribute"></a>2.15.2.2 <code>binding</code> <em>attribute information item</em> with <code>endpoint</code> [owner element]</h5>
<p>
The <code>binding</code> <em>attribute information item</em> refers, by QName, to a Binding component
--- 5210,5214 ----
<div class="div4">
! <h5><a name="Endpoint_binding_attribute"></a>2.15.2.3 <code>binding</code> <em>attribute information item</em> with <code>endpoint</code> [owner element]</h5>
<p>
The <code>binding</code> <em>attribute information item</em> refers, by QName, to a Binding component
***************
*** 5189,5193 ****
<div class="div4">
! <h5><a name="Endpoint_address_attribute"></a>2.15.2.3 <code>address</code> <em>attribute information item</em> with <code>endpoint</code> [owner element]</h5>
<p>
The <code>address</code> <em>attribute information item</em> specifies the address of the endpoint.
--- 5226,5230 ----
<div class="div4">
! <h5><a name="Endpoint_address_attribute"></a>2.15.2.4 <code>address</code> <em>attribute information item</em> with <code>endpoint</code> [owner element]</h5>
<p>
The <code>address</code> <em>attribute information item</em> specifies the address of the endpoint.
***************
*** 5205,5209 ****
<div class="div4">
! <h5><a name="Endpoint_extension_elements"></a>2.15.2.4 Endpoint extension elements</h5>
<p>
Endpoint extension elements are used to provide information
--- 5242,5246 ----
<div class="div4">
! <h5><a name="Endpoint_extension_elements"></a>2.15.2.5 Endpoint extension elements</h5>
<p>
Endpoint extension elements are used to provide information
***************
*** 7887,7890 ****
--- 7924,7934 ----
<th rowspan="1" colspan="1">Description</th>
</tr>
+
+ <tr>
+ <td rowspan="1" colspan="1">20050430</td>
+ <td rowspan="1" colspan="1">AGR</td>
+ <td rowspan="1" colspan="1"><a href="http://www.w3.org/2002/ws/desc/4/lc-issues/issues.html#LC117">LC117</a>:
+ Added use of EndpointType for endpoint references.</td>
+ </tr>
<tr>
***************
*** 9246,9249 ****
--- 9290,9294 ----
</tr>
<tr>
+
<td rowspan="1" colspan="1">20030120</td>
<td rowspan="1" colspan="1">MJG</td>
Index: wsdl20-primer.html
===================================================================
RCS file: /sources/public/2002/ws/desc/wsdl20/wsdl20-primer.html,v
retrieving revision 1.54
retrieving revision 1.55
diff -C2 -d -r1.54 -r1.55
*** wsdl20-primer.html 29 Apr 2005 23:49:11 -0000 1.54
--- wsdl20-primer.html 1 May 2005 12:20:08 -0000 1.55
***************
*** 93,100 ****
no official standing.</strong></p><p></p></div>
<hr><div class="toc">
! <h2><a name="shortcontents">Short Table of Contents</a></h2><p class="toc">1. <a href="#Introduction">Introduction</a><br>2. <a href="#basics">WSDL 2.0 Basics</a><br>3. <a href="#wsdl-xml-representation">WSDL 2.0 Infoset, Schema and Component Model</a><br>4. <a href="#more-types">More on Message Types</a><br>5. <a href="#more-interfaces">More on Interfaces</a><br>6. <a href="#more-bindings">More on Bindings</a><br>7. <a href="#advanced-topic_ii">Advanced Topics</a><br>8. <a href="#References">References</a><br></p></div><hr><div class="toc">
<h2><a name="contents">Table of Contents</a></h2><p class="toc">1. <a href="#Introduction">Introduction</a><br> 1.1 <a href="#Prerequisites">Prerequisites</a><br> 1.2 <a href="#PrimerStructure">Structure of this Primer</a><br> 1.3 <a href="#notation">Notational Conventions</a><br>2. <a href="#basics">WSDL 2.0 Basics</a><br> 2.1 <a href="#basics-greath-scenario">Example Scenario: The GreatH Hotel Reservation Service</a><br> 2.2 <a href="#basics-getting-started">Getting Started: Defining a WSDL Target Namespace</a><br> 2.2.1 <a href="#example-empty-shell-explanation">Explanation of Example</a><br> 2.3 <a href="#basics-types">Defining Message Types</a><br> 2.3.1 <a href="#example-initial-types-explanation">Explanation of Example</a><br> 2.4 <a href="#basics-nterface">Defining an Interface</a><br> 2.4.1 <a href="#example-initial-interface-explanation">Explanation of Example</a><br> 2.5 <a href="#basics-binding">Defining a Binding</a><br> 2.5.1 <a href="#example-initial-binding-explanation">Explanation of Example</a><br> 2.6 <a href="#basics-service">Defining a Service</a><br> 2.6.1 <a href="#example-initial-service-explanation">Explanation of Example</a><br> 2.7 <a href="#basics-documentation">Documenting the Service</a><br> 2.7.1 <a href="#example-initial-documentation-explanation">Explanation of Example</a><br>3. <a href="#wsdl-xml-representation">WSDL 2.0 Infoset, Schema and Component Model</a><br> 3.1 <a href="#wsdl-infoset-diagram">WSDL 2.0 Infoset</a><br> 3. <a href="#wsdl-schema">WSDL 2.0 Schema and Element Ordering</a><br> 3.3 <a href="#component-model">WSDL 2.0 Component Model</a><br>4. <a href="#more-types">More on Message Types</a><br> 4.1 <a href="#more-types-schema-embed">Embedding XML Schema</a><br> 4.2 <a href="#more-types-schema-import">Importing XML Schema</a><br> 4.3 <a href="#more-types-import-include-summary">Summary of Import and Include Mechanisms</a><br>5. <a href="#more-interfaces">More on Interfaces</a><br> 5.1 <a href="#more-interfaces-interfaces">Interface Syntax </a><br> 5.2 <a href="#more-interfaces-inheritance">Interface Inheritance</a><br> 5.3 <a href="#more-interfaces-faults">Interface Faults</a><br> 5.4 <a href="#more-interfaces-operations">Interface Operations</a><br> 5.4.1 <a href="#more-interfaces-op-att">Operation Attributes</a><br> 5.4.2 <a href="#N108DB">Operation Message References</a><br> 5.4.2.1 <a href="#N108F8">The messageLabel Attribute</a><br> 5.4.2.2 <a href="#N1090C">The element Attribute</a><br> 5.4.2.3 <a href="#N10933">Multiple infault or outfault Elements</a><br> 5.4.3 <a href="#more-interfaces-meps">Understanding Message Exchange Patterns (MEPs)</a><br> 5.4.4 <a href="#more-interfaces-defining-meps">Defining New Message Exchange Patterns (MEPs)</a><br>6. <a href="#more-bindings">More on Bindings</a><br> 6.1 <a href="#more-bindings-wsdl">Syntax Summary for Bindings</a><br> 6.2 <a href="#more-bindins-reusable">Reusable Bindings</a><br> 6.3 <a href="#more-bindings-faults">Binding Faults</a><br> 6.4 <a href="#bindingOperations">Binding Operations</a><br> 6.5 <a href="#more-bindings-soap">The SOAP Binding Extension</a><br> 6.5.1 <a href="#more-bindings-soap-example-explanation">Explanation of Example</a><br> 6.6 <a href="#more-bindings-http">The HTTP Binding Extension</a><br> 6.6.1 <a href="#N10AF7">Explanation of
! Example</a><br> 6.7 <a href="#adv-get-vs-post">HTTP GET Versus POST: Which to Use?</a><br>7. <a href="#advanced-topic_ii">Advanced Topics</a><br> 7.1 <a href="#adv-extensibility">Extensibility</a><br> 7.1.1 <a href="#adv-optional-versus-required">Optional Versus Required Extensions</a><br> 7.1.2 <a href="#adv-scope-of-wsdl-required">Scoping of the wsdl:required Attribute</a><br> 7.2 <a href="#adv-FP">Features and Properties</a><br> 7.2.1 <a href="#adv-FP-soap-modules">SOAP Modules</a><br> 7.2.2 <a href="#adv-FP-abstract-features">Abstract Features</a><br> 7.2.3 <a href="#adv-fp-properties">Properties</a><br> 7.3 <a href="#adv-import-and-authoring">Import mechanism and authoring stye</a><br> 7.4 <a href="#adv-multiple-docs-describing-same-service">Multiple Interfaces for the Same Service</a><br> 7.5 <a href="#adv-versioning">Web Service Versioning</a><br> 7.5.1 <a href="#adv-versioning-compatible-evolution">Compatible Evolution</a><br> 7.5.2 <a href="#adv-versioning-big-bang">Big Bang</a><br> 7.5.3 <a href="#adv-versioning-combined">Combined Approaches</a><br> 7.6 <a href="#adv-MTOM">MTOM Support</a><br> 7.7 <a href="#adv-RPCstyle">RPC Style</a><br> 7.8 <a href="#adv-message-dispatch">Enabling Easy Message Dispatch</a><br> 7.9 <a href="#adv-service-references">Service References</a><br> 7.9.1 <a href="#reservationDetails">The Reservation Details Web Service</a><br>nbsp; 7.9.2 <a href="#reservationList">The Reservation List Web Service</a><br> 7.9.3 <a href="#reservationDetails_HTTP">Reservation Details Web Service Using HTTP Transfer</a><br> 7.9.4 <a href="#reservationList_HTTP_GET">Reservation List Web Service Using HTTP GET</a><br> 7.10 <a href="#adv-multiple-inline-schemas">Importing Schemas</a><br> 7.10.1 <a href="#N11014">Schemas in Imported Documents</a><br> 7.10.2 <a href="#N1109F">Multiple Inline Schemas in One Document</a><br> 7.10.3 <a href="#adv-schema-location">The schemaLocation Attribute</a><br> 7.10.3.1 <a href="#N110FC">Using the id Attribute to Identify Inline
! Schemas</a><br> 7.11 <a href="#adv-rdf-mapping">Mapping to RDF and Semantic Web</a><br> 7.11.1 <a href="#adv-rdf-rep-wsdl">RDF Representation of WSDL 2.0</a><br> 7.12 <a href="#adv-notes-on-uris">Notes on URIs</a><br> 7.12.1 <a href="#adv-namespaces-and-schema-locations">XML Namespaces and Schema Locations</a><br> 7.12.2 <a href="#adv-relative-uris">Relative URIs</a><br> 7.12.3 <a href="#adv-generating-uris">Generating Temporary URIs</a><br>8. <a href="#References">References</a><br> 8.1 <a href="#Normative-References">Normative References</a><br> 8.2 <a href="#Informative-References">Informative References</a><br></p></div><hr><div class="body">
--- 93,101 ----
no official standing.</strong></p><p></p></div>
<hr><div class="toc">
! <h2><a name="shortcontents">Short Table of Contents</a></h2><p class="toc">1. <a href="#Introduction">Introduction</a><br>2. <a href="#basics">WSDL 2.0 Basics</a><br>3. <a href="#wsdl-xml-representation">WSDL 2.0 Infoset, Schema and Component Model</a><br>4. <a href="#more-types">More on Message Types</a><br>5. <a href="#more-interfaces">More on Interfaces</a><br>6. <a href="#more-bindings">More on Bindings</a><br>7. <a href="#advanced-topic_ii">Advanced Topics</a><br>8. <a href="#References">References</a><br>A. <a href="#acknowledgments">Acknowledgements</a> (Non-Normative)<br></p></div><hr><div class="toc">
<h2><a name="contents">Table of Contents</a></h2><p class="toc">1. <a href="#Introduction">Introduction</a><br> 1.1 <a href="#Prerequisites">Prerequisites</a><br> 1.2 <a href="#PrimerStructure">Structure of this Primer</a><br> 1.3 <a href="#notation">Notational Conventions</a><br>2. <a href="#basics">WSDL 2.0 Basics</a><br> 2.1 <a href="#basics-greath-scenario">Example Scenario: The GreatH Hotel Reservation Service</a><br> 2.2 <a href="#basics-getting-started">Getting Started: Defining a WSDL Target Namespace</a><br> 2.2.1 <a href="#example-empty-shell-explanation">Explanation of Example</a><br> 2.3 <a href="#basics-types">Defining Message Types</a><br> 2.3.1 <a href="#example-initial-types-explanation">Explanation of Example</a><br> 2.4 <a href="#basics-nterface">Defining an Interface</a><br> 2.4.1 <a href="#example-initial-interface-explanation">Explanation of Example</a><br> 2.5 <a href="#basics-binding">Defining a Binding</a><br> 2.5.1 <a href="#example-initial-binding-explanation">Explanation of Example</a><br> 2.6 <a href="#basics-service">Defining a Service</a><br> 2.6.1 <a href="#example-initial-service-explanation">Explanation of Example</a><br> 2.7 <a href="#basics-documentation">Documenting the Service</a><br> 2.7.1 <a href="#example-initial-documentation-explanation">Explanation of Example</a><br>3. <a href="#wsdl-xml-representation">WSDL 2.0 Infoset, Schema and Component Model</a><br> 3.1 <a href="#wsdl-infoset-diagram">WSDL 2.0 Infoset</a><br> 3. <a href="#wsdl-schema">WSDL 2.0 Schema and Element Ordering</a><br> 3.3 <a href="#component-model">WSDL 2.0 Component Model</a><br>4. <a href="#more-types">More on Message Types</a><br> 4.1 <a href="#more-types-schema-embed">Embedding XML Schema</a><br> 4.2 <a href="#more-types-schema-import">Importing XML Schema</a><br> 4.3 <a href="#more-types-import-include-summary">Summary of Import and Include Mechanisms</a><br>5. <a href="#more-interfaces">More on Interfaces</a><br> 5.1 <a href="#more-interfaces-interfaces">Interface Syntax </a><br> 5.2 <a href="#more-interfaces-inheritance">Interface Inheritance</a><br> 5.3 <a href="#more-interfaces-faults">Interface Faults</a><br> 5.4 <a href="#more-interfaces-operations">Interface Operations</a><br> 5.4.1 <a href="#more-interfaces-op-att">Operation Attributes</a><br> 5.4.2 <a href="#N108DB">Operation Message References</a><br> 5.4.2.1 <a href="#N108F8">The messageLabel Attribute</a><br> 5.4.2.2 <a href="#N1090C">The element Attribute</a><br> 5.4.2.3 <a href="#N10933">Multiple infault or outfault Elements</a><br> 5.4.3 <a href="#more-interfaces-meps">Understanding Message Exchange Patterns (MEPs)</a><br> 5.4.4 <a href="#more-interfaces-defining-meps">Defining New Message Exchange Patterns (MEPs)</a><br>6. <a href="#more-bindings">More on Bindings</a><br> 6.1 <a href="#more-bindings-wsdl">Syntax Summary for Bindings</a><br> 6.2 <a href="#more-bindins-reusable">Reusable Bindings</a><br> 6.3 <a href="#more-bindings-faults">Binding Faults</a><br> 6.4 <a href="#bindingOperations">Binding Operations</a><br> 6.5 <a href="#more-bindings-soap">The SOAP Binding Extension</a><br> 6.5.1 <a href="#more-bindings-soap-example-explanation">Explanation of Example</a><br> 6.6 <a href="#more-bindings-http">The HTTP Binding Extension</a><br> 6.6.1 <a href="#N10AF7">Explanation of
! Example</a><br> 6.7 <a href="#adv-get-vs-post">HTTP GET Versus POST: Which to Use?</a><br>7. <a href="#advanced-topic_ii">Advanced Topics</a><br> 7.1 <a href="#adv-extensibility">Extensibility</a><br> 7.1.1 <a href="#adv-optional-versus-required">Optional Versus Required Extensions</a><br> 7.1.2 <a href="#adv-scope-of-wsdl-required">Scoping of the wsdl:required Attribute</a><br> 7.2 <a href="#adv-FP">Features and Properties</a><br> 7.2.1 <a href="#adv-FP-soap-modules">SOAP Modules</a><br> 7.2.2 <a href="#adv-FP-abstract-features">Abstract Features</a><br> 7.2.3 <a href="#adv-fp-properties">Properties</a><br> 7.3 <a href="#adv-import-and-authoring">Import mechanism and authoring stye</a><br> 7.4 <a href="#adv-multiple-docs-describing-same-service">Multiple Interfaces for the Same Service</a><br> 7.5 <a href="#adv-versioning">Web Service Versioning</a><br> 7.5.1 <a href="#adv-versioning-compatible-evolution">Compatible Evolution</a><br> 7.5.2 <a href="#adv-versioning-big-bang">Big Bang</a><br> 7.5.3 <a href="#adv-versioning-combined">Combined Approaches</a><br> 7.6 <a href="#adv-MTOM">MTOM Support</a><br> 7.7 <a href="#adv-RPCstyle">RPC Style</a><br> 7.8 <a href="#adv-message-dispatch">Enabling Easy Message Dispatch</a><br> 7.9 <a href="#adv-service-references">Service and Endpoint References</a><br> 7.9.1 <a href="#reservationDetails">The Reservation Details Web Sevice</a><br> 7.9.2 <a href="#reservationList">The Reservation List Web Service</a><br> 7.9.3 <a href="#reservationDetails_HTTP">Reservation Details Web Service Using HTTP Transfer</a><br> 7.9.4 <a href="#reservationList_HTTP_GET">Reservation List Web Service Using HTTP GET</a><br> 7.10 <a href="#adv-multiple-inline-schemas">Importing Schemas</a><br> 7.10.1 <a href="#N11040">Schemas in Imported Documents</a><br> 7.10.2 <a href="#N110CB">Multiple Inline Schemas in One Document</a><br> 7.10.3 <a href="#adv-schema-location">The schemaLocation Attribute</a><br> 7.10.3.1 <a href="#N11128">Using the id Attribute to Identify Inline
! Schemas</a><br> 7.11 <a href="#adv-rdf-mapping">Mapping to RDF and Semantic Web</a><br> 7.11.1 <a href="#adv-rdf-rep-wsdl">RDF Representation of WSDL 2.0</a><br> 7.12 <a href="#adv-notes-on-uris">Notes on URIs</a><br> 7.12.1 <a href="#adv-namespaces-and-schema-locations">XML Namespaces and Schema Locations</a><br> 7.12.2 <a href="#adv-relative-uris">Relative URIs</a><br> 7.12.3 <a href="#adv-generating-uris">Generating Temporary URIs</a><br>8. <a href="#References">References</a><br> 8.1 <a href="#Normative-References">Normative References</a><br> 8.2 <a href="#Informative-References">Informative References</a><br></p>
! <h3><a id="appendix" name="appendix">Appendix</a></h3><p class="toc">A. <a href="#acknowledgments">Acknowledgements</a> (Non-Normative)<br></p></div><hr><div class="body">
***************
*** 119,123 ****
<p>Section 3 gives more information on defining message types.</p><p>Section 4 gives more information on interfaces.</p><p>Section 5 gives more information on bindings.</p><p>Section 6 gives more information on defining services.</p>
! <p>Section 5 covers various advanced topics, including features and properties, flexible authoring styles, service references, use of URIs, etc. </p>
</div><div class="div2">
--- 120,124 ----
<p>Section 3 gives more information on defining message types.</p><p>Section 4 gives more information on interfaces.</p><p>Section 5 gives more information on bindings.</p><p>Section 6 gives more information on defining services.</p>
! <p>Section 5 covers various advanced topics, including features and properties, flexible authoring styles, service and endpoint references, use of URIs, etc. </p>
</div><div class="div2">
***************
*** 461,464 ****
--- 462,466 ----
</interface>
+
<binding name="reservationSOAPBinding"
interface="tns:reservationInterface"
***************
*** 1665,1672 ****
<div class="div2">
! <h3><a name="adv-service-references"></a>7.9 Service References</h3>
- <table border="1" summary="Editorial note: Kliu"><tr><td width="50%" valign="top" align="left"><b>Editorial note: Kliu</b></td><td width="50%" valign="top" align="right">2005-04-26</td></tr><tr><td valign="top" align="left" colspan="2">This section might be broken. It's pending on resolution of <a href="http://www.w3.org/2002/ws/desc/4/lc-issues/#LC117">Last Call issue LC117</a>. </td></tr></table>
-
<p>
Hyperlinking is one of the defining characteristics
--- 1667,1672 ----
<div class="div2">
! <h3><a name="adv-service-references"></a>7.9 Service and Endpoint References</h3>
<p>
Hyperlinking is one of the defining characteristics
***************
*** 1675,1682 ****
natural to apply this capability to Web services.
This section describes
! <em>service references</em>,
which are the Web service analogs of document
hyperlinks.
! </p><p>One may wonder, from a Web architectural point of view, why anything more than a URI would be needed to reference a Web service. Indeed, a service reference does make use of a URI to indicate the endpoint address of a service. However, it may also include additional metadata about that service, such as the WSDL 2.0 interface and binding that the service supports.</p><p>Services references will be illustrated by expanding the GreatH example already discussed.</p>
<div class="div3">
--- 1675,1698 ----
natural to apply this capability to Web services.
This section describes
! <em>service references</em> and <em>endpoint references</em>,
which are the Web service analogs of document
hyperlinks.
! </p>
!
! <p>
! One may wonder, from a Web architectural point of
! view, why anything more than a URI would be needed
! to reference a Web service. Indeed, a service
! reference does make use of a URI to indicate the
! endpoint address of a service. However, it may also
! include additional metadata about that service,
! such as the WSDL 2.0 interface and binding that the
! service supports.
! </p>
!
! <p>
! Service and endpoint references will be illustrated
! by expanding the GreatH example already discussed.
! </p>
<div class="div3">
***************
*** 1694,1698 ****
http://greath.example.com/2004/reservation/OMX736.
This URI will be the endpoint address for a
! Reservation Detail Web service that can retrieve and
update the state of a reservation.
<a href="#reservationDetails-OMX736.xml">Example 7-13</a>
--- 1710,1714 ----
http://greath.example.com/2004/reservation/OMX736.
This URI will be the endpoint address for a
! Reservation Details Web service that can retrieve and
update the state of a reservation.
<a href="#reservationDetails-OMX736.xml">Example 7-13</a>
***************
*** 1715,1726 ****
</div>
! <p>
! The Reservation Details Web service provides operations for retrieving and updating the detail for a reservation.
! <a href="#reservationDetails.wsdl">Example 7-14</a> shows the description for this Web service.
! Note that there is no <code>wsdl:service</code> element in this description since the set of reservations is dynamic.
! Instead, the endpoints for the reservations will be returned by querying the Reservation List Web service.
! </p>
! <div class="exampleOuter">
<p class="exampleHead" style="text-align: left"><a name="reservationDetails.wsdl"></a><i><span>Example 7-14. </span>The Reservation Details Web Service Description: reservationDetails.wsdl</i></p>
<div class="exampleInner"><pre><?xml version="1.0" encoding="utf-8" ?>
--- 1731,1749 ----
</div>
! <p>
! The Reservation Details Web service provides
! operations for retrieving and updating the detail
! for a reservation.
! <a href="#reservationDetails.wsdl">Example 7-14</a>
! shows the description for this Web service. Note
! that there is no
! <code>wsdl:service</code>
! element in this description since the set of
! reservations is dynamic. Instead, the endpoints for
! the reservations will be returned by querying the
! Reservation List Web service.
! </p>
! <div class="exampleOuter">
<p class="exampleHead" style="text-align: left"><a name="reservationDetails.wsdl"></a><i><span>Example 7-14. </span>The Reservation Details Web Service Description: reservationDetails.wsdl</i></p>
<div class="exampleInner"><pre><?xml version="1.0" encoding="utf-8" ?>
***************
*** 1781,1785 ****
</description>
-
</pre></div></div>
--- 1804,1807 ----
***************
*** 1799,1806 ****
xmlns:tns="http://greath.example.com/2004/schemas/reservationDetails"
xmlns:wdetails="http://greath.example.com/2004/services/reservationDetails"
! xmlns:wsdl="http://www.w3.org/2004/08/wsdl">
! <import namespace="http://www.w3.org/2004/08/wsdl"
! schemaLocation="../../../xmlcatalog/wsdl/wsdl20.xsd" />
<element name="confirmationNumber" type="string" />
--- 1821,1830 ----
xmlns:tns="http://greath.example.com/2004/schemas/reservationDetails"
xmlns:wdetails="http://greath.example.com/2004/services/reservationDetails"
! xmlns:wsdl="http://www.w3.org/2004/08/wsdl"
! xmlns:wsdli="http://www.w3.org/2004/08/wsdl-instance">
! <import namespace="http://www.w3.org/2004/08/wsdl" />
!
! <import namespace="http://www.w3.org/2004/08/wsdl-instance" />
<element name="confirmationNumber" type="string" />
***************
*** 1822,1826 ****
</element>
! <complexType name="ReservationDetailsEndpointType">
<complexContent>
<restriction base="wsdl:EndpointType">
--- 1846,1850 ----
</element>
! <complexType name="ReservationDetailsSOAPEndpointType">
<complexContent>
<restriction base="wsdl:EndpointType">
***************
*** 1831,1843 ****
</complexType>
<complexType name="ReservationDetailsServiceType">
<complexContent>
<restriction base="wsdl:ServiceType">
<sequence>
! <element name="endpoint"
! type="tns:ReservationDetailsEndpointType" />
</sequence>
<attribute name="interface" type="QName" use="required"
fixed="wdetails:reservationDetailsInterface" />
</restriction>
</complexContent>
--- 1855,1883 ----
</complexType>
+ <element name="reservationDetailsSOAPEndpoint"
+ type="tns:ReservationDetailsSOAPEndpointType">
+ <annotation>
+ <documentation>
+ This element contains a reference to the Reservation
+ Details Web Service SOAP Endpoint for this reservation.
+ </documentation>
+ </annotation>
+ </element>
+
<complexType name="ReservationDetailsServiceType">
<complexContent>
<restriction base="wsdl:ServiceType">
<sequence>
! <sequence>
! <element ref='wsdl:documentation' minOccurs='0'
! maxOccurs='0' />
! </sequence>
! <choice minOccurs='1' maxOccurs='unbounded'>
! <element ref='wsdl:endpoint' />
! </choice>
</sequence>
<attribute name="interface" type="QName" use="required"
fixed="wdetails:reservationDetailsInterface" />
+ <attribute ref="wsdli:wsdlLocation" />
</restriction>
</complexContent>
***************
*** 1873,1876 ****
--- 1913,1922 ----
attribute whose value is the Reservation Details binding,
<code>wdetails:reservationDetailsSOAPBinding</code>.
+ The
+ <code>reservationDetailsSOAPEndpoint</code>
+ element is thus a restriction of the
+ <code>wsdl:endpoint</code>
+ element that has the binding for the Reservation
+ Details service. This element will be used in the Reservation List service.
</p>
***************
*** 1882,1896 ****
to have an
<code>interface</code>
! attribute whose have is the Reservation Details service
interace,
! <code>wdetails:reservationDetailsInterface</code>
! . The
<code>reservationDetailsService</code>
element is thus a restriction of the
<code>wsdl:service</code>
! element that has the interface and binding for the Reservation
! Details service and whose endpoint address is that of the
! corresponding reservation. This element is used in the definition
! of the Reservation List Web service.
</p>
--- 1928,1973 ----
to have an
<code>interface</code>
! attribute whose value is the Reservation Details service
interace,
! <code>wdetails:reservationDetailsInterface</code>. The
<code>reservationDetailsService</code>
element is thus a restriction of the
<code>wsdl:service</code>
! element that has the interface for the Reservation Details
! service. Note that the attributes of the
! <code>ReservationDetailsServiceType</code>
! complex type have also been restricted to allow only the
! additional
! <code>wsdli:wsdlLocation</code>
! attribute, which will be used in
! <a href="#reservationServiceReferences-HSG635.xml">Example 7-19</a>
! to specify the location of the WSDL 2.0 document that contains
! the definition of the
! <code>wdetails:reservationDetailsInterface</code>
! interface.
! </p>
!
! <p>
! In general, when you want to describe messages that contain
! endpoint references, you may use elements that are based on the
! <code>wsdl:EndpointType</code>
! complex type. If the bindings of the endpoints are fixed, you
! can define a restriction of the
! <code>wsdl:EndpointType</code>
! complex type that has a fixed value for the
! <code>binding</code>
! attribute. Similarly, when you want to describe messages that
! contain service references, you may use elements that are based
! on the
! <code>wsdl:ServiceType</code>
! complex type. If the interfaces of the services are fixed, you
! can define a restriction of the
! <code>wsdl:ServiceType</code>
! complex type that has a fixed value for the
! <code>interface</code>
! attribute. Note that the rules of XML Schema do not allow
! <code>wsdl:ServiceType</code> to be further restricted
! to have a fixed value for the <code>binding</code> attribute
! of its nested <code>wsdl:endpoint</code> elements.
</p>
***************
*** 1905,1909 ****
Reservation Detail endpoints are not described
in a fixed WSDL document. Instead they are
! returned as service references in response to
requests made on a Reservation List Web service.
The endpoint for the Reservation List service
--- 1982,1986 ----
Reservation Detail endpoints are not described
in a fixed WSDL document. Instead they are
! returned as endpoint references in response to
requests made on a Reservation List Web service.
The endpoint for the Reservation List service
***************
*** 1912,1933 ****
</p>
- <table border="1" summary="Editorial note: Arthur"><tr><td width="50%" valign="top" align="left"><b>Editorial note: Arthur</b></td><td width="50%" valign="top" align="right">20050326</td></tr><tr><td valign="top" align="left" colspan="2">
- There is a problem in the current design of
- the WSDL schema. At present, the
- <code>wsdl:endpoint</code>
- element is namespace qualified so it is
- impossible to restrict
- <code>wsdl:ServiceType</code>
- to use the restricted
- <code>wsdl:EndPoint</code>
- type that has a fixed value for the
- <code>binding</code>
- attribute. The workaround is to change the
- WSDL schema so that
- <code>endpoint</code>
- has no namespace. For consistency, other
- nested elements should also have no
- namespace.
- </td></tr></table>
<p>
<a href="#reservationList-all.xml">Example 7-16</a>
--- 1989,1992 ----
***************
*** 1940,1947 ****
Service</i></p>
<div class="exampleInner"><pre>
! <?xml version="1.0" encoding="UTF-8"?>
<reservationList
xmlns="http://greath.example.com/2004/schemas/reservationList"
xmlns:details="http://greath.example.com/2004/schemas/reservationDetails"
xmlns:wsdli="http://www.w3.org/2004/08/wsdl-instance"
wsdli:wsdlLocation="http://greath.example.com/2004/services/reservationDetails reservationDetails.wsdl">
--- 1999,2008 ----
Service</i></p>
<div class="exampleInner"><pre>
! <?xml version="1.0" encoding="UTF-8"?>
<reservationList
xmlns="http://greath.example.com/2004/schemas/reservationList"
xmlns:details="http://greath.example.com/2004/schemas/reservationDetails"
+ xmlns:wdetails="http://greath.example.com/2004/services/reservationDetails"
+ xmlns:wsdl="http://www.w3.org/2004/08/wsdl"
xmlns:wsdli="http://www.w3.org/2004/08/wsdl-instance"
wsdli:wsdlLocation="http://greath.example.com/2004/services/reservationDetails reservationDetails.wsdl">
***************
*** 1951,1960 ****
<details:checkInDate>2005-06-27</details:checkInDate>
<details:checkOutDate>2005-06-28</details:checkOutDate>
! <details:reservationDetailsService
! interface="wdetails:reservationDetailsInterface">
! <details:endpoint name="SOAP"
! binding="wdetails:reservationDetailsSOAPBinding"
! address="http://greath.example.com/2004/reservation/HSG635"/>
! </details:reservationDetailsService>
</reservation>
--- 2012,2018 ----
<details:checkInDate>2005-06-27</details:checkInDate>
<details:checkOutDate>2005-06-28</details:checkOutDate>
! <details:reservationDetailsSOAPEndpoint
! binding="wdetails:reservationDetailsSOAPBinding"
! address="http://greath.example.com/2004/reservation/HSG635" />
</reservation>
***************
*** 1963,1972 ****
<details:checkInDate>2005-06-01</details:checkInDate>
<details:checkOutDate>2005-06-03</details:checkOutDate>
! <details:reservationDetailsService
! interface="wdetails:reservationDetailsInterface">
! <details:endpoint name="SOAP"
! binding="wdetails:reservationDetailsSOAPBinding"
! address="http://greath.example.com/2004/reservation/OMX736"/>
! </details:reservationDetailsService>
</reservation>
--- 2021,2027 ----
<details:checkInDate>2005-06-01</details:checkInDate>
<details:checkOutDate>2005-06-03</details:checkOutDate>
! <details:reservationDetailsSOAPEndpoint
! binding="wdetails:reservationDetailsSOAPBinding"
! address="http://greath.example.com/2004/reservation/OMX736" />
</reservation>
***************
*** 1975,1987 ****
<details:checkInDate>2005-06-11</details:checkInDate>
<details:checkOutDate>2005-06-15</details:checkOutDate>
! <details:reservationDetailsService
! interface="wdetails:reservationDetailsInterface">
! <details:endpoint name="SOAP"
! binding="wdetails:reservationDetailsSOAPBinding"
! address="http://greath.example.com/2004/reservation/WUH663"/>
! </details:reservationDetailsService>
</reservation>
! </reservationList></pre></div>
</div>
--- 2030,2040 ----
<details:checkInDate>2005-06-11</details:checkInDate>
<details:checkOutDate>2005-06-15</details:checkOutDate>
! <details:reservationDetailsSOAPEndpoint
! binding="wdetails:reservationDetailsSOAPBinding"
! address="http://greath.example.com/2004/reservation/WUH663" />
</reservation>
! </reservationList>
! </pre></div>
</div>
***************
*** 1989,2010 ****
Here, the
<code>
! <details:reservationDetailsService>
</code>
! elements contain service references to the
Reservation Details Web services for the
reservations HSG635, OMX736, and WUH663. The
! service references given the interface, binding,
and endpoint address of each service. In this
! example, all endpoints have the same interface
! and binding, i.e.
! <code>
! wdetails:reservationDetailsInterface
! </code>
! and
<code>
wdetails:reservationDetailsSOAPBinding
! </code>
! . These QNames identify WSDL 2.0 Interface and
! Binding components that are defined in a WSDL
2.0 document. This example shows the use of the
<code>wsdli:wsdlLocation</code>
--- 2042,2057 ----
Here, the
<code>
! <details:reservationDetailsSOAPEndpoint>
</code>
! elements contain endpoint references to the
Reservation Details Web services for the
reservations HSG635, OMX736, and WUH663. The
! endpoint references give the binding
and endpoint address of each service. In this
! example, all endpoints have the same binding, i.e.
<code>
wdetails:reservationDetailsSOAPBinding
! </code>. This QName identifies the WSDL 2.0
! Binding component that is defined in a WSDL
2.0 document. This example shows the use of the
<code>wsdli:wsdlLocation</code>
***************
*** 2017,2021 ****
<a href="#reservationList.wsdl">Example 7-17</a>
shows the description of the Reservation List
! Web service. Note that is contains operations to
retrieve the entire list and to query for a list
of reservations by confirmation number, check-in
--- 2064,2068 ----
<a href="#reservationList.wsdl">Example 7-17</a>
shows the description of the Reservation List
! Web service. Note that it contains operations to
retrieve the entire list and to query for a list
of reservations by confirmation number, check-in
***************
*** 2030,2034 ****
</i></p>
<div class="exampleInner"><pre>
! <?xml version="1.0" encoding="utf-8" ?>
<description xmlns="http://www.w3.org/2004/08/wsdl"
targetNamespace="http://greath.example.com/2004/services/reservationList"
--- 2077,2081 ----
</i></p>
<div class="exampleInner"><pre>
! <?xml version="1.0" encoding="utf-8" ?>
<description xmlns="http://www.w3.org/2004/08/wsdl"
targetNamespace="http://greath.example.com/2004/services/reservationList"
***************
*** 2112,2115 ****
--- 2159,2163 ----
</description>
+
</pre></div>
</div>
***************
*** 2118,2122 ****
<div class="exampleOuter">
<p class="exampleHead" style="text-align: left"><a name="reservationList.xsd"></a><i><span>Example 7-18. </span>The Reservation List Schema: reservationList.xsd</i></p>
! <div class="exampleInner"><pre><?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
--- 2166,2171 ----
<div class="exampleOuter">
<p class="exampleHead" style="text-align: left"><a name="reservationList.xsd"></a><i><span>Example 7-18. </span>The Reservation List Schema: reservationList.xsd</i></p>
! <div class="exampleInner"><pre>
! <?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified"
***************
*** 2126,2131 ****
xmlns:wsdli="http://www.w3.org/2004/08/wsdl-instance">
! <import namespace="http://www.w3.org/2004/08/wsdl-instance"
! schemaLocation="../../../xmlcatalog/wsdl/wsdl20-instance.xsd" />
<import
--- 2175,2179 ----
xmlns:wsdli="http://www.w3.org/2004/08/wsdl-instance">
! <import namespace="http://www.w3.org/2004/08/wsdl-instance" />
<import
***************
*** 2146,2150 ****
<element ref="details:checkInDate" />
<element ref="details:checkOutDate" />
! <element ref="details:reservationDetailsService" />
</sequence>
</complexType>
--- 2194,2198 ----
<element ref="details:checkInDate" />
<element ref="details:checkOutDate" />
! <element ref="details:reservationDetailsSOAPEndpoint" />
</sequence>
</complexType>
***************
*** 2171,2179 ****
</pre></div>
</div>
</div>
<div class="div3">
<h4><a name="reservationDetails_HTTP"></a>7.9.3 Reservation Details Web Service Using HTTP Transfer</h4><p>This section presents a variation on the example in <a href="#reservationDetails"><b>7.9.1 The Reservation Details Web Service</b></a>. It illustrates the use of HTTP transfer operations, GET and PUT, to retrieve and update GreatH hotel reservation details using the Representational State Transfer (REST) architectural style described by Roy Fielding [<cite><a href="#rest">REST</a></cite>]. REST is a distillation of the architectural properties that Dr. Fielding identified as being vital to the Web's robustness and enormous scalability. </p><p>Since each reservation in our example will have a distinct URI, the Reservation Details Web
service can be offered using HTTP GET and HTTP PUT. The binding would be modified as follows:</p><div class="exampleOuter">
! <p class="exampleHead" style="text-align: left"><a name="reservationDetails_HTTP_example"></a><i><span>Example 7-19. </span>
Reservation Details Web Service Using HTTP Transfer</i></p>
<div class="exampleInner"><pre>
--- 2219,2288 ----
</pre></div>
</div>
+
+ <p>
+ In the preceeding example, there was a single
+ endpoint associated with each Reservation Detail
+ Web service. Suppose GreatH hotel decided to
+ provide a second, secure endpoint. In this case,
+ service references would be used to collect
+ together the endpoints for each reservation. The
+ reservationDetails.xsd schema defines the
+ <code>reservationDetailsService</code>
+ element for this purpose. It restricts the
+ <code>wsdl:ServiceType</code>
+ complex type to have a fixed value of
+ <code>reservationDetailsInterface</code>
+ for the interface attribute.
+ </p>
+ <p>
+ <a href="#reservationServiceReferences-HSG635.xml">Example 7-19</a>
+ shows an example of a message that contains a
+ service reference for reservation HGS635. Note
+ that the service contains two endpoints, one of
+ which provides secure access to the Reservation
+ Details Web service. Note the use of the
+ <code>wsdli:wsdlLocation</code>
+ to provide the location for the WSDL 2.0
+ document that defines the
+ <code>
+ wdetails:reservationDetailsInterface
+ </code>
+ interface and the
+ <code>
+ wdetails:reservationDetailsSOAPBinding
+ </code>
+ binding.
+ </p>
+
+ <div class="exampleOuter">
+ <p class="exampleHead" style="text-align: left"><a name="reservationServiceReferences-HSG635.xml"></a><i><span>Example 7-19. </span>A Service Reference to the Reservation Details Web Service</i></p>
+ <div class="exampleInner"><pre>
+ <?xml version="1.0" encoding="UTF-8"?>
+ <details:reservationDetailsService interface="wdetails:reservationDetailsInterface"
+ xmlns:details="http://greath.example.com/2004/schemas/reservationDetails"
+ xmlns:wdetails="http://greath.example.com/2004/services/reservationDetails"
+ xmlns:wsdl="http://www.w3.org/2004/08/wsdl"
+ xmlns:wsdli="http://www.w3.org/2004/08/wsdl-instance"
+ wsdli:wsdlLocation="http://greath.example.com/2004/services/reservationDetails reservationDetails.wsdl">
+
+ <wsdl:endpoint
+ name="SOAP"
+ binding="wdetails:reservationDetailsSOAPBinding"
+ address="http://greath.example.com/2004/reservation/HSG635" />
+
+ <wsdl:endpoint
+ name="SECURE-SOAP"
+ binding="wdetails:reservationDetailsSOAPBinding"
+ address="https://greath.example.com/2004/reservation/HSG635" />
+
+ </details:reservationDetailsService>
+ </pre></div></div>
+
+
</div>
<div class="div3">
<h4><a name="reservationDetails_HTTP"></a>7.9.3 Reservation Details Web Service Using HTTP Transfer</h4><p>This section presents a variation on the example in <a href="#reservationDetails"><b>7.9.1 The Reservation Details Web Service</b></a>. It illustrates the use of HTTP transfer operations, GET and PUT, to retrieve and update GreatH hotel reservation details using the Representational State Transfer (REST) architectural style described by Roy Fielding [<cite><a href="#rest">REST</a></cite>]. REST is a distillation of the architectural properties that Dr. Fielding identified as being vital to the Web's robustness and enormous scalability. </p><p>Since each reservation in our example will have a distinct URI, the Reservation Details Web
service can be offered using HTTP GET and HTTP PUT. The binding would be modified as follows:</p><div class="exampleOuter">
! <p class="exampleHead" style="text-align: left"><a name="reservationDetails_HTTP_example"></a><i><span>Example 7-20. </span>
Reservation Details Web Service Using HTTP Transfer</i></p>
<div class="exampleInner"><pre>
***************
*** 2198,2202 ****
operations. These can also be expressed as various parameters in a URI
used by HTTP GET:</p><div class="exampleOuter">
! <p class="exampleHead" style="text-align: left"><a name="example_reservationList_HTTP_GET"></a><i><span>Example 7-20. </span>
Reservation List Web Service Using HTTP GET</i></p>
<div class="exampleInner"><pre>
--- 2307,2311 ----
operations. These can also be expressed as various parameters in a URI
used by HTTP GET:</p><div class="exampleOuter">
! <p class="exampleHead" style="text-align: left"><a name="example_reservationList_HTTP_GET"></a><i><span>Example 7-21. </span>
Reservation List Web Service Using HTTP GET</i></p>
<div class="exampleInner"><pre>
***************
*** 2234,2238 ****
into the URI query string. A query sequence for any of
ConfirmationNumber, checkInDate, checkOutDate would look like this:</p><div class="exampleOuter">
! <p class="exampleHead" style="text-align: left"><a name="example_reservationList_HTTP_GET_single"></a><i><span>Example 7-21. </span>Query Sequence Using a Single Query Type</i></p>
<div class="exampleInner"><pre>
<element name="reservationQuery">
--- 2343,2347 ----
into the URI query string. A query sequence for any of
ConfirmationNumber, checkInDate, checkOutDate would look like this:</p><div class="exampleOuter">
! <p class="exampleHead" style="text-align: left"><a name="example_reservationList_HTTP_GET_single"></a><i><span>Example 7-22. </span>Query Sequence Using a Single Query Type</i></p>
<div class="exampleInner"><pre>
<element name="reservationQuery">
***************
*** 2255,2259 ****
</pre></div>
</div><p>The WSDL service that offers this type serialized as a parameter would look like this:</p><div class="exampleOuter">
! <p class="exampleHead" style="text-align: left"><a name="example_reservationList_HTTP_GET_single_wsdl"></a><i><span>Example 7-22. </span>WSDL for Using a Single Query Type</i></p>
<div class="exampleInner"><pre>
. . .
--- 2364,2368 ----
</pre></div>
</div><p>The WSDL service that offers this type serialized as a parameter would look like this:</p><div class="exampleOuter">
! <p class="exampleHead" style="text-align: left"><a name="example_reservationList_HTTP_GET_single_wsdl"></a><i><span>Example 7-23. </span>WSDL for Using a Single Query Type</i></p>
<div class="exampleInner"><pre>
. . .
***************
*** 2324,2328 ****
<div class="div3">
! <h4><a name="N11014"></a>7.10.1 Schemas in Imported Documents</h4>
<p>
In this example, we consider some GreatH Hotel
--- 2433,2437 ----
<div class="div3">
! <h4><a name="N11040"></a>7.10.1 Schemas in Imported Documents</h4>
<p>
In this example, we consider some GreatH Hotel
***************
*** 2341,2345 ****
<p>
! <a href="#retrieveDetails.wsdl">Example 7-23</a>
shows the definition of the retrieval Web
service in the
--- 2450,2454 ----
<p>
! <a href="#retrieveDetails.wsdl">Example 7-24</a>
shows the definition of the retrieval Web
service in the
***************
*** 2361,2365 ****
<div class="exampleOuter">
! <p class="exampleHead" style="text-align: left"><a name="retrieveDetails.wsdl"></a><i><span>Example 7-23. </span>
The Retrieve Reservation Details Web
Service: retrieveDetails.wsdl
--- 2470,2474 ----
<div class="exampleOuter">
! <p class="exampleHead" style="text-align: left"><a name="retrieveDetails.wsdl"></a><i><span>Example 7-24. </span>
The Retrieve Reservation Details Web
Service: retrieveDetails.wsdl
***************
*** 2413,2417 ****
<p>
! <a href="#updateDetails.wsdl">Example 7-24</a>
shows the definition of the updating Web service
in the
--- 2522,2526 ----
<p>
! <a href="#updateDetails.wsdl">Example 7-25</a>
shows the definition of the updating Web service
in the
***************
*** 2488,2492 ****
<div class="exampleOuter">
! <p class="exampleHead" style="text-align: left"><a name="updateDetails.wsdl"></a><i><span>Example 7-24. </span>The Update Reservation Details Web Service: updateDetails.wsdl</i></p>
<div class="exampleInner"><pre><?xml version="1.0" encoding="utf-8" ?>
<description xmlns="http://www.w3.org/2004/08/wsdl"
--- 2597,2601 ----
<div class="exampleOuter">
! <p class="exampleHead" style="text-align: left"><a name="updateDetails.wsdl"></a><i><span>Example 7-25. </span>The Update Reservation Details Web Service: updateDetails.wsdl</i></p>
<div class="exampleInner"><pre><?xml version="1.0" encoding="utf-8" ?>
<description xmlns="http://www.w3.org/2004/08/wsdl"
***************
*** 2531,2535 ****
<div class="div3">
! <h4><a name="N1109F"></a>7.10.2 Multiple Inline Schemas in One Document</h4>
<p>
A WSDL 2.0 document may define multiple inline
--- 2640,2644 ----
<div class="div3">
! <h4><a name="N110CB"></a>7.10.2 Multiple Inline Schemas in One Document</h4>
<p>
A WSDL 2.0 document may define multiple inline
***************
*** 2557,2561 ****
<p>
To illustrate this, consider
! <a href="#retrieveItems.wsdl">Example 7-25</a>
which contains two inline schemas. The
<code>
--- 2666,2670 ----
<p>
To illustrate this, consider
! <a href="#retrieveItems.wsdl">Example 7-26</a>
which contains two inline schemas. The
<code>
***************
*** 2587,2591 ****
<div class="exampleOuter">
! <p class="exampleHead" style="text-align: left"><a name="retrieveItems.wsdl"></a><i><span>Example 7-25. </span>
Multiple Inline Schemas: retrieveItems.wsdl
</i></p>
--- 2696,2700 ----
<div class="exampleOuter">
! <p class="exampleHead" style="text-align: left"><a name="retrieveItems.wsdl"></a><i><span>Example 7-26. </span>
Multiple Inline Schemas: retrieveItems.wsdl
</i></p>
***************
*** 2658,2663 ****
</p>
<p>
! <a href="#updateDetails.wsdl">Example 7-24</a> shows how one WSDL 2.0 document imports a schema defined in another, i.e. <a href="#retrieveDetails.wsdl">Example 7-23</a>.
! Similarly, <a href="#retrieveItems.wsdl">Example 7-25</a> shows how one schema in a WSDL 2.0 document imports another schema defined in the same document.
In both of these examples, the <code>schemaLocation</code> attribute was omitted since the WSDL processor was assumed to know how to locate the imported
schemas because they were part of the WSDL documents being processed. The <code>schemaLocation</code> attribute can be used to give the processor a URI reference
--- 2767,2772 ----
</p>
<p>
! <a href="#updateDetails.wsdl">Example 7-25</a> shows how one WSDL 2.0 document imports a schema defined in another, i.e. <a href="#retrieveDetails.wsdl">Example 7-24</a>.
! Similarly, <a href="#retrieveItems.wsdl">Example 7-26</a> shows how one schema in a WSDL 2.0 document imports another schema defined in the same document.
In both of these examples, the <code>schemaLocation</code> attribute was omitted since the WSDL processor was assumed to know how to locate the imported
schemas because they were part of the WSDL documents being processed. The <code>schemaLocation</code> attribute can be used to give the processor a URI reference
***************
*** 2665,2671 ****
the <code>schema</code> element. The simplest way to accomplish this is to use the <code>id</code> attribute, however XPointer can also be used.
</p><div class="div4">
! <h5><a name="N110FC"></a>7.10.3.1 Using the id Attribute to Identify Inline
Schemas</h5><p>
! <a href="#schemaIds.wsdl">Example 7-26</a>
shows the use of the
<code>id</code>
--- 2774,2780 ----
the <code>schema</code> element. The simplest way to accomplish this is to use the <code>id</code> attribute, however XPointer can also be used.
</p><div class="div4">
! <h5><a name="N11128"></a>7.10.3.1 Using the id Attribute to Identify Inline
Schemas</h5><p>
! <a href="#schemaIds.wsdl">Example 7-27</a>
shows the use of the
<code>id</code>
***************
*** 2682,2686 ****
attribute, i.e. <code>#items</code>.
</p>
! <div class="exampleOuter"><p class="exampleHead" style="text-align: left"><a name="schemaIds.wsdl"></a><i><span>Example 7-26. </span>Using Ids in Inline Schemas: schemaIds.wsdl</i></p>
<div class="exampleInner"><pre><?xml version="1.0" encoding="utf-8" ?>
<description xmlns="http://www.w3.org/2004/08/wsdl"
--- 2791,2795 ----
attribute, i.e. <code>#items</code>.
</p>
! <div class="exampleOuter"><p class="exampleHead" style="text-align: left"><a name="schemaIds.wsdl"></a><i><span>Example 7-27. </span>Using Ids in Inline Schemas: schemaIds.wsdl</i></p>
<div class="exampleInner"><pre><?xml version="1.0" encoding="utf-8" ?>
<description xmlns="http://www.w3.org/2004/08/wsdl"
***************
*** 3117,3125 ****
</div>
</div>
-
<div class="div1">
! <h2><a name="acknowledgments"></a>I. Acknowledgements (Non-Normative)</h2>
<p>This document is the work of the <a href="http://www.w3.org/2002/ws/desc/">W3C Web Service
Description Working Group</a>.</p>
--- 3226,3235 ----
</div>
</div>
+ </div>
+ <div class="back">
<div class="div1">
! <h2><a name="acknowledgments"></a>A. Acknowledgements (Non-Normative)</h2>
<p>This document is the work of the <a href="http://www.w3.org/2002/ws/desc/">W3C Web Service
Description Working Group</a>.</p>
***************
*** 3212,3216 ****
</div>
-
</div>
</body></html>
\ No newline at end of file
--- 3322,3325 ----
Received on Sunday, 1 May 2005 12:20:40 UTC