You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
12604 lines
446 KiB
12604 lines
446 KiB
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
|
|
<html lang="en"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><title>SOAP Version 1.2 Specification Assertions and Test Collection (Second Edition)</title><style type="text/css">
|
|
code { font-family: monospace; }
|
|
|
|
div.constraint,
|
|
div.issue,
|
|
div.note,
|
|
div.notice { margin-left: 2em; }
|
|
|
|
dt.label { display: run-in; }
|
|
|
|
li, p { margin-top: 0.3em;
|
|
margin-bottom: 0.3em; }
|
|
|
|
|
|
div.assertion { border: 4px double gray; padding: 0.5em; margin-bottom: 0.2em; }
|
|
blockquote { background-color: #eeeeee; }
|
|
spectext { background-color: #eeeeee; }
|
|
.message { background-color: #d5dee3; }
|
|
|
|
|
|
pre { margin-left: 4em}
|
|
|
|
p.diff-chg,
|
|
li.diff-chg,
|
|
h1.diff-chg,
|
|
h2.diff-chg,
|
|
h3.diff-chg,
|
|
h4.diff-chg,
|
|
h5.diff-chg,
|
|
h6.diff-chg,
|
|
td.diff-chg,
|
|
tr.diff-chg { background-color: orange; }
|
|
p.diff-del,
|
|
li.diff-del,
|
|
h1.diff-del,
|
|
h2.diff-del,
|
|
h3.diff-del,
|
|
h4.diff-del,
|
|
h5.diff-del,
|
|
h6.diff-del,
|
|
td.diff-del,
|
|
tr.diff-del { background-color: red; text-decoration: line-through;}
|
|
p.diff-add,
|
|
p.diff-add,
|
|
h1.diff-add,
|
|
h2.diff-add,
|
|
h3.diff-add,
|
|
h4.diff-add,
|
|
h5.diff-add,
|
|
h6.diff-add,
|
|
td.diff-add,
|
|
tr.diff-add { background-color: lime; }
|
|
table { empty-cells: show; }
|
|
|
|
|
|
div.exampleInner pre { margin-left: 1em;
|
|
margin-top: 0em; margin-bottom: 0em}
|
|
div.exampleOuter {border: 4px double gray;
|
|
margin: 0em; padding: 0em}
|
|
div.exampleInner { background-color: #d5dee3;
|
|
border-top-width: 4px;
|
|
border-top-style: double;
|
|
border-top-color: #d3d3d3;
|
|
border-bottom-width: 4px;
|
|
border-bottom-style: double;
|
|
border-bottom-color: #d3d3d3;
|
|
padding: 4px; margin: 0em }
|
|
div.exampleWrapper { margin: 4px }
|
|
div.exampleHeader { font-weight: bold;
|
|
margin: 4px}
|
|
</style><link rel="stylesheet" type="text/css" href="http://www.w3.org/StyleSheets/TR/W3C-REC.css"></head><body>
|
|
<div class="head"><p><a href="http://www.w3.org/"><img src="http://www.w3.org/Icons/w3c_home" alt="W3C" height="48" width="72"></a></p>
|
|
<h1>SOAP Version 1.2 Specification Assertions and Test Collection (Second Edition)</h1>
|
|
<h2>W3C Recommendation 27 April 2007</h2><dl><dt>This version:</dt><dd>
|
|
<a href="http://www.w3.org/TR/2007/REC-soap12-testcollection-20070427/">
|
|
http://www.w3.org/TR/2007/REC-soap12-testcollection-20070427/
|
|
</a>
|
|
</dd><dt>Latest version:</dt><dd>
|
|
<a href="http://www.w3.org/TR/soap12-testcollection">
|
|
http://www.w3.org/TR/soap12-testcollection
|
|
</a>
|
|
</dd><dt>Previous versions:</dt><dd>
|
|
<a href="http://www.w3.org/TR/2006/PER-soap12-testcollection-20061219/">http://www.w3.org/TR/2006/PER-soap12-testcollection-20061219/</a>
|
|
</dd><dt>Editors:</dt>
|
|
<dd>Hugo Haas, W3C</dd>
|
|
<dd>Oisin Hurley, IONA Technologies</dd>
|
|
<dd>Anish Karmarkar, Oracle</dd>
|
|
<dd>Jeff Mischkinsky, Oracle</dd>
|
|
<dd>Mark Jones, AT&T</dd>
|
|
<dd>Lynne Thompson, Unisys</dd>
|
|
<dd>Richard Martin, Active Data Exchange</dd>
|
|
</dl><p>Please refer to the <a href="http://www.w3.org/2007/04/REC-soap12-testcollection-20070427-errata.html"><strong>errata</strong></a> for this document, which may
|
|
include normative corrections.</p>
|
|
<p>See also <a href="http://www.w3.org/2003/03/Translations/byTechnology?technology=soap12-testcollection"> translations</a>.</p>
|
|
<p class="copyright"><a href="http://www.w3.org/Consortium/Legal/ipr-notice#Copyright">Copyright</a> © 2007 <a href="http://www.w3.org/"><acronym title="World Wide Web Consortium">W3C</acronym></a><sup>®</sup> (<a href="http://www.csail.mit.edu/"><acronym title="Massachusetts Institute of Technology">MIT</acronym></a>, <a href="http://www.ercim.org/"><acronym title="European Research Consortium for Informatics and Mathematics">ERCIM</acronym></a>, <a href="http://www.keio.ac.jp/">Keio</a>), All Rights Reserved. W3C <a href="http://www.w3.org/Consortium/Legal/ipr-notice#Legal_Disclaimer">liability</a>, <a href="http://www.w3.org/Consortium/Legal/ipr-notice#W3C_Trademarks">trademark</a> and <a href="http://www.w3.org/Consortium/Legal/copyright-documents">document use</a> rules apply.</p></div><hr><div>
|
|
<h2><a name="abstract">Abstract</a></h2>
|
|
<p>This document draws on assertions
|
|
found in the SOAP Version 1.2 specifications <a href="#SOAP-PART1">[SOAP Part 1]</a>,
|
|
<a href="#SOAP-PART2">[SOAP Part 2]</a>, and provides a set of tests in
|
|
order to show whether the assertions are implemented in a SOAP
|
|
processor.</p>
|
|
<p>A SOAP 1.2 implementation that passes all of the tests specified in
|
|
this document may claim to conform to the SOAP 1.2 Test Suite,
|
|
2007 04 27. It is incorrect to claim
|
|
to be compliant with the SOAP Version 1.2 specifications merely by
|
|
passing successfully all the tests provided in this test suite.
|
|
It is also incorrect to claim that an implementation is non compliant
|
|
with the SOAP Version 1.2 specifications based on its failure
|
|
to pass one or more of the tests in this test suite. </p>
|
|
</div><div>
|
|
<h2><a name="status">Status of this Document</a></h2>
|
|
|
|
<p><em>This section describes the status of this document at the time of its publication. Other documents may supersede this document. A list of current W3C publications and the latest revision of this technical report can be found in the <a href="http://www.w3.org/TR/">W3C technical reports index</a> at http://www.w3.org/TR/.</em></p>
|
|
|
|
<p>This document is a <a href="http://www.w3.org/2005/10/Process-20051014/tr.html#RecsW3C">W3C Recommendation</a>. It has been produced by the <a href="http://www.w3.org/2000/xp/Group/">XML Protocol Working Group</a>, which
|
|
is part of the <a href="http://www.w3.org/2002/ws/Activity">Web Services
|
|
Activity</a>.
|
|
This second edition updates and supersedes the <a href="http://www.w3.org/TR/2003/REC-soap12-testcollection-20030624/">original Recommendation</a> by the inclusion of the accumulated <a href="http://www.w3.org/2003/06/REC-soap12-20030624-errata.html">errata</a>.
|
|
Changes between these two versions are described in a
|
|
<a href="diff-testcollection.html">diff document</a>.</p>
|
|
|
|
<p>This document has been reviewed by W3C Members, by software developers, and by other W3C groups and interested parties, and is endorsed by the Director as a W3C Recommendation. It is a stable document and may be used as reference material or cited from another document. W3C's role in making the Recommendation is to draw attention to the specification and to promote its widespread deployment. This enhances the functionality and interoperability of the Web.</p>
|
|
|
|
<p>Please report errors in this document to the public mailing list <a href="mailto:xmlp-comments@w3.org">xmlp-comments@w3.org</a>
|
|
(<a href="http://lists.w3.org/Archives/Public/xmlp-comments/">archive</a>).
|
|
It is inappropriate to send discussion email to this address.</p>
|
|
|
|
<p>SOAP Version 1.2 supercedes all previous versions of SOAP, including SOAP Version 1.1 <a href="#">[soap11]</a></p>
|
|
|
|
<p>The SOAP 1.2 Implementation Report can be found at <a href="http://www.w3.org/2000/xp/Group/2/03/soap1.2implementation.html">
|
|
http://www.w3.org/2000/xp/Group/2/03/soap1.2implementation.html</a>.
|
|
Additional implementation experience of the Request
|
|
Optional Response MEP can be found in the WSDL 2.0 implementation testing here:
|
|
<a href="http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/test-suite/Dashboard.html">http://dev.w3.org/cvsweb/~checkout~/2002/ws/desc/test-suite/Dashboard.html</a>.</p>
|
|
|
|
<p> This document is governed by the <a href="http://www.w3.org/TR/2002/NOTE-patent-practice-20020124">24 January 2002 CPP</a> as amended by the <a href="http://www.w3.org/2004/02/05-pp-transition">W3C Patent Policy Transition Procedure</a>. W3C maintains a <a rel="disclosure" href="http://www.w3.org/2000/xp/Group/2/10/16-IPR-statements.html">public list of any patent disclosures</a> made in connection with the deliverables of the group; that page also includes instructions for disclosing a patent. An individual who has actual knowledge of a patent which the individual believes contains <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#def-essential">Essential Claim(s)</a> must disclose the information in accordance with <a href="http://www.w3.org/Consortium/Patent-Policy-20040205/#sec-Disclosure">section 6 of the W3C Patent Policy</a>. </p>
|
|
|
|
<p>A list of current <a href="http://www.w3.org/TR/">W3C Recommendations and
|
|
other technical reports</a> can be found at <a href="http://www.w3.org/TR">http://www.w3.org/TR</a>.</p>
|
|
</div>
|
|
|
|
<hr><div class="toc">
|
|
<h2><a name="shortcontents">Short Table of Contents</a></h2><p class="toc">1. <a href="#intro">Introduction</a><br>2. <a href="#assertions">SOAP 1.2 Assertions</a><br>3. <a href="#testcollection">SOAP 1.2 Test Collection</a><br>4. <a href="#refs">References</a><br>A. <a href="#acks">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="#intro">Introduction</a><br>2. <a href="#assertions">SOAP 1.2 Assertions</a><br> 2.1 <a href="#assertionspart1">SOAP 1.2, Part 1 Assertions</a><br> 2.2 <a href="#assertionspart2">SOAP 1.2, Part 2 Assertions</a><br>3. <a href="#testcollection">SOAP 1.2 Test Collection</a><br> 3.1 <a href="#testcollectionintro">Introduction</a><br> 3.2 <a href="#id2275029"> Header Blocks Used by the Test Collection</a><br> 3.2.1 <a href="#id2275044">echoOk</a><br> 3.2.2 <a href="#id2275068">responseOk</a><br> 3.2.3 <a href="#id2275086">Ignore</a><br> 3.2.4 <a href="#id2275100">requiredHeader</a><br> 3.2.5 <a href="#id2275133">DataHolder</a><br> 3.2.6 <a href="#id2275149">concatAndForwardEchoOk</a><br> 3.2.7 <a href="#id2275178">concatAndForwardEchoOkArg1</a><br> 3.2.8 <a href="#id2275198">concatAndForwardEchoOkArg2</a><br> 3.2.9 <a href="#id2275218">validateCountryCode</a><br> 3.2.10 <a href="#id2275242">validateCountryCodeFault</a><br> 3.2.11 <a href="#id2275260">echoResolvedRef</a><br> 3.2.12 <a href="#id2275292">responseResolvedRef</a><br> 3.3 <a href="#id2275310">Body Blocks Used by the Test Collection</a><br> 3.3.1 <a href="#id2275326">echoOk</a><br> 3.3.2 <a href="#id2275350">responseOk</a><br> 3.3.3 <a href="#id2275367">echoHeader</a><br> 3.3.4 <a href="#id2275396">echoHeaderResponse</a><br> 3.4 <a href="#id2275415">RPC Methods/Procedures Used by the Test Collection</a><br> 3.4.1 <a href="#id2275672">returnVoid</a><br> 3.4.2 <a href="#id2275683">echoStruct</a><br> 3.4.3 <a href="#id2275701">echoStructArray</a><br> 3.4.4 <a href="#id2275719">echoStructAsSimpleTypes</a><br> 3.4.5 <a href="#id2275755">echoSimpleTypesAsStruct</a><br> 3.4.6 <a href="#id2275791">echoNestedStruct</a><br> 3.4.7 <a href="#id2275809">echoNestedArray</a><br> 3.4.8 <a href="#id2275827">echoFloatArray</a><br> 3.4.9 <a href="#id2275845">echoStringArray</a><br> 3.4.10 <a href="#id2275863">echoIntegerArray</a><br> 3.4.11 <a href="#id2275881">echoBase64</a><br> 3.4.12 <a href="#id2275899">echoBoolean</a><br> 3.4.13 <a href="#id2275917">echoDate</a><br> 3.4.14 <a href="#id2275935">echoDecimal</a><br> 3.4.15 <a href="#id2275953">echoFloat</a><br> 3.4.16 <a href="#id2275971">echoString</a><br> 3.4.17 <a href="#id2275989">countItems</a><br> 3.4.18 <a href="#id2276013">isNil</a><br> 3.5 <a href="#tests">Tests</a><br>4. <a href="#refs">References</a><br> 4.1 <a href="#normrefs">Normative References</a><br> 4.2 <a href="#nonnormrefs">Informative References</a><br></p>
|
|
<h3><a name="appendix" id="appendix">Appendix</a></h3><p class="toc">A. <a href="#acks">Acknowledgements</a> (Non-Normative)<br></p></div><hr><div class="body">
|
|
<div class="div1">
|
|
|
|
<h2><a name="intro"></a>1. Introduction</h2>
|
|
<p>This document draws on assertions found in the
|
|
SOAP Version 1.2 specifications, and provides a set of
|
|
tests in order to show whether the assertions are
|
|
implemented in a SOAP processor.
|
|
The primary
|
|
goal of this document is to foster interoperability between different SOAP
|
|
1.2 implementations. The document is intended to help implementors to
|
|
write SOAP processors that comply with SOAP 1.2 specification, and
|
|
interoperate with other SOAP processors that comply with SOAP 1.2
|
|
specification.</p>
|
|
|
|
<p>A SOAP 1.2 implementation that passes all of the tests specified in this
|
|
document may claim to conform to the SOAP 1.2 Test Suite $Date
|
|
2007/04/27 $.
|
|
</p>
|
|
|
|
<p>Even though the purpose of the SOAP 1.2 Test Suite is to facilitate the
|
|
creation of interoperable implementations, conformance to the SOAP 1.2
|
|
Test Suite does not imply conformance to the SOAP 1.2 specifications;
|
|
there are mandatory requirements of the specifications that are not tested
|
|
by the suite (as a simple example, SOAP 1.2 requires that every legal
|
|
value of a role name is accepted, and all illegal ones rejected). An
|
|
implementation may be said to be SOAP 1.2 conformant if and only if it
|
|
it satisfies the conformance requirements specified in SOAP 1.2
|
|
specifications. The W3C does
|
|
not at this time provide for any comprehensive means of testing for such
|
|
conformance.</p>
|
|
|
|
<p>Similarly, an implementation may conform to the SOAP 1.2 specifications
|
|
even if it does not support all capabilities tested by the SOAP 1.2 Test
|
|
Suite. SOAP 1.2 specifications admits special purpose implementations,
|
|
such as those in dedicated controllers, which may send and receive only a
|
|
very limited suite of messages; the requirement is that whatever is done be
|
|
done correctly. An implementation may conform to the SOAP 1.2
|
|
specifications even if it does not support all capabilities tested by the SOAP
|
|
1.2 Test Suite. The test suite defines higher
|
|
level application semantics to enable testing and facilitate interoperable
|
|
implementations. It is not necessary for a SOAP processor to support
|
|
these higher level semantics to be SOAP 1.2 compliant.</p>
|
|
|
|
|
|
<p>Assertions for SOAP Version 1.2 Part 1 and Part 2 are numbered
|
|
sequentially (1..n). "Location of the assertion" points the source of the
|
|
assertion (section or subsection number) in Part 1 or Part 2. Hyperlinks are
|
|
used to cross-reference to the original specification section/subsection.</p>
|
|
|
|
<p>Some of the tests in this document use SOAPBuilders interoperability
|
|
tests as a started point, but have been modified to conform to the
|
|
SOAP 1.2 specifications.
|
|
</p>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="div1">
|
|
|
|
<h2><a name="assertions"></a>2. SOAP 1.2 Assertions</h2>
|
|
|
|
<div class="div2">
|
|
|
|
<h3><a name="assertionspart1"></a>2.1 SOAP 1.2, Part 1 Assertions</h3>
|
|
|
|
<div class="assertion"><h3><a name="x1-conformance-part1" id="x1-conformance-part1"></a>
|
|
Assertion
|
|
x1-conformance-part1</h3><h4><a name="assertloc1" id="assertloc1"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#conformance">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
1.2</a>
|
|
<div><h4><a name="spectext1" id="spectext1"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>For an implementation to claim conformance with the SOAP
|
|
Version 1.2 specification, it MUST correctly implement all
|
|
mandatory ("MUST") requirements expressed in Part 1 of the
|
|
SOAP Version 1.2 specification (this document) that pertain to
|
|
the activity being performed. Note that an implementation is
|
|
not mandated to implement all the mandatory requirements.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment1" id="comment1"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
This statement applies to all assertions and as such will not be tested
|
|
separately.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-conformance-part2" id="x1-conformance-part2"></a>
|
|
Assertion
|
|
x1-conformance-part2</h3><h4><a name="assertloc2" id="assertloc2"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#conformance">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
1.2</a>
|
|
<div><h4><a name="spectext2" id="spectext2"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The implementation
|
|
of an Adjunct MUST implement all the pertinent mandatory
|
|
requirements expressed in the specification of the Adjunct
|
|
to claim conformance with the Adjunct.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment2" id="comment2"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
This statement applies to all assertions in part 2 and as such will not
|
|
be tested separately.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-reltoxml-noschema" id="x1-reltoxml-noschema"></a>
|
|
Assertion
|
|
x1-reltoxml-noschema</h3><h4><a name="assertloc3" id="assertloc3"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#reltoxml">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
1.3</a>
|
|
<div><h4><a name="spectext3" id="spectext3"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p> SOAP does not require that XML Schema processing (assessment or
|
|
validation) be performed to establish the correctness or 'schema implied'
|
|
values of <em>element</em> and <em>attribute information items</em> defined by Parts 1 and 2
|
|
of this specification. The values associated with <em>element</em> and <em>attribute
|
|
information items</em> defined in this specification MUST be carried explicitly
|
|
in the transmitted SOAP message except where stated otherwise (see 5. SOAP
|
|
Message Construct).</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment3" id="comment3"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-reltoxml-lexicalform" id="x1-reltoxml-lexicalform"></a>
|
|
Assertion
|
|
x1-reltoxml-lexicalform</h3><h4><a name="assertloc4" id="assertloc4"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#reltoxml">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
1.3</a>
|
|
<div><h4><a name="spectext4" id="spectext4"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Unless
|
|
otherwise stated, all lexical forms are supported for each such
|
|
attribute, and lexical forms representing the same value in the
|
|
XML Schema value space are considered equivalent for purposes of
|
|
SOAP processing, e.g. the boolean lexical forms
|
|
"1" and "true" are
|
|
interchangeable.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment4" id="comment4"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapnodes-procmodel" id="x1-soapnodes-procmodel"></a>
|
|
Assertion
|
|
x1-soapnodes-procmodel</h3><h4><a name="assertloc5" id="assertloc5"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapnodes">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.1</a>
|
|
<div><h4><a name="spectext5" id="spectext5"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
A SOAP node receiving a SOAP message MUST perform
|
|
processing according to the SOAP processing model as
|
|
described in this section and in
|
|
the remainder of this specification.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment5" id="comment5"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion is tested by the entire test collection.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soaproles-invariant" id="x1-soaproles-invariant"></a>
|
|
Assertion
|
|
x1-soaproles-invariant</h3><h4><a name="assertloc6" id="assertloc6"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soaproles">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.2</a>
|
|
<div><h4><a name="spectext6" id="spectext6"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
The roles
|
|
assumed by a node MUST be
|
|
invariant during the processing of an individual SOAP
|
|
message.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment6" id="comment6"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion cannot be fully tested, as a SOAP node is allowed to
|
|
process and remove SOAP headers, reinsert them and send them upstream.
|
|
</p>
|
|
</div>
|
|
<div><h4><a name="test6" id="test6"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T62">T62</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soaproles-next" id="x1-soaproles-next"></a>
|
|
Assertion
|
|
x1-soaproles-next</h3><h4><a name="assertloc7" id="assertloc7"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soaproles">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.2</a>
|
|
<div><h4><a name="spectext7" id="spectext7"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>Table 2: SOAP Roles defined by this specification, row 1
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
|
|
<div><h4><a name="test7" id="test7"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T1">T1</a>,
|
|
<a href="#T17">T17</a>,
|
|
<a href="#T66">T66</a>,
|
|
<a href="#T67">T67</a>,
|
|
<a href="#T68">T68</a>,
|
|
<a href="#T74">T74</a>,
|
|
<a href="#T75">T75</a>,
|
|
<a href="#TH4">TH4</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soaproles-none" id="x1-soaproles-none"></a>
|
|
Assertion
|
|
x1-soaproles-none</h3><h4><a name="assertloc8" id="assertloc8"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soaproles">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.2</a>
|
|
<div><h4><a name="spectext8" id="spectext8"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>Table 2: SOAP Roles defined by this specification, row 2
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test8" id="test8"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T8">T8</a>,
|
|
<a href="#T18">T18</a>,
|
|
<a href="#T19">T19</a>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soaproles-ur" id="x1-soaproles-ur"></a>
|
|
Assertion
|
|
x1-soaproles-ur</h3><h4><a name="assertloc9" id="assertloc9"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soaproles">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.2</a>
|
|
<div><h4><a name="spectext9" id="spectext9"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>Table 2: SOAP Roles defined by this specification, row 3
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test9" id="test9"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T36">T36</a>,
|
|
<a href="#T37">T37</a>,
|
|
<a href="#T78">T78</a>,
|
|
<a href="#T79">T79</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-muprocessing-true" id="x1-muprocessing-true"></a>
|
|
Assertion
|
|
x1-muprocessing-true</h3><h4><a name="assertloc10" id="assertloc10"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#muprocessing">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.4</a>
|
|
<div><h4><a name="spectext10" id="spectext10"></a>
|
|
Text from the specification
|
|
</h4>
|
|
|
|
<blockquote>
|
|
<p>Mandatory SOAP header blocks are presumed to somehow modify
|
|
the semantics of other SOAP header blocks or SOAP body elements. Therefore,
|
|
for every mandatory SOAP header block targeted to a node, that
|
|
node MUST either process the header block or not process the
|
|
SOAP message at all, and instead generate a fault (see
|
|
2.6 Processing SOAP Messages and 5.4 SOAP Fault).
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment10" id="comment10"></a>
|
|
Comments
|
|
</h4>
|
|
<p>All tests in the test collection that use mustUnderstand attribute
|
|
with a value of true/1 will test this assertion.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-muprocessing-ur" id="x1-muprocessing-ur"></a>
|
|
Assertion
|
|
x1-muprocessing-ur</h3><h4><a name="assertloc11" id="assertloc11"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#muprocessing">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.4</a>
|
|
<div><h4><a name="spectext11" id="spectext11"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
In
|
|
particular, it is not an error for an ultimate SOAP
|
|
receiver to receive a message containing a mandatory SOAP header
|
|
block that is targeted at a role other than the ones assumed
|
|
by the ultimate SOAP receiver.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test11" id="test11"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T15">T15</a>,
|
|
<a href="#T19">T19</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-structinterpbodies-ur" id="x1-structinterpbodies-ur"></a>
|
|
Assertion
|
|
x1-structinterpbodies-ur</h3><h4><a name="assertloc12" id="assertloc12"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#structinterpbodies">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.5</a>
|
|
<div><h4><a name="spectext12" id="spectext12"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
An ultimate SOAP receiver MUST correctly process the immediate children
|
|
of the SOAP body (see 5.3 SOAP Body).
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment12" id="comment12"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
All tests in the test collection that have body block(s).
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="assertion"><h3><a name="x1-procsoapmsgs-steps" id="x1-procsoapmsgs-steps"></a>
|
|
Assertion
|
|
x1-procsoapmsgs-steps</h3><h4><a name="assertloc13" id="assertloc13"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#procsoapmsgs">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.6</a>
|
|
<div><h4><a name="spectext13" id="spectext13"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Unless otherwise stated, processing of all generated SOAP messages,
|
|
SOAP faults and application-level side effects MUST be
|
|
semantically equivalent to performing the following steps separately,
|
|
and in the order given.
|
|
</p>
|
|
|
|
<ol>
|
|
<li>
|
|
<p>Determine the set of roles in which the node is to act.
|
|
The contents of the SOAP envelope, including any SOAP header blocks and
|
|
the SOAP body, MAY be inspected in making such determination.</p>
|
|
</li>
|
|
<li>
|
|
<p>Identify all header blocks targeted at the node that
|
|
are mandatory.</p>
|
|
</li>
|
|
<li>
|
|
<p>If one or more of the SOAP header blocks identified in the
|
|
preceding step are not understood by the node then
|
|
generate a single SOAP fault with the <code>Value</code> of
|
|
<code>Code</code> set to "env:MustUnderstand"
|
|
(see 5.4.8 SOAP mustUnderstand Faults). If
|
|
such a fault is generated, any further processing MUST
|
|
NOT be done. Faults relating to the contents of the SOAP body
|
|
MUST NOT be generated in this step.</p>
|
|
|
|
<div class="note"><p class="prefix"><b>Note:</b></p>
|
|
<p>Throughout this document, the term "<code>Value</code> of
|
|
<code>Code</code> " is used as a shorthand for "value of
|
|
the <code>Value</code> child <em>element information
|
|
item</em> of the <code>Code</code> <em>element
|
|
information item</em>" (see 5.4.1 SOAP Code Element).</p>
|
|
</div>
|
|
|
|
</li>
|
|
<li>
|
|
<p>Process all mandatory SOAP header blocks targeted at the node and, in
|
|
the case of an ultimate SOAP receiver, the SOAP body.
|
|
A SOAP node MAY also choose to process non-mandatory
|
|
SOAP header blocks targeted at it.</p>
|
|
|
|
|
|
|
|
|
|
</li>
|
|
<li>
|
|
<p>In the case of a SOAP intermediary, and where the SOAP
|
|
message exchange pattern and results of processing
|
|
(e.g. no fault generated) require that the SOAP message
|
|
be sent further along the SOAP message path, relay the
|
|
message as described in section 2.7 Relaying SOAP Messages.</p>
|
|
</li>
|
|
</ol>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment13" id="comment13"></a>
|
|
Comments
|
|
</h4>
|
|
<p>All tests in the test collection test this assertion.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-procsoapmsgs-headerspec" id="x1-procsoapmsgs-headerspec"></a>
|
|
Assertion
|
|
x1-procsoapmsgs-headerspec</h3><h4><a name="assertloc14" id="assertloc14"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#procsoapmsgs">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.6</a>
|
|
<div><h4><a name="spectext14" id="spectext14"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>In all cases where a SOAP header block is
|
|
processed, the SOAP node MUST understand the SOAP header
|
|
block and MUST do such processing in a manner fully
|
|
conformant with the specification for that header block.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment14" id="comment14"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
All tests in the test collection that process a soap header without
|
|
generating a fault, test this assertion.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-procsoapmsgs-body" id="x1-procsoapmsgs-body"></a>
|
|
Assertion
|
|
x1-procsoapmsgs-body</h3><h4><a name="assertloc15" id="assertloc15"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#procsoapmsgs">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.6</a>
|
|
<div><h4><a name="spectext15" id="spectext15"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
An ultimate SOAP receiver MUST process the SOAP body, in a manner
|
|
consistent with 2.5 Structure and Interpretation of SOAP Bodies.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment15" id="comment15"></a>
|
|
Comments
|
|
</h4>
|
|
<p>All tests in the test collection that have body block(s) test this
|
|
assertion.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-procsoapmsgs-fault" id="x1-procsoapmsgs-fault"></a>
|
|
Assertion
|
|
x1-procsoapmsgs-fault</h3><h4><a name="assertloc16" id="assertloc16"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#procsoapmsgs">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.6</a>
|
|
<div><h4><a name="spectext16" id="spectext16"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>Failure is indicated by the generation of a fault (see
|
|
5.4 SOAP Fault). SOAP message processing MAY result
|
|
in the generation of at most one fault.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment16" id="comment16"></a>
|
|
Comments
|
|
</h4>
|
|
<p>All tests in the test collection that generate a fault test this assertion.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-procsoapmsgs-faultchoice" id="x1-procsoapmsgs-faultchoice"></a>
|
|
Assertion
|
|
x1-procsoapmsgs-faultchoice</h3><h4><a name="assertloc17" id="assertloc17"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#procsoapmsgs">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.6</a>
|
|
<div><h4><a name="spectext17" id="spectext17"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
The selection of a
|
|
fault need not be predicated on the application of the "MUST",
|
|
"SHOULD" or "MAY" keywords to the generation of the fault, with
|
|
the exception that if one or more of the prescribed faults is
|
|
qualified with the "MUST" keyword, then any one fault from the
|
|
set of possible faults MUST be generated.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment17" id="comment17"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
This assertion will not be tested.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-relayable-behavior" id="x1-relayable-behavior"></a>
|
|
Assertion
|
|
x1-relayable-behavior</h3><h4><a name="assertloc18" id="assertloc18"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#relayable">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.7.1</a>
|
|
<div><h4><a name="spectext18" id="spectext18"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Table 3: SOAP Nodes Forwarding behavior
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-forwardinter-behavior" id="x1-forwardinter-behavior"></a>
|
|
Assertion
|
|
x1-forwardinter-behavior</h3><h4><a name="assertloc19" id="assertloc19"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#forwardinter">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.7.2</a>
|
|
<div><h4><a name="spectext19" id="spectext19"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>Forwarding SOAP intermediaries MUST process the message according
|
|
to the SOAP processing model defined in
|
|
2.6 Processing SOAP Messages. In addition, when generating a
|
|
SOAP message for the purpose of forwarding, they MUST:</p>
|
|
|
|
<ol>
|
|
<li><p>Remove all processed SOAP header blocks.</p></li>
|
|
|
|
<li><p>Remove all non-relayable SOAP header blocks that were
|
|
targeted at the forwarding node but ignored during
|
|
processing.</p></li>
|
|
|
|
<li><p>Retain all relayable SOAP header blocks that were targeted
|
|
at the forwarding node but ignored during processing.</p></li>
|
|
</ol>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment19" id="comment19"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
All tests in the test collection that use Node B.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-forwardinter-featuresem" id="x1-forwardinter-featuresem"></a>
|
|
Assertion
|
|
x1-forwardinter-featuresem</h3><h4><a name="assertloc20" id="assertloc20"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#forwardinter">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.7.2</a>
|
|
<div><h4><a name="spectext20" id="spectext20"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>Forwarding SOAP intermediaries MUST also obey the
|
|
specification for the SOAP forwarding feature being used.
|
|
The specification for such a feature MUST describe the required semantics, including
|
|
the rules describing how the forwarded message is
|
|
constructed.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment20" id="comment20"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
This assertion will not be tested.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapinterminfoset-preserve" id="x1-soapinterminfoset-preserve"></a>
|
|
Assertion
|
|
x1-soapinterminfoset-preserve</h3><h4><a name="assertloc21" id="assertloc21"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapinterminfoset">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.7.4</a>
|
|
<div><h4><a name="spectext21" id="spectext21"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>All XML infoset properties of a message MUST be preserved with the
|
|
following exceptions:</p>
|
|
|
|
<ol>
|
|
|
|
<li><p>The <em>element information item</em> for a header block targeted at an
|
|
intermediary MAY be removed, by that intermediary,
|
|
from the [children] property of the
|
|
SOAP <code>Header</code> <em>element information item</em> as detailed in
|
|
2.7.2 SOAP Forwarding Intermediaries.</p></li>
|
|
|
|
<li><p><em>Element information items</em> for additional header blocks MAY be
|
|
added to the [children] property of the SOAP <code>Header</code> <em>element
|
|
information item</em> as detailed in 2.7.2 SOAP Forwarding Intermediaries.</p></li>
|
|
|
|
<li><p><em>Whitespace character information items</em> MAY be removed from the
|
|
[children] property of the SOAP <code>Envelope</code> <em>element information item</em>.</p></li>
|
|
|
|
<li><p><em>Whitespace character information items</em> MAY be added to the
|
|
[children] property of the SOAP <code>Envelope</code> <em>element information item</em>.</p></li>
|
|
|
|
<li><p><em>Whitespace character information items</em> MAY be removed from the
|
|
[children] property of the SOAP <code>Header</code> <em>element information item</em>.</p></li>
|
|
|
|
<li><p><em>Whitespace character information items</em> MAY be added to the
|
|
[children] property of the SOAP <code>Header</code> <em>element information item</em>.</p></li>
|
|
|
|
<li><p><em>Comment information items</em> MAY be added to the [children] property
|
|
of the SOAP <code>Envelope</code> <em>element information item</em>.</p></li>
|
|
|
|
<li><p><em>Comment information items</em> MAY be removed from the [children] property
|
|
of the SOAP <code>Envelope</code> <em>element information item</em>.</p></li>
|
|
|
|
<li><p><em>Comment information items</em> MAY be added to the [children] property
|
|
of the SOAP <code>Header</code> <em>element information item</em>.</p></li>
|
|
|
|
<li><p><em>Comment information items</em> MAY be removed from the [children] property
|
|
of the SOAP <code>Header</code> <em>element information item</em>.</p></li>
|
|
|
|
<li><p><em>Attribute information items</em> MAY be added to the [attributes]
|
|
property of the SOAP <code>Envelope</code> <em>element information item</em>.</p></li>
|
|
|
|
<li><p><em>Attribute information items</em> MAY be added to the [attributes]
|
|
property of the SOAP <code>Header</code> <em>element information item</em>.</p></li>
|
|
|
|
<li><p><em>Attribute information items</em> MAY be added to the [namespace attributes]
|
|
property of the SOAP <code>Envelope</code> <em>element information item</em>.</p></li>
|
|
|
|
<li><p><em>Attribute information items</em> MAY be added to the [namespace attributes]
|
|
property of the SOAP <code>Header</code> <em>element information item</em>.</p></li>
|
|
|
|
<li><p>SOAP role <em>attribute information items</em> that are present in
|
|
the [attributes] property of SOAP header block <em>element
|
|
information items</em> may be transformed as described in 5.2.2 SOAP role
|
|
Attribute.</p></li>
|
|
|
|
<li><p>SOAP mustUnderstand <em>attribute information items</em> that are present in the [attributes] property of SOAP header block
|
|
<em>element information items</em> may be transformed as described in
|
|
5.2.3 SOAP mustUnderstand Attribute.</p></li>
|
|
|
|
<li><p>SOAP relay <em>attribute information items</em> that are present
|
|
in the [attributes] property of SOAP header block <em>element
|
|
information items</em> may be transformed as described in 5.2.4 SOAP relay
|
|
Attribute.</p></li>
|
|
|
|
<li><p>The [base URI] property of the <em>document information item</em> need not
|
|
be maintained.</p></li>
|
|
|
|
<li><p>The [base URI] property of <em>element information items</em> MAY be changed or removed.</p></li>
|
|
|
|
<li><p>The [character encoding scheme] property of the <em>document
|
|
information item</em> MAY be changed or removed.</p></li>
|
|
|
|
<li><p>All <em>namespace information items</em> in the [in-scope
|
|
namespaces] of <em>element information items</em> MUST be preserved.
|
|
Additional namespace information items MAY be added.</p></li>
|
|
|
|
</ol>
|
|
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment21" id="comment21"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
This assertion is partially tested by all tests that use Node B.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-envvermodel-permsg" id="x1-envvermodel-permsg"></a>
|
|
Assertion
|
|
x1-envvermodel-permsg</h3><h4><a name="assertloc22" id="assertloc22"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#envvermodel">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.8</a>
|
|
<div><h4><a name="spectext22" id="spectext22"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
A SOAP node determines whether it supports the version of a SOAP
|
|
message on a per message basis.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment22" id="comment22"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
This assertion will not be tested.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-envvermodel-msgversion" id="x1-envvermodel-msgversion"></a>
|
|
Assertion
|
|
x1-envvermodel-msgversion</h3><h4><a name="assertloc23" id="assertloc23"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#envvermodel">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.8</a>
|
|
<div><h4><a name="spectext23" id="spectext23"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
A SOAP node MAY support multiple envelope versions.
|
|
However, when processing a message, a SOAP node MUST use
|
|
the semantics defined by the version of that message.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test23" id="test23"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T34">T34</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-envvermodel-fault" id="x1-envvermodel-fault"></a>
|
|
Assertion
|
|
x1-envvermodel-fault</h3><h4><a name="assertloc24" id="assertloc24"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#envvermodel">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
2.8</a>
|
|
<div><h4><a name="spectext24" id="spectext24"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
If a SOAP node receives a message whose version is not supported it
|
|
MUST generate a fault (see 5.4 SOAP Fault) with a Value of
|
|
Code set to "env:VersionMismatch". Any other malformation of the
|
|
message construct MUST result in the generation of a fault with a
|
|
Value of Code set to "env:Sender".
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test24" id="test24"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T24">T24</a>,
|
|
<a href="#T30">T30</a>,
|
|
<a href="#TH3">TH3</a>,
|
|
<a href="#T14">T14</a>,
|
|
|
|
<a href="#T28">T28</a>,
|
|
<a href="#T69">T69</a>,
|
|
<a href="#T70">T70</a>,
|
|
<a href="#T71">T71</a>,
|
|
<a href="#T72">T72</a>,
|
|
<a href="#TH2">TH2</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapfeature-override" id="x1-soapfeature-override"></a>
|
|
Assertion
|
|
x1-soapfeature-override</h3><h4><a name="assertloc25" id="assertloc25"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapfeature">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
3.1</a>
|
|
<div><h4><a name="spectext25" id="spectext25"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
The processing of SOAP envelopes in
|
|
accordance with the SOAP Processing Model (see 2. SOAP Processing Model)
|
|
MUST NOT be overridden by binding specifications.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment25" id="comment25"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
This assertion will not be tested.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-featurereq-spec" id="x1-featurereq-spec"></a>
|
|
Assertion
|
|
x1-featurereq-spec</h3><h4><a name="assertloc26" id="assertloc26"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#featurereq">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
3.1.1</a>
|
|
<div><h4><a name="spectext26" id="spectext26"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The specification of a feature MUST include the
|
|
following:</p>
|
|
|
|
<ol>
|
|
<li><p>A URI used to name the feature. This enables the feature to be unambiguously referenced in description languages or during negotiation.</p></li>
|
|
|
|
|
|
<li>
|
|
<p>The information (state) required at each node
|
|
to implement the feature.</p>
|
|
</li>
|
|
|
|
<li>
|
|
<p>The processing required at each node in order to fulfill the
|
|
obligations of the feature including any handling of communication
|
|
failures that might occur in the underlying protocol (see also
|
|
4.2 Binding Framework).</p>
|
|
</li>
|
|
|
|
<li>
|
|
<p>The information to be transmitted from node to node.</p>
|
|
</li>
|
|
|
|
</ol>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment26" id="comment26"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
This assertion will not be tested.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapmep-spec" id="x1-soapmep-spec"></a>
|
|
Assertion
|
|
x1-soapmep-spec</h3><h4><a name="assertloc27" id="assertloc27"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapmep">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
3.2</a>
|
|
<div><h4><a name="spectext27" id="spectext27"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The specification of a
|
|
message exchange pattern MUST:</p>
|
|
|
|
<ul>
|
|
<li><p>As mandated by 3.1.1 Requirements on Features,
|
|
provide a URI to name the MEP.</p></li>
|
|
|
|
<li><p>Describe the life cycle of a message
|
|
exchange conforming to the pattern.</p></li>
|
|
|
|
<li><p>Describe the temporal/causal relationships, if any, of
|
|
multiple messages exchanged in conformance with the pattern (e.g. responses follow
|
|
requests and are sent to the originator of the request.)</p></li>
|
|
|
|
<li><p>Describe the normal and abnormal termination of a
|
|
message exchange conforming to the pattern.</p></li>
|
|
|
|
</ul>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment27" id="comment27"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
This assertion will not be tested.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapmep-featurereq" id="x1-soapmep-featurereq"></a>
|
|
Assertion
|
|
x1-soapmep-featurereq</h3><h4><a name="assertloc28" id="assertloc28"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapmep">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
3.2</a>
|
|
<div><h4><a name="spectext28" id="spectext28"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>MEPs are SOAP features, so an MEP specification MUST
|
|
conform to the requirements for SOAP feature specifications
|
|
(see 3.1.1 Requirements on Features).
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment28" id="comment28"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapmep-include" id="x1-soapmep-include"></a>
|
|
Assertion
|
|
x1-soapmep-include</h3><h4><a name="assertloc29" id="assertloc29"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapmep">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
3.2</a>
|
|
<div><h4><a name="spectext29" id="spectext29"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
An MEP specification MUST
|
|
also include:</p>
|
|
|
|
<ol>
|
|
<li><p>Any requirements to generate
|
|
additional messages (such as responses to requests in a
|
|
request/response MEP).</p></li>
|
|
<li><p>Rules for the delivery or other
|
|
disposition of SOAP faults generated during the operation
|
|
of the MEP.</p></li>
|
|
</ol>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment29" id="comment29"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
This assertion will not be tested.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapmodules-specrules" id="x1-soapmodules-specrules"></a>
|
|
Assertion
|
|
x1-soapmodules-specrules</h3><h4><a name="assertloc30" id="assertloc30"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapmodules">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
3.3</a>
|
|
<div><h4><a name="spectext30" id="spectext30"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>A module
|
|
specification adheres to the following rules. It:</p>
|
|
|
|
<ol>
|
|
<li><p>MUST identify itself with a URI. This enables the
|
|
module to be unambiguously referenced in description languages
|
|
or during negotiation.</p></li>
|
|
|
|
<li><p>MUST declare the features provided by a module
|
|
(see 3.1 SOAP Features).</p></li>
|
|
|
|
<li><p>MUST clearly and completely specify the content
|
|
and semantics of the SOAP header blocks used to implement
|
|
the behavior in question, including if appropriate
|
|
any modifications to the SOAP Processing model.
|
|
The SOAP extensibility model does not limit the extent to
|
|
which SOAP can be extended. Nor does it prevent extensions
|
|
from modifying the SOAP processing model from that described
|
|
in 2. SOAP Processing Model</p></li>
|
|
|
|
<li><p>MAY utilize the property conventions defined
|
|
in <a href="#SOAP-PART2">[SOAP Part 2]</a>,
|
|
section <a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#soapfeatspec">A Convention for
|
|
Describing Features and Bindings</a>,
|
|
in describing the functionality
|
|
that the module provides. If these conventions
|
|
are followed, the module specification MUST clearly describe
|
|
the relationship between the abstract properties
|
|
and their representations in the SOAP envelope. Note that
|
|
it is possible to write a feature specification purely
|
|
in terms of abstract properties, and then write a separate
|
|
module specification which implements that feature,
|
|
mapping the properties defined in the feature specification
|
|
to SOAP header blocks in the SOAP module.</p></li>
|
|
|
|
<li><p>MUST clearly specify any known interactions with or
|
|
changes to the interpretation of the SOAP body. Furthermore, it
|
|
MUST clearly specify any known interactions with or changes to
|
|
the interpretation of other SOAP features and SOAP modules
|
|
For example, we can imagine a
|
|
module which encrypts and removes the SOAP body, inserting instead
|
|
a SOAP header block containing
|
|
a checksum and an indication of the encryption mechanism used.
|
|
The specification for such a module would indicate that the
|
|
decryption algorithm on the receiving side is to be run
|
|
<em>prior</em> to any other modules which rely on the
|
|
contents of the SOAP body.</p></li>
|
|
|
|
</ol>
|
|
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment30" id="comment30"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
This assertion will not be tested.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-bindfw-enablemep" id="x1-bindfw-enablemep"></a>
|
|
Assertion
|
|
x1-bindfw-enablemep</h3><h4><a name="assertloc31" id="assertloc31"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#bindfw">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
4.2</a>
|
|
<div><h4><a name="spectext31" id="spectext31"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>A binding specification MUST enable one or more MEPs.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment31" id="comment31"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
HTTP binding specified in SOAP 1.2 part 2 enables an MEP. This
|
|
assertion will not be tested.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-bindfw-featurecomb" id="x1-bindfw-featurecomb"></a>
|
|
Assertion
|
|
x1-bindfw-featurecomb</h3><h4><a name="assertloc32" id="assertloc32"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#bindfw">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
4.2</a>
|
|
<div><h4><a name="spectext32" id="spectext32"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>In cases where multiple features are supported by a binding
|
|
specification, the specifications for those features MUST provide
|
|
any information necessary for their successful use in
|
|
combination.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment32" id="comment32"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
HTTP binding specified in SOAP 1.2 part 2 is an example of this
|
|
assertion. This assertion will not be tested.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-bindfw-featuredepend" id="x1-bindfw-featuredepend"></a>
|
|
Assertion
|
|
x1-bindfw-featuredepend</h3><h4><a name="assertloc33" id="assertloc33"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#bindfw">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
4.2</a>
|
|
<div><h4><a name="spectext33" id="spectext33"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Similarly, any dependencies of one feature on another
|
|
(i.e. if successful use of one feature depends on use or non-use
|
|
of another) MUST be specified.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment33" id="comment33"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
HTTP binding specified in SOAP 1.2 part 2 is an example of this
|
|
assertion. This assertion will not be tested.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-bindfw-xml10" id="x1-bindfw-xml10"></a>
|
|
Assertion
|
|
x1-bindfw-xml10</h3><h4><a name="assertloc34" id="assertloc34"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#bindfw">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
4.2</a>
|
|
<div><h4><a name="spectext34" id="spectext34"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
The binding framework does NOT require that every binding use the XML
|
|
1.0 [8] serialization as the "on the wire"
|
|
representation of the Infoset; compressed, encrypted, fragmented
|
|
representations and so on can be used if appropriate.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment34" id="comment34"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
This assertion will not be tested.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-bindfw-streaming" id="x1-bindfw-streaming"></a>
|
|
Assertion
|
|
x1-bindfw-streaming</h3><h4><a name="assertloc35" id="assertloc35"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#bindfw">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
4.2</a>
|
|
<div><h4><a name="spectext35" id="spectext35"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Although streaming SOAP receivers will acquire such Infosets
|
|
incrementally, SOAP processing MUST yield results identical to those
|
|
that would have been achieved if the entire SOAP envelope were available
|
|
prior to the start of processing.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment35" id="comment35"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
This assertion will not be tested.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapenv-diichild" id="x1-soapenv-diichild"></a>
|
|
Assertion
|
|
x1-soapenv-diichild</h3><h4><a name="assertloc36" id="assertloc36"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapenv">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5</a>
|
|
<div><h4><a name="spectext36" id="spectext36"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>A SOAP message is specified as an XML infoset that consists of a
|
|
<em>document information item</em> with exactly one member
|
|
in its [children] property,
|
|
which MUST be the SOAP <code>Envelope</code> <em>element information
|
|
item</em> (see 5.1 SOAP Envelope). This <em>element
|
|
information item</em> is also the value of the [document
|
|
element] property.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment36" id="comment36"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
All tests in the test collection test this assertion.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapenv-docprop" id="x1-soapenv-docprop"></a>
|
|
Assertion
|
|
x1-soapenv-docprop</h3><h4><a name="assertloc37" id="assertloc37"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapenv">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5</a>
|
|
<div><h4><a name="spectext37" id="spectext37"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
The [notations] and [unparsed entities] properties are both empty.
|
|
The [base URI], [character encoding scheme] and [version] properties
|
|
may have any legal value. The [standalone] property either has a value
|
|
of "true" or has no value.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test37" id="test37"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T64">T64</a>,
|
|
<a href="#T25">T25</a>,
|
|
<a href="#T65">T65</a>,
|
|
<a href="#T66">T66</a>,
|
|
<a href="#T67">T67</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapenv-dtd" id="x1-soapenv-dtd"></a>
|
|
Assertion
|
|
x1-soapenv-dtd</h3><h4><a name="assertloc38" id="assertloc38"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapenv">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5</a>
|
|
<div><h4><a name="spectext38" id="spectext38"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The XML infoset of a SOAP message MUST NOT contain a
|
|
<em>document type declaration information item</em>.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test38" id="test38"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T25">T25</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapenv-pi" id="x1-soapenv-pi"></a>
|
|
Assertion
|
|
x1-soapenv-pi</h3><h4><a name="assertloc39" id="assertloc39"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapenv">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5</a>
|
|
<div><h4><a name="spectext39" id="spectext39"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>SOAP messages sent by initial SOAP senders MUST NOT
|
|
contain <em>processing instruction information items</em>.
|
|
SOAP intermediaries MUST NOT insert <em>processing instruction
|
|
information items</em> in SOAP messages they relay. SOAP
|
|
receivers receiving a SOAP message containing a <em>processing
|
|
instruction information item</em> SHOULD generate a SOAP fault
|
|
with the <code>Value</code> of <code>Code</code> set to
|
|
"env:Sender".
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test39" id="test39"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T26">T26</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapenvelope-prop" id="x1-soapenvelope-prop"></a>
|
|
Assertion
|
|
x1-soapenvelope-prop</h3><h4><a name="assertloc40" id="assertloc40"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapenvelope">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.1</a>
|
|
<div><h4><a name="spectext40" id="spectext40"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The SOAP <code>Envelope</code> <em>element information item</em> has:</p>
|
|
|
|
<ul>
|
|
|
|
<li><p>A [local name] of <code>Envelope</code> .</p></li>
|
|
|
|
<li><p>A [namespace name] of
|
|
"http://www.w3.org/2003/05/soap-envelope".
|
|
</p></li>
|
|
|
|
<li><p>Zero or more namespace qualified <em>attribute
|
|
information items</em> amongst its [attributes] property.</p></li>
|
|
|
|
<li><p>One or two <em>element information item</em>s in its
|
|
[children] property in order as follows:</p>
|
|
|
|
<ol>
|
|
|
|
<li><p>An optional <code>Header</code> <em>element information
|
|
item</em> (see 5.2 SOAP Header).</p></li>
|
|
|
|
<li><p>A mandatory <code>Body</code> <em>element information
|
|
item</em> (see 5.3 SOAP Body).</p></li>
|
|
|
|
</ol>
|
|
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment40" id="comment40"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
All the tests in the test collection test this assertion.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapencattr-prop" id="x1-soapencattr-prop"></a>
|
|
Assertion
|
|
x1-soapencattr-prop</h3><h4><a name="assertloc41" id="assertloc41"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapencattr">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.1.1</a>
|
|
<div><h4><a name="spectext41" id="spectext41"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>encodingStyle</code> <em>attribute information
|
|
item</em> has:</p>
|
|
|
|
<ul>
|
|
|
|
<li><p>A [local name] of <code>encodingStyle</code> .</p></li>
|
|
|
|
<li><p>A [namespace name] of
|
|
"http://www.w3.org/2003/05/soap-envelope".</p></li>
|
|
|
|
</ul>
|
|
|
|
<p>The <code>encodingStyle</code> <em>attribute information
|
|
item</em> is of type <em>xs:anyURI</em>.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment41" id="comment41"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
All tests in the test collection that use encodingSytle attribute test
|
|
this assertion.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapencattr-restrictions" id="x1-soapencattr-restrictions"></a>
|
|
Assertion
|
|
x1-soapencattr-restrictions</h3><h4><a name="assertloc42" id="assertloc42"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapencattr">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.1.1</a>
|
|
<div><h4><a name="spectext42" id="spectext42"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>encodingStyle</code> <em>attribute information
|
|
item</em> MAY appear on the following:</p>
|
|
|
|
<ol>
|
|
|
|
<li><p>A SOAP header block (see 5.2.1 SOAP Header block).
|
|
</p></li>
|
|
|
|
<li><p>A child <em>element information item</em> of
|
|
the SOAP <code>Body</code> <em>element information item</em> (see 5.3.1 SOAP Body child Element)
|
|
if that child is not a SOAP Fault <em>element information
|
|
item</em> (see 5.4 SOAP Fault).</p></li>
|
|
|
|
<li><p>A child <em>element information item</em> of
|
|
the SOAP <code>Detail</code> <em>element information item</em> (see 5.4.5.1 SOAP detail entry).</p></li>
|
|
|
|
<li><p>Any descendent of 1, 2, and 3 above.</p></li>
|
|
|
|
</ol>
|
|
|
|
<p>The <code>encodingStyle</code> <em>attribute information
|
|
item</em> MUST NOT appear on any element other than above in a
|
|
SOAP message infoset.</p>
|
|
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment42" id="comment42"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
All tests in the test collection that use encodingSytle attribute test
|
|
this assertion.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapencattr-scope" id="x1-soapencattr-scope"></a>
|
|
Assertion
|
|
x1-soapencattr-scope</h3><h4><a name="assertloc43" id="assertloc43"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapencattr">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.1.1</a>
|
|
<div><h4><a name="spectext43" id="spectext43"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The
|
|
scope of the <code>encodingStyle</code> <em>attribute information
|
|
item</em> is that of its owner <em>element information
|
|
item</em> and that <em>element information item's</em>
|
|
descendants, unless a descendant itself carries such an
|
|
<em>attribute information item</em>.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test43" id="test43"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T73">T73</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapencattr-none" id="x1-soapencattr-none"></a>
|
|
Assertion
|
|
x1-soapencattr-none</h3><h4><a name="assertloc44" id="assertloc44"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapencattr">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.1.1</a>
|
|
<div><h4><a name="spectext44" id="spectext44"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
If no
|
|
<code>encodingStyle</code> <em>attribute information
|
|
item</em> is in scope for a particular <em>element
|
|
information item</em> or the value of such an
|
|
<em>attribute information item</em> is "http://www.w3.org/2003/05/soap-envelope/encoding/none" then no claims are made regarding the encoding style of
|
|
that <em>element information item</em> and its
|
|
descendants.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test44" id="test44"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T73">T73</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soaphead-prop" id="x1-soaphead-prop"></a>
|
|
Assertion
|
|
x1-soaphead-prop</h3><h4><a name="assertloc45" id="assertloc45"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soaphead">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.2</a>
|
|
<div><h4><a name="spectext45" id="spectext45"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>Header</code> <em>element information item</em> has:</p>
|
|
|
|
<ul>
|
|
|
|
<li><p>A [local name] of <code>Header</code> .</p></li>
|
|
|
|
<li><p>A [namespace name] of
|
|
"http://www.w3.org/2003/05/soap-envelope".</p></li>
|
|
|
|
<li><p>Zero or more namespace qualified <em>attribute
|
|
information items</em> in its [attributes] property.</p></li>
|
|
|
|
<li><p>Zero or more namespace qualified <em>element
|
|
information item</em>s in its [children] property.</p></li>
|
|
|
|
</ul>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment45" id="comment45"></a>
|
|
Comments
|
|
</h4>
|
|
<p>All the tests in the test collection that use headers, test this
|
|
assertion.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapheadblock-prop" id="x1-soapheadblock-prop"></a>
|
|
Assertion
|
|
x1-soapheadblock-prop</h3><h4><a name="assertloc46" id="assertloc46"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapheadblock">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.2.1</a>
|
|
<div><h4><a name="spectext46" id="spectext46"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>Each SOAP header block <em>element information item</em>:</p>
|
|
|
|
<ul>
|
|
|
|
<li><p>MUST have a [namespace name] property which has a
|
|
value, that is the name of the element MUST be namespace qualified.</p></li>
|
|
<li><p>MAY have any number of <em>character information
|
|
item</em> children. Child <em>character information
|
|
items</em> whose character code is amongst the whitespace
|
|
characters as defined by <a href="#XML">[XML 1.0]</a> are
|
|
considered significant.</p></li>
|
|
|
|
<li><p>MAY have any number of <em>element
|
|
information item</em> children. Such <em>element
|
|
information items</em> MAY be namespace qualified.</p></li>
|
|
|
|
<li><p>MAY have zero or more <em>attribute information
|
|
items</em> in its [attributes] property. Among these MAY
|
|
be any or all of the following, which have special
|
|
significance for SOAP processing:</p>
|
|
|
|
<ul>
|
|
|
|
<li><p><code>encodingStyle</code> <em>attribute
|
|
information item</em> (see 5.1.1 SOAP encodingStyle Attribute
|
|
).</p></li>
|
|
|
|
<li><p><code>role</code> <em>attribute information
|
|
item</em> (see 5.2.2 SOAP role Attribute).</p></li>
|
|
|
|
<li><p><code>mustUnderstand</code> <em>attribute
|
|
information item</em> (see 5.2.3 SOAP mustUnderstand Attribute).
|
|
</p></li>
|
|
|
|
<li><p><code>relay</code> <em>attribute
|
|
information item</em> (see 5.2.4 SOAP relay Attribute
|
|
).</p></li>
|
|
|
|
</ul>
|
|
</li>
|
|
|
|
</ul>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment46" id="comment46"></a>
|
|
Comments
|
|
</h4>
|
|
<p>All tests in the test collection that use headers, test this assertion.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soaprole-prop" id="x1-soaprole-prop"></a>
|
|
Assertion
|
|
x1-soaprole-prop</h3><h4><a name="assertloc47" id="assertloc47"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soaprole">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.2.2</a>
|
|
<div><h4><a name="spectext47" id="spectext47"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>role</code> <em>attribute information
|
|
item</em> has the following XML infoset properties:</p>
|
|
|
|
<ul>
|
|
|
|
<li><p>A [local name] of <code>role</code> .</p></li>
|
|
|
|
<li><p>A [namespace name] of
|
|
"http://www.w3.org/2003/05/soap-envelope".</p></li>
|
|
|
|
<li><p>A [specified] property with a value of "true".</p></li>
|
|
|
|
</ul>
|
|
|
|
<p>The type of the <code>role</code> <em>attribute
|
|
information item</em> is <em>xs:anyURI</em>.
|
|
The value of the <code>role</code> <em>attribute
|
|
information item</em> is a URI that names a role that a
|
|
SOAP node can assume.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment47" id="comment47"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
All tests in the test collection that use roles, will test this
|
|
assertion.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soaprole-omit" id="x1-soaprole-omit"></a>
|
|
Assertion
|
|
x1-soaprole-omit</h3><h4><a name="assertloc48" id="assertloc48"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soaprole">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.2.2</a>
|
|
<div><h4><a name="spectext48" id="spectext48"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>Omitting the SOAP <code>role</code> <em>attribute information
|
|
item</em> is equivalent to
|
|
supplying that attribute with a value of
|
|
"http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver".</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test48" id="test48"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T3">T3</a>,
|
|
<a href="#T22">T22</a>,
|
|
<a href="#T32">T32</a>,
|
|
<a href="#T34">T34</a>,
|
|
<a href="#T35">T35</a>,
|
|
<a href="#T56">T56</a>,
|
|
<a href="#T57">T57</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soaprole-acceptur" id="x1-soaprole-acceptur"></a>
|
|
Assertion
|
|
x1-soaprole-acceptur</h3><h4><a name="assertloc49" id="assertloc49"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soaprole">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.2.2</a>
|
|
<div><h4><a name="spectext49" id="spectext49"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>SOAP senders SHOULD NOT generate, but SOAP receivers MUST
|
|
accept the SOAP <code>role</code> <em>attribute information
|
|
item</em> with a value of
|
|
"http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver".</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test49" id="test49"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T36">T36</a>,
|
|
<a href="#T37">T37</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soaprole-ignore" id="x1-soaprole-ignore"></a>
|
|
Assertion
|
|
x1-soaprole-ignore</h3><h4><a name="assertloc50" id="assertloc50"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soaprole">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.2.2</a>
|
|
<div><h4><a name="spectext50" id="spectext50"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>A SOAP sender generating a SOAP message SHOULD use the
|
|
<code>role</code> <em>attribute information item</em> only
|
|
on SOAP header blocks. A SOAP receiver MUST ignore this
|
|
<em>attribute information item</em> if it appears on
|
|
descendants of a SOAP header block or on a SOAP body child
|
|
<em>element information item</em> (or its
|
|
descendents).</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test50" id="test50"></a>
|
|
Tests
|
|
</h4>
|
|
<p>
|
|
<a href="#T74">T74</a>
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapmu-prop" id="x1-soapmu-prop"></a>
|
|
Assertion
|
|
x1-soapmu-prop</h3><h4><a name="assertloc51" id="assertloc51"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapmu">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.2.3</a>
|
|
<div><h4><a name="spectext51" id="spectext51"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>mustUnderstand</code> <em>attribute information
|
|
item</em> has the following XML infoset properties:</p>
|
|
|
|
<ul>
|
|
|
|
<li><p>A [local name] of <code>mustUnderstand</code> .</p></li>
|
|
|
|
<li><p>A [namespace name] of
|
|
"http://www.w3.org/2003/05/soap-envelope".</p></li>
|
|
|
|
<li><p>A [specified] property with a value of
|
|
"true".</p></li>
|
|
|
|
</ul>
|
|
|
|
<p>The type of the <code>mustUnderstand</code> <em>attribute
|
|
information item</em> is <em>xs:boolean</em>.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment51" id="comment51"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
All tests in the test collection that use mustUnderstand attribute,
|
|
test this assertion.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapmu-omit" id="x1-soapmu-omit"></a>
|
|
Assertion
|
|
x1-soapmu-omit</h3><h4><a name="assertloc52" id="assertloc52"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapmu">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.2.3</a>
|
|
<div><h4><a name="spectext52" id="spectext52"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>Omitting this <em>attribute information item</em> is
|
|
defined as being semantically equivalent to including it
|
|
with a value of "false".</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment52" id="comment52"></a>
|
|
Comments
|
|
</h4>
|
|
<p>'this' in the specification text refers to the mustUnderstand attribute
|
|
information item.</p>
|
|
</div>
|
|
<div><h4><a name="test52" id="test52"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T1">T1</a>,
|
|
<a href="#T2">T2</a>,
|
|
<a href="#T3">T3</a>,
|
|
<a href="#T4">T4</a>,
|
|
<a href="#T5">T5</a>,
|
|
<a href="#T6">T6</a>,
|
|
<a href="#T7">T7</a>,
|
|
<a href="#T9">T9</a>,
|
|
<a href="#T10">T10</a>,
|
|
<a href="#T18">T18</a>,
|
|
<a href="#T29">T29</a>,
|
|
<a href="#T37">T37</a>,
|
|
<a href="#T56">T56</a>,
|
|
<a href="#T57">T57</a>,
|
|
<a href="#T66">T66</a>,
|
|
<a href="#T67">T67</a>,
|
|
<a href="#T68">T68</a>,
|
|
<a href="#T74">T74</a>,
|
|
<a href="#T76">T76</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapmu-acceptfalse" id="x1-soapmu-acceptfalse"></a>
|
|
Assertion
|
|
x1-soapmu-acceptfalse</h3><h4><a name="assertloc53" id="assertloc53"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapmu">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.2.3</a>
|
|
<div><h4><a name="spectext53" id="spectext53"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>SOAP senders SHOULD NOT generate, but SOAP receivers MUST
|
|
accept the SOAP <code>mustUnderstand</code> <em>attribute information
|
|
item</em> with a value of "false" or
|
|
"0".</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test53" id="test53"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T11">T11</a>,
|
|
<a href="#T38">T38</a>,
|
|
<a href="#T40">T40</a>,
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapmu-allrep" id="x1-soapmu-allrep"></a>
|
|
Assertion
|
|
x1-soapmu-allrep</h3><h4><a name="assertloc54" id="assertloc54"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapmu">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.2.3</a>
|
|
<div><h4><a name="spectext54" id="spectext54"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
A SOAP receiver MUST accept any valid lexical representation of the
|
|
attribute value.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment54" id="comment54"></a>
|
|
Comments
|
|
</h4>
|
|
<p>The attribute mentioned in the spec text refers to env:mustUnderstand.</p>
|
|
</div>
|
|
|
|
<div><h4><a name="test54" id="test54"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T11">T11</a>,
|
|
<a href="#T12">T12</a>,
|
|
<a href="#T13">T13</a>,
|
|
<a href="#T15">T15</a>,
|
|
<a href="#T16">T16</a>,
|
|
<a href="#T17">T17</a>,
|
|
<a href="#T19">T19</a>,
|
|
<a href="#T21">T21</a>,
|
|
<a href="#T22">T22</a>,
|
|
<a href="#T32">T32</a>,
|
|
<a href="#T35">T35</a>,
|
|
<a href="#T36">T36</a>,
|
|
<a href="#T38">T38</a>,
|
|
<a href="#T40">T40</a>,
|
|
<a href="#T62">T62</a>,
|
|
<a href="#T63">T63</a>,
|
|
<a href="#T74">T74</a>,
|
|
<a href="#T75">T75</a>,
|
|
<a href="#TH4">TH4</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapmu-ignore" id="x1-soapmu-ignore"></a>
|
|
Assertion
|
|
x1-soapmu-ignore</h3><h4><a name="assertloc55" id="assertloc55"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapmu">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.2.3</a>
|
|
<div><h4><a name="spectext55" id="spectext55"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>A SOAP sender generating a SOAP message SHOULD use the
|
|
<code>mustUnderstand</code> <em>attribute information
|
|
item</em> only on SOAP header blocks. A SOAP receiver MUST
|
|
ignore this <em>attribute information item</em> if it
|
|
appears on descendants of a SOAP header block or on a SOAP
|
|
body child <em>element information item</em> (or its
|
|
descendents).</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment55" id="comment55"></a>
|
|
Comments
|
|
</h4>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soaprelay-prop" id="x1-soaprelay-prop"></a>
|
|
Assertion
|
|
x1-soaprelay-prop</h3><h4><a name="assertloc56" id="assertloc56"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soaprelay">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.2.4</a>
|
|
<div><h4><a name="spectext56" id="spectext56"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>relay</code> <em>attribute information item</em> has
|
|
the following XML infoset properties:</p>
|
|
|
|
<ul>
|
|
<li><p>A [local name] of <code>relay</code> .</p></li>
|
|
|
|
<li><p>A [namespace name] of
|
|
"http://www.w3.org/2003/05/soap-envelope".</p></li>
|
|
|
|
<li><p>A [specified] property with a value of
|
|
"true".</p></li>
|
|
|
|
</ul>
|
|
|
|
<p>The type of the relay <em>attribute information item</em> is
|
|
<em>xs:boolean</em>.</p>
|
|
</blockquote>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soaprelay-omit" id="x1-soaprelay-omit"></a>
|
|
Assertion
|
|
x1-soaprelay-omit</h3><h4><a name="assertloc57" id="assertloc57"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soaprelay">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.2.4</a>
|
|
<div><h4><a name="spectext57" id="spectext57"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>Omitting this <em>attribute information item</em> is defined as
|
|
being semantically equivalent to including it with a value
|
|
of "false".</p>
|
|
</blockquote>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soaprelay-acceptfalse" id="x1-soaprelay-acceptfalse"></a>
|
|
Assertion
|
|
x1-soaprelay-acceptfalse</h3><h4><a name="assertloc58" id="assertloc58"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soaprelay">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.2.4</a>
|
|
<div><h4><a name="spectext58" id="spectext58"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>SOAP senders SHOULD NOT generate, but SOAP receivers MUST
|
|
accept the SOAP <code>relay</code> <em>attribute information item</em> with a
|
|
value of "false" or "0".</p>
|
|
</blockquote>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soaprelay-allrep" id="x1-soaprelay-allrep"></a>
|
|
Assertion
|
|
x1-soaprelay-allrep</h3><h4><a name="assertloc59" id="assertloc59"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soaprelay">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.2.4</a>
|
|
<div><h4><a name="spectext59" id="spectext59"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
A SOAP receiver MUST accept any valid lexical
|
|
representation of the attribute value.</p>
|
|
</blockquote>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soaprelay-ignore" id="x1-soaprelay-ignore"></a>
|
|
Assertion
|
|
x1-soaprelay-ignore</h3><h4><a name="assertloc60" id="assertloc60"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soaprelay">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.2.4</a>
|
|
<div><h4><a name="spectext60" id="spectext60"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>A SOAP sender generating a SOAP message SHOULD use the
|
|
<code>relay</code> <em>attribute information item</em> only on SOAP header
|
|
blocks. A SOAP receiver MUST ignore this <em>attribute
|
|
information item</em> if it appears on descendants of a SOAP
|
|
header block or on a SOAP body child <em>element information
|
|
item</em> (or its descendents).</p>
|
|
</blockquote>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapbody-prop" id="x1-soapbody-prop"></a>
|
|
Assertion
|
|
x1-soapbody-prop</h3><h4><a name="assertloc61" id="assertloc61"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapbody">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.3</a>
|
|
<div><h4><a name="spectext61" id="spectext61"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>Body</code> <em>element information item</em> has:</p>
|
|
|
|
<ul>
|
|
|
|
<li><p>A [local name] of <code>Body</code> .</p></li>
|
|
|
|
<li><p>A [namespace name] of
|
|
"http://www.w3.org/2003/05/soap-envelope".
|
|
</p></li>
|
|
|
|
<li><p>Zero or more namespace qualified <em>attribute
|
|
information items</em> in its [attributes] property.</p></li>
|
|
|
|
<li><p>Zero or more namespace qualified <em>element
|
|
information item</em>s in its [children] property.</p></li>
|
|
|
|
</ul>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment61" id="comment61"></a>
|
|
Comments
|
|
</h4>
|
|
<p>All tests in the test collection that have the Body element, test this
|
|
assertion.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapfault-prop" id="x1-soapfault-prop"></a>
|
|
Assertion
|
|
x1-soapfault-prop</h3><h4><a name="assertloc62" id="assertloc62"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapfault">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4</a>
|
|
<div><h4><a name="spectext62" id="spectext62"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>Fault</code> <em>element information item</em> has:</p>
|
|
|
|
<ul>
|
|
|
|
<li><p>A [local name] of <code>Fault</code> .</p></li>
|
|
|
|
<li><p>A [namespace name] of
|
|
"http://www.w3.org/2003/05/soap-envelope".</p></li>
|
|
|
|
<li><p>Two or more child <em>element
|
|
information item</em>s in its [children] property in order
|
|
as follows:</p>
|
|
|
|
<ol>
|
|
|
|
<li><p>A mandatory <code>Code</code> <em>element
|
|
information item</em> (see 5.4.1 SOAP Code Element
|
|
).</p></li>
|
|
|
|
<li><p>A mandatory <code>Reason</code> <em>element
|
|
information item</em> (see 5.4.2 SOAP Reason Element
|
|
).</p></li>
|
|
|
|
<li><p>An optional <code>Node</code> <em>element
|
|
information item</em> (see 5.4.3 SOAP Node Element
|
|
).</p></li>
|
|
|
|
|
|
<li><p>An optional <code>Role</code> <em>element
|
|
information item</em> (see 5.4.4 SOAP Role Element
|
|
).</p></li>
|
|
|
|
|
|
<li><p>An optional <code>Detail</code> <em>element
|
|
information item</em> (see 5.4.5 SOAP Detail Element).
|
|
).</p></li>
|
|
|
|
</ol>
|
|
</li>
|
|
|
|
</ul>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment62" id="comment62"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
All tests in the test collection that generate fault, test
|
|
this assertion.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapfault-single" id="x1-soapfault-single"></a>
|
|
Assertion
|
|
x1-soapfault-single</h3><h4><a name="assertloc63" id="assertloc63"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapfault">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4</a>
|
|
<div><h4><a name="spectext63" id="spectext63"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>To be recognized as carrying SOAP error information, a SOAP
|
|
message MUST contain a single SOAP <code>Fault</code> <em>element
|
|
information item</em> as the only child <em>element information item</em> of the SOAP <code>Body</code> .</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment63" id="comment63"></a>
|
|
Comments
|
|
</h4>
|
|
<p>All tests in the test collection that generate fault, test
|
|
this assertion.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapfault-only" id="x1-soapfault-only"></a>
|
|
Assertion
|
|
x1-soapfault-only</h3><h4><a name="assertloc64" id="assertloc64"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapfault">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4</a>
|
|
<div><h4><a name="spectext64" id="spectext64"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>When generating a fault, SOAP senders MUST NOT include
|
|
additional <em>element information items</em> in the SOAP
|
|
<code>Body</code> . A message whose <code>Body</code> contains a
|
|
<code>Fault</code> plus additional <em>element information
|
|
items</em> has no SOAP-defined semantics.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment64" id="comment64"></a>
|
|
Comments
|
|
</h4>
|
|
<p>All tests in the test collection that generate fault, test
|
|
this assertion.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-faultcodeelement-prop" id="x1-faultcodeelement-prop"></a>
|
|
Assertion
|
|
x1-faultcodeelement-prop</h3><h4><a name="assertloc65" id="assertloc65"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#faultcodeelement">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4.1</a>
|
|
<div><h4><a name="spectext65" id="spectext65"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>Code</code> <em>element information item</em>
|
|
has:</p>
|
|
|
|
<ul>
|
|
<li><p>A [local name] of <code>Code</code> .</p></li>
|
|
<li><p>A [namespace name] of <code>http://www.w3.org/2003/05/soap-envelope</code> .</p></li>
|
|
<li><p>One or two child <em>element information
|
|
item</em>s in its [children] property, in order, as follows:</p>
|
|
<ol>
|
|
<li><p>A mandatory <code>Value</code> <em>element
|
|
information item</em> as described below (see
|
|
5.4.1.1 SOAP Value element (with Code parent))
|
|
</p></li>
|
|
<li><p>An optional
|
|
<code>Subcode</code> <em>element information
|
|
item</em> as described below (see 5.4.1.2 SOAP Subcode element).</p></li>
|
|
</ol>
|
|
</li>
|
|
</ul>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment65" id="comment65"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
All tests in the test collection that generate fault, test
|
|
this assertion.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-faultvalueelement-prop" id="x1-faultvalueelement-prop"></a>
|
|
Assertion
|
|
x1-faultvalueelement-prop</h3><h4><a name="assertloc66" id="assertloc66"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#faultvalueelement">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4.1.1</a>
|
|
<div><h4><a name="spectext66" id="spectext66"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>Value</code> <em>element information item</em>
|
|
has:</p>
|
|
|
|
<ul>
|
|
<li><p>A [local name] of <code>Value</code> .</p></li>
|
|
<li><p>A [namespace name] of <code>http://www.w3.org/2003/05/soap-envelope</code> .</p></li>
|
|
</ul>
|
|
|
|
<p>
|
|
The type of the <code>Value</code> <em>element information
|
|
item</em> is <em>env:faultCodeEnum</em>.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment66" id="comment66"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
All tests in the test collection that generate fault, test
|
|
this assertion.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-faultsubcodeelement-prop" id="x1-faultsubcodeelement-prop"></a>
|
|
Assertion
|
|
x1-faultsubcodeelement-prop</h3><h4><a name="assertloc67" id="assertloc67"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#faultsubcodeelement">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4.1.2</a>
|
|
<div><h4><a name="spectext67" id="spectext67"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>Subcode</code> <em>element information item</em>
|
|
has:</p>
|
|
|
|
<ul>
|
|
<li><p>A [local name] of <code>Subcode</code> .</p></li>
|
|
<li><p>A [namespace name] of <code>http://www.w3.org/2003/05/soap-envelope</code> .</p></li>
|
|
<li><p>One or two child <em>element information
|
|
item</em>s in its [children] property, in order, as follows:</p>
|
|
<ol>
|
|
<li><p>A mandatory <code>Value</code> <em>element
|
|
information item</em> as described below (see
|
|
5.4.1.3 SOAP Value element (with Subcode parent)).
|
|
</p></li>
|
|
|
|
<li><p>An optional
|
|
<code>Subcode</code> <em>element information
|
|
item</em> (see 5.4.1.2 SOAP Subcode element).</p></li>
|
|
</ol>
|
|
</li>
|
|
</ul>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test67" id="test67"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T33">T33</a>,
|
|
<a href="#T80">T80</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-faultsubvalueelem-prop" id="x1-faultsubvalueelem-prop"></a>
|
|
Assertion
|
|
x1-faultsubvalueelem-prop</h3><h4><a name="assertloc68" id="assertloc68"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#faultsubvalueelem">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4.1.3</a>
|
|
<div><h4><a name="spectext68" id="spectext68"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>Value</code> <em>element information item</em>
|
|
has:</p>
|
|
|
|
<ul>
|
|
<li><p>A [local name] of <code>Value</code> .</p></li>
|
|
<li><p>A [namespace name] of <code>http://www.w3.org/2003/05/soap-envelope</code> .</p></li>
|
|
</ul>
|
|
|
|
<p>
|
|
The type of the <code>Value</code> <em>element information
|
|
item</em> is <em>xs:QName</em>.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test68" id="test68"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T33">T33</a>,
|
|
<a href="#T80">T80</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-faultstringelement-prop" id="x1-faultstringelement-prop"></a>
|
|
Assertion
|
|
x1-faultstringelement-prop</h3><h4><a name="assertloc69" id="assertloc69"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#faultstringelement">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4.2</a>
|
|
<div><h4><a name="spectext69" id="spectext69"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>Reason</code> <em>element information item</em>
|
|
has:</p>
|
|
|
|
<ul>
|
|
<li><p>A [local name] of <code>Reason</code> .</p></li>
|
|
<li><p>A [namespace name] of
|
|
<code>http://www.w3.org/2003/05/soap-envelope</code> .</p></li>
|
|
|
|
<li><p>One or more <code>Text</code> <em>element
|
|
information item</em> children (see
|
|
5.4.2.1 SOAP Text Element). Each child <code>Text</code>
|
|
<em>element information item</em> SHOULD have a different
|
|
value for its <code>xml:lang</code> <em>attribute information
|
|
item</em>.</p></li>
|
|
</ul>
|
|
|
|
<p>The type of the <code>Reason</code> <em>element
|
|
information item</em> is <em>env:faultReason</em>.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment69" id="comment69"></a>
|
|
Comments
|
|
</h4>
|
|
<p>All tests in the test collection that generate fault, test
|
|
this assertion.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-reasontextelement-prop" id="x1-reasontextelement-prop"></a>
|
|
Assertion
|
|
x1-reasontextelement-prop</h3><h4><a name="assertloc70" id="assertloc70"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#reasontextelement">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4.2.1</a>
|
|
<div><h4><a name="spectext70" id="spectext70"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>Text</code> <em>element information item</em>
|
|
has:</p>
|
|
|
|
<ul>
|
|
<li><p>A [local name] of <code>Text</code> .</p></li>
|
|
<li><p>A [namespace name] of <code>http://www.w3.org/2003/05/soap-envelope</code> .</p></li>
|
|
<li><p>A mandatory <em>attribute information item</em>
|
|
with a [local name] of <code>lang</code> and
|
|
[namespace name] of "http://www.w3.org/XML/1998/namespace".
|
|
|
|
Note that the definition in of the <code>lang</code>
|
|
<em>attribute information item</em> requires
|
|
that the [prefix] is "xml" or any capitalization
|
|
thereof (see <a href="#XML">[XML 1.0]</a>, <a href="http://www.w3.org/TR/REC-xml.html#sec-lang-tag">Language
|
|
Identification</a>).</p>
|
|
|
|
</li>
|
|
|
|
<li><p>Any number of <em>character information
|
|
item</em> children. Child <em>character information items</em> whose
|
|
character code is amongst the whitespace characters as defined
|
|
by <a href="#XML">[XML 1.0]</a> are considered significant.</p></li>
|
|
|
|
</ul>
|
|
|
|
<p>The type of the <code>Text</code> <em>element
|
|
information item</em> is <em>env:reasontext</em></p>
|
|
</blockquote>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-faultactorelement-prop" id="x1-faultactorelement-prop"></a>
|
|
Assertion
|
|
x1-faultactorelement-prop</h3><h4><a name="assertloc71" id="assertloc71"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#faultactorelement">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4.3</a>
|
|
<div><h4><a name="spectext71" id="spectext71"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>Node</code> <em>element information item</em>
|
|
has:</p>
|
|
|
|
<ul>
|
|
<li><p>A [local name] of <code>Node</code> .</p></li>
|
|
<li><p>A [namespace name] of <code>http://www.w3.org/2003/05/soap-envelope</code> .</p></li>
|
|
</ul>
|
|
|
|
<p>The type of the <code>Node</code> <em>element
|
|
information item</em> is <em>xs:anyURI</em>.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test71" id="test71"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T21">T21</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-faultactorelement-intermediaries" id="x1-faultactorelement-intermediaries"></a>
|
|
Assertion
|
|
x1-faultactorelement-intermediaries</h3><h4><a name="assertloc72" id="assertloc72"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#faultactorelement">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4.3</a>
|
|
<div><h4><a name="spectext72" id="spectext72"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
SOAP nodes that do not act as the ultimate SOAP receiver MUST
|
|
include this element information item.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment72" id="comment72"></a>
|
|
Comments
|
|
</h4>
|
|
<p>The element information item in the specification text refers to the
|
|
'Node' element.</p>
|
|
</div>
|
|
<div><h4><a name="test72" id="test72"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T21">T21</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-faultroleelement-prop" id="x1-faultroleelement-prop"></a>
|
|
Assertion
|
|
x1-faultroleelement-prop</h3><h4><a name="assertloc73" id="assertloc73"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#faultroleelement">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4.4</a>
|
|
<div><h4><a name="spectext73" id="spectext73"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>Role</code> <em>element information item</em>
|
|
has:</p>
|
|
|
|
<ul>
|
|
<li><p>A [local name] of <code>Role</code> .</p></li>
|
|
<li><p>A [namespace name] of <code>http://www.w3.org/2003/05/soap-envelope</code> .</p></li>
|
|
</ul>
|
|
|
|
<p>The type of the <code>Role</code> <em>element
|
|
information item</em> is <em>xs:anyURI</em>.</p>
|
|
|
|
<p>The value of the <code>Role</code> <em>element information
|
|
item</em> MUST be one of the roles assumed by the node
|
|
during processing of the message (see 2.2 SOAP Roles and SOAP Nodes).
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test73" id="test73"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T21">T21</a>,
|
|
<a href="#TH4">TH4</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-faultdetailelement-prop" id="x1-faultdetailelement-prop"></a>
|
|
Assertion
|
|
x1-faultdetailelement-prop</h3><h4><a name="assertloc74" id="assertloc74"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#faultdetailelement">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4.5</a>
|
|
<div><h4><a name="spectext74" id="spectext74"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>Detail</code> <em>element information item</em>
|
|
has:</p>
|
|
|
|
<ul>
|
|
<li><p>A [local name] of <code>Detail</code> .</p></li>
|
|
<li><p>A [namespace name] of <code>http://www.w3.org/2003/05/soap-envelope</code> .</p></li>
|
|
<li><p>Zero or more <em>attribute information
|
|
item</em>s in its [attributes] property.</p></li>
|
|
<li><p>Zero or more child <em>element information
|
|
item</em>s in its [children] property.</p></li>
|
|
</ul>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test74" id="test74"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T27">T27</a>,
|
|
<a href="#T28">T28</a>,
|
|
<a href="#T58">T58</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-faultcodes-mu" id="x1-faultcodes-mu"></a>
|
|
Assertion
|
|
x1-faultcodes-mu</h3><h4><a name="assertloc75" id="assertloc75"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#faultcodes">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4.6</a>
|
|
<div><h4><a name="spectext75" id="spectext75"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>A SOAP node MUST
|
|
understand all SOAP fault codes in a SOAP fault message in
|
|
order to be able to interpret the <code>Detail</code>
|
|
<em>element information item</em> in a SOAP fault.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment75" id="comment75"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapupgrade-prop" id="x1-soapupgrade-prop"></a>
|
|
Assertion
|
|
x1-soapupgrade-prop</h3><h4><a name="assertloc76" id="assertloc76"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapupgrade">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4.7.1</a>
|
|
<div><h4><a name="spectext76" id="spectext76"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>Upgrade</code> <em>element information
|
|
item</em> has:</p>
|
|
|
|
<ul>
|
|
<li>
|
|
<p>A [local name] of <code>Upgrade</code> .</p>
|
|
</li>
|
|
<li>
|
|
<p>A [namespace name] of
|
|
"http://www.w3.org/2003/05/soap-envelope".</p>
|
|
</li>
|
|
<li>
|
|
<p>One or more <code>SupportedEnvelope</code> <em>element
|
|
information item</em>s in its [children] property in
|
|
5.4.7.2 SOAP SupportedEnvelope Element.</p>
|
|
</li>
|
|
</ul>
|
|
|
|
<p>The <code>Upgrade</code> <em>element information
|
|
item</em> MUST NOT have an <code>encodingStyle</code>
|
|
<em>attribute information item</em>.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test76" id="test76"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T30">T30</a>,
|
|
<a href="#TH3">TH3</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapsupportedenv-prop" id="x1-soapsupportedenv-prop"></a>
|
|
Assertion
|
|
x1-soapsupportedenv-prop</h3><h4><a name="assertloc77" id="assertloc77"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapsupportedenv">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4.7.2</a>
|
|
<div><h4><a name="spectext77" id="spectext77"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>SupportedEnvelope</code> <em>element information
|
|
item</em> has:</p>
|
|
|
|
<ul>
|
|
<li>
|
|
<p>A [local name] of <code>SupportedEnvelope</code> .</p>
|
|
</li>
|
|
<li>
|
|
<p>A [namespace name] of
|
|
"http://www.w3.org/2003/05/soap-envelope".</p>
|
|
</li>
|
|
<li>
|
|
<p>A <code>qname</code> <em>attribute information item</em> in its [attributes]
|
|
property as described in 5.4.7.3 SOAP QName Attribute.</p>
|
|
</li>
|
|
</ul>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test77" id="test77"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T30">T30</a>,
|
|
<a href="#TH3">TH3</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapqnamesu-prop" id="x1-soapqnamesu-prop"></a>
|
|
Assertion
|
|
x1-soapqnamesu-prop</h3><h4><a name="assertloc78" id="assertloc78"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapqnamesu">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4.7.3</a>
|
|
<div><h4><a name="spectext78" id="spectext78"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>qname</code> <em>attribute information item</em>
|
|
has the following XML infoset properties:</p>
|
|
|
|
<ul>
|
|
<li><p>A [local name] of <code>qname</code> .</p></li>
|
|
<li><p>A [namespace name] which has no value.</p></li>
|
|
<li><p>A [specified] property with a value of "true".</p></li>
|
|
</ul>
|
|
|
|
<p>The type of the <code>qname</code> <em>attribute information
|
|
item</em> is <em>xs:QName</em>.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test78" id="test78"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T30">T30</a>,
|
|
<a href="#TH3">TH3</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapnotunderstood-prop" id="x1-soapnotunderstood-prop"></a>
|
|
Assertion
|
|
x1-soapnotunderstood-prop</h3><h4><a name="assertloc79" id="assertloc79"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapnotunderstood">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4.8.1</a>
|
|
<div><h4><a name="spectext79" id="spectext79"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>Each <code>NotUnderstood</code> header block <em>element information
|
|
item</em> has:</p>
|
|
|
|
<ul>
|
|
<li><p>A [local name] of <code>NotUnderstood</code> .</p></li>
|
|
|
|
<li><p>A [namespace name] of
|
|
"http://www.w3.org/2003/05/soap-envelope".</p></li>
|
|
|
|
<li><p>A <code>qname</code> <em>attribute information
|
|
item</em> in its [attributes] property as described in
|
|
5.4.8.2 SOAP QName Attribute.</p></li>
|
|
|
|
</ul>
|
|
|
|
<p>The <code>NotUnderstood</code> <em>element information
|
|
item</em> MUST NOT have an <code>encodingStyle</code>
|
|
<em>attribute information item</em>.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test79" id="test79"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T12">T12</a>,
|
|
<a href="#T13">T13</a>,
|
|
<a href="#T16">T16</a>,
|
|
<a href="#T17">T17</a>,
|
|
<a href="#T21">T21</a>,
|
|
<a href="#T35">T35</a>,
|
|
<a href="#T36">T36</a>,
|
|
<a href="#TH4">TH4</a>,
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-soapqnamenu-prop" id="x1-soapqnamenu-prop"></a>
|
|
Assertion
|
|
x1-soapqnamenu-prop</h3><h4><a name="assertloc80" id="assertloc80"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#soapqnamenu">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
5.4.8.2</a>
|
|
<div><h4><a name="spectext80" id="spectext80"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The <code>qname</code> <em>attribute information item</em>
|
|
has the following XML infoset properties:</p>
|
|
|
|
<ul>
|
|
<li><p>A [local name] of <code>qname</code> .</p></li>
|
|
<li><p>A [namespace name] which has no value.</p></li>
|
|
<li><p>A [specified] property with a value of "true".</p></li>
|
|
</ul>
|
|
|
|
<p>The type of the <code>qname</code> <em>attribute information
|
|
item</em> is <em>xs:QName</em>.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test80" id="test80"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T12">T12</a>,
|
|
<a href="#T13">T13</a>,
|
|
<a href="#T16">T16</a>,
|
|
<a href="#T17">T17</a>,
|
|
<a href="#T21">T21</a>,
|
|
<a href="#T35">T35</a>,
|
|
<a href="#T36">T36</a>,
|
|
<a href="#TH4">TH4</a>,
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-useofuris-baseuri" id="x1-useofuris-baseuri"></a>
|
|
Assertion
|
|
x1-useofuris-baseuri</h3><h4><a name="assertloc81" id="assertloc81"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#useofuris">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
6</a>
|
|
<div><h4><a name="spectext81" id="spectext81"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
SOAP does not define a base URI but relies on the mechanisms defined
|
|
in [XML Base] and [RFC 3986] for establishing a base URI against
|
|
which relative URIs can be made absolute.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment81" id="comment81"></a>
|
|
Comments
|
|
</h4>
|
|
<p>seems to me that this assertion should be removed: ASK</p>
|
|
</div>
|
|
<div><h4><a name="test81" id="test81"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T75">T75</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-useofuris-ipv6" id="x1-useofuris-ipv6"></a>
|
|
Assertion
|
|
x1-useofuris-ipv6</h3><h4><a name="assertloc82" id="assertloc82"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#useofuris">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
6</a>
|
|
<div><h4><a name="spectext82" id="spectext82"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
The use of IP addresses in URIs SHOULD be avoided whenever possible
|
|
(see [RFC 1900]. However, when used, the literal format for IPv6
|
|
addresses in URIs as described by [RFC 3986] SHOULD be supported.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment82" id="comment82"></a>
|
|
Comments
|
|
</h4>
|
|
<p>seems to me that this assertion should be removed: ASK</p>
|
|
</div>
|
|
<div><h4><a name="test82" id="test82"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T40">T40</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x1-useofuris-length" id="x1-useofuris-length"></a>
|
|
Assertion
|
|
x1-useofuris-length</h3><h4><a name="assertloc83" id="assertloc83"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#useofuris">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Section
|
|
6</a>
|
|
<div><h4><a name="spectext83" id="spectext83"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Any SOAP node MUST be able to handle the length of any URI
|
|
that it publishes and both SOAP senders and SOAP receivers SHOULD
|
|
be able to deal with URIs of at least 2048 characters in length.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test83" id="test83"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T29">T29</a>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="assertion"><h3><a name="x1-version-soap11" id="x1-version-soap11"></a>
|
|
Assertion
|
|
x1-version-soap11</h3><h4><a name="assertloc84" id="assertloc84"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427#version">
|
|
SOAP 1.2 Part
|
|
1,
|
|
Appendix
|
|
A</a>
|
|
<div><h4><a name="spectext84" id="spectext84"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
If a SOAP node supports versioning from SOAP 1.1 to
|
|
SOAP 1.2, then the SOAP node MUST implement the rules
|
|
described in this appendix.</p>
|
|
|
|
<p>The rules for dealing with the possible SOAP/1.1 and SOAP
|
|
Version 1.2 interactions are as follows:</p>
|
|
|
|
<ol>
|
|
<li>
|
|
<p>A SOAP/1.1 node receiving a SOAP Version 1.2 message will
|
|
according to SOAP/1.1 generate a version mismatch SOAP
|
|
fault based on a SOAP/1.1 message construct. That is, the
|
|
envelope will have a [local name] of <code>Envelope</code> and a
|
|
[namespace name] of
|
|
"http://schemas.xmlsoap.org/soap/envelope/".</p>
|
|
</li>
|
|
<li>
|
|
<p>A SOAP Version 1.2 node receiving a SOAP/1.1 message
|
|
either:</p>
|
|
<ul>
|
|
<li>
|
|
<p>MAY process the message as a SOAP/1.1 message (if
|
|
supported), or</p>
|
|
</li>
|
|
<li>
|
|
<p>MUST generate a version mismatch SOAP
|
|
fault based on a SOAP/1.1 message construct following
|
|
SOAP/1.1 semantics using a SOAP/1.1 binding to the
|
|
underlying protocol. The
|
|
SOAP fault SHOULD include an <code>Upgrade</code> SOAP
|
|
header block as defined in this specification (see
|
|
5.4.7 VersionMismatch Faults) indicating support for SOAP
|
|
Version 1.2. This allows a receiving SOAP/1.1 node to
|
|
correctly interpret the SOAP fault generated by the
|
|
SOAP Version 1.2 node.</p>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ol>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment84" id="comment84"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
The requirement on the behavior of SOAP 1.1 compliant SOAP
|
|
node will not be tested by the test collection.
|
|
</p>
|
|
</div>
|
|
<div><h4><a name="test84" id="test84"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T30">T30</a>
|
|
</div>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="div2">
|
|
|
|
<h3><a name="assertionspart2"></a>2.2 SOAP 1.2, Part 2 Assertions</h3>
|
|
|
|
<div class="assertion"><h3><a name="x2-values-struct" id="x2-values-struct"></a>
|
|
Assertion
|
|
x2-values-struct</h3><h4><a name="assertloc85" id="assertloc85"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#values">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
2.3</a>
|
|
<div><h4><a name="spectext85" id="spectext85"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
A graph node whose outbound edges are distinguished solely
|
|
by their labels is known as a "struct". The outbound edges
|
|
of a struct MUST be labeled with distinct names (see
|
|
2.1.1 Edge labels).
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-values-array" id="x2-values-array"></a>
|
|
Assertion
|
|
x2-values-array</h3><h4><a name="assertloc86" id="assertloc86"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#values">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
2.3</a>
|
|
<div><h4><a name="spectext86" id="spectext86"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
A graph node whose outbound edges are distinguished solely
|
|
by position is known as an "array". The outbound edges of
|
|
an array MUST NOT be labeled.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-encrules-rep" id="x2-encrules-rep"></a>
|
|
Assertion
|
|
x2-encrules-rep</h3><h4><a name="assertloc87" id="assertloc87"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#encrules">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
3.1</a>
|
|
<div><h4><a name="spectext87" id="spectext87"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
When serializing a graph for transmission
|
|
inside a SOAP message,
|
|
a representation that deserializes to the identical graph MUST
|
|
be used; when multiple such representations are possible, any
|
|
of them MAY be used. When receiving an encoded SOAP message,
|
|
all representations MUST be accepted.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test87" id="test87"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T76">T76</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-encodingedgesandnodes-edge" id="x2-encodingedgesandnodes-edge"></a>
|
|
Assertion
|
|
x2-encodingedgesandnodes-edge</h3><h4><a name="assertloc88" id="assertloc88"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#encodingedgesandnodes">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
3.1.1</a>
|
|
<div><h4><a name="spectext88" id="spectext88"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Each graph edge is encoded as an element information item and each
|
|
element information item represents a graph edge.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment88" id="comment88"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
All tests in the test collection that use soap encoding, will test
|
|
this assertion.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-encodingedgesandnodes-edgeterm" id="x2-encodingedgesandnodes-edgeterm"></a>
|
|
Assertion
|
|
x2-encodingedgesandnodes-edgeterm</h3><h4><a name="assertloc89" id="assertloc89"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#encodingedgesandnodes">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
3.1.1</a>
|
|
<div><h4><a name="spectext89" id="spectext89"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The graph node at which an edge terminates is
|
|
determined by examination of the serialized XML as follows:</p>
|
|
<ol>
|
|
<li>
|
|
<p>
|
|
If the <em>element information item</em> representing
|
|
the edge does not have a <code>ref</code> <em>attribute
|
|
information item</em> (see 3.1.5.2 ref Attribute Information Item)
|
|
among its attributes then that <em>element information
|
|
item</em> is said to <em>represent</em> a node in
|
|
the graph and the edge terminates at that node.
|
|
In such cases the <em>element
|
|
information item</em> represents both a graph edge
|
|
and a graph node</p>
|
|
</li>
|
|
<li>
|
|
<p>
|
|
If the <em>element information item</em> representing
|
|
the edge does have a <code>ref</code> <em>attribute
|
|
information item</em> (see 3.1.5.2 ref Attribute Information Item)
|
|
among its attributes,
|
|
then the value of that <em>attribute information
|
|
item</em> MUST be identical to the value of exactly one
|
|
<code>id</code> <em>attribute information item</em> (
|
|
see 3.1.5.1 id Attribute Information Item) in the same envelope.
|
|
In this case the edge terminates at the graph node
|
|
represented by the <em>element information item</em>
|
|
on which the <code>id</code> <em>attribute information
|
|
item</em> appears. That <em>element information
|
|
item</em> MUST be in the scope of an
|
|
<code>encodingStyle</code> attribute with a value of
|
|
"http://www.w3.org/2003/05/soap-encoding"
|
|
(see SOAP 1.2 Part 1
|
|
<a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427/#soapencattr">SOAP encodingStyle
|
|
Attribute</a>).
|
|
</p>
|
|
</li>
|
|
</ol>
|
|
|
|
<p>
|
|
All nodes in the graph are encoded as described in 1
|
|
above. Additional inbound edges for multi reference graph nodes
|
|
are encoded as described in 2 above.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment89" id="comment89"></a>
|
|
Comments
|
|
</h4>
|
|
<p>All tests in the test collection that use soap encoding and do not return
|
|
a fault, test this assertion.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-simpleenc-lexvalue" id="x2-simpleenc-lexvalue"></a>
|
|
Assertion
|
|
x2-simpleenc-lexvalue</h3><h4><a name="assertloc90" id="assertloc90"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#simpleenc">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
3.1.2</a>
|
|
<div><h4><a name="spectext90" id="spectext90"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
The lexical
|
|
value of a graph node representing a simple value is the sequence of
|
|
Unicode characters identified by the <em>character
|
|
information item</em> children of the <em>element
|
|
information item</em> representing that node.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test90" id="test90"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T41">T41</a>,
|
|
<a href="#T42">T42</a>,
|
|
<a href="#T43">T43</a>,
|
|
<a href="#T44">T44</a>,
|
|
<a href="#T45">T45</a>,
|
|
<a href="#T46">T46</a>,
|
|
<a href="#T47">T47</a>,
|
|
<a href="#T48">T48</a>,
|
|
<a href="#T49">T49</a>,
|
|
<a href="#T50">T50</a>,
|
|
<a href="#T51">T51</a>,
|
|
<a href="#T52">T52</a>,
|
|
<a href="#T53">T53</a>,
|
|
<a href="#T54">T54</a>,
|
|
<a href="#T55">T55</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-complexenc-obedge" id="x2-complexenc-obedge"></a>
|
|
Assertion
|
|
x2-complexenc-obedge</h3><h4><a name="assertloc91" id="assertloc91"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#complexenc">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
3.1.3</a>
|
|
<div><h4><a name="spectext91" id="spectext91"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
An outbound edge of a graph node is encoded as an element information
|
|
item child of the element information item that represents the node
|
|
(see 3.1.1 Encoding graph edges and nodes).
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test91" id="test91"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T41">T41</a>,
|
|
<a href="#T42">T42</a>,
|
|
<a href="#T43">T43</a>,
|
|
<a href="#T44">T44</a>,
|
|
<a href="#T45">T45</a>,
|
|
<a href="#T46">T46</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-complexenc-distlab" id="x2-complexenc-distlab"></a>
|
|
Assertion
|
|
x2-complexenc-distlab</h3><h4><a name="assertloc92" id="assertloc92"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#complexenc">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
3.1.3</a>
|
|
<div><h4><a name="spectext92" id="spectext92"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>For a graph edge which is distinguished by label, the [local name] and
|
|
[namespace name] properties of the child
|
|
<em>element information item</em>
|
|
together determine the value of the edge
|
|
label.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test92" id="test92"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T41">T41</a>,
|
|
<a href="#T42">T42</a>,
|
|
<a href="#T43">T43</a>,
|
|
<a href="#T44">T44</a>,
|
|
<a href="#T45">T45</a>,
|
|
<a href="#T46">T46</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-complexenc-distpos" id="x2-complexenc-distpos"></a>
|
|
Assertion
|
|
x2-complexenc-distpos</h3><h4><a name="assertloc93" id="assertloc93"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#complexenc">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
3.1.3</a>
|
|
<div><h4><a name="spectext93" id="spectext93"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
For a graph edge which is distinguished by position:</p>
|
|
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
The ordinal position of the graph edge corresponds
|
|
to the position of the child <em>element information
|
|
item</em> relative to its siblings
|
|
</p>
|
|
</li>
|
|
<li>
|
|
<p>The [local name] and [namespace name]
|
|
properties of the child <em>element information
|
|
item</em> are not significant.
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test93" id="test93"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T46">T46</a>,
|
|
<a href="#T47">T47</a>,
|
|
<a href="#T48">T48</a>,
|
|
<a href="#T49">T49</a>,
|
|
<a href="#T50">T50</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-complexenc-array" id="x2-complexenc-array"></a>
|
|
Assertion
|
|
x2-complexenc-array</h3><h4><a name="assertloc94" id="assertloc94"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#complexenc">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
3.1.3</a>
|
|
<div><h4><a name="spectext94" id="spectext94"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
The following rules apply to the encoding of a graph node that
|
|
represents an "array":
|
|
</p>
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
The element information item representing an array node MAY have
|
|
amongst its attributes an itemType attribute information item
|
|
(see 3.1.4.1 itemType Attribute Information Item).
|
|
</p>
|
|
</li>
|
|
<li>
|
|
<p>
|
|
The element information item representing an array node MAY have
|
|
amongst its attributes an arraySize attribute information item
|
|
(see 3.1.6 arraySize Attribute Information Item).
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment94" id="comment94"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
All tests in the test collection that use arrays, will test this
|
|
assertion
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-complexenc-nil" id="x2-complexenc-nil"></a>
|
|
Assertion
|
|
x2-complexenc-nil</h3><h4><a name="assertloc95" id="assertloc95"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#complexenc">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
3.1.3</a>
|
|
<div><h4><a name="spectext95" id="spectext95"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
If a graph edge does not terminate in a graph node then it can
|
|
either be omitted from the serialization or it can be encoded as an
|
|
element information item with an xsi:nil attribute information item.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test95" id="test95"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T77">T77</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-enctypename-tnprop" id="x2-enctypename-tnprop"></a>
|
|
Assertion
|
|
x2-enctypename-tnprop</h3><h4><a name="assertloc96" id="assertloc96"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#enctypename">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
3.1.4</a>
|
|
<div><h4><a name="spectext96" id="spectext96"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
The type name property of a graph node is a {namespace name,
|
|
local name} pair computed as follows:</p>
|
|
|
|
<ol>
|
|
<li>
|
|
<p>
|
|
If the <em>element information item</em> representing the
|
|
graph node has an <code>xsi:type</code> <em>attribute
|
|
information item</em>
|
|
among its attributes then the type name property of the
|
|
graph node is the value of the <code>xsi:type</code> <em>attribute
|
|
information item</em>.</p>
|
|
<div class="note"><p class="prefix"><b>Note:</b></p>
|
|
<p>
|
|
This attribute is of type <em>xs:QName</em> (see
|
|
XML Schema <a href="#XMLSchemaP2">[XML Schema Part 2]</a>); its value consists of the
|
|
pair {namespace name, local name}. Neither the prefix used to
|
|
construct the QName nor any information relating to any
|
|
definition of the type is considered to be part of the
|
|
value. The SOAP graph carries only the qualified name of the
|
|
type.
|
|
</p>
|
|
</div>
|
|
</li>
|
|
<li>
|
|
<p>
|
|
Otherwise if the parent <em>element information item</em> of the
|
|
<em>element information item</em> representing the graph
|
|
node has an <code>enc:itemType</code> <em>attribute
|
|
information item</em> (see 3.1.4.1 itemType Attribute Information Item)
|
|
among its attributes then the type
|
|
name property of the graph node is the value of the
|
|
<code>enc:itemType</code> <em>attribute information item</em>
|
|
</p>
|
|
</li>
|
|
<li>
|
|
<p>
|
|
Otherwise the value of the type name property of the graph
|
|
node is unspecified.
|
|
</p>
|
|
</li>
|
|
</ol>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment96" id="comment96"></a>
|
|
Comments
|
|
</h4>
|
|
<p>
|
|
All encoding tests in the test collection, test this assertion.
|
|
</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-itemtypeattr-prop" id="x2-itemtypeattr-prop"></a>
|
|
Assertion
|
|
x2-itemtypeattr-prop</h3><h4><a name="assertloc97" id="assertloc97"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#itemtypeattr">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
3.1.4.1</a>
|
|
<div><h4><a name="spectext97" id="spectext97"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
The <code>itemType</code> <em>attribute information item</em> has
|
|
the following Infoset properties:
|
|
</p>
|
|
<ul>
|
|
|
|
<li>
|
|
<p>
|
|
A [local name] of <code>itemType</code> .
|
|
</p>
|
|
</li>
|
|
|
|
<li>
|
|
<p>
|
|
A [namespace name] of "http://www.w3.org/2003/05/soap-encoding".
|
|
</p>
|
|
</li>
|
|
|
|
<li>
|
|
<p>
|
|
A [specified] property with a value of "true".
|
|
</p>
|
|
</li>
|
|
|
|
</ul>
|
|
<p>
|
|
The type of the <code>itemType</code> <em>attribute
|
|
information item</em> is <em>xs:QName</em>.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test97" id="test97"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T27">T27</a>,
|
|
<a href="#T42">T42</a>,
|
|
<a href="#T46">T46</a>,
|
|
<a href="#T47">T47</a>,
|
|
<a href="#T48">T48</a>,
|
|
<a href="#T50">T50</a>,
|
|
<a href="#T58">T58</a>,
|
|
<a href="#T59">T59</a>,
|
|
<a href="#T60">T60</a>,
|
|
<a href="#T61">T61</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-idattr-prop" id="x2-idattr-prop"></a>
|
|
Assertion
|
|
x2-idattr-prop</h3><h4><a name="assertloc98" id="assertloc98"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#idattr">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
3.1.5.1</a>
|
|
<div><h4><a name="spectext98" id="spectext98"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
The <code>id</code> <em>attribute information item</em> has
|
|
the following Infoset properties:
|
|
</p>
|
|
<ul>
|
|
|
|
<li>
|
|
<p>A [local name] of <code>id</code> .</p>
|
|
</li>
|
|
|
|
<li>
|
|
<p>A [namespace name] of "http://www.w3.org/2003/05/soap-encoding".</p>
|
|
</li>
|
|
|
|
<li>
|
|
<p>A [specified] property with a value of
|
|
"true".</p>
|
|
</li>
|
|
|
|
</ul>
|
|
<p>
|
|
The type of the <code>id</code> <em>attribute
|
|
information item</em> is <em>xs:ID</em>.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test98" id="test98"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T56">T56</a>,
|
|
<a href="#T57">T57</a>,
|
|
<a href="#T76">T76</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-refattr-prop" id="x2-refattr-prop"></a>
|
|
Assertion
|
|
x2-refattr-prop</h3><h4><a name="assertloc99" id="assertloc99"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#refattr">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
3.1.5.2</a>
|
|
<div><h4><a name="spectext99" id="spectext99"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
The <code>ref</code> <em>attribute information item</em> has
|
|
the following Infoset properties:
|
|
</p>
|
|
<ul>
|
|
|
|
<li>
|
|
<p>A [local name] of <code>ref</code> .</p>
|
|
</li>
|
|
|
|
<li>
|
|
<p>A [namespace name] of "http://www.w3.org/2003/05/soap-encoding".</p>
|
|
</li>
|
|
|
|
<li>
|
|
<p>A [specified] property with a value of
|
|
"true".</p>
|
|
</li>
|
|
|
|
</ul>
|
|
<p>
|
|
The type of the <code>ref</code> <em>attribute information
|
|
item</em> is <em>xs:IDREF</em>.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test99" id="test99"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T56">T56</a>,
|
|
<a href="#T57">T57</a>,
|
|
<a href="#T76">T76</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-uniqueidconstraints-onlyone" id="x2-uniqueidconstraints-onlyone"></a>
|
|
Assertion
|
|
x2-uniqueidconstraints-onlyone</h3><h4><a name="assertloc100" id="assertloc100"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#uniqueidconstraints">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
3.1.5.3</a>
|
|
<div><h4><a name="spectext100" id="spectext100"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
The value of a <code>ref</code> <em>attribute information item</em> MUST also be
|
|
the value of exactly one <code>id</code> <em>attribute information item</em>.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test100" id="test100"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T56">T56</a>,
|
|
<a href="#T57">T57</a>,
|
|
<a href="#T76">T76</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-uniqueidconstraints-exclusive" id="x2-uniqueidconstraints-exclusive"></a>
|
|
Assertion
|
|
x2-uniqueidconstraints-exclusive</h3><h4><a name="assertloc101" id="assertloc101"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#uniqueidconstraints">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
3.1.5.3</a>
|
|
<div><h4><a name="spectext101" id="spectext101"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
A <code>ref</code> <em>attribute information item</em> and
|
|
an <code>id</code> <em>attribute information item</em>
|
|
MUST NOT appear on the same <em>element information item</em>.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test101" id="test101"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T59">T59</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-arraySizeattr-prop" id="x2-arraySizeattr-prop"></a>
|
|
Assertion
|
|
x2-arraySizeattr-prop</h3><h4><a name="assertloc102" id="assertloc102"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#arraySizeattr">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
3.1.6</a>
|
|
<div><h4><a name="spectext102" id="spectext102"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
The <code>arraySize</code> <em>attribute information item</em> has
|
|
the following Infoset properties:
|
|
</p>
|
|
<ul>
|
|
|
|
<li>
|
|
<p>
|
|
A [local name] of <code>arraySize</code> .
|
|
</p>
|
|
</li>
|
|
|
|
<li>
|
|
<p>A [namespace name] of "http://www.w3.org/2003/05/soap-encoding".
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
|
|
<p>
|
|
The type of the <code>arraySize</code> <em>attribute
|
|
information item</em> is <em>enc:arraySize</em>.
|
|
The value of the <code>arraySize</code> <em>attribute information item</em>
|
|
MUST conform to the following EBNF grammar</p>
|
|
|
|
|
|
<h5></h5><table class="scrap" summary="Scrap"><tbody><tr valign="baseline"><td><a name="arraysizedefn"></a>[1] </td><td><code>arraySizeValue</code></td><td> ::= </td><td><code>("*" | concreteSize) nextConcreteSize*</code></td></tr></tbody><tbody><tr valign="baseline"><td><a name="nextconcretesize"></a>[2] </td><td><code>nextConcreteSize</code></td><td> ::= </td><td><code>white space concreteSize</code></td></tr></tbody><tbody><tr valign="baseline"><td><a name="concretesize"></a>[3] </td><td><code>concreteSize</code></td><td> ::= </td><td><code>[0-9]+</code></td></tr></tbody><tbody><tr valign="baseline"><td><a name="whitespace"></a>[4] </td><td><code>white space</code></td><td> ::= </td><td><code>(#x20 | #x9 | #xD | #xA)+</code></td></tr></tbody></table>
|
|
<p>
|
|
The array's dimensions are represented by each item
|
|
in the list of sizes (unspecified size in case of
|
|
the asterisk). The number of items in the list
|
|
represents the
|
|
number of dimensions in the array. The asterisk, if present,
|
|
MUST only appear in the first position in the list.
|
|
The default value of the <code>arraySize</code>
|
|
<em>attribute information item</em> is "*", that is by
|
|
default arrays are considered to have a single dimension
|
|
of unspecified size.</p>
|
|
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test102" id="test102"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T42">T42</a>,
|
|
<a href="#T46">T46</a>,
|
|
<a href="#T47">T47</a>,
|
|
<a href="#T48">T48</a>,
|
|
<a href="#T49">T49</a>,
|
|
<a href="#T50">T50</a>,
|
|
<a href="#T58">T58</a>,
|
|
<a href="#T60">T60</a>,
|
|
<a href="#T61">T61</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-nodeTypeattr-prop" id="x2-nodeTypeattr-prop"></a>
|
|
Assertion
|
|
x2-nodeTypeattr-prop</h3><h4><a name="assertloc103" id="assertloc103"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#nodeTypeattr">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
3.1.7</a>
|
|
<div><h4><a name="spectext103" id="spectext103"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
The <code>nodeType</code> <em>attribute information item</em> has
|
|
the following Infoset properties:
|
|
</p>
|
|
<ul>
|
|
|
|
<li>
|
|
<p>
|
|
A [local name] of <code>nodeType</code> .
|
|
</p>
|
|
</li>
|
|
|
|
<li>
|
|
<p>A [namespace name] of "http://www.w3.org/2003/05/soap-encoding".
|
|
</p>
|
|
</li>
|
|
<li>
|
|
<p>A [specified] property with a value of
|
|
"true".</p>
|
|
</li>
|
|
|
|
</ul>
|
|
<p>
|
|
The type of the <code>nodeType</code> <em>attribute
|
|
information item</em> is <em>enc:nodeType</em>.</p>
|
|
|
|
|
|
<p>
|
|
The value of the <code>nodeType</code> <em>attribute information item</em>
|
|
MUST, if present, be one of the strings "simple" or "struct" or "array". The value
|
|
indicates what kind of a value this node represents - a simple value, a
|
|
compound struct value or a compound array value respectively.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-soapforrpc-sdm" id="x2-soapforrpc-sdm"></a>
|
|
Assertion
|
|
x2-soapforrpc-sdm</h3><h4><a name="assertloc104" id="assertloc104"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#soapforrpc">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
4</a>
|
|
<div><h4><a name="spectext104" id="spectext104"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p> The SOAP <code>encodingStyle</code> attribute information item (see
|
|
SOAP 1.2 Part 1 <a href="#SOAP-PART1">[SOAP Part 1]</a> <a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427/#soapencattr">SOAP encodingStyle
|
|
Attribute</a>) is used to indicate the encoding style of
|
|
the RPC representation. The encoding thus specified MUST support the
|
|
2. SOAP Data Model.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment104" id="comment104"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-rpcinvocation-model" id="x2-rpcinvocation-model"></a>
|
|
Assertion
|
|
x2-rpcinvocation-model</h3><h4><a name="assertloc105" id="assertloc105"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#rpcinvocation">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
4.2.1</a>
|
|
<div><h4><a name="spectext105" id="spectext105"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>An RPC invocation is modeled as a follows:</p>
|
|
|
|
<ul>
|
|
<li><p>The invocation is represented by a single
|
|
struct containing an outbound edge for each [in] or [in/out]
|
|
parameter. The struct is named identically to the procedure or
|
|
method name and the conventions of B. Mapping Application Defined
|
|
Names to XML Names
|
|
SHOULD be used to represent method names that are not legal
|
|
XML names.</p></li>
|
|
|
|
<li><p>Each outbound edge has a label
|
|
corresponding to the name of the parameter. The conventions of
|
|
B. Mapping Application Defined Names to XML Names
|
|
SHOULD be used to represent parameter
|
|
names that are not legal XML names.</p></li>
|
|
|
|
</ul>
|
|
</blockquote>
|
|
|
|
</div>
|
|
<div><h4><a name="comment105" id="comment105"></a>
|
|
Comments
|
|
</h4>
|
|
<p>All tests in the test collection that use the RPC convention, test
|
|
this assertion.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-rpcresponse-model" id="x2-rpcresponse-model"></a>
|
|
Assertion
|
|
x2-rpcresponse-model</h3><h4><a name="assertloc106" id="assertloc106"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#rpcresponse">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
4.2.2</a>
|
|
<div><h4><a name="spectext106" id="spectext106"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>An RPC response is modeled as a follows:</p>
|
|
|
|
<ul>
|
|
<li><p>The response is represented by a single struct
|
|
containing an outbound edge for the return value and each [out]
|
|
or [in/out] parameter. The name of the struct is not significant.</p></li>
|
|
|
|
<li><p>Each parameter is represented by an outbound edge
|
|
with a label corresponding to the name of the parameter. The conventions of
|
|
B. Mapping Application Defined Names to XML Names
|
|
SHOULD be used to represent parameter
|
|
names that are not legal XML names.</p></li>
|
|
|
|
<li><p>
|
|
A non-void return value is represented as follows:</p>
|
|
|
|
<ol>
|
|
<li>
|
|
<p>There MUST be an outbound edge with a local name of <code>result</code> and a namespace
|
|
name of "http://www.w3.org/2003/05/soap-rpc"
|
|
which terminates in a terminal node</p>
|
|
</li>
|
|
<li>
|
|
<p>
|
|
The type of that terminal node is a xs:QName and its value
|
|
is the name of the outbound edge which terminates in the
|
|
actual return value.
|
|
</p>
|
|
</li>
|
|
</ol>
|
|
|
|
<p>If the return value of the procedure is void
|
|
then an outbound edge with a local name of <code>result</code> and a namespace
|
|
name of "http://www.w3.org/2003/05/soap-rpc"
|
|
MUST NOT be present.</p>
|
|
</li>
|
|
|
|
|
|
<li><p>Invocation faults are handled according to the
|
|
rules in 4.4 RPC Faults. If a protocol binding
|
|
adds additional rules for fault expression, those MUST also
|
|
be followed.</p></li>
|
|
</ul>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment106" id="comment106"></a>
|
|
Comments
|
|
</h4>
|
|
<p>All tests in the test collection that use the RPC convention and do not
|
|
generate a fault, test this assertion. Test 'T31' tests the void
|
|
return case.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-rpcencrestriction-onechild" id="x2-rpcencrestriction-onechild"></a>
|
|
Assertion
|
|
x2-rpcencrestriction-onechild</h3><h4><a name="assertloc107" id="assertloc107"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#rpcencrestriction">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
4.2.3</a>
|
|
<div><h4><a name="spectext107" id="spectext107"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>When using SOAP encoding (see 3. SOAP Encoding) in
|
|
conjunction with the RPC convention described here, the SOAP
|
|
<code>Body</code> MUST contain only a single child <em>element
|
|
information item</em>, that child being the serialized RPC
|
|
invocation or response struct.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment107" id="comment107"></a>
|
|
Comments
|
|
</h4>
|
|
<p>All tests in the test collection that use the RPC convention, test
|
|
this assertion.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-rpcsoaphead-hb" id="x2-rpcsoaphead-hb"></a>
|
|
Assertion
|
|
x2-rpcsoaphead-hb</h3><h4><a name="assertloc108" id="assertloc108"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#rpcsoaphead">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
4.3</a>
|
|
<div><h4><a name="spectext108" id="spectext108"></a>
|
|
Text from the specification
|
|
</h4> <blockquote>
|
|
<p>
|
|
Additional information relevant to the encoding of an RPC invocation but not part of the formal procedure or method signature MAY be expressed in a SOAP envelope carrying an RPC invocation or response. Such additional information MUST be expressed as SOAP header blocks.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test108" id="test108"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T32">T32</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-rpcfaults-rules" id="x2-rpcfaults-rules"></a>
|
|
Assertion
|
|
x2-rpcfaults-rules</h3><h4><a name="assertloc109" id="assertloc109"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#rpcfaults">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
4.4</a>
|
|
<div><h4><a name="spectext109" id="spectext109"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>Errors arising during RPC invocations are reported
|
|
according to the following rules:</p>
|
|
|
|
<ol>
|
|
|
|
<li><p>A fault with a <code>Value</code> of
|
|
<code>Code</code> set to "env:Receiver" SHOULD
|
|
be generated when the receiver cannot handle the message
|
|
because of some temporary condition, e.g. when it is out of
|
|
memory.</p>
|
|
|
|
<div class="note"><p class="prefix"><b>Note:</b></p>
|
|
<p>Throughout this document, the term "<code>Value</code> of
|
|
<code>Code</code> " is used as a shorthand for "value of
|
|
the <code>Value</code> child <em>element information
|
|
item</em> of the <code>Code</code> <em>element
|
|
information item</em>" (see SOAP 1.2 Part 1 <a href="#SOAP-PART1">[SOAP Part 1]</a>, <a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427/#faultcodeelement">SOAP Code
|
|
Element </a>).</p>
|
|
</div>
|
|
|
|
</li>
|
|
|
|
<li>
|
|
<p>A fault with a <code>Value</code> of <code>Code</code>
|
|
set to "env:DataEncodingUnknown"
|
|
SHOULD be generated when the arguments
|
|
are encoded in a data encoding unknown to the
|
|
receiver.</p>
|
|
</li>
|
|
|
|
<li>
|
|
<p>A fault with a <code>Value</code> of <code>Code</code>
|
|
set to "env:Sender" and a
|
|
<code>Value</code> of <code>Subcode</code> set to
|
|
"rpc:ProcedureNotPresent"
|
|
MAY be generated when the receiver
|
|
does not support the procedure or method specified.</p>
|
|
|
|
<div class="note"><p class="prefix"><b>Note:</b></p>
|
|
<p>Throughout this document, the term "<code>Value</code> of
|
|
<code>Subcode</code> " is used as a shorthand for "value of
|
|
the <code>Value</code> child <em>element information
|
|
item</em> of the <code>Subcode</code> <em>element
|
|
information item</em>" (see SOAP 1.2 Part 1 <a href="#SOAP-PART1">[SOAP Part 1]</a>, <a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427/#faultsubcodeelement">SOAP Subcode
|
|
element</a>).</p>
|
|
</div>
|
|
|
|
</li>
|
|
|
|
<li>
|
|
<p>A fault with a <code>Value</code> of <code>Code</code>
|
|
set to "env:Sender" and a
|
|
<code>Value</code> of <code>Subcode</code> set to
|
|
"rpc:BadArguments"
|
|
MUST be generated when the receiver
|
|
cannot parse the arguments or when there is a
|
|
mismatch in number and/or type of the arguments
|
|
between what the receiver expects and what was
|
|
sent.</p>
|
|
</li>
|
|
|
|
<li><p>Other faults arising in an extension or from the
|
|
application SHOULD be generated as described in SOAP 1.2 Part 1 <a href="#SOAP-PART1">[SOAP Part 1]</a> <a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427/#soapfault">SOAP Fault Codes</a>.</p>
|
|
</li>
|
|
|
|
</ol>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test109" id="test109"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#T72">T72</a>,
|
|
<a href="#T69">T69</a>,
|
|
<a href="#T70">T70</a>,
|
|
<a href="#T33">T33</a>,
|
|
<a href="#T80">T80</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-bindprops-uri" id="x2-bindprops-uri"></a>
|
|
Assertion
|
|
x2-bindprops-uri</h3><h4><a name="assertloc110" id="assertloc110"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#bindprops">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
5.1.1</a>
|
|
<div><h4><a name="spectext110" id="spectext110"></a>
|
|
Text from the specification
|
|
</h4> <blockquote>
|
|
<p>
|
|
Properties are named with URIs.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment110" id="comment110"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-meppropconv-def" id="x2-meppropconv-def"></a>
|
|
Assertion
|
|
x2-meppropconv-def</h3><h4><a name="assertloc111" id="assertloc111"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#meppropconv">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
6.1</a>
|
|
<div><h4><a name="spectext111" id="spectext111"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Table 2: Property definitions supporting the description of MEPs
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment111" id="comment111"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-mepname-uri" id="x2-mepname-uri"></a>
|
|
Assertion
|
|
x2-mepname-uri</h3><h4><a name="assertloc112" id="assertloc112"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#mepname">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
6.2.1</a>
|
|
<div><h4><a name="spectext112" id="spectext112"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>This message exchange pattern is identified by
|
|
the URI (see SOAP 1.2 Part 1 <a href="#SOAP-PART1">[SOAP Part 1]</a> <a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427/#procsoapmsgs">SOAP Features</a>):</p>
|
|
<ul><li><p>"http://www.w3.org/2003/05/soap/mep/request-response/"</p></li></ul>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment112" id="comment112"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-bindformdesc-propdef" id="x2-bindformdesc-propdef"></a>
|
|
Assertion
|
|
x2-bindformdesc-propdef</h3><h4><a name="assertloc113" id="assertloc113"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#bindformdesc">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
6.2.3</a>
|
|
<div><h4><a name="spectext113" id="spectext113"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Table 3: Property definitions for Request-Response MEP
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment113" id="comment113"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-bindformdesc-reqctx" id="x2-bindformdesc-reqctx"></a>
|
|
Assertion
|
|
x2-bindformdesc-reqctx</h3><h4><a name="assertloc114" id="assertloc114"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#bindformdesc">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
6.2.3</a>
|
|
<div><h4><a name="spectext114" id="spectext114"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Table 4: Instantiation of a Message Exchange Context for a requesting SOAP node
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment114" id="comment114"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-bindformdesc-resctx" id="x2-bindformdesc-resctx"></a>
|
|
Assertion
|
|
x2-bindformdesc-resctx</h3><h4><a name="assertloc115" id="assertloc115"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#bindformdesc">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
6.2.3</a>
|
|
<div><h4><a name="spectext115" id="spectext115"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Table 5: Instantiation of Message Exchange Context for
|
|
an inbound request message at a responding SOAP node
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment115" id="comment115"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-bindformdesc-reqsttr" id="x2-bindformdesc-reqsttr"></a>
|
|
Assertion
|
|
x2-bindformdesc-reqsttr</h3><h4><a name="assertloc116" id="assertloc116"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#bindformdesc">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
6.2.3</a>
|
|
<div><h4><a name="spectext116" id="spectext116"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Table 6: Requesting SOAP Node State Transitions
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment116" id="comment116"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-bindformdesc-ressttr" id="x2-bindformdesc-ressttr"></a>
|
|
Assertion
|
|
x2-bindformdesc-ressttr</h3><h4><a name="assertloc117" id="assertloc117"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#bindformdesc">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
6.2.3</a>
|
|
<div><h4><a name="spectext117" id="spectext117"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Table 7: Responding SOAP Node State Transitions
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment117" id="comment117"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-bindformdesc-stream" id="x2-bindformdesc-stream"></a>
|
|
Assertion
|
|
x2-bindformdesc-stream</h3><h4><a name="assertloc118" id="assertloc118"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#bindformdesc">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
6.2.3</a>
|
|
<div><h4><a name="spectext118" id="spectext118"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>All the rules in SOAP 1.2 Part 1 <a href="#SOAP-PART1">[SOAP Part 1]</a>
|
|
<a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427/#bindfw">Binding
|
|
Framework</a> regarding streaming of individual SOAP
|
|
messages MUST be obeyed for both request and response SOAP
|
|
messages.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment118" id="comment118"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-bindformdesc-dlock" id="x2-bindformdesc-dlock"></a>
|
|
Assertion
|
|
x2-bindformdesc-dlock</h3><h4><a name="assertloc119" id="assertloc119"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#bindformdesc">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
6.2.3</a>
|
|
<div><h4><a name="spectext119" id="spectext119"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
When using streaming SOAP bindings, requesting SOAP nodes MUST avoid
|
|
deadlock by accepting and if necessary processing SOAP response
|
|
information while the SOAP request is being transmitted.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment119" id="comment119"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-mepname2-uri" id="x2-mepname2-uri"></a>
|
|
Assertion
|
|
x2-mepname2-uri</h3><h4><a name="assertloc120" id="assertloc120"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#mepname2">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
6.3.1</a>
|
|
<div><h4><a name="spectext120" id="spectext120"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>This message exchange pattern is identified by
|
|
the URI (see SOAP 1.2 Part 1 <a href="#SOAP-PART1">[SOAP Part 1]</a> <a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427/#procsoapmsgs">SOAP Features</a>):</p>
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
"http://www.w3.org/2003/05/soap/mep/soap-response/"
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment120" id="comment120"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-bindformdesc2-propdef" id="x2-bindformdesc2-propdef"></a>
|
|
Assertion
|
|
x2-bindformdesc2-propdef</h3><h4><a name="assertloc121" id="assertloc121"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#bindformdesc2">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
6.3.3</a>
|
|
<div><h4><a name="spectext121" id="spectext121"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Table 8: Property definitions for SOAP Response MEP
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment121" id="comment121"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-bindformdesc2-reqctx" id="x2-bindformdesc2-reqctx"></a>
|
|
Assertion
|
|
x2-bindformdesc2-reqctx</h3><h4><a name="assertloc122" id="assertloc122"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#bindformdesc2">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
6.3.3</a>
|
|
<div><h4><a name="spectext122" id="spectext122"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Table 9: Instantiation of a Message Exchange Context for a requesting SOAP node
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment122" id="comment122"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-bindformdesc2-resctx" id="x2-bindformdesc2-resctx"></a>
|
|
Assertion
|
|
x2-bindformdesc2-resctx</h3><h4><a name="assertloc123" id="assertloc123"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#bindformdesc2">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
6.3.3</a>
|
|
<div><h4><a name="spectext123" id="spectext123"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Table 10: Instantiation of Message Exchange Context for an inbound request message
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment123" id="comment123"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-bindformdesc2-reqsttr" id="x2-bindformdesc2-reqsttr"></a>
|
|
Assertion
|
|
x2-bindformdesc2-reqsttr</h3><h4><a name="assertloc124" id="assertloc124"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#bindformdesc2">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
6.3.3</a>
|
|
<div><h4><a name="spectext124" id="spectext124"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Table 11: Requesting SOAP Node State Transitions
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment124" id="comment124"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-bindformdesc2-ressttr" id="x2-bindformdesc2-ressttr"></a>
|
|
Assertion
|
|
x2-bindformdesc2-ressttr</h3><h4><a name="assertloc125" id="assertloc125"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#bindformdesc2">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
6.3.3</a>
|
|
<div><h4><a name="spectext125" id="spectext125"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Table 12: Responding SOAP Node State Transitions
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment125" id="comment125"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-WebMethodFeatureName-uri" id="x2-WebMethodFeatureName-uri"></a>
|
|
Assertion
|
|
x2-WebMethodFeatureName-uri</h3><h4><a name="assertloc126" id="assertloc126"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#WebMethodFeatureName">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
6.4.1</a>
|
|
<div><h4><a name="spectext126" id="spectext126"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The SOAP Web Method feature is identified by the URI (see SOAP 1.2 Part 1 <a href="#SOAP-PART1">[SOAP Part 1]</a> <a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427/#procsoapmsgs">SOAP Features</a>):</p>
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
"http://www.w3.org/2003/05/soap/features/web-method/"
|
|
</p>
|
|
</li>
|
|
</ul>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment126" id="comment126"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-webmethodstatemachine-urivalue" id="x2-webmethodstatemachine-urivalue"></a>
|
|
Assertion
|
|
x2-webmethodstatemachine-urivalue</h3><h4><a name="assertloc127" id="assertloc127"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#webmethodstatemachine">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
6.4.3</a>
|
|
<div><h4><a name="spectext127" id="spectext127"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
A node sending a request message MUST provide a value for the
|
|
<code>http://www.w3.org/2003/05/soap/features/web-method/Method</code> property.
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment127" id="comment127"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-webmethodstatemachine-compat" id="x2-webmethodstatemachine-compat"></a>
|
|
Assertion
|
|
x2-webmethodstatemachine-compat</h3><h4><a name="assertloc128" id="assertloc128"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#webmethodstatemachine">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
6.4.3</a>
|
|
<div><h4><a name="spectext128" id="spectext128"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
Bindings implementing this feature
|
|
MUST employee a Message Exchange Pattern with semantics that are
|
|
compatible with the web method selected.</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment128" id="comment128"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="assertion"><h3><a name="x2-httpmediatype-mediatype" id="x2-httpmediatype-mediatype"></a>
|
|
Assertion
|
|
x2-httpmediatype-mediatype</h3><h4><a name="assertloc129" id="assertloc129"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#httpmediatype">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
7.1.4</a>
|
|
<div><h4><a name="spectext129" id="spectext129"></a>
|
|
Text from the specification
|
|
</h4>
|
|
|
|
<blockquote>
|
|
<p>Conforming implementations of this binding:</p>
|
|
|
|
<ol>
|
|
|
|
<li><p>MUST be capable of sending and receiving messages
|
|
serialized using media type "application/soap+xml" whose proper
|
|
use and parameters are described in A. The application/soap+xml Media Type.</p></li>
|
|
</ol>
|
|
</blockquote>
|
|
|
|
</div>
|
|
<div><h4><a name="comment129" id="comment129"></a>
|
|
Comments
|
|
</h4>
|
|
<p>'this' in the specification text refer to the SOAP HTTP Binding.</p>
|
|
</div>
|
|
<div><h4><a name="test129" id="test129"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#TH1">TH1</a>,
|
|
<a href="#TH2">TH2</a>,
|
|
<a href="#TH3">TH3</a>,
|
|
<a href="#TH4">TH4</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-http-bindname-uri" id="x2-http-bindname-uri"></a>
|
|
Assertion
|
|
x2-http-bindname-uri</h3><h4><a name="assertloc130" id="assertloc130"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#http-bindname">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
7.2</a>
|
|
<div><h4><a name="spectext130" id="spectext130"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>This binding is identified by the URI (see
|
|
SOAP 1.2 Part 1 <a href="#SOAP-PART1">[SOAP Part 1]</a> <a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427/#transpbindframew">SOAP Protocol Binding
|
|
Framework</a>):</p>
|
|
|
|
<ul>
|
|
|
|
<li><p>"http://www.w3.org/2003/05/soap/bindings/HTTP/"</p>
|
|
</li>
|
|
|
|
</ul>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment130" id="comment130"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-http-suptransmep-uris" id="x2-http-suptransmep-uris"></a>
|
|
Assertion
|
|
x2-http-suptransmep-uris</h3><h4><a name="assertloc131" id="assertloc131"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#http-suptransmep">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
7.3</a>
|
|
|
|
<div><h4><a name="spectext131" id="spectext131"></a>
|
|
Text from the specification
|
|
</h4>
|
|
|
|
<blockquote>
|
|
<p>An implementation of the SOAP HTTP Binding
|
|
MUST support the following message exchange
|
|
patterns (MEPs):</p>
|
|
|
|
<ul>
|
|
<li><p>
|
|
"http://www.w3.org/2003/05/soap/mep/request-response/"
|
|
(see 6.2 Request-Response Message Exchange Pattern) </p></li>
|
|
<li>
|
|
<p>
|
|
"http://www.w3.org/2003/05/soap/mep/soap-response/"
|
|
(see 6.3 SOAP Response Message Exchange Pattern) </p>
|
|
</li>
|
|
</ul>
|
|
</blockquote>
|
|
|
|
</div>
|
|
<div><h4><a name="comment131" id="comment131"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-http-suptfeatures-webmethod" id="x2-http-suptfeatures-webmethod"></a>
|
|
Assertion
|
|
x2-http-suptfeatures-webmethod</h3><h4><a name="assertloc132" id="assertloc132"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#http-suptfeatures">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
7.4</a>
|
|
<div><h4><a name="spectext132" id="spectext132"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>An implementation of the SOAP HTTP Binding
|
|
MUST support the following feature:</p>
|
|
<ul>
|
|
<li>
|
|
<p>
|
|
"http://www.w3.org/2003/05/soap/features/web-method/"
|
|
(see 6.4 Web Method Specification Feature) </p>
|
|
</li>
|
|
</ul>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment132" id="comment132"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-http-suptfeatures-methrest" id="x2-http-suptfeatures-methrest"></a>
|
|
Assertion
|
|
x2-http-suptfeatures-methrest</h3><h4><a name="assertloc133" id="assertloc133"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#http-suptfeatures">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
7.4</a>
|
|
<div><h4><a name="spectext133" id="spectext133"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>The possible values of
|
|
<code>http://www.w3.org/2003/05/soap/features/web-method/Method</code>
|
|
property are restricted in this HTTP binding according to the MEP
|
|
in use (as present in
|
|
<code>http://www.w3.org/2003/05/soap/bindingFramework/ExchangeContext/ExchangePatternName</code> ):</p>
|
|
<p>Table 14: Possible values of the Web-Method Method property</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment133" id="comment133"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-http-reqsoapnode-dlock" id="x2-http-reqsoapnode-dlock"></a>
|
|
Assertion
|
|
x2-http-reqsoapnode-dlock</h3><h4><a name="assertloc134" id="assertloc134"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#http-reqsoapnode">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
7.5.1</a>
|
|
<div><h4><a name="spectext134" id="spectext134"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>
|
|
This binding supports streaming and, as a result, requesting SOAP
|
|
nodes MUST avoid deadlock by accepting and if necessary processing
|
|
SOAP response information while the SOAP request is being transmitted
|
|
(see 6.2.3 State Machine Description).
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment134" id="comment134"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-http-reqbindreqstate-reqfld" id="x2-http-reqbindreqstate-reqfld"></a>
|
|
Assertion
|
|
x2-http-reqbindreqstate-reqfld</h3><h4><a name="assertloc135" id="assertloc135"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#http-reqbindreqstate">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
7.5.1.1</a>
|
|
<div><h4><a name="spectext135" id="spectext135"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>Table 15: HTTP Request Fields</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test135" id="test135"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#TH1">TH1</a>,
|
|
<a href="#TH2">TH2</a>,
|
|
<a href="#TH3">TH3</a>,
|
|
<a href="#TH4">TH4</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-http-reqbindwaitstate-trans" id="x2-http-reqbindwaitstate-trans"></a>
|
|
Assertion
|
|
x2-http-reqbindwaitstate-trans</h3><h4><a name="assertloc136" id="assertloc136"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#http-reqbindwaitstate">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
7.5.1.2</a>
|
|
<div><h4><a name="spectext136" id="spectext136"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>Table 16: HTTP status code dependent transitions</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test136" id="test136"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#TH1">TH1</a>,
|
|
<a href="#TH2">TH2</a>,
|
|
<a href="#TH3">TH3</a>,
|
|
<a href="#TH4">TH4</a>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="assertion"><h3><a name="x2-http-respbindreceive-initerror" id="x2-http-respbindreceive-initerror"></a>
|
|
Assertion
|
|
x2-http-respbindreceive-initerror</h3><h4><a name="assertloc137" id="assertloc137"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#http-respbindreceive">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
7.5.2.1</a>
|
|
<div><h4><a name="spectext137" id="spectext137"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>Table 17: Errors generated in the Init state</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test137" id="test137"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#TH2">TH2</a>,
|
|
<a href="#TH5">TH5</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-http-respbindprocess-reshdr" id="x2-http-respbindprocess-reshdr"></a>
|
|
Assertion
|
|
x2-http-respbindprocess-reshdr</h3><h4><a name="assertloc138" id="assertloc138"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#http-respbindprocess">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
7.5.2.2</a>
|
|
<div><h4><a name="spectext138" id="spectext138"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>Table 18: HTTP Response Headers Fields</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test138" id="test138"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#TH1">TH1</a>,
|
|
<a href="#TH2">TH2</a>,
|
|
<a href="#TH3">TH3</a>,
|
|
<a href="#TH4">TH4</a>,
|
|
<a href="#TH5">TH5</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-http-respbindprocess-fltmap" id="x2-http-respbindprocess-fltmap"></a>
|
|
Assertion
|
|
x2-http-respbindprocess-fltmap</h3><h4><a name="assertloc139" id="assertloc139"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#http-respbindprocess">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Section
|
|
7.5.2.2</a>
|
|
<div><h4><a name="spectext139" id="spectext139"></a>
|
|
Text from the specification
|
|
</h4>
|
|
<blockquote>
|
|
<p>Table 19: SOAP Fault to HTTP Status Mapping</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="test139" id="test139"></a>
|
|
Tests
|
|
</h4>
|
|
<a href="#TH2">TH2</a>,
|
|
<a href="#TH3">TH3</a>,
|
|
<a href="#TH4">TH4</a>,
|
|
<a href="#TH5">TH5</a>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="assertion"><h3><a name="x2-namemap-rules-sql" id="x2-namemap-rules-sql"></a>
|
|
Assertion
|
|
x2-namemap-rules-sql</h3><h4><a name="assertloc140" id="assertloc140"></a>Location of the assertion
|
|
</h4><a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427#namemap-rules">
|
|
SOAP 1.2 Part
|
|
2,
|
|
Appendix
|
|
B.1</a>
|
|
<div><h4><a name="spectext140" id="spectext140"></a>
|
|
Text from the specification
|
|
</h4> <blockquote>
|
|
<p>
|
|
Rules for Mapping Application Defined Names to XML Names
|
|
</p>
|
|
</blockquote>
|
|
</div>
|
|
<div><h4><a name="comment140" id="comment140"></a>
|
|
Comments
|
|
</h4>
|
|
<p>This assertion will not be tested.</p>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
<div class="div1">
|
|
|
|
<h2><a name="testcollection"></a>3. SOAP 1.2 Test Collection</h2>
|
|
|
|
<div class="div2">
|
|
|
|
<h3><a name="testcollectionintro"></a>3.1 Introduction</h3>
|
|
|
|
<p>Unless otherwise stated all the tests in this test collection follow the following rules:</p>
|
|
|
|
<ul>
|
|
<li>
|
|
<p>The tests use three SOAP nodes - Node A, Node B and Node C,
|
|
identified by "http://example.org/ts-tests/A",
|
|
"http://example.org/ts-tests/B", and
|
|
"http://example.org/ts-tests/C" respectively.
|
|
No other SOAP nodes must be used in communication between these
|
|
three SOAP nodes.</p>
|
|
</li>
|
|
<li>
|
|
<p>Node A is the test client.</p>
|
|
</li>
|
|
<li>
|
|
<p>Node C is the ultimate destination.</p>
|
|
</li>
|
|
<li>
|
|
<p>Node B is a SOAP intermediary.</p>
|
|
</li>
|
|
<li>
|
|
<p>Node B must act in the role "http://example.org/ts-tests/B"</p>
|
|
</li>
|
|
<li>
|
|
<p>Node C must act in the role "http://example.org/ts-tests/C"</p>
|
|
</li>
|
|
<li>
|
|
<p>Node A, Node B and Node C implement some mechanism for routing so that
|
|
the following messaging scenarios are allowed:</p>
|
|
<ul>
|
|
<li>
|
|
<p>Node A sends message to Node C, Node C returns a response or fault
|
|
message back to Node A (Node B is not involved in this scenario).</p>
|
|
</li>
|
|
<li>
|
|
<p>Node A sends message to Node B, Node B forwards the message to
|
|
Node C or returns a fault back to Node A. Node C either:</p>
|
|
<ul>
|
|
<li>
|
|
<p>returns a fault message to Node B and Node B forwards the fault
|
|
message to Node A, OR</p>
|
|
</li>
|
|
<li>
|
|
<p>returns a response message to Node B and Node B forwards the
|
|
response to Node A.</p>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
</ul>
|
|
|
|
</div>
|
|
|
|
<div class="div2">
|
|
|
|
<h3><a name="id2275029"></a>3.2 Header Blocks Used by the Test Collection</h3>
|
|
|
|
<p>Unless otherwise specified the header blocks used by this test
|
|
collection are in the namespace "http://example.org/ts-tests".
|
|
</p>
|
|
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275044"></a>3.2.1 echoOk</h4>
|
|
<p>The semantics of processing this header block require the SOAP node
|
|
targeted by this header block, to reply to the SOAP node from which it
|
|
received the SOAP message containing this header. The reponse SOAP
|
|
message must contain the header block <em>responseOk</em>
|
|
containing the same information set as that in <em>echoOk</em> header
|
|
block.
|
|
The type of this header block is string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275068"></a>3.2.2 responseOk</h4>
|
|
<p>This header block is generated as a result of processing the
|
|
<em>echoOk</em> header block as described above.
|
|
The type of this header block is string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275086"></a>3.2.3 Ignore</h4>
|
|
<p>The semantics of processing this header block require the SOAP node
|
|
targeted by this header block, to ignore this header block altogether.
|
|
The type of this header block is string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275100"></a>3.2.4 requiredHeader</h4>
|
|
<p>This header block is used in conjunction with the body block
|
|
<em>echoHeader</em> The semantics of processing the body block
|
|
<em>echoHeader</em> requires the SOAP node to reply to the SOAP node
|
|
from which it received the SOAP message containing this header. The
|
|
response SOAP message must contain the SOAP body block
|
|
<em>echoHeaderResponse</em> containing the same information set as that
|
|
in <em>requiredHeader</em> header block.
|
|
The type of this header block is string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275133"></a>3.2.5 DataHolder</h4>
|
|
<p>The semantics of processing this header block require the SOAP node
|
|
targeted by this header block, to ignore this header block altogether.
|
|
This header is used for encapsulating data used by other headers and
|
|
body blocks.
|
|
The type of this header block is string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275149"></a>3.2.6 concatAndForwardEchoOk</h4>
|
|
<p>The semantics of processing this header block require the SOAP node
|
|
targeted by this header block, to take the character information item
|
|
children of the header block <em>concatAndForwardEchoOkArg2</em>
|
|
concatenate it to the character information item children of the header
|
|
block <em>concatAndForwardEchoOkArg1</em> and forward the result to the
|
|
downstream SOAP node using the header block <em>echoOK</em>
|
|
This header should not contain any character information item children.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275178"></a>3.2.7 concatAndForwardEchoOkArg1</h4>
|
|
<p>The semantics of processing this header block require the SOAP node
|
|
targeted by this header block, to ignore this header block altogether.
|
|
This header is used for encapsulating data used by the header
|
|
<em>concatAndForwardEchoOk</em> block.
|
|
The type of this header block is string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275198"></a>3.2.8 concatAndForwardEchoOkArg2</h4>
|
|
<p>The semantics of processing this header block require the SOAP node
|
|
targeted by this header block, to ignore this header block altogether.
|
|
This header is used for encapsulating data used by the header
|
|
<em>concatAndForwardEchoOk</em> block.
|
|
The type of this header block is string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275218"></a>3.2.9 validateCountryCode</h4>
|
|
<p>The semantics of processing this header block require the SOAP node
|
|
targeted by this header block, to validate that the character
|
|
information item
|
|
of this header consists of two letters only (ignoring whitespace).
|
|
If this condition is not satisfied then a fault is required to be sent
|
|
back to the sender of the message with the Value of the fault Code
|
|
as env:Sender along
|
|
with a header block <em>validateCountryCodeFault</em> containing an
|
|
explanation for the fault
|
|
The type of this header block is string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275242"></a>3.2.10 validateCountryCodeFault</h4>
|
|
<p>This header block is used to cary information related to fault
|
|
generated as a result of processing the header block
|
|
<em>validateCountryCode</em> as described above.
|
|
The type of this header block is string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275260"></a>3.2.11 echoResolvedRef</h4>
|
|
<p>The semantics of processing this header block require the SOAP node
|
|
targeted by this header block, to reply to the SOAP node from which it
|
|
received the SOAP message containing this header. The reponse SOAP
|
|
message must contain the header block <em>responseResolvedRef</em>
|
|
This header block contains one child element information item
|
|
RelativeReference in the namespace
|
|
"http://example.org/ts-tests". RelativeReference element
|
|
information item is required to have the attribute information items
|
|
xml:base, and xlink:href. The <em>responseResolvedRef</em>
|
|
contains the resolved reference pointed to by xml:base and xlink:href.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275292"></a>3.2.12 responseResolvedRef</h4>
|
|
<p>This header block is generated in response to processing the header
|
|
block <em>echoResolvedRef</em> as described above.
|
|
The type of this header block is string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</div>
|
|
</div>
|
|
|
|
<div class="div2">
|
|
|
|
<h3><a name="id2275310"></a>3.3 Body Blocks Used by the Test Collection</h3>
|
|
|
|
<p>Unless otherwise specified the body blocks used by this test
|
|
collection are in the namespace "http://example.org/ts-tests".
|
|
</p>
|
|
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275326"></a>3.3.1 echoOk</h4>
|
|
<p>The semantics of processing this body block require the SOAP node
|
|
to reply to the SOAP node from which it
|
|
received the SOAP message containing this block. The reponse SOAP
|
|
message must contain the body block <em>responseOk</em>
|
|
containing the same information set as that in <em>echoOk</em> body
|
|
block.
|
|
The type of this header block is string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275350"></a>3.3.2 responseOk</h4>
|
|
<p>This body block is generated as a result of processing the
|
|
<em>echoOk</em> body block as described above.
|
|
The type of this header block is string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275367"></a>3.3.3 echoHeader</h4>
|
|
<p>This body block is used in conjuction with the header block
|
|
<em>requiredHeader</em> The semantics of processing this body block
|
|
require the SOAP node to reply to the SOAP node from which it received
|
|
the SOAP message containing this block. The response SOAP message must
|
|
contain the body block <em>echoHeaderResponse</em> containing the same
|
|
information set as that in <em>requiredHeader</em> header block. This
|
|
body block does not have any children element information items, or
|
|
attribute information items.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275396"></a>3.3.4 echoHeaderResponse</h4>
|
|
<p>This body block is generated as a result of processing the
|
|
<em>echoHeader</em> body block as described above.
|
|
The type of this header block is string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
<div class="div2">
|
|
|
|
<h3><a name="id2275415"></a>3.4 RPC Methods/Procedures Used by the Test Collection</h3>
|
|
|
|
<p>Unless otherwise specified the procedure/method names used by this test
|
|
collection are in the namespace "http://example.org/ts-tests".
|
|
</p>
|
|
|
|
<p>In addition to types defined in the namespace
|
|
"http://www.w3.org/2001/XMLSchema", the test collection uses the
|
|
following types:</p>
|
|
|
|
|
|
|
|
<ul>
|
|
<li>
|
|
<p><code>SOAPStruct</code> defined in the namespace
|
|
"http://example.org/ts-tests/xsd". This type contains three
|
|
child element information items in its children property as
|
|
follows:</p>
|
|
|
|
<ul>
|
|
<li>
|
|
<p>An element information item of type string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</li>
|
|
<li>
|
|
<p>An element information item of type int in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</li>
|
|
<li>
|
|
<p>An element information item of type float in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</li>
|
|
</ul>
|
|
|
|
</li>
|
|
|
|
<li>
|
|
<p><code>SOAPStructStruct</code> defined in the namespace
|
|
"http://example.org/ts-tests/xsd". This type contains four
|
|
child element information items in its children property as
|
|
follows:</p>
|
|
|
|
<ul>
|
|
<li>
|
|
<p>An element information item of type int in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</li>
|
|
<li>
|
|
<p>An element information item of type float in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</li>
|
|
<li>
|
|
<p>An element information item of type string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</li>
|
|
<li>
|
|
<p>An element information item of type SOAPStruct in the namespace
|
|
"http://example.org/ts-tests/xsd".</p>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
|
|
<li>
|
|
<p><code>SOAPArrayStruct</code> defined in the namespace
|
|
"http://example.org/ts-tests/xsd". This type contains four
|
|
child element information items in its children property as
|
|
follows:</p>
|
|
|
|
<ul>
|
|
<li>
|
|
<p>An element information item of type int in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</li>
|
|
<li>
|
|
<p>An element information item of type float in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</li>
|
|
<li>
|
|
<p>An element information item of type string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</li>
|
|
<li>
|
|
<p>An element information item representing an array of type
|
|
string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".</p>
|
|
</li>
|
|
</ul>
|
|
</li>
|
|
|
|
</ul>
|
|
|
|
<p>
|
|
The encoding represented by the URI
|
|
"http://example.org/PoisonEncoding" is an encoding that is not
|
|
recognized by any of the SOAP nodes.
|
|
</p>
|
|
|
|
<p>
|
|
Some of the tests in this test collection, test SOAP 1.2 HTTP binding. The
|
|
request and response messages for these tests contain HTTP start-line
|
|
(request-line or status-line), HTTP headers required by the bindings and
|
|
the XML payload. Additional HTTP headers can be generated in accordance
|
|
with the rules for the binding specific expression of any optional
|
|
features in use for this message exchange. In the tests, the value of
|
|
the 'Content-Length' and 'Host' header should be replaced with an
|
|
appropriate value.
|
|
</p>
|
|
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275672"></a>3.4.1 returnVoid</h4>
|
|
<p>This procedure/method does not have any input and output parameters
|
|
and does not have a return value.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275683"></a>3.4.2 echoStruct</h4>
|
|
<p>This procedure/method has one input parameter and a return value.
|
|
Both are of type SOAPStruct in the name space
|
|
"http://example.org/ts-tests/xsd".
|
|
The semantics of this method consists of returning the input argument
|
|
in the response.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275701"></a>3.4.3 echoStructArray</h4>
|
|
<p>This procedure/method has one input parameter and a return value.
|
|
Both are of type array of SOAPStruct in the name space
|
|
"http://example.org/ts-tests/xsd".
|
|
The semantics of this method consists of returning the input argument
|
|
in the response.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275719"></a>3.4.4 echoStructAsSimpleTypes</h4>
|
|
<p>This procedure/method has one input parameter and three return value.
|
|
The input parameter is of type SOAPStruct in the name space
|
|
"http://example.org/ts-tests/xsd". The first output parameter is
|
|
of type int in the namespace
|
|
"http://www.w3.org/2001/XMLSchema". The
|
|
second output
|
|
parameter is of type float in the namespace
|
|
"http://www.w3.org/2001/XMLSchema". The third output parameter
|
|
is of type string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".
|
|
The semantics of this method consists of returning the individual
|
|
members of SOAPStruct in the input argument as output arguments,
|
|
in the response.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275755"></a>3.4.5 echoSimpleTypesAsStruct</h4>
|
|
<p>This procedure/method has three input parameter and a return value.
|
|
The first input parameter is of type int in the namespace
|
|
"http://www.w3.org/2001/XMLSchema". The
|
|
second input
|
|
parameter is of type float in the namespace
|
|
"http://www.w3.org/2001/XMLSchema". The third input parameter
|
|
is of type string in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".
|
|
The return type is SOAPStruct in the name space
|
|
"http://example.org/ts-tests/xsd".
|
|
The semantics of this method consists of using the input arguments to
|
|
construct an instance of SOAPStruct and returning the result
|
|
in the response.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275791"></a>3.4.6 echoNestedStruct</h4>
|
|
<p>This procedure/method has one input parameter and a return value.
|
|
Both are of type SOAPStructStruct in the name space
|
|
"http://example.org/ts-tests/xsd".
|
|
The semantics of this method consists of returning the input argument
|
|
in the response.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275809"></a>3.4.7 echoNestedArray</h4>
|
|
<p>This procedure/method has one input parameter and a return value.
|
|
Both are of type SOAPArrayStruct in the name space
|
|
"http://example.org/ts-tests/xsd".
|
|
The semantics of this method consists of returning the input argument
|
|
in the response.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275827"></a>3.4.8 echoFloatArray</h4>
|
|
<p>This procedure/method has one input parameter and a return value.
|
|
Both
|
|
are of type array of float in the name space
|
|
"http://www.w3.org/2001/XMLSchema".
|
|
The semantics of this method consists of returning the input argument
|
|
in the response.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275845"></a>3.4.9 echoStringArray</h4>
|
|
<p>This procedure/method has one input parameter and a return value.
|
|
Both are of type array of string in the name space
|
|
"http://www.w3.org/2001/XMLSchema".
|
|
The semantics of this method consists of returning the input argument
|
|
in the response.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275863"></a>3.4.10 echoIntegerArray</h4>
|
|
<p>This procedure/method has one input parameter and a return value.
|
|
Both are of type array of int in the name space
|
|
"http://www.w3.org/2001/XMLSchema".
|
|
The semantics of this method consists of returning the input argument
|
|
in the response.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275881"></a>3.4.11 echoBase64</h4>
|
|
<p>This procedure/method has one input parameter and a return value.
|
|
Both are of type base64Binary in the name space
|
|
"http://www.w3.org/2001/XMLSchema".
|
|
The semantics of this method consists of returning the input argument
|
|
in the response.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275899"></a>3.4.12 echoBoolean</h4>
|
|
<p>This procedure/method has one input parameter and a return value.
|
|
Both are of type boolean in the name space
|
|
"http://www.w3.org/2001/XMLSchema".
|
|
The semantics of this method consists of returning the input argument
|
|
in the response.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275917"></a>3.4.13 echoDate</h4>
|
|
<p>This procedure/method has one input parameter and a return value.
|
|
Both are of type date in the name space
|
|
"http://www.w3.org/2001/XMLSchema".
|
|
The semantics of this method consists of returning the input argument
|
|
in the response.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275935"></a>3.4.14 echoDecimal</h4>
|
|
<p>This procedure/method has one input parameter and a return value.
|
|
Both
|
|
are of type decimal in the name space
|
|
"http://www.w3.org/2001/XMLSchema".
|
|
The semantics of this method consists of returning the input argument
|
|
in the response.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275953"></a>3.4.15 echoFloat</h4>
|
|
<p>This procedure/method has one input parameter and a return value.
|
|
Both are of type float in the name space
|
|
"http://www.w3.org/2001/XMLSchema".
|
|
The semantics of this method consists of returning the input argument
|
|
in the response.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275971"></a>3.4.16 echoString</h4>
|
|
<p>This procedure/method has one input parameter and a return value.
|
|
Both are of type string in the name space
|
|
"http://www.w3.org/2001/XMLSchema".
|
|
The semantics of this method consists of returning the input argument
|
|
in the response.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2275989"></a>3.4.17 countItems</h4>
|
|
<p>This procedure/method has one input parameter and a return value. The
|
|
input parameter is of type array of string in the name space
|
|
"http://www.w3.org/2001/XMLSchema" and the type of the return
|
|
value is int in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".
|
|
The semantics of this method consists of returning the cardinality of
|
|
the input array argument in the response.</p>
|
|
</div>
|
|
<div class="div3">
|
|
|
|
<h4><a name="id2276013"></a>3.4.18 isNil</h4>
|
|
<p>This procedure/method has one input parameter and a return value. The
|
|
input parameter is of type string in the name space
|
|
"http://www.w3.org/2001/XMLSchema" and the type of the return
|
|
value is boolean in the namespace
|
|
"http://www.w3.org/2001/XMLSchema".
|
|
The semantics of this method consists of returning a boolean 'true', if
|
|
the input argument is absent or has xsi:nil attribute with a value of
|
|
'1'. A boolean 'false' is returned otherwise.
|
|
</p>
|
|
</div>
|
|
|
|
</div>
|
|
|
|
<div class="div2">
|
|
|
|
<h3><a name="tests"></a>3.5 Tests</h3>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T1" name="T1"></a>Test:T1</h3><h4><a id="descT1" name="descrT1"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to Node C message with 'echoOk' header block having role
|
|
equal to "http://www.w3.org/2003/05/soap-envelope/role/next".
|
|
Node C returns back empty body with responseOK header.
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<h4><a id="mesgT1" name="mesgT1"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/next">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:responseOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T2" name="T2"></a>Test:T2</h3><h4><a id="descT2" name="descrT2"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to Node C message with echoOk header block having role equal to "http://example.org/ts-tests/C".
|
|
NodeC returns back empty body with responseOK header.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT2" name="mesgT2"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://example.org/ts-tests/C">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:responseOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T3" name="T3"></a>Test:T3</h3><h4><a id="descT3" name="descrT3"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to Node C message with echoOk header block having no role.
|
|
NodeC returns back empty body with responseOK header.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT3" name="mesgT3"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:responseOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T4" name="T4"></a>Test:T4</h3><h4><a id="descT4" name="descrT4"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node C message with echoOk header block having role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver". NodeC sends message back with responseOK header.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT4" name="mesgT4"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:responseOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T5" name="T5"></a>Test:T5</h3><h4><a id="descT5" name="descrT5"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node C message with echoOk header block having
|
|
role="http://example.org/ts-tests/B".
|
|
Node C sends response message without a responseOK header and an empty body
|
|
(header block was ignored).
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT5" name="mesgT5"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://example.org/ts-tests/B">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T6" name="T6"></a>Test:T6</h3><h4><a id="descT6" name="descrT6"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node B message with echoOk header block having role="http://example.org/ts-tests/C".
|
|
NodeB forwards message to NodeC without touching the header block.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT6" name="mesgT6"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://example.org/ts-tests/C">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
B</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://example.org/ts-tests/C">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:responseOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T7" name="T7"></a>Test:T7</h3><h4><a id="descT7" name="descrT7"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node B message with Unknown header block having
|
|
role="http://example.org/ts-tests/B".
|
|
NodeB forwards message to NodeC with no header (header was removed).
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT7" name="mesgT7"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:Ignore xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://example.org/ts-tests/B">
|
|
foo
|
|
</test:Ignore>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
B</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T8" name="T8"></a>Test:T8</h3><h4><a id="descT8" name="descrT8"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node B message with 3 headers: echoOk header block having
|
|
no role, Ignore header block having role="http://example.org/ts-tests/B" and
|
|
echoOk header block having
|
|
role="http://www.w3.org/2003/05/soap-envelope/role/none".
|
|
NodeB removes the second header block,
|
|
that has role="http://example.org/ts-tests/B" and forwards message to
|
|
NodeC with 2 other headers included in the same order as in the original
|
|
message.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT8" name="mesgT8"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:echoOk>
|
|
<test:Ignore xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://example.org/ts-tests/B">
|
|
foo
|
|
</test:Ignore>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/none">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
B</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:echoOk>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/none">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:responseOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T9" name="T9"></a>Test:T9</h3><h4><a id="descT9" name="descrT9"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node B message with echoOk header block having role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver". NodeB forwards message to NodeC with header included.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT9" name="mesgT9"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
B</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:responseOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T10" name="T10"></a>Test:T10</h3><h4><a id="descT10" name="descrT10"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node C message with Unknown header having role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver". NodeC sends empty message back with no headers - header is ignored.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT10" name="mesgT10"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:Unknown xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver">
|
|
foo
|
|
</test:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T11" name="T11"></a>Test:T11</h3><h4><a id="descT11" name="descrT11"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node C message with Unknown header with
|
|
mustUnderstand="false" and having role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver".
|
|
NodeC sends empty message back with no headers - header is ignored.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT11" name="mesgT11"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:Unknown xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver"
|
|
env:mustUnderstand="false">
|
|
foo
|
|
</test:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T12" name="T12"></a>Test:T12</h3><h4><a id="descT12" name="descrT12"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node C message with Unknown header with mustUnderstand="1"
|
|
and having role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver". NodeC sends MustUnderstand fault back.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT12" name="mesgT12"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:Unknown xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver"
|
|
env:mustUnderstand="1">
|
|
foo
|
|
</test:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<env:NotUnderstood qname="test:Unknown"
|
|
xmlns:test="http://example.org/ts-tests" />
|
|
</env:Header>
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:MustUnderstand</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US"> Header not understood </env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T13" name="T13"></a>Test:T13</h3><h4><a id="descT13" name="descrT13"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node C message with Unknown header with
|
|
mustUnderstand="true" and having role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver". NodeC sends MustUnderstand fault back.
|
|
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT13" name="mesgT13"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:Unknown xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver"
|
|
env:mustUnderstand="true">
|
|
foo
|
|
</test:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<env:NotUnderstood qname="test:Unknown"
|
|
xmlns:test="http://example.org/ts-tests" />
|
|
</env:Header>
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:MustUnderstand</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
Header not understood
|
|
</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T14" name="T14"></a>Test:T14</h3><h4><a id="descT14" name="descrT14"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node C message with echoOk header with
|
|
mustUnderstand="wrong" and having role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver". NodeC sends a fault back.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT14" name="mesgT14"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver"
|
|
env:mustUnderstand="wrong">
|
|
foo
|
|
</test:echoOK>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
env:mustUnderstand value is not boolean
|
|
</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T15" name="T15"></a>Test:T15</h3><h4><a id="descT15" name="descrT15"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node C message with Unknown header with mustUnderstand="1"
|
|
and having role="http://example.org/ts-tests/B".
|
|
NodeC sends empty message back with no headers- header is ignored.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT15" name="mesgT15"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:Unknown xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://example.org/ts-tests/B"
|
|
env:mustUnderstand="1">
|
|
foo
|
|
</test:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
|
|
|
|
<div class="assertion"><h3><a id="T16" name="T16"></a>Test:T16</h3><h4><a id="descT16" name="descrT16"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node B message with Unknown header with mustUnderstand="1"
|
|
and having role="http://example.org/ts-tests/C".
|
|
NodeB forwards message to node C keeping header untouched.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT16" name="mesgT16"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:Unknown xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://example.org/ts-tests/C"
|
|
env:mustUnderstand="1">
|
|
foo
|
|
</test:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<env:NotUnderstood qname="test:Unknown"
|
|
xmlns:test="http://example.org/ts-tests" />
|
|
</env:Header>
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:MustUnderstand</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US"> Header not understood </env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T17" name="T17"></a>Test:T17</h3><h4><a id="descT17" name="descrT17"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node B message with Unknown header with mustUnderstand="1"
|
|
and having role="http://www.w3.org/2003/05/soap-envelope/role/next".
|
|
NodeB returns MustUnderstand fault to node A.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT17" name="mesgT17"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:Unknown xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/next"
|
|
env:mustUnderstand="1">
|
|
foo
|
|
</test:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
B</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<env:NotUnderstood qname="test:Unknown"
|
|
xmlns:test="http://example.org/ts-tests"/>
|
|
</env:Header>
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:MustUnderstand</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US"> Header not understood </env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T18" name="T18"></a>Test:T18</h3><h4><a id="descT18" name="descrT18"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node B message with echoOk header having role="http://www.w3.org/2003/05/soap-envelope/role/none".
|
|
NodeB forwards message to the node C, node C responds back to node A with empty message (no body/header blocks).
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT18" name="mesgT18"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/none">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
B</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/none">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T19" name="T19"></a>Test:T19</h3><h4><a id="descT19" name="descrT19"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node C message with echoOk header having mustUnderstand =
|
|
"true" and role="http://www.w3.org/2003/05/soap-envelope/role/none".
|
|
Node C ignores this header block and returns empty message (no body/header blocks).
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT19" name="mesgT19"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/none"
|
|
env:mustUnderstand="true">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
|
|
|
|
|
|
<div class="assertion"><h3><a id="T21" name="T21"></a>Test:T21</h3><h4><a id="descT21" name="descrT21"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node B message with Unknown header that has mustUnderstand
|
|
= "1" and role="http://example.org/ts-tests/B" and
|
|
echoOk header that has role="http://example.org/ts-tests/C" role and
|
|
mustUnderstand="1". Node B must return MustUnderstand Fault message to
|
|
Node A and no message should be forwarded to Node C.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT21" name="mesgT21"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:Unknown xmlns:test="http://example.org/ts-tests"
|
|
env:mustUnderstand="1"
|
|
env:role="http://example.org/ts-tests/B">
|
|
foo
|
|
</test:Unknown>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:mustUnderstand="1"
|
|
env:role="http://example.org/ts-tests/C">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
B</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<env:NotUnderstood qname="test:Unknown"
|
|
xmlns:test="http://example.org/ts-tests" />
|
|
</env:Header>
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:MustUnderstand</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US"> Header not understood </env:Text>
|
|
</env:Reason>
|
|
<env:Node>http://example.org/ts-tests/B</env:Node>
|
|
<env:Role>http://example.org/ts-tests/B</env:Role>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T22" name="T22"></a>Test:T22</h3><h4><a id="descT22" name="descrT22"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to Node C message with echoOk header that has
|
|
mustUnderstand="1" and echoOk Body element. NodeC must process the
|
|
Header and the Body and return to Node A message with responseOk header
|
|
and responseOk Body element.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT22" name="mesgT22"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:mustUnderstand = "1">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:responseOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:responseOk>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T23" name="T23"></a>Test:T23</h3><h4><a id="descT23" name="descrT23"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to Node C message with echoOk header that has
|
|
mustUnderstand="wrong" and Unknown header that has mustUnderstand="1".
|
|
Node C should return exactly one fault.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT23" name="mesgT23"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:Unknown xmlns:test="http://example.org/ts-tests"
|
|
env:mustUnderstand="1">
|
|
foo
|
|
</test:Unknown>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:mustUnderstand="wrong">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
env:mustUnderstand value is not boolean
|
|
</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T24" name="T24"></a>Test:T24</h3><h4><a id="descT24" name="descrT24"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node C message with incorrect namespace of the Envelope element. Node C returns back VersionMismatch Fault.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT24" name="mesgT24"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://example.org/wrong-version/">
|
|
<env:Body>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:VersionMismatch</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US"> Wrong Version </env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T25" name="T25"></a>Test:T25</h3><h4><a id="descT25" name="descrT25"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node C message with reference to external DTD. Node C returns back DTDNotSupported Fault.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT25" name="mesgT25"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<!DOCTYPE env:Envelope SYSTEM "env.dtd"[]>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
DTD are not supported by SOAP 1.2
|
|
</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T26" name="T26"></a>Test:T26</h3><h4><a id="descT26" name="descrT26"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
<p>
|
|
Node A sends to node C message with Processing Instruction node. Node C ignores PI and returns back Body with test:responseOk element.
|
|
</p>
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT26" name="mesgT26"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<?xml-stylesheet href="http://example.org/ts-tests/sub.xsl" type = "text/xsl"?>
|
|
<env:Body>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:responseOk>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T27" name="T27"></a>Test:T27</h3><h4><a id="descT27" name="descrT27"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node C message with test:echoStringArray that has
|
|
encodingStyle attribute with a value of
|
|
"http://www.w3.org/2003/05/soap-encoding", contains an element with
|
|
attribute enc:itemType="xsd:string" (array of string), but with the child
|
|
element of a complex type. Node C returns a Fault indicating that message
|
|
didn't follow SOAP encoding rules (encoded array content didn't correspond
|
|
to the type declared in the enc:itemType).
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT27" name="mesgT27"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xs="http://www.w3.org/2001/XMLSchema">
|
|
<env:Body>
|
|
<test:echoStringArray xmlns:test="http://example.org/ts-tests"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<test:array enc:itemType="xs:string" enc:arraySize="1">
|
|
<a>
|
|
<b>1</b>
|
|
</a>
|
|
</test:array>
|
|
</test:echoStringArray>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
<env:Subcode>
|
|
<env:Value xmlns:rpc="http://www.w3.org/2003/05/soap-rpc">
|
|
rpc:BadArguments
|
|
</env:Value>
|
|
</env:Subcode>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
Violation of encoding rules
|
|
</env:Text>
|
|
</env:Reason>
|
|
<env:Detail>
|
|
Array element declared as array of string contains elements
|
|
with wrong content.
|
|
</env:Detail>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T28" name="T28"></a>Test:T28</h3><h4><a id="descT28" name="descrT28"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node C message with Body element that has encodingStyle attribute.
|
|
Node C returns Fault message, because Body element must not contain attributes.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT28" name="mesgT28"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests" >
|
|
foo
|
|
</test:echoOk>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
Incorrect SOAP Body element serialization
|
|
</env:Text>
|
|
</env:Reason>
|
|
<env:Detail>
|
|
SOAP Body must not have encodingStyle attribute information item.
|
|
</env:Detail>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="assertion"><h3><a id="T29" name="T29"></a>Test:T29</h3><h4><a id="descT29" name="descrT29"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node C message with Header having a role attribute value
|
|
(URI) of length 2K role. Node C returns back empty body.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT29" name="mesgT29"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://example.org/ts-tests/Czzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzzz">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
|
|
|
|
<div class="assertion"><h3><a id="T30" name="T30"></a>Test:T30</h3><h4><a id="descT30" name="descrT30"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
<p>
|
|
A SOAP 1.1 sender, Node A, sends a 1.1 message to a SOAP Version 1.2 Node C.
|
|
Node C may return back a VersionMismatch fault (tested here) or process
|
|
the message (if it supports SOAP 1.1).
|
|
</p>
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT30" name="mesgT30"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope">
|
|
<env:Body>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope">
|
|
<env:Header>
|
|
<env:Upgrade>
|
|
<env:SupportedEnvelope qname="ns2:Envelope"
|
|
xmlns:ns2="http://www.w3.org/2003/05/soap-envelope"/>
|
|
</env:Upgrade>
|
|
</env:Header>
|
|
<env:Body>
|
|
<env:Fault>
|
|
<faultcode>env:VersionMismatch</faultcode>
|
|
<faultstring>Wrong Version</faultstring>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
|
|
|
|
<div class="assertion"><h3><a id="T31" name="T31"></a>Test:T31</h3><h4><a id="descT31" name="descrT31"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to Node C an RPC message.
|
|
Node C returns a void return value. Note that the return value accessor
|
|
MUST NOT be present.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT31" name="mesgT31"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<test:returnVoid xmlns:test="http://example.org/ts-tests">
|
|
</test:returnVoid>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<test:returnVoidResponse xmlns:test="http://example.org/ts-tests">
|
|
</test:returnVoidResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T32" name="T32"></a>Test:T32</h3><h4><a id="descT32" name="descrT32"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to Node C an RPC message with a required header.
|
|
Node C returns the value supplied in the header.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT32" name="mesgT32"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:requiredHeader xmlns:test="http://example.org/ts-tests"
|
|
env:mustUnderstand="true">
|
|
foo
|
|
</test:requiredHeader>
|
|
</env:Header>
|
|
<env:Body>
|
|
<test:echoHeader xmlns:test="http://example.org/ts-tests">
|
|
</test:echoHeader>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<test:echoHeaderResponse xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:echoHeaderResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T33" name="T33"></a>Test:T33</h3><h4><a id="descT33" name="descrT33"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node C an RPC message with a procedure it cannot find.
|
|
Node C returns an fault with env:Sender as the Value for the fault and
|
|
rpc:ProcedureNotPresent as the Value for the SubCode. Please note that
|
|
the Value of rpc:ProcedureNotPresent for the SubCode is not required by
|
|
SOAP 1.2
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT33" name="mesgT33"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<test:DoesNotExist xmlns:test="http://example.org/ts-tests">
|
|
</test:DoesNotExist>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
<env:Subcode>
|
|
<env:Value>rpc:ProcedureNotPresent</env:Value>
|
|
</env:Subcode>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US"> Procedure Not Present </env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="assertion"><h3><a id="T34" name="T34"></a>Test:T34</h3><h4><a id="descT34" name="descrT34"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test consists of Node A sending a msg with a header that has MU=1
|
|
in the SOAP 1.1 NS. Node C, ignores this header.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT34" name="mesgT34"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:Unknown xmlns:test="http://example.org/ts-tests"
|
|
xmlns:env1="http://schemas.xmlsoap.org/soap/envelope/"
|
|
env1:mustUnderstand="true">
|
|
foo
|
|
</test:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
|
|
|
|
<div class="assertion"><h3><a id="T35" name="T35"></a>Test:T35</h3><h4><a id="descT35" name="descrT35"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test consists of Node A sending a msg with a Unknown header with
|
|
MU=1 and role not specified. Node C returns a fault.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT35" name="mesgT35"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:Unknown xmlns:test="http://example.org/ts-tests"
|
|
env:mustUnderstand="1">
|
|
foo
|
|
</test:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<env:NotUnderstood qname="test:Unknown"
|
|
xmlns:test="http://example.org/ts-tests" />
|
|
</env:Header>
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:MustUnderstand</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US"> Header not understood </env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T36" name="T36"></a>Test:T36</h3><h4><a id="descT36" name="descrT36"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test consists of Node A sending a msg with a unknown header that is targeted
|
|
to the ultimate receiver and has the role attribute set to
|
|
http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver
|
|
Node C returns a fault
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT36" name="mesgT36"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:Unknown xmlns:test="http://example.org/ts-tests"
|
|
env:mustUnderstand="1"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver">
|
|
foo
|
|
</test:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<env:NotUnderstood qname="test:Unknown"
|
|
xmlns:test="http://example.org/ts-tests" />
|
|
</env:Header>
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:MustUnderstand</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US"> Header not understood </env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T37" name="T37"></a>Test:T37</h3><h4><a id="descT37" name="descrT37"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test consists of Node A sending a msg with a header that does not have
|
|
MU attr defined. Node C returns a valid reply.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT37" name="mesgT37"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:Unknown xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver">
|
|
foo
|
|
</test:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T38" name="T38"></a>Test:T38</h3><h4><a id="descT38" name="descrT38"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test consists of Node A sending a msg with a header that has MU attr
|
|
with all possible lexical values.
|
|
</div>
|
|
<p>First set of messages.</p>
|
|
|
|
|
|
|
|
<p>Second set of messages.</p>
|
|
|
|
|
|
|
|
<h4><a id="mesgT38" name="mesgT38"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:Unknown xmlns:test="http://example.org/ts-tests"
|
|
env:mustUnderstand="false"
|
|
env:role="http://example.org/ts-tests/C">
|
|
foo
|
|
</test:Unknown>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:mustUnderstand="0"
|
|
env:role="http://example.org/ts-tests/C">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:responseOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:mustUnderstand="true"
|
|
env:role="http://example.org/ts-tests/C">
|
|
foo
|
|
</test:echoOk>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:mustUnderstand="1"
|
|
env:role="http://example.org/ts-tests/C">
|
|
bar
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:responseOk>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
bar
|
|
</test:responseOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T39" name="T39"></a>Test:T39</h3><h4><a id="descT39" name="descrT39"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test consists of Node A sending a msg with an unknown header and an
|
|
incorrect value for the mustUnderstand attribute. Node C returns a
|
|
env:Sender fault.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT39" name="mesgT39"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:Unknown xmlns:test="http://example.org/ts-tests"
|
|
env:mustUnderstand="9">
|
|
foo
|
|
</test:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
env:mustUnderstand is a xsd:boolean
|
|
</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T40" name="T40"></a>Test:T40</h3><h4><a id="descT40" name="descrT40"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test uses the literal format for IPv6 addresses in URIs.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT40" name="mesgT40"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:Unknown xmlns:test="http://[FEDC:BA98:7654:3210:FEDC:BA98:7654:3210]/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver"
|
|
env:mustUnderstand="false">
|
|
foo
|
|
</test:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="assertion"><h3><a id="T41" name="T41"></a>Test:T41</h3><h4><a id="descT41" name="descrT41"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C contained in echoStruct with datatype
|
|
SOAPStruct in the namespace "http://example.org/ts-tests/xsd".
|
|
Node C returns the datatypes in echoStructResponse.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT41" name="mesgT41"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoStruct xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputStruct xsi:type="ns1:SOAPStruct"
|
|
xmlns:ns1="http://example.org/ts-tests/xsd">
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
</inputStruct>
|
|
</test:echoStruct>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoStructResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="ns1:SOAPStruct"
|
|
xmlns:ns1="http://example.org/ts-tests/xsd">
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
</return>
|
|
</test:echoStructResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T42" name="T42"></a>Test:T42</h3><h4><a id="descT42" name="descrT42"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C in echoStructArray containing an element
|
|
with attribute enc:itemType="http://example.org/ts-tests/xsd:SOAPStruct".
|
|
Node C responds with echoStructArrayResponse.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT42" name="mesgT42"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoStructArray xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputStructArray enc:itemType="ns1:SOAPStruct"
|
|
enc:arraySize="2"
|
|
xmlns:ns1="http://example.org/ts-tests/xsd"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="ns1:SOAPStruct">
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
</item>
|
|
<item xsi:type="ns1:SOAPStruct">
|
|
<varInt xsi:type="xsd:int">43</varInt>
|
|
<varFloat xsi:type="xsd:float">0.123</varFloat>
|
|
<varString xsi:type="xsd:string">bye world</varString>
|
|
</item>
|
|
</inputStructArray>
|
|
</test:echoStructArray>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoStructArrayResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return enc:itemType="ns1:SOAPStruct"
|
|
enc:arraySize="2"
|
|
xmlns:ns1="http://example.org/ts-tests/xsd"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="ns1:SOAPStruct">
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
</item>
|
|
<item xsi:type="ns1:SOAPStruct">
|
|
<varInt xsi:type="xsd:int">43</varInt>
|
|
<varFloat xsi:type="xsd:float">0.123</varFloat>
|
|
<varString xsi:type="xsd:string">bye world</varString>
|
|
</item>
|
|
</return>
|
|
</test:echoStructArrayResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T43" name="T43"></a>Test:T43</h3><h4><a id="descT43" name="descrT43"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C in echoStructAsSimpleTypes containing
|
|
datatypes SOAPStruct in the namespace
|
|
"http://example.org/ts-tests/xsd"
|
|
Node C responds with echoStructAsSimpleTypesResponse.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT43" name="mesgT43"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoStructAsSimpleTypes xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputStruct xsi:type="ns1:SOAPStruct"
|
|
xmlns:ns1="http://example.org/ts-tests/xsd">
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
</inputStruct>
|
|
</test:echoStructAsSimpleTypes>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoStructAsSimpleTypesResponse xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<outputInt xsi:type="xsd:int">42</outputInt>
|
|
<outputFloat xsi:type="xsd:float">0.005</outputFloat>
|
|
<outputString xsi:type="xsd:string">hello world</outputString>
|
|
</test:echoStructAsSimpleTypesResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T44" name="T44"></a>Test:T44</h3><h4><a id="descT44" name="descrT44"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C in echoSimpleTypesAsStruct containing datatypes
|
|
(integers, floating point, and string). Node C responds with echoSimpleTypesAsStructResponse.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT44" name="mesgT44"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoSimpleTypesAsStruct xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputInt xsi:type="xsd:int">42</inputInt>
|
|
<inputFloat xsi:type="xsd:float">0.005</inputFloat>
|
|
<inputString xsi:type="xsd:string">hello world</inputString>
|
|
</test:echoSimpleTypesAsStruct>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoSimpleTypesAsStructResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="ns1:SOAPStruct"
|
|
xmlns:ns1="http://example.org/ts-tests/xsd">
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
</return>
|
|
</test:echoSimpleTypesAsStructResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T45" name="T45"></a>Test:T45</h3><h4><a id="descT45" name="descrT45"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C in echoNestedStruct containing datatypes
|
|
(integers, floating point, and string). Node C responds with echoNestedStruct.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT45" name="mesgT45"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoNestedStruct xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputStruct xsi:type="ns1:SOAPStructStruct"
|
|
xmlns:ns1="http://example.org/ts-tests/xsd">
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
<varStruct xsi:type="ns1:SOAPStruct">
|
|
<varInt xsi:type="xsd:int">99</varInt>
|
|
<varFloat xsi:type="xsd:float">4.0699e-12</varFloat>
|
|
<varString xsi:type="xsd:string">nested struct</varString>
|
|
</varStruct>
|
|
</inputStruct>
|
|
</test:echoNestedStruct>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoNestedStructResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="ns1:SOAPStructStruct"
|
|
xmlns:ns1="http://example.org/ts-tests/xsd">
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
<varStruct xsi:type="ns1:SOAPStruct">
|
|
<varInt xsi:type="xsd:int">99</varInt>
|
|
<varFloat xsi:type="xsd:float">4.0699e-12</varFloat>
|
|
<varString xsi:type="xsd:string">nested struct</varString>
|
|
</varStruct>
|
|
</return>
|
|
</test:echoNestedStructResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T46" name="T46"></a>Test:T46</h3><h4><a id="descT46" name="descrT46"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C in echoNestedArray containing an array with
|
|
three elements. Node C responds with echoNestedArray.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT46" name="mesgT46"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoNestedArray xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputStruct xsi:type="ns1:SOAPArrayStruct"
|
|
xmlns:ns1="http://example.org/ts-tests/xsd">
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
<varArray enc:itemType="xsd:string" enc:arraySize="3"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="xsd:string">red</item>
|
|
<item xsi:type="xsd:string">blue</item>
|
|
<item xsi:type="xsd:string">green</item>
|
|
</varArray>
|
|
</inputStruct>
|
|
</test:echoNestedArray>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoNestedArrayResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="ns1:SOAPArrayStruct">
|
|
xmlns:ns1="http://example.org/ts-tests/xsd">
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
<varArray enc:itemType="xsd:string" enc:arraySize="3"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="xsd:string">red</item>
|
|
<item xsi:type="xsd:string">blue</item>
|
|
<item xsi:type="xsd:string">green</item>
|
|
</varArray>
|
|
</return>
|
|
</test:echoNestedArrayResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T47" name="T47"></a>Test:T47</h3><h4><a id="descT47" name="descrT47"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C in echoFloatArray with enc:itemType="ns:float".
|
|
Node C responds with echoFloatArray.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT47" name="mesgT47"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoFloatArray xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputFloatArray enc:itemType="xsd:float" enc:arraySize="2"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="xsd:float">0.00000555</item>
|
|
<item xsi:type="xsd:float">12999.9</item>
|
|
</inputFloatArray>
|
|
</test:echoFloatArray>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoFloatArrayResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return enc:itemType="xsd:float" enc:arraySize="2"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="xsd:float">5.55E-06</item>
|
|
<item xsi:type="xsd:float">12999.9</item>
|
|
</return>
|
|
</test:echoFloatArrayResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T48" name="T48"></a>Test:T48</h3><h4><a id="descT48" name="descrT48"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C in echoStringArray with enc:itemType="ns:string".
|
|
Node C responds with echoStringArray.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT48" name="mesgT48"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoStringArray xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputStringArray enc:itemType="xsd:string" enc:arraySize="2"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="xsd:string">hello</item>
|
|
<item xsi:type="xsd:string">world</item>
|
|
</inputStringArray>
|
|
</test:echoStringArray>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoStringArrayResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return enc:itemType="xsd:string" enc:arraySize="2"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="xsd:string">hello</item>
|
|
<item xsi:type="xsd:string">world</item>
|
|
</return>
|
|
</test:echoStringArrayResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T49" name="T49"></a>Test:T49</h3><h4><a id="descT49" name="descrT49"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C in echoStringArray without a enc:itemType
|
|
attribute.
|
|
Node C responds with echoStringArray.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT49" name="mesgT49"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoStringArray xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputStringArray enc:arraySize="2"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="xsd:string">hello</item>
|
|
<item xsi:type="xsd:string">world</item>
|
|
</inputStringArray>
|
|
</test:echoStringArray>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoStringArrayResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return enc:itemType="xsd:string" enc:arraySize="2"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="xsd:string">hello</item>
|
|
<item xsi:type="xsd:string">world</item>
|
|
</return>
|
|
</test:echoStringArrayResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T50" name="T50"></a>Test:T50</h3><h4><a id="descT50" name="descrT50"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C in echoIntegerArray with enc:itemType="ns:integer".
|
|
Node C responds with echoIntegerArray.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT50" name="mesgT50"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoIntegerArray xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputIntegerArray enc:itemType="xsd:int" enc:arraySize="2"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="xsd:int">100</item>
|
|
<item xsi:type="xsd:int">200</item>
|
|
</inputIntegerArray>
|
|
</test:echoIntegerArray>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoIntegerArrayResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return enc:itemType="xsd:int" enc:arraySize="2"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="xsd:int">100</item>
|
|
<item xsi:type="xsd:int">200</item>
|
|
</return>
|
|
</test:echoIntegerArrayResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T51" name="T51"></a>Test:T51</h3><h4><a id="descT51" name="descrT51"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C with Base64-encoded binary data.
|
|
Node C responds with echoBase64.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT51" name="mesgT51"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
|
<env:Body>
|
|
<test:echoBase64 xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputBase64 xsi:type="xsd:base64Binary">
|
|
YUdWc2JHOGdkMjl5YkdRPQ==
|
|
</inputBase64>
|
|
</test:echoBase64>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
|
<env:Body>
|
|
<test:echoBase64Response xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:base64Binary">
|
|
YUdWc2JHOGdkMjl5YkdRPQ==
|
|
</return>
|
|
</test:echoBase64Response>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T52" name="T52"></a>Test:T52</h3><h4><a id="descT52" name="descrT52"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C containing a boolean datatype with value = 1
|
|
in echoBoolean. Note C responds with echoBoolean.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT52" name="mesgT52"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoBoolean xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputBoolean xsi:type="xsd:boolean">1</inputBoolean>
|
|
</test:echoBoolean>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoBooleanResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:boolean">1</return>
|
|
</test:echoBooleanResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T53" name="T53"></a>Test:T53</h3><h4><a id="descT53" name="descrT53"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C in echoDate with date datatype.
|
|
Node C responds with echoDate.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT53" name="mesgT53"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoDate xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputDate xsi:type="xsd:date">1956-10-18</inputDate>
|
|
</test:echoDate>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoDateResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:date">1956-10-18</return>
|
|
</test:echoDateResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T54" name="T54"></a>Test:T54</h3><h4><a id="descT54" name="descrT54"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C in echoDecimal with decimal datatype.
|
|
Node C responds with echoDecimal.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT54" name="mesgT54"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoDecimal xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputDecimal xsi:type="xsd:decimal">123.45678901234567890</inputDecimal>
|
|
</test:echoDecimal>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoDecimalResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:decimal">123.4567890123456789</return>
|
|
</test:echoDecimalResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T55" name="T55"></a>Test:T55</h3><h4><a id="descT55" name="descrT55"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C in echoFloat with floating point datatype.
|
|
Node C responds with echoFloat.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT55" name="mesgT55"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoFloat xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputFloat xsi:type="xsd:float">0.005</inputFloat>
|
|
</test:echoFloat>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoFloatResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:float">0.005</return>
|
|
</test:echoFloatResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
|
|
|
|
|
|
<div class="assertion"><h3><a id="T56" name="T56"></a>Test:T56</h3><h4><a id="descT56" name="descrT56"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to Node C a message with body containing a ref attribute information
|
|
item referencing a non-existent id attribute information item. Node C responds with a fault.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT56" name="mesgT56"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<env:Header>
|
|
<test:DataHolder xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<test:Data enc:id="data-1" xsi:type="xsd:string">
|
|
hello world
|
|
</test:Data>
|
|
</test:DataHolder>
|
|
</env:Header>
|
|
<env:Body>
|
|
<test:echoString xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString enc:ref="data-2" xsi:type="xsd:string" />
|
|
</test:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
<env:Subcode>
|
|
<env:Value>enc:MissingID</env:Value>
|
|
</env:Subcode>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US"> Unresolved reference </env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T57" name="T57"></a>Test:T57</h3><h4><a id="descT57" name="descrT57"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to Node C a message with body containing a ref attribute
|
|
information item referencing a unique identifier defined by an id attribute information item. Node C responds by echoing the value of the element information item containing the referenced id attribute information item.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT57" name="mesgT57"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<env:Header>
|
|
<test:DataHolder xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<test:Data enc:id="data" xsi:type="xsd:string">
|
|
hello world
|
|
</test:Data>
|
|
</test:DataHolder>
|
|
</env:Header>
|
|
<env:Body>
|
|
<test:echoString xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<test:inputString enc:ref="data" xsi:type="xsd:string" />
|
|
</test:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoStringResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:string">
|
|
hello world
|
|
</return>
|
|
</test:echoStringResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T58" name="T58"></a>Test:T58</h3><h4><a id="descT58" name="descrT58"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C invoking the rpc echoIntegerArray. The
|
|
inputIntegerArray element contains the attribute enc:itemType="xsd:int" but
|
|
the children of this element are not of type xsd:int.
|
|
Node C returns a fault.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT58" name="mesgT58"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoIntegerArray xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputIntegerArray enc:itemType="xsd:int" enc:arraySize="1"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<a><b>1</b></a>
|
|
</inputIntegerArray>
|
|
</test:echoIntegerArray>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
<env:Subcode>
|
|
<env:Value xmlns:rpc="http://www.w3.org/2003/05/soap-rpc">
|
|
rpc:BadArguments
|
|
</env:Value>
|
|
</env:Subcode>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
Violation of encoding rules
|
|
</env:Text>
|
|
</env:Reason>
|
|
<env:Detail>
|
|
Array element declared as array of integers contains elements with
|
|
wrong content.
|
|
</env:Detail>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T59" name="T59"></a>Test:T59</h3><h4><a id="descT59" name="descrT59"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C with a body containing a ref attribute information item
|
|
and an id information item on the same element information item. Node C returns a fault.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT59" name="mesgT59"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoStringArray xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputStringArray enc:itemType="xsd:string"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item enc:id="data" xsi:type="xsd:string" enc:ref="data">hello</item>
|
|
<item>world</item>
|
|
</inputStringArray>
|
|
</test:echoStringArray>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
<env:Subcode>
|
|
<env:Value>enc:MissingID</env:Value>
|
|
</env:Subcode>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
Violation of id and ref information items
|
|
</env:Text>
|
|
</env:Reason>
|
|
<env:detail>
|
|
A ref attribute information item and an id attribute information
|
|
item MUST NOT appear on the same element information item.
|
|
</env:detail>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T60" name="T60"></a>Test:T60</h3><h4><a id="descT60" name="descrT60"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to Node C a message specifying an array with bound specified by an asterisk.
|
|
Node C responds with the count of items that appeared in the input array.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT60" name="mesgT60"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:countItems xmlns:test="http://example.org/ts-tests"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputStringArray enc:itemType="xsd:string" enc:arraySize="*">
|
|
<item xsi:type="xsd:string">hello</item>
|
|
<item xsi:type="xsd:string">world</item>
|
|
</inputStringArray>
|
|
</test:countItems>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:countItemsResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:int">
|
|
2
|
|
</return>
|
|
</test:countItemsResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T61" name="T61"></a>Test:T61</h3><h4><a id="descT61" name="descrT61"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to Node C a message containing an array with a list of
|
|
dimensions consisting of an integer followed by an asterisk.
|
|
Node C responds with a fault stating that the asterisk can occur only in
|
|
the first position in the dimension list.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT61" name="mesgT61"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:countItems xmlns:test="http://example.org/ts-tests"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputStringArray enc:itemType="xsd:string" enc:arraySize="2 *">
|
|
<item xsi:type="xsd:string">hello</item>
|
|
<item xsi:type="xsd:string">world</item>
|
|
</inputStringArray>
|
|
</test:countItems>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
* may only be first arraySize value in list
|
|
</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="assertion"><h3><a id="T62" name="T62"></a>Test:T62</h3><h4><a id="descT62" name="descrT62"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a msg to node B with three headers in it with MU=1 and
|
|
targeted at Node B. The semantics of processing the header
|
|
test:concatAndForwardEchoOK requires Node B to take the contents of
|
|
test:concatAndForwardEchoOkArg1 and test:concatAndForwardEchoOkArg2,
|
|
concatenate them and forward the result to Node C using the test:echoOk
|
|
header. Node C then receives the concetanated data in the test:echoOk
|
|
header and responds using the test:responsOk header.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT62" name="mesgT62"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:concatAndForwardEchoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://example.org/ts-tests/B"
|
|
env:mustUnderstand="1"/>
|
|
<test:concatAndForwardEchoOkArg1 xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://example.org/ts-tests/B"
|
|
env:mustUnderstand="1">
|
|
StringA
|
|
</test:concatAndForwardEchoOkArg1>
|
|
<test:concatAndForwardEchoOkArg2 xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://example.org/ts-tests/B"
|
|
env:mustUnderstand="1">
|
|
StringB
|
|
</test:concatAndForwardEchoOkArg2>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
B</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://example.org/ts-tests/C"
|
|
env:mustUnderstand="1">
|
|
StringAStringB
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
StringAStringB
|
|
</test:responseOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T63" name="T63"></a>Test:T63</h3><h4><a id="descT63" name="descrT63"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to node C with one headers in it with MU=1 and
|
|
targeted at Node C. The semantics of processing the header
|
|
test:validateCountryCode requires Node C to take the contents of
|
|
test:validateCountryCode and validate that it consists of 2
|
|
letters. If the code sent is not 2 letters then a fault
|
|
is sent back. The details of the fault are sent in the header
|
|
test:validateCountryCodeFault
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT63" name="mesgT63"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:validateCountryCode xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://example.org/ts-tests/C"
|
|
env:mustUnderstand="1">
|
|
ABCD
|
|
</test:validateCountryCode>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:validateCountryCodeFault xmlns:test="http://example.org/ts-tests">
|
|
Country code must be 2 letters.
|
|
</test:validateCountryCodeFault>
|
|
</env:Header>
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>env:Sender</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
Not a valid country code
|
|
</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T64" name="T64"></a>Test:T64</h3><h4><a id="descT64" name="descrT64"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to node C with non-empty [notation] property.
|
|
Node C responds by sending back a fault.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT64" name="mesgT64"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<!DOCTYPE foo [
|
|
<!NOTATION application_xml SYSTEM 'http://www.isi.edu/in-notes/iana/assignments/media-types/application/xml'>
|
|
]>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
DTD are not supported by SOAP 1.2
|
|
</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T65" name="T65"></a>Test:T65</h3><h4><a id="descT65" name="descrT65"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to node C with non-empty [unparsed entity]
|
|
property. Node C responds by sending back a fault.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT65" name="mesgT65"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<!DOCTYPE foo [
|
|
<!ELEMENT Envelope (Body) >
|
|
<!ELEMENT Body (echoOk) >
|
|
<!ELEMENT echoOk (#PCDATA) >
|
|
]>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
DTD are not supported by SOAP 1.2
|
|
</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T66" name="T66"></a>Test:T66</h3><h4><a id="descT66" name="descrT66"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to node C with non-empty [encoding]
|
|
property. Node C responds by sending the appropriate 'responseOk'.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT66" name="mesgT66"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' encoding='UTF-8'?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/next">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:responseOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T67" name="T67"></a>Test:T67</h3><h4><a id="descT67" name="descrT67"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to node C with [standalone] property as 'true'.
|
|
Node C responds by sending the appropriate 'responseOk'.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT67" name="mesgT67"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' standalone='yes'?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/next">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:responseOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T68" name="T68"></a>Test:T68</h3><h4><a id="descT68" name="descrT68"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to node C with a soap message which is
|
|
semantically eqivalent to the request message in T1
|
|
test (the only difference being additional whitespace character
|
|
information item).
|
|
Node C responds by sending the appropriate 'responseOk'.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT68" name="mesgT68"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
|
|
|
|
<env:Header >
|
|
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/next" >
|
|
foo
|
|
</test:echoOk>
|
|
|
|
|
|
</env:Header>
|
|
<env:Body>
|
|
|
|
|
|
</env:Body>
|
|
|
|
|
|
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:responseOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T69" name="T69"></a>Test:T69</h3><h4><a id="descT69" name="descrT69"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to node C which does not
|
|
contain a Body element.
|
|
Node C responds by sending an appropriate fault
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT69" name="mesgT69"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests">foo</test:echoOk>
|
|
</env:Header>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
env:Body must be present in a SOAP 1.2 envelope
|
|
</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T70" name="T70"></a>Test:T70</h3><h4><a id="descT70" name="descrT70"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to node C which contains
|
|
Header, Body and a Trailer element
|
|
Node C responds by sending an appropriate fault
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT70" name="mesgT70"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests">foo</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
<Trailer>
|
|
</Trailer>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
A SOAP 1.2 envelope can contain only Header and Body
|
|
</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T71" name="T71"></a>Test:T71</h3><h4><a id="descT71" name="descrT71"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to node C with a non-namespace qualified attribute
|
|
on the Envelope
|
|
Node C responds by sending an appropriate fault
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT71" name="mesgT71"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
attr1="a-value">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
A SOAP 1.2 Envelope element cannot have non Namespace qualified
|
|
attributes
|
|
</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T72" name="T72"></a>Test:T72</h3><h4><a id="descT72" name="descrT72"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to node C with the encodingStyle set on the
|
|
Envelope element.
|
|
Node C responds by sending an appropriate fault
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT72" name="mesgT72"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<env:Body>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
env:encodingStyle cannot be specified on the env:Envelope
|
|
</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T73" name="T73"></a>Test:T73</h3><h4><a id="descT73" name="descrT73"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to node C, using the SOAP RPC convention.
|
|
The RCP asks for node C to echo back the string. The message sent by A
|
|
has encodingStyle set on the Body block as well as the RPC input
|
|
parameter. Node C responds by echoing the parameter.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT73" name="mesgT73"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoString xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-envelope/encoding/none">
|
|
<test:inputString xsi:type="xsd:string"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
hello world
|
|
</test:inputString>
|
|
</test:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoStringResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:string">hello world
|
|
</return>
|
|
</test:echoStringResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T74" name="T74"></a>Test:T74</h3><h4><a id="descT74" name="descrT74"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C with 2 headers echoOk and Unknown.
|
|
The Unknown header does not have a mustUnderstand or role attribute set, but
|
|
the child of the header block does. Node C does not understand the Unknown
|
|
header but can safely ignore it, and responds to the echoOk header.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT74" name="mesgT74"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/next">
|
|
foo
|
|
</test:echoOk>
|
|
<test:Unknown xmlns:test="http://example.org/ts-tests">
|
|
<test:raiseFault env:mustUnderstand="1"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/next">
|
|
</test:raiseFault>
|
|
</test:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:responseOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T75" name="T75"></a>Test:T75</h3><h4><a id="descT75" name="descrT75"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a message to Node C with header echoResolvedRef containing
|
|
a relative reference defined by xlink:href and xml:base.
|
|
Node C responds by echoing the resolved reference.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT75" name="mesgT75"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoResolvedRef xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/next"
|
|
env:mustUnderstand="1">
|
|
<test:RelativeReference xml:base="http://example.org/today/"
|
|
xlink:href="new.xml"
|
|
xmlns:xlink="http://www.w3.org/1999/xlink" />
|
|
</test:echoResolvedRef>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:responseResolvedRef xmlns:test="http://example.org/ts-tests">
|
|
http://example.org/today/new.xml
|
|
</test:responseResolvedRef>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T76" name="T76"></a>Test:T76</h3><h4><a id="descT76" name="descrT76"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends 2 different serialization for echoString test and gets the
|
|
same response back from Node C
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<h4><a id="mesgT76" name="mesgT76"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoString xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString xsi:type="xsd:string">
|
|
hello world
|
|
</inputString>
|
|
</test:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoStringResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:string">
|
|
hello world
|
|
</return>
|
|
</test:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<env:Header>
|
|
<test:DataHolder xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<test:Data enc:id="data" xsi:type="xsd:string">
|
|
hello world
|
|
</test:Data>
|
|
</test:DataHolder>
|
|
</env:Header>
|
|
<env:Body>
|
|
<test:echoString xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString enc:ref="data" xsi:type="xsd:string" />
|
|
</test:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoStringResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:string">
|
|
hello world
|
|
</return>
|
|
</test:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T77" name="T77"></a>Test:T77</h3><h4><a id="descT77" name="descrT77"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test consists of an RPC called 'isNil'. This RPC has one parameter of
|
|
any type. The return value is of type boolean. If the request message has
|
|
a parameter that was absent or had xsi:nil='1', the returned value is true,
|
|
else it is false.
|
|
Node A is the requesting node and Node C is the responding node.
|
|
This test consists of 3 requests and responses send by Node A and Node C
|
|
respectively.
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<h4><a id="mesgT77" name="mesgT77"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:isNil xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString xsi:nil="1" />
|
|
</test:isNil>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:isNilResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:boolean">
|
|
1
|
|
</return>
|
|
</test:isNilResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:isNil xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
</test:isNil>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:isNilResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:boolean">
|
|
1
|
|
</return>
|
|
</test:isNilResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:isNil xmlns:test="http://example.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString xsi:type="xsd:string">
|
|
This is a string
|
|
</inputString>
|
|
</test:isNil>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:isNilResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:boolean">
|
|
0
|
|
</return>
|
|
</test:isNilResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T78" name="T78"></a>Test:T78</h3><h4><a id="descT78" name="descrT78"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node C message with echoOk header block having role equal
|
|
to "http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver".
|
|
NodeC returns back empty body with responseOK header.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT78" name="mesgT78"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:responseOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="T79" name="T79"></a>Test:T79</h3><h4><a id="descT79" name="descrT79"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends to node B message with echoOk header block having role equal
|
|
to "http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver". Node B
|
|
forwards this message to Node C. NodeC returns back empty body with
|
|
responseOK header.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT79" name="mesgT79"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
B</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:responseOk xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:responseOk>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="assertion"><h3><a id="T80" name="T80"></a>Test:T80</h3><h4><a id="descT80" name="descrT80"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This tests assumes the existence of a conventionally
|
|
non-existent encoding
|
|
to test a failure condition. It is the intention that no receiving SOAP
|
|
1.2 node will support this encoding and that on receiving this encoding
|
|
style declaration in a SOAP message, will return the DataEncodingUnknown
|
|
fault.
|
|
Node A sends a simple SOAP 1.2 message to Node C containing the poison
|
|
encoding style declaration. Node C responds with a fault.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgT80" name="mesgT80"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<test:echoOk env:encodingStyle="http://example.org/PoisonEncoding"
|
|
xmlns:test="http://example.org/ts-tests">
|
|
foo
|
|
</test:echoOk>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:DataEncodingUnknown</env:value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US"> Unknown Data Encoding Style </env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<div class="assertion"><h3><a id="TH1" name="TH1"></a>Test:TH1</h3><h4><a id="descTH1" name="descrTH1"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This tests consists of testing SOAP 1.2 HTTP bindings. Node A sends a valid
|
|
SOAP request message over HTTP 1.1 to Node C. Node C responds with a HTTP
|
|
status 200 and a SOAP response message.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgTH1" name="mesgTH1"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
POST /soap1.2/interop HTTP/1.1
|
|
Host: www.w3.org
|
|
Content-Type: application/soap+xml; charset="utf-8"
|
|
Content-Length: nnn
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoString xmlns:test="http://example.org/ts-tests">
|
|
<inputString xsi:type="xsd:string">hello world</inputString>
|
|
</test:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
HTTP/1.1 200 OK
|
|
Content-Type: application/soap+xml; charset="utf-8"
|
|
Content-Length: nnn
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoStringResponse xmlns:test="http://example.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:string">hello world</return>
|
|
</test:echoStringResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="TH2" name="TH2"></a>Test:TH2</h3><h4><a id="descTH2" name="descrTH2"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This tests consists of testing SOAP 1.2 HTTP bindings. Node A sends an
|
|
invalid SOAP (with a missing 'Body' element) request message over
|
|
HTTP 1.1 to Node C. Node C responds with a HTTP status 400 and a
|
|
SOAP message containing a 'env:Sender' SOAP fault.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgTH2" name="mesgTH2"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
POST /soap1.2/interop HTTP/1.1
|
|
Host: www.w3.org
|
|
Content-Type: application/soap+xml; charset="utf-8"
|
|
Content-Length: nnn
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests">foo</test:echoOk>
|
|
</env:Header>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
HTTP/1.1 400 Bad Request
|
|
Content-Type: application/soap+xml; charset="utf-8"
|
|
Content-Length: nnn
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
env:Body must be present in a SOAP 1.2 envelope
|
|
</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="TH3" name="TH3"></a>Test:TH3</h3><h4><a id="descTH3" name="descrTH3"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This tests consists of testing SOAP 1.2 HTTP bindings. Node A sends a
|
|
valid SOAP 1.1 request message over HTTP 1.1 to Node C. Node C responds
|
|
with a HTTP status 500 and a SOAP message containing a
|
|
'env:VersionMismatch' SOAP fault.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgTH3" name="mesgTH3"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
POST /soap1.2/interop HTTP/1.1
|
|
Host: www.w3.org
|
|
Content-Type: application/soap+xml; charset="utf-8"
|
|
Content-Length: nnn
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope">
|
|
<env:Body>
|
|
<test:echoOk xmlns:test="http://example.org/ts-tests">foo</test:echoOk>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
HTTP/1.1 500 Internal Server Error
|
|
Content-Type: application/soap+xml; charset="utf-8"
|
|
Content-Length: nnn
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<env:Upgrade>
|
|
<env:SupportedEnvelope qname="ns1:Envelope"
|
|
xmlns:ns1="http://www.w3.org/2003/05/soap-envelope"/>
|
|
</env:Upgrade>
|
|
</env:Header>
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:VersionMismatch</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">Wrong Version</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="TH4" name="TH4"></a>Test:TH4</h3><h4><a id="descTH4" name="descrTH4"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This tests consists of testing SOAP 1.2 HTTP bindings. Node A sends a
|
|
SOAP request message over HTTP 1.1 to Node C. This request message
|
|
contains a header with mustUnderstand="1", which Node C does not understand.
|
|
Node C responds with a HTTP status 500 and a SOAP message containing
|
|
a 'env:MustUnderstand' SOAP fault.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgTH4" name="mesgTH4"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
POST /soap1.2/interop HTTP/1.1
|
|
Host: www.w3.org
|
|
Content-Type: application/soap+xml; charset="utf-8"
|
|
Content-Length: nnn
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<test:Unknown xmlns:test="http://example.org/ts-tests"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/next"
|
|
env:mustUnderstand="1">
|
|
foo
|
|
</test:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
HTTP/1.1 500 Internal Server Error
|
|
Content-Type: application/soap+xml; charset="utf-8"
|
|
Content-Length: nnn
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<env:NotUnderstood qname="test:Unknown" xmlns:test="http://example.org/ts-tests"/>
|
|
</env:Header>
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:MustUnderstand</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">
|
|
Header not understood
|
|
</env:Text>
|
|
</env:Reason>
|
|
<env:Role>http://www.w3.org/2003/05/soap-envelope/role/next</env:Role>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
<div class="assertion"><h3><a id="TH5" name="TH5"></a>Test:TH5</h3><h4><a id="descTH5" name="descrTH5"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This tests consists of testing SOAP 1.2 HTTP bindings. Node A sends an
|
|
valid SOAP request message over HTTP 1.1 to Node C, using media type
|
|
"audio/mpeg". Node C responds with a HTTP status 415.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgTH5" name="mesgTH5"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
POST /soap1.2/interop HTTP/1.1
|
|
Host: www.w3.org
|
|
Content-Type: audio/mpeg
|
|
Content-Length: nnn
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoString xmlns:test="http://example.org/ts-tests">
|
|
<inputString xsi:type="xsd:string">hello world</inputString>
|
|
</test:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
HTTP/1.1 415 Unsupported Media
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
|
|
|
|
<div class="assertion"><h3><a id="SBR1-echoString" name="SBR1-echoString"></a>Test:SBR1-echoString</h3><h4><a id="descSBR1-echoString" name="descrSBR1-echoString"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoString' test defined by SOAPBuilders Round 1
|
|
<a href="#SOAPBuildersRound1">[SOAPBuilders Round 1]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR1-echoString" name="mesgSBR1-echoString"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoString xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString xsi:type="xsd:string">Hello world</inputString>
|
|
</sb:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoStringResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:string">Hello world</return>
|
|
</sb:echoStringResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR1-echoStringArray" name="SBR1-echoStringArray"></a>Test:SBR1-echoStringArray</h3><h4><a id="descSBR1-echoStringArray" name="descrSBR1-echoStringArray"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoStringArray' test defined by SOAPBuilders Round 1
|
|
<a href="#SOAPBuildersRound1">[SOAPBuilders Round 1]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR1-echoStringArray" name="mesgSBR1-echoStringArray"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoStringArray xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputStringArray enc:itemType="xsd:string" enc:arraySize="2"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="xsd:string">hello</item>
|
|
<item xsi:type="xsd:string">world</item>
|
|
</inputStringArray>
|
|
</sb:echoStringArray>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoStringArrayResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return enc:itemType="xsd:string" enc:arraySize="2"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="xsd:string">hello</item>
|
|
<item xsi:type="xsd:string">world</item>
|
|
</return>
|
|
</sb:echoStringArrayResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR1-echoInteger" name="SBR1-echoInteger"></a>Test:SBR1-echoInteger</h3><h4><a id="descSBR1-echoInteger" name="descrSBR1-echoInteger"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoInteger' test defined by SOAPBuilders Round 1
|
|
<a href="#SOAPBuildersRound1">[SOAPBuilders Round 1]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR1-echoInteger" name="mesgSBR1-echoInteger"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoInteger xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputInteger xsi:type="xsd:int">123</inputInteger>
|
|
</sb:echoInteger>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoIntegerResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:int">123</return>
|
|
</sb:echoIntegerResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR1-echoIntegerArray" name="SBR1-echoIntegerArray"></a>Test:SBR1-echoIntegerArray</h3><h4><a id="descSBR1-echoIntegerArray" name="descrSBR1-echoIntegerArray"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoIntegerArray' test defined by SOAPBuilders Round 1
|
|
<a href="#SOAPBuildersRound1">[SOAPBuilders Round 1]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR1-echoIntegerArray" name="mesgSBR1-echoIntegerArray"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoIntegerArray xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputIntegerArray enc:itemType="xsd:int" enc:arraySize="2"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="xsd:int">100</item>
|
|
<item xsi:type="xsd:int">200</item>
|
|
</inputIntegerArray>
|
|
</sb:echoIntegerArray>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoIntegerArrayResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return enc:itemType="xsd:int" enc:arraySize="2"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="xsd:int">100</item>
|
|
<item xsi:type="xsd:int">200</item>
|
|
</return>
|
|
</sb:echoIntegerArrayResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR1-echoFloat" name="SBR1-echoFloat"></a>Test:SBR1-echoFloat</h3><h4><a id="descSBR1-echoFloat" name="descrSBR1-echoFloat"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoFloat' test defined by SOAPBuilders Round 1
|
|
<a href="#SOAPBuildersRound1">[SOAPBuilders Round 1]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR1-echoFloat" name="mesgSBR1-echoFloat"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoFloat xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputFloat xsi:type="xsd:float">0.005</inputFloat>
|
|
</sb:echoFloat>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoFloatResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:float">0.005</return>
|
|
</sb:echoFloatResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR1-echoFloatArray" name="SBR1-echoFloatArray"></a>Test:SBR1-echoFloatArray</h3><h4><a id="descSBR1-echoFloatArray" name="descrSBR1-echoFloatArray"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoFloatArray' test defined by SOAPBuilders Round 1
|
|
<a href="#SOAPBuildersRound1">[SOAPBuilders Round 1]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR1-echoFloatArray" name="mesgSBR1-echoFloatArray"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoFloatArray xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputFloatArray enc:itemType="xsd:float" enc:arraySize="2"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="xsd:float">0.00000555</item>
|
|
<item xsi:type="xsd:float">12999.9</item>
|
|
</inputFloatArray>
|
|
</sb:echoFloatArray>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoFloatArrayResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return enc:itemType="xsd:float" enc:arraySize="2"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="xsd:float">5.55E-06</item>
|
|
<item xsi:type="xsd:float">12999.9</item>
|
|
</return>
|
|
</sb:echoFloatArrayResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR1-echoStruct" name="SBR1-echoStruct"></a>Test:SBR1-echoStruct</h3><h4><a id="descSBR1-echoStruct" name="descrSBR1-echoStruct"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoStruct' test defined by SOAPBuilders Round 1
|
|
<a href="#SOAPBuildersRound1">[SOAPBuilders Round 1]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR1-echoStruct" name="mesgSBR1-echoStruct"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoStruct xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputStruct xsi:type="ns1:SOAPStruct"
|
|
xmlns:ns1="http://soapinterop.org/xsd">
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
</inputStruct>
|
|
</sb:echoStruct>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoStructResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="ns1:SOAPStruct"
|
|
xmlns:ns1="http://soapinterop.org/xsd">
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
</return>
|
|
</sb:echoStructResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR1-echoStructArray" name="SBR1-echoStructArray"></a>Test:SBR1-echoStructArray</h3><h4><a id="descSBR1-echoStructArray" name="descrSBR1-echoStructArray"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoStructArray' test defined by SOAPBuilders Round 1
|
|
<a href="#SOAPBuildersRound1">[SOAPBuilders Round 1]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR1-echoStructArray" name="mesgSBR1-echoStructArray"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoStructArray xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputStructArray enc:itemType="ns1:SOAPStruct"
|
|
enc:arraySize="2"
|
|
xmlns:ns1="http://soapinterop.org/xsd"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="ns1:SOAPStruct">
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
</item>
|
|
<item xsi:type="ns1:SOAPStruct">
|
|
<varInt xsi:type="xsd:int">43</varInt>
|
|
<varFloat xsi:type="xsd:float">0.123</varFloat>
|
|
<varString xsi:type="xsd:string">bye world</varString>
|
|
</item>
|
|
</inputStructArray>
|
|
</sb:echoStructArray>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoStructArrayResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return enc:itemType="ns1:SOAPStruct"
|
|
enc:arraySize="2"
|
|
xmlns:ns1="http://soapinterop.org/xsd"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="ns1:SOAPStruct">
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
</item>
|
|
<item xsi:type="ns1:SOAPStruct">
|
|
<varInt xsi:type="xsd:int">43</varInt>
|
|
<varFloat xsi:type="xsd:float">0.123</varFloat>
|
|
<varString xsi:type="xsd:string">bye world</varString>
|
|
</item>
|
|
</return>
|
|
</sb:echoStructArrayResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR1-echoVoid" name="SBR1-echoVoid"></a>Test:SBR1-echoVoid</h3><h4><a id="descSBR1-echoVoid" name="descrSBR1-echoVoid"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoVoid' test defined by SOAPBuilders Round 1
|
|
<a href="#SOAPBuildersRound1">[SOAPBuilders Round 1]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR1-echoVoid" name="mesgSBR1-echoVoid"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoVoid xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding"/>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoVoidResponse xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR1-echoBase64" name="SBR1-echoBase64"></a>Test:SBR1-echoBase64</h3><h4><a id="descSBR1-echoBase64" name="descrSBR1-echoBase64"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoBase64' test defined by SOAPBuilders Round 1
|
|
<a href="#SOAPBuildersRound1">[SOAPBuilders Round 1]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR1-echoBase64" name="mesgSBR1-echoBase64"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
|
<env:Body>
|
|
<sb:echoBase64 xmlns:test="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputBase64 xsi:type="xsd:base64Binary">
|
|
YUdWc2JHOGdkMjl5YkdRPQ==
|
|
</inputBase64>
|
|
</sb:echoBase64>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
|
<env:Body>
|
|
<sb:echoBase64Response xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:base64Binary">
|
|
YUdWc2JHOGdkMjl5YkdRPQ==
|
|
</return>
|
|
</sb:echoBase64Response>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR1-echoDate" name="SBR1-echoDate"></a>Test:SBR1-echoDate</h3><h4><a id="descSBR1-echoDate" name="descrSBR1-echoDate"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoDate' test defined by SOAPBuilders Round 1
|
|
<a href="#SOAPBuildersRound1">[SOAPBuilders Round 1]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR1-echoDate" name="mesgSBR1-echoDate"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoDate xmlns:test="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputDate xsi:type="xsd:dateTime">1956-10-18T22:20:00-07:00</inputDate>
|
|
</sb:echoDate>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoDateResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:dateTime">1956-10-19T05:20:00Z</return>
|
|
</sb:echoDateResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR2-echoHexBinary" name="SBR2-echoHexBinary"></a>Test:SBR2-echoHexBinary</h3><h4><a id="descSBR2-echoHexBinary" name="descrSBR2-echoHexBinary"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoHexBinary' test defined by SOAPBuilders Round 2
|
|
<a href="#SOAPBuildersRound2">[SOAPBuilders Round 2]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR2-echoHexBinary" name="mesgSBR2-echoHexBinary"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
|
<env:Body>
|
|
<sb:echoHexBinary xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputHexBinary xsi:type="xsd:hexBinary">
|
|
68656C6C6F20776F726C6421
|
|
</inputHexBinary>
|
|
</sb:echoHexBinary>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
|
<env:Body>
|
|
<sb:echoHexBinaryResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:hexBinary">
|
|
68656C6C6F20776F726C6421
|
|
</return>
|
|
</sb:echoHexBinaryResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR2-echoDecimal" name="SBR2-echoDecimal"></a>Test:SBR2-echoDecimal</h3><h4><a id="descSBR2-echoDecimal" name="descrSBR2-echoDecimal"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoDecimal' test defined by SOAPBuilders Round 2
|
|
<a href="#SOAPBuildersRound2">[SOAPBuilders Round 2]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR2-echoDecimal" name="mesgSBR2-echoDecimal"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
|
<env:Body>
|
|
<sb:echoDecimal xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputDecimal xsi:type="xsd:decimal">
|
|
123.45678901234567890
|
|
</inputDecimal>
|
|
</sb:echoDecimal>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
|
<env:Body>
|
|
<sb:echoDecimalResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:decimal">
|
|
123.45678901234567890
|
|
</return>
|
|
</sb:echoDecimalResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR2-echoBoolean" name="SBR2-echoBoolean"></a>Test:SBR2-echoBoolean</h3><h4><a id="descSBR2-echoBoolean" name="descrSBR2-echoBoolean"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoBoolean' test defined by SOAPBuilders Round 2
|
|
<a href="#SOAPBuildersRound2">[SOAPBuilders Round 2]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR2-echoBoolean" name="mesgSBR2-echoBoolean"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
|
<env:Body>
|
|
<sb:echoBoolean xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputBoolean xsi:type="xsd:boolean">1</inputBoolean>
|
|
</sb:echoBoolean>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
|
<env:Body>
|
|
<sb:echoBooleanResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:boolean">1</return>
|
|
</sb:echoBooleanResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR2-echoStructAsSimpleTypes" name="SBR2-echoStructAsSimpleTypes"></a>Test:SBR2-echoStructAsSimpleTypes</h3><h4><a id="descSBR2-echoStructAsSimpleTypes" name="descrSBR2-echoStructAsSimpleTypes"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoStructAsSimpleTypes' test defined by SOAPBuilders Round 2 Group B
|
|
<a href="#SOAPBuildersRound2GroupB">[SOAPBuilders Round 2 Group B]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR2-echoStructAsSimpleTypes" name="mesgSBR2-echoStructAsSimpleTypes"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoStructAsSimpleTypes xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputStruct xsi:type="ns1:SOAPStruct"
|
|
xmlns:ns1="http://soapinterop.org/xsd">
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
</inputStruct>
|
|
</sb:echoStructAsSimpleTypes>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoStructAsSimpleTypesResponse xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<outputString xsi:type="xsd:string">hello world</outputString>
|
|
<outputInt xsi:type="xsd:int">42</outputInt>
|
|
<outputFloat xsi:type="xsd:float">0.005</outputFloat>
|
|
</sb:echoStructAsSimpleTypesResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR2-echoSimpleTypesAsStruct" name="SBR2-echoSimpleTypesAsStruct"></a>Test:SBR2-echoSimpleTypesAsStruct</h3><h4><a id="descSBR2-echoSimpleTypesAsStruct" name="descrSBR2-echoSimpleTypesAsStruct"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoSimpleTypesAsStruct' test defined by SOAPBuilders Round 2 Group B
|
|
<a href="#SOAPBuildersRound2GroupB">[SOAPBuilders Round 2 Group B]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR2-echoSimpleTypesAsStruct" name="mesgSBR2-echoSimpleTypesAsStruct"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoSimpleTypesAsStruct xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString xsi:type="xsd:string">hello world</inputString>
|
|
<inputInt xsi:type="xsd:int">42</inputInt>
|
|
<inputFloat xsi:type="xsd:float">0.005</inputFloat>
|
|
</sb:echoSimpleTypesAsStruct>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoSimpleTypesAsStructResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="ns1:SOAPStruct"
|
|
xmlns:ns1="http://soapinterop.org/xsd">
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
</return>
|
|
</sb:echoSimpleTypesAsStructResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR2-echo2DStringArray" name="SBR2-echo2DStringArray"></a>Test:SBR2-echo2DStringArray</h3><h4><a id="descSBR2-echo2DStringArray" name="descrSBR2-echo2DStringArray"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echo2DStringArray' test defined by SOAPBuilders Round 2 Group B
|
|
<a href="#SOAPBuildersRound2GroupB">[SOAPBuilders Round 2 Group B]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR2-echo2DStringArray" name="mesgSBR2-echo2DStringArray"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echo2DStringArray xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<input2DStringArray enc:itemType="xsd:string"
|
|
enc:arraySize="2 3"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item>row0col0</item>
|
|
<item>row0col1</item>
|
|
<item>row0col2</item>
|
|
<item>row1col0</item>
|
|
<item>row1col1</item>
|
|
<item>row1col2</item>
|
|
</input2DStringArray>
|
|
</sb:echo2DStringArray>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echo2DStringArrayResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<result enc:itemType="xsd:string"
|
|
enc:arraySize="2 3"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item>row0col0</item>
|
|
<item>row0col1</item>
|
|
<item>row0col2</item>
|
|
<item>row1col0</item>
|
|
<item>row1col1</item>
|
|
<item>row1col2</item>
|
|
</result>
|
|
</sb:echo2DStringArrayResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR2-echoNestedStruct" name="SBR2-echoNestedStruct"></a>Test:SBR2-echoNestedStruct</h3><h4><a id="descSBR2-echoNestedStruct" name="descrSBR2-echoNestedStruct"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoNestedStruct' test defined by SOAPBuilders Round 2 Group B
|
|
<a href="#SOAPBuildersRound2GroupB">[SOAPBuilders Round 2 Group B]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR2-echoNestedStruct" name="mesgSBR2-echoNestedStruct"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoNestedStruct xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputStruct xsi:type="ns1:SOAPStructStruct"
|
|
xmlns:ns1="http://soapinterop.org/xsd">
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
<varStruct xsi:type="ns1:SOAPStruct">
|
|
<varInt xsi:type="xsd:int">99</varInt>
|
|
<varFloat xsi:type="xsd:float">4.0699e-12</varFloat>
|
|
<varString xsi:type="xsd:string">nested struct</varString>
|
|
</varStruct>
|
|
</inputStruct>
|
|
</sb:echoNestedStruct>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoNestedStructResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="ns1:SOAPStructStruct"
|
|
xmlns:ns1="http://soapinterop.org/xsd">
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
<varStruct xsi:type="ns1:SOAPStruct">
|
|
<varInt xsi:type="xsd:int">99</varInt>
|
|
<varFloat xsi:type="xsd:float">4.0699e-12</varFloat>
|
|
<varString xsi:type="xsd:string">nested struct</varString>
|
|
</varStruct>
|
|
</return>
|
|
</sb:echoNestedStructResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR2-echoNestedArray" name="SBR2-echoNestedArray"></a>Test:SBR2-echoNestedArray</h3><h4><a id="descSBR2-echoNestedArray" name="descrSBR2-echoNestedArray"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoNestedArray' test defined by SOAPBuilders Round 2 Group B
|
|
<a href="#SOAPBuildersRound2GroupB">[SOAPBuilders Round 2 Group B]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR2-echoNestedArray" name="mesgSBR2-echoNestedArray"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoNestedArray xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputStruct xsi:type="ns1:SOAPArrayStruct"
|
|
xmlns:ns1="http://soapinterop.org/xsd">
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
<varArray enc:itemType="xsd:string" enc:arraySize="3"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="xsd:string">red</item>
|
|
<item xsi:type="xsd:string">blue</item>
|
|
<item xsi:type="xsd:string">green</item>
|
|
</varArray>
|
|
</inputStruct>
|
|
</sb:echoNestedArray>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoNestedArrayResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="ns1:SOAPArrayStruct">
|
|
xmlns:ns1="http://soapinterop.org/xsd">
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
<varArray enc:itemType="xsd:string" enc:arraySize="3"
|
|
xmlns:enc="http://www.w3.org/2003/05/soap-encoding">
|
|
<item xsi:type="xsd:string">red</item>
|
|
<item xsi:type="xsd:string">blue</item>
|
|
<item xsi:type="xsd:string">green</item>
|
|
</varArray>
|
|
</return>
|
|
</sb:echoNestedArrayResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR2-echoMeStringRequest" name="SBR2-echoMeStringRequest"></a>Test:SBR2-echoMeStringRequest</h3><h4><a id="descSBR2-echoMeStringRequest" name="descrSBR2-echoMeStringRequest"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoMeStringRequest' test defined by SOAPBuilders Round 2 Group C
|
|
<a href="#SOAPBuildersRound2GroupC">[SOAPBuilders Round 2 Group C]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR2-echoMeStringRequest" name="mesgSBR2-echoMeStringRequest"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<h:echoMeStringRequest xmlns:h="http://soapinterop.org/echoheader/"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/next">
|
|
hello world
|
|
</h:echoMeStringRequest>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoVoid xmlns:sb="http://soapinterop.org/"
|
|
env:encodingstyle="http://www.w3.org/2003/05/soap-encoding" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<h:echoMeStringResponse xmlns:h="http://soapinterop.org/echoheader/">
|
|
hello world
|
|
</h:echoMeStringResponse>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoVoidResponse xmlns:sb="http://soapinterop.org/"
|
|
env:encodingstyle="http://www.w3.org/2003/05/soap-encoding" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<h:echoMeStringRequest xmlns:h="http://soapinterop.org/echoheader/"
|
|
env:role="http://example.org/some/other/role">
|
|
hello world
|
|
</h:echoMeStringRequest>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoVoid xmlns:sb="http://soapinterop.org/"
|
|
env:encodingstyle="http://www.w3.org/2003/05/soap-encoding" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<sb:echoVoidResponse xmlns:sb="http://soapinterop.org/"
|
|
env:encodingstyle="http://www.w3.org/2003/05/soap-encoding" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR2-echoMeStructRequest" name="SBR2-echoMeStructRequest"></a>Test:SBR2-echoMeStructRequest</h3><h4><a id="descSBR2-echoMeStructRequest" name="descrSBR2-echoMeStructRequest"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoMeStructRequest' test defined by SOAPBuilders Round 2 Group C
|
|
<a href="#SOAPBuildersRound2GroupC">[SOAPBuilders Round 2 Group C]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR2-echoMeStructRequest" name="mesgSBR2-echoMeStructRequest"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<h:echoMeStructRequest xmlns:h="http://soapinterop.org/echoheader/"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/next"
|
|
env:mustUnderstand="1">
|
|
<varInt>42</varInt>
|
|
<varFloat>99.005</varFloat>
|
|
<varString>hello world</varString>
|
|
</h:echoMeStructRequest>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoVoid xmlns:sb="http://soapinterop.org/"
|
|
env:encodingstyle="http://www.w3.org/2003/05/soap-encoding" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<h:echoMeStructResponse xmlns:h="http://soapinterop.org/echoheader/">
|
|
<varInt>42</varInt>
|
|
<varFloat>99.005</varFloat>
|
|
<varString>hello world</varString>
|
|
</h:echoMeStructResponse>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoVoidResponse xmlns:sb="http://soapinterop.org/"
|
|
env:encodingstyle="http://www.w3.org/2003/05/soap-encoding" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<h:echoMeStructRequest xmlns:h="http://soapinterop.org/echoheader/"
|
|
env:role="http://example.org/some/other/role"
|
|
env:mustUnderstand="1">
|
|
<varInt>42</varInt>
|
|
<varFloat>99.005</varFloat>
|
|
<varString>hello world</varString>
|
|
</h:echoMeStructRequest>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoVoid xmlns:sb="http://soapinterop.org/"
|
|
env:encodingstyle="http://www.w3.org/2003/05/soap-encoding" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<sb:echoVoidResponse xmlns:sb="http://soapinterop.org/"
|
|
env:encodingstyle="http://www.w3.org/2003/05/soap-encoding" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="SBR2-echoMeUnknown" name="SBR2-echoMeUnknown"></a>Test:SBR2-echoMeUnknown</h3><h4><a id="descSBR2-echoMeUnknown" name="descrSBR2-echoMeUnknown"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is the 'echoMeUnknown' test defined by SOAPBuilders Round 2 Group C
|
|
<a href="#SOAPBuildersRound2GroupC">[SOAPBuilders Round 2 Group C]</a> ported to SOAP 1.2.
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<h4><a id="mesgSBR2-echoMeUnknown" name="mesgSBR2-echoMeUnknown"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<h:echoMeUnknown xmlns:h="http://unknown.example.org/unknown/"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/next">
|
|
nobody understands me!
|
|
</h:echoMeUnknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoVoid xmlns:sb="http://soapinterop.org/"
|
|
env:encodingstyle="http://www.w3.org/2003/05/soap-encoding" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<sb:echoVoidResponse xmlns:sb="http://soapinterop.org/"
|
|
env:encodingstyle="http://www.w3.org/2003/05/soap-encoding" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<h:echoMeUnknown xmlns:h="http://unknown.example.org/unknown/"
|
|
env:mustUnderstand="1"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/next">
|
|
nobody understands me!
|
|
</h:echoMeUnknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoVoid xmlns:sb="http://soapinterop.org/"
|
|
env:encodingstyle="http://www.w3.org/2003/05/soap-encoding" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<env:NotUnderstood qname="h:echoMeUnknown"
|
|
xmlns:h="http://unknown.example.org/unknown/"/>
|
|
</env:Header>
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:MustUnderstand</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US"> Header not understood </env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<h:echoMeUnknown xmlns:h="http://unknown.example.org/unknown/"
|
|
env:role="http://example.org/some/other/role">
|
|
nobody understands me!
|
|
</h:echoMeUnknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoVoid xmlns:sb="http://soapinterop.org/"
|
|
env:encodingstyle="http://www.w3.org/2003/05/soap-encoding" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<sb:echoVoidResponse xmlns:sb="http://soapinterop.org/"
|
|
env:encodingstyle="http://www.w3.org/2003/05/soap-encoding" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<h:echoMeUnknown xmlns:h="http://unknown.example.org/unknown/"
|
|
env:mustUnderstand="1"
|
|
env:role="http://example.org/some/other/role">
|
|
nobody understands me!
|
|
</h:echoMeUnknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoVoid xmlns:sb="http://soapinterop.org/"
|
|
env:encodingstyle="http://www.w3.org/2003/05/soap-encoding" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<sb:echoVoidResponse xmlns:sb="http://soapinterop.org/"
|
|
env:encodingstyle="http://www.w3.org/2003/05/soap-encoding" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
|
|
|
|
|
|
<div class="assertion"><h3><a id="XMLP-1" name="XMLP-1"></a>Test:XMLP-1</h3><h4><a id="descXMLP-1" name="descrXMLP-1"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
The test is based on SOAPBuilders Round 2 echoString test. But instead of
|
|
the node A sending <br>
|
|
<br>
|
|
<m:echoString xmlns:m="http://soapinterop.org/"> <br>
|
|
<inputString>hello world</inputString> <br>
|
|
</m:echoString> <br>
|
|
<br>
|
|
it sends <br>
|
|
<br>
|
|
<m:echoString xmlns:m="http://soapinterop.org/"/> <br>
|
|
<br>
|
|
|
|
The result is either (i) a response with the the missing input parameter
|
|
missing in the output as well or with the output parameter having some
|
|
default value determined by the server, or
|
|
(ii) a SOAP fault with a Value of "env:Sender" for Code and a Value of
|
|
"rpc:BadArguments" for Subcode.
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-1" name="mesgXMLP-1"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoString xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding"/>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoStringResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="xsd:string">Hello world</return>
|
|
</sb:echoStringResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoString xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding"/>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value xmlns:ns1="http://www.w3.org/2003/05/soap-envelope">
|
|
ns:Sender
|
|
</env:Value>
|
|
<env:Subcode>
|
|
<env:Value xmlns:ns2="http://www.w3.org/2003/05/soap-rpc">
|
|
ns:BadArguments
|
|
</env:Value>
|
|
</env:Subcode>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en">Missing parameter.</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="XMLP-2" name="XMLP-2"></a>Test:XMLP-2</h3><h4><a id="descXMLP-2" name="descrXMLP-2"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends an HTTP GET request to Node C and Node C returns a
|
|
response that includes current time. An example of the request is: <br>
|
|
<br>
|
|
GET /interop/doc/getTime HTTP/1.1
|
|
<br>
|
|
|
|
Node C responds with the current time of the day. The response does not
|
|
follow the RPC representation as described in SOAP 1.2, part 2, section 4.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-2" name="mesgXMLP-2"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
GET /soap1.2/doc/interop HTTP/1.1
|
|
Host: www.w3.org
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<sb:time xmlns:sb="http://soapinterop.org/">09:21:19Z</sb:time>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="XMLP-3" name="XMLP-3"></a>Test:XMLP-3</h3><h4><a id="descXMLP-3" name="descrXMLP-3"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
The Node A sends an HTTP GET request to Node C and Node C returns an
|
|
RPC response that includes current time. An example of the request is:
|
|
<br>
|
|
<br>
|
|
GET /interop/rpc/getTime HTTP/1.1
|
|
|
|
<br>
|
|
Node C responds with the current time of the day. The response
|
|
follows the RPC representation as described in SOAP 1.2, part 2, section 4.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-3" name="mesgXMLP-3"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
GET /soap1.2/rpc/interop HTTP/1.1
|
|
Host: www.w3.org
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<sb:getTimeResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return>16:21:59Z</return>
|
|
</sb:getTimeResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="XMLP-4" name="XMLP-4"></a>Test:XMLP-4</h3><h4><a id="descXMLP-4" name="descrXMLP-4"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
The test is based on SOAPBuilders Round 2 echoSimpleTypesAsStruct. But
|
|
Node A instead of sending a message consisting of three parameters: <br>
|
|
|
|
<br>
|
|
inputString of type xsd:string<br>
|
|
inputInteger of type xsd:int<br>
|
|
inputFloat of type xsd:float<br>
|
|
<br>
|
|
in that order, it changes the order of the parameter to:<br>
|
|
<br>
|
|
inputFloat of type xsd:float<br>
|
|
inputInteger of type xsd:int<br>
|
|
inputString of type xsd:string<br>
|
|
<br>
|
|
|
|
The result returned by Node C is a structure as described in the original
|
|
test.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-4" name="mesgXMLP-4"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoSimpleTypesAsStruct xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputFloat xsi:type="xsd:float">0.005</inputFloat>
|
|
<inputInt xsi:type="xsd:int">42</inputInt>
|
|
<inputString xsi:type="xsd:string">hello world</inputString>
|
|
</sb:echoSimpleTypesAsStruct>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoSimpleTypesAsStructResponse xmlns:sb="http://soapinterop.org/"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="ns1:SOAPStruct"
|
|
xmlns:ns1="http://soapinterop.org/xsd">
|
|
<varString xsi:type="xsd:string">hello world</varString>
|
|
<varInt xsi:type="xsd:int">42</varInt>
|
|
<varFloat xsi:type="xsd:float">0.005</varFloat>
|
|
</return>
|
|
</sb:echoSimpleTypesAsStructResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="XMLP-5" name="XMLP-5"></a>Test:XMLP-5</h3><h4><a id="descXMLP-5" name="descrXMLP-5"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
The test is based on SOAPBuilders Round 1 echoVoid test.
|
|
Node A instead of sending a message using the SOAP 1.2 namespace uses SOAP
|
|
1.1 namespace. I.e., sends the same message used in SOAPBuilders Round 2
|
|
echoVoid test. The node C returns a fault with a value of
|
|
env:VersionMismatch for Code and an HTTP status code with a value of 500
|
|
Server Error.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-5" name="mesgXMLP-5"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
POST /soap1.2/interop HTTP/1.1
|
|
Host: www.w3.org
|
|
Content-Type: text/xml; charset=utf-8
|
|
Content-Length: nnn
|
|
SOAPAction: ""
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://schemas.xmlsoap.org/soap/envelope/"
|
|
xmlns:enc="http://schemas.xmlsoap.org/soap/encoding/">
|
|
<env:Body env:encodingStyle="http://schemas.xmlsoap.org/soap/encoding/">
|
|
<sb:echoVoid xmlns:sb="http://soapinterop.org/" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
HTTP/1.1 500 Internal Server Error
|
|
Content-Type: application/soap+xml; charset="utf-8"
|
|
Content-Length: nnn
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<env:Upgrade>
|
|
<env:SupportedEnvelope qname="ns1:Envelope"
|
|
xmlns:ns1="http://www.w3.org/2003/05/soap-envelope"/>
|
|
</env:Upgrade>
|
|
</env:Header>
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:VersionMismatch</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US">Wrong Version</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="XMLP-6" name="XMLP-6"></a>Test:XMLP-6</h3><h4><a id="descXMLP-6" name="descrXMLP-6"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is based on SOAPBuilders Round 2 echoMeUnknown test. Node A
|
|
sends a request to a Node C which includes a header block with the QName
|
|
{http://example.org/}Unknown and with env:mustUnderstand attribute set to
|
|
"true". This header block is not understood by Node C and Node C returns a
|
|
fault with a value of env:MustUnderstand for Code and an HTTP status code
|
|
with a value of 500 Server Error.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-6" name="mesgXMLP-6"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
POST /soap1.2/interop HTTP/1.1
|
|
Host: www.w3.org
|
|
Content-Type: application/soap+xml; charset="utf-8"
|
|
Content-Length: nnn
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<h:Unknown xmlns:h="http://example.org/"
|
|
env:mustUnderstand="1"
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/next">
|
|
nobody understands me!
|
|
</h:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoVoid xmlns:sb="http://soapinterop.org/"
|
|
env:encodingstyle="http://www.w3.org/2003/05/soap-encoding" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
HTTP/1.1 500 Internal Server Error
|
|
Content-Type: application/soap+xml; charset="utf-8"
|
|
Content-Length: nnn
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<env:NotUnderstood qname="h:Unknown"
|
|
xmlns:h="http://example.org/"/>
|
|
</env:Header>
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:MustUnderstand</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US"> Header not understood </env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="XMLP-7" name="XMLP-7"></a>Test:XMLP-7</h3><h4><a id="descXMLP-7" name="descrXMLP-7"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
The Node A sends a echoSenderFault method request to the Node C and the
|
|
Node C returns a fault with a value env:Sender for Code and an HTTP
|
|
status code with a value of 400 Bad Method.
|
|
An example of the request is:
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-7" name="mesgXMLP-7"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
POST /soap1.2/interop HTTP/1.1
|
|
Host: www.w3.org
|
|
Content-Type: application/soap+xml; charset=utf-8; action=""
|
|
Content-Length: nnn
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
|
<env:Body>
|
|
<sb:echoSenderFault xmlns:sb="http://soapinterop.org/"
|
|
xsi:type="xsd:string">
|
|
foo
|
|
</sb:echoSenderFault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
HTTP/1.1 400 Bad Request
|
|
Content-Type: application/soap+xml; charset="utf-8"
|
|
Content-Length: nnn
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en">This is a Sender fault.</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="XMLP-8" name="XMLP-8"></a>Test:XMLP-8</h3><h4><a id="descXMLP-8" name="descrXMLP-8"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
The Node A sends a echoReceiverFault method request to the Node C and the
|
|
Node C returns a fault with a value env:Receiver for Code and an HTTP
|
|
status code with a value of 500 Server Error.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-8" name="mesgXMLP-8"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
POST /soap1.2/interop HTTP/1.1
|
|
Host: www.w3.org
|
|
Content-Type: application/soap+xml; charset=utf-8; action=""
|
|
Content-Length: nnn
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema">
|
|
<env:Body>
|
|
<sb:echoReceiverFault xmlns:sb="http://soapinterop.org/"
|
|
xsi:type="xsd:string">
|
|
foo
|
|
</sb:echoReceiverFault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
HTTP/1.1 500 Internal Server Error
|
|
Content-Type: application/soap+xml; charset="utf-8"
|
|
Content-Length: nnn
|
|
|
|
<?xml version="1.0" encoding="UTF-8"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Receiver</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en">This is a Receiver fault.</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="XMLP-9" name="XMLP-9"></a>Test:XMLP-9</h3><h4><a id="descXMLP-9" name="descrXMLP-9"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is based on SOAPBuilders Round 1 echoString test. Node A sends
|
|
a request to Node C with data encoding that is unknown to Node C.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-9" name="mesgXMLP-9"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoString xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString env:encodingStyle="unknown">Hello world</inputString>
|
|
</sb:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:DataEncodingUnknown</env:value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US"> Unknown Data Encoding Style </env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="XMLP-10" name="XMLP-10"></a>Test:XMLP-10</h3><h4><a id="descXMLP-10" name="descrXMLP-10"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
Node A sends a RPC message to Node C calling the method
|
|
echoSimpleTypesAsStructOfSchemaTypes containing three parameters of type
|
|
xsd:int, xsd:float, xsd:string, with the XML schema type information
|
|
included in the message. In addtion, there is a fourth parameter which does
|
|
not have the XML schema type information in the message.
|
|
Node C responds with the XML schema type information corresponding to each
|
|
parameter. For parameter that does not have the type information in the
|
|
message, xsd:anyType is returned.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-10" name="mesgXMLP-10"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoSimpleTypesAsStructOfSchemaTypes
|
|
xmlns:test="http://soapinterop.org/ts-tests"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<input1 xsi:type="xsd:int">42</input1>
|
|
<input2 xsi:type="xsd:float">0.005</input2>
|
|
<input3 xsi:type="xsd:string">hello world</input3>
|
|
<input4>Untyped information</input4>
|
|
</test:echoSimpleTypesAsStructOfSchemaTypes>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0"?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<test:echoSimpleTypesAsStructOfSchemaTypesResponse
|
|
xmlns:test="http://soapinterop.org/ts-tests"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<rpc:result>return</rpc:result>
|
|
<return xsi:type="ns1:SOAPStructTypes"
|
|
xmlns:ns1="http://example.org/ts-tests/xsd">
|
|
<type1 xsi:type="xsd:QName">xsd:int</type1>
|
|
<type2 xsi:type="xsd:QName">xsd:float</type2>
|
|
<type3 xsi:type="xsd:QName">xsd:string</type3>
|
|
<type4 xsi:type="xsd:QName">xsd:anyType</type4>
|
|
</return>
|
|
</test:echoSimpleTypesAsStructOfSchemaTypesResponse>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="XMLP-11" name="XMLP-11"></a>Test:XMLP-11</h3><h4><a id="descXMLP-11" name="descrXMLP-11"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is based on SOAPBuilders R1 echoInteger test. But instead of
|
|
sending a valid integer value, Node A sends a string value containing
|
|
non-interger characters. The Node C returns a fault with a value
|
|
env:Sender for Code, a value of rpc:BadArguments for Subcode.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-11" name="mesgXMLP-11"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoInteger xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputInteger xsi:type="xsd:int">abc</inputInteger>
|
|
</sb:echoInteger>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
<env:Subcode>
|
|
<env:Value xmlns:rpc="http://www.w3.org/2003/05/soap-rpc">
|
|
rpc:BadArguments
|
|
</env:Value>
|
|
</env:Subcode>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en">
|
|
Bad parameter: 'inputInteger' on method 'echoInteger'.
|
|
</env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="XMLP-12" name="XMLP-12"></a>Test:XMLP-12</h3><h4><a id="descXMLP-12" name="descrXMLP-12"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
This test is based on SOAPBuilders R1 echoInteger test. But instead of
|
|
of sending an echoInteger RPC request Node A sends a RPC request for the
|
|
method unknownMethodThatShouldNotBeThere. The Node C returns a fault with
|
|
a value env:Sender for Code, a value of rpc:ProcedureNotPresent for Subcode.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-12" name="mesgXMLP-12"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:unknownMethodThatShouldNotBeThere xmlns:sb="http://soapinterop.org/" />
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:rpc="http://www.w3.org/2003/05/soap-rpc">
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:Sender</env:Value>
|
|
<env:Subcode>
|
|
<env:Value>rpc:ProcedureNotPresent</env:Value>
|
|
</env:Subcode>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US"> Procedure Not Present </env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="XMLP-13" name="XMLP-13"></a>Test:XMLP-13</h3><h4><a id="descXMLP-13" name="descrXMLP-13"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
The test is based on SOAPBuilders R1 echoString test. But, instead of
|
|
testing RPC request/response, it tests the SOAP 1.2 forwarding intermediary
|
|
semantics.
|
|
Node A sends a echoString request and Node C acts as a forwarding
|
|
intermediary. But, instead of forwarding the message to another node, it
|
|
forwards the message back to Node A.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-13" name="mesgXMLP-13"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoString xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString xsi:type="xsd:string">Hello world</inputString>
|
|
</sb:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoString xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString xsi:type="xsd:string">Hello world</inputString>
|
|
</sb:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="XMLP-14" name="XMLP-14"></a>Test:XMLP-14</h3><h4><a id="descXMLP-14" name="descrXMLP-14"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
The test is based on SOAPBuilders R1 echoString test. But, instead of
|
|
testing RPC request/response, it tests the SOAP 1.2 active intermediary
|
|
semantics.
|
|
Node A sends a echoString request and Node C acts as a active
|
|
intermediary. But, instead of forwarding the message to another node, it
|
|
forwards the message back to Node A. Node C in addition to forwarding the
|
|
message to Node A, converts the string to be echoed to uppercase before
|
|
forwarding it to Node A.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-14" name="mesgXMLP-14"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoString xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString xsi:type="xsd:string">Hello world</inputString>
|
|
</sb:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoString xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString xsi:type="xsd:string">HELLO WORLD<inputString>
|
|
</sb:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="XMLP-15" name="XMLP-15"></a>Test:XMLP-15</h3><h4><a id="descXMLP-15" name="descrXMLP-15"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
The test is similar to XMLP-13. Node A sends the echoString request along
|
|
with an optional SOAP header block targeted at
|
|
"http://www.w3.org/2003/05/soap-envelope/role/next"
|
|
Node C does not process the header block, but removes the header block
|
|
before forwarding the message back to Node A.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-15" name="mesgXMLP-15"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Header>
|
|
<sb:Unknown env:role="http://www.w3.org/2003/05/soap-envelope/role/next"
|
|
xmlns:sb="http://soapinterop.org/">
|
|
</sb:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoString xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString xsi:type="xsd:string">Hello world<inputString>
|
|
</sb:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Body>
|
|
<sb:echoString xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString xsi:type="xsd:string">Hello world</inputString>
|
|
</sb:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="XMLP-16" name="XMLP-16"></a>Test:XMLP-16</h3><h4><a id="descXMLP-16" name="descrXMLP-16"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
The test is similar to XMLP-13. Node A sends the echoString request along
|
|
with an optional SOAP header block targeted at
|
|
"http://www.w3.org/2003/05/soap-envelope/role/none"
|
|
Node C does not process the header block, but retains the header block
|
|
in the message forwarded back to Node A.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-16" name="mesgXMLP-16"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Header>
|
|
<sb:Unknown env:role="http://www.w3.org/2003/05/soap-envelope/role/none"
|
|
xmlns:sb="http://soapinterop.org/">
|
|
</sb:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoString xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString xsi:type="xsd:string">Hello world</inputString>
|
|
</sb:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Header>
|
|
<sb:Unknown env:role="http://www.w3.org/2003/05/soap-envelope/role/none"
|
|
xmlns:sb="http://soapinterop.org/">
|
|
</sb:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoString xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString xsi:type="xsd:string">Hello world</inputString>
|
|
</sb:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="XMLP-17" name="XMLP-17"></a>Test:XMLP-17</h3><h4><a id="descXMLP-17" name="descrXMLP-17"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
The test is similar to XMLP-13. Node A sends the echoString request along
|
|
with an optional SOAP header block targeted at
|
|
"http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver"
|
|
Node C does not process the header block, but retains the header block
|
|
in the message forwarded back to Node A.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-17" name="mesgXMLP-17"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Header>
|
|
<sb:Unknown
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver"
|
|
xmlns:sb="http://soapinterop.org/">
|
|
</sb:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoString xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString xsi:type="xsd:string">Hello world</inputString>
|
|
</sb:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Header>
|
|
<sb:Unknown
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/ultimateReceiver"
|
|
xmlns:sb="http://soapinterop.org/">
|
|
</sb:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoString xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString xsi:type="xsd:string">Hello world</inputString>
|
|
</sb:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="XMLP-18" name="XMLP-18"></a>Test:XMLP-18</h3><h4><a id="descXMLP-18" name="descrXMLP-18"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
The test is similar to XMLP-15. Node A sends the echoString request along
|
|
with an optional SOAP header block targeted at
|
|
"http://www.w3.org/2003/05/soap-envelope/role/next" and a
|
|
relay attribute with a value of "true".
|
|
Node C does not process the header block, but retains the header block
|
|
in the message forwarded back to Node A (along with the role and relay
|
|
attribute).
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-18" name="mesgXMLP-18"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Header>
|
|
<sb:Unknown
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/next"
|
|
env:relay="true"
|
|
xmlns:sb="http://soapinterop.org/">
|
|
</sb:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoString xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString xsi:type="xsd:string">Hello world</inputString>
|
|
</sb:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Header>
|
|
<sb:Unknown
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/next"
|
|
env:relay="true"
|
|
xmlns:sb="http://soapinterop.org/">
|
|
</sb:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoString xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString xsi:type="xsd:string">Hello world</inputString>
|
|
</sb:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
<div class="assertion"><h3><a id="XMLP-19" name="XMLP-19"></a>Test:XMLP-19</h3><h4><a id="descXMLP-19" name="descrXMLP-19"></a>Description:
|
|
</h4>
|
|
<div class="text">
|
|
The test is similar to XMLP-15. Node A sends the echoString request along
|
|
with an SOAP header block targeted at
|
|
"http://www.w3.org/2003/05/soap-envelope/role/next" and a
|
|
mustUnderstand attribute with a value of "true".
|
|
Node C does not recognize the header block, and this results in a
|
|
MustUnderstand fault which is sent back to Node A.
|
|
</div>
|
|
|
|
|
|
|
|
<h4><a id="mesgXMLP-19" name="mesgXMLP-19"></a>Messages:
|
|
</h4><p>Message sent from Node
|
|
A</p><div class="message"><pre>
|
|
|
|
<?xml version="1.0" ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope"
|
|
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
|
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
|
|
<env:Header>
|
|
<sb:Unknown
|
|
env:role="http://www.w3.org/2003/05/soap-envelope/role/next"
|
|
env:mustUnderstand="true"
|
|
xmlns:sb="http://soapinterop.org/">
|
|
</sb:Unknown>
|
|
</env:Header>
|
|
<env:Body>
|
|
<sb:echoString xmlns:sb="http://soapinterop.org/"
|
|
env:encodingStyle="http://www.w3.org/2003/05/soap-encoding">
|
|
<inputString xsi:type="xsd:string">Hello world</inputString>
|
|
</sb:echoString>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div><p>Message sent from Node
|
|
C</p><div class="message"><pre>
|
|
|
|
<?xml version='1.0' ?>
|
|
<env:Envelope xmlns:env="http://www.w3.org/2003/05/soap-envelope">
|
|
<env:Header>
|
|
<env:NotUnderstood qname="sb:Unknown"
|
|
xmlns:sb="http://soapinterop.org/" />
|
|
</env:Header>
|
|
<env:Body>
|
|
<env:Fault>
|
|
<env:Code>
|
|
<env:Value>env:MustUnderstand</env:Value>
|
|
</env:Code>
|
|
<env:Reason>
|
|
<env:Text xml:lang="en-US"> Header not understood </env:Text>
|
|
</env:Reason>
|
|
</env:Fault>
|
|
</env:Body>
|
|
</env:Envelope>
|
|
|
|
</pre></div></div>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
<div class="div1">
|
|
|
|
<h2><a name="refs"></a>4. References</h2>
|
|
|
|
<div class="div2">
|
|
|
|
<h3><a name="normrefs"></a>4.1 Normative References</h3>
|
|
<dl>
|
|
|
|
<dt class="label"><a name="SOAP-PART1"></a>[SOAP Part 1] </dt><dd>
|
|
<a href="http://www.w3.org/TR/2007/REC-soap12-part1-20070427"><cite>SOAP Version 1.2 Part 1: Messaging Framework (Second Edition)</cite></a>,
|
|
Martin Gudgin, Marc Hadley, Noah Mendelsohn, Jean-Jacques Moreau,
|
|
Henrik Frystyk Nielsen, Anish Karmarkar, Yves Lafon, Editors.
|
|
World Wide Web Consortium, 27 April 2007.
|
|
This version is http://www.w3.org/TR/2007/REC-soap12-part1-20070427.
|
|
The <a href="http://www.w3.org/TR/soap12-part1/">latest version</a> is
|
|
available at http://www.w3.org/TR/soap12-part1/.</dd>
|
|
|
|
|
|
<dt class="label"><a name="SOAP-PART2"></a>[SOAP Part 2] </dt><dd>
|
|
<a href="http://www.w3.org/TR/2007/REC-soap12-part2-20070427"><cite>SOAP Version 1.2 Part 2: Adjuncts (Second Edition)</cite></a>,
|
|
Martin Gudgin, Marc Hadley, Noah Mendelsohn, Jean-Jacques Moreau,
|
|
Henrik Frystyk Nielsen, Anish Karmarkar, Yves Lafon, Editors.
|
|
World Wide Web Consortium, 27 April 2007.
|
|
This version is http://www.w3.org/TR/2007/REC-soap12-part2-20070427.
|
|
The <a href="http://www.w3.org/TR/soap12-part2/">latest version</a> is
|
|
available at http://www.w3.org/TR/soap12-part2/.</dd>
|
|
|
|
<dt class="label"><a name="XML"></a>[XML 1.0] </dt><dd>
|
|
<a href="http://www.w3.org/TR/2006/REC-xml-20060816"><cite>Extensible
|
|
Markup Language (XML) 1.0 (Fourth Edition)</cite></a>, Jean Paoli,
|
|
Eve Maler, Tim Bray, <em>et. al.</em>, Editors.
|
|
World Wide Web Consortium, 16 August 2006.
|
|
This version is http://www.w3.org/TR/2006/REC-xml-20060816.
|
|
The <a href="http://www.w3.org/TR/REC-xml">latest version</a> is
|
|
available at http://www.w3.org/TR/REC-xml.</dd>
|
|
|
|
<dt class="label"><a name="XMLSchemaP1"></a>[XML Schema Part 1] </dt><dd>
|
|
<a href="http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/"><cite>
|
|
XML Schema Part 1:
|
|
Structures Second Edition</cite></a>, David Beech, Murray Maloney,
|
|
Henry S. Thompson, and Noah Mendelsohn, Editors.
|
|
World Wide Web Consortium, 28 October 2004.
|
|
This version is http://www.w3.org/TR/2004/REC-xmlschema-1-20041028/
|
|
The <a href="http://www.w3.org/TR/xmlschema-1/">latest version</a> is
|
|
available at http://www.w3.org/TR/xmlschema-1/.</dd>
|
|
|
|
<dt class="label"><a name="XMLSchemaP2"></a>[XML Schema Part 2] </dt><dd>
|
|
<a href="http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/"><cite>
|
|
XML Schema Part 2:
|
|
Datatypes Second Edition</cite></a>,
|
|
Ashok Malhotra and Paul V. Biron, Editors.
|
|
World Wide Web Consortium, 28 October 2004.
|
|
This version is http://www.w3.org/TR/2004/REC-xmlschema-2-20041028/.
|
|
The <a href="http://www.w3.org/TR/xmlschema-2/">latest version</a> is
|
|
available at http://www.w3.org/TR/xmlschema-2/.</dd>
|
|
|
|
</dl>
|
|
|
|
</div>
|
|
|
|
<div class="div2">
|
|
|
|
<h3><a name="nonnormrefs"></a>4.2 Informative References</h3>
|
|
<dl>
|
|
<dt class="label"><a name="DiscussionArchive"></a>[distapp archive] </dt><dd>XML Protocol Discussion Archive (See <a href="http://lists.w3.org/Archives/Public/xml-dist-app/">http://lists.w3.org/Archives/Public/xml-dist-app/</a>.)</dd>
|
|
<dt class="label"><a name="CommentArchive"></a>[xmlp-comments archive] </dt><dd>XML Protocol Comments Archive (See <a href="http://lists.w3.org/Archives/Public/xmlp-comments/">http://lists.w3.org/Archives/Public/xmlp-comments/</a>.)</dd>
|
|
<dt class="label"><a name="SOAPBuildersRound1"></a>[SOAPBuilders Round 1] </dt><dd>SOAPBuilders Round 1 SOAP Interoperability Tests Specification (See <a href="http://www.xmethods.net/soapbuilders/proposal.html">http://www.xmethods.net/soapbuilders/proposal.html</a>.)</dd>
|
|
<dt class="label"><a name="SOAPBuildersRound2"></a>[SOAPBuilders Round 2] </dt><dd>SOAPBuilders Round 2 SOAP Interoperability Tests Specification (See <a href="http://www.whitemesa.com/interop/proposal2.html">http://www.whitemesa.com/interop/proposal2.html</a>.)</dd>
|
|
<dt class="label"><a name="SOAPBuildersRound2GroupB"></a>[SOAPBuilders Round 2 Group B] </dt><dd>SOAPBuilders Round 2 SOAP Interoperability Tests Specification: Group "B" Methods (See <a href="http://www.whitemesa.com/interop/proposalB.html">http://www.whitemesa.com/interop/proposalB.html</a>.)</dd>
|
|
<dt class="label"><a name="SOAPBuildersRound2GroupC"></a>[SOAPBuilders Round 2 Group C] </dt><dd>SOAPBuilders Round 2 SOAP Interoperability Tests Specification: Header Processing (See <a href="http://www.whitemesa.com/interop/proposalC.html">http://www.whitemesa.com/interop/proposalC.html</a>.)</dd>
|
|
</dl>
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
<div class="back">
|
|
<div class="div1">
|
|
|
|
<h2><a name="acks"></a>A. Acknowledgements (Non-Normative)</h2>
|
|
|
|
<p>This specification is the work of the W3C XML Protocol Working Group.</p>
|
|
|
|
<p>Members of the Working Group are (at the time of writing, and by
|
|
alphabetical order): Glen Daniels (Sonic Software, formerly of Macromedia),
|
|
Vikas Deolaliker (Sonoa Systems, Inc.),
|
|
Chris Ferris (IBM, formerly of Sun Microsystems),
|
|
Marc Hadley (Sun Microsystems),
|
|
David Hull (TIBCO Software, Inc.),
|
|
Anish Karmarkar (Oracle),
|
|
Yves Lafon (W3C),
|
|
Jonathan Marsh (WSO2),
|
|
Jeff Mischkinsky (Oracle),
|
|
Eric Newcomer (IONA Technologies),
|
|
David Orchard (BEA Systems, formerly of Jamcracker),
|
|
Seumas Soltysik (IONA Technologies),
|
|
Davanum Srinivas (WSO2),
|
|
Pete Wenzel (Sun Microsystems, formerly of SeeBeyond).
|
|
</p>
|
|
|
|
<p>Previous members were: Yasser alSafadi (Philips Research),
|
|
Bill Anderson (Xerox),
|
|
Vidur Apparao (Netscape),
|
|
Camilo Arbelaez (webMethods),
|
|
Mark Baker (Idokorro Mobile, Inc., formerly of Sun Microsystems),
|
|
Philippe Bedu (EDF (Electricite De France)),
|
|
Olivier Boudeville (EDF (Electricite De France)),
|
|
Carine Bournez (W3C),
|
|
Don Box (Microsoft Corporation, formerly of DevelopMentor),
|
|
Tom Breuel (Xerox),
|
|
Dick Brooks (Group 8760),
|
|
Winston Bumpus (Novell, Inc.),
|
|
David Burdett (Commerce One),
|
|
Charles Campbell (Informix Software),
|
|
Alex Ceponkus (Bowstreet),
|
|
Michael Champion (Software AG),
|
|
David Chappell (Sonic Software),
|
|
Miles Chaston (Epicentric),
|
|
David Clay (Oracle),
|
|
David Cleary (Progress Software),
|
|
Dave Cleary (webMethods),
|
|
Ugo Corda (Xerox),
|
|
Paul Cotton (Microsoft Corporation),
|
|
Fransisco Cubera (IBM),
|
|
Jim d'Augustine (Excelon Corporation),
|
|
Ron Daniel (Interwoven),
|
|
Doug Davis (IBM),
|
|
Ray Denenberg (Library of Congress),
|
|
Paul Denning (MITRE Corporation),
|
|
Frank DeRose (TIBCO Software, Inc.),
|
|
Mike Dierken (DataChannel),
|
|
Andrew Eisenberg (Progress Software),
|
|
Brian Eisenberg (DataChannel),
|
|
Colleen Evans (Sonic Software),
|
|
John Evdemon (XMLSolutions),
|
|
David Ezell (Hewlett Packard),
|
|
James Falek (TIBCO Software, Inc.),
|
|
David Fallside (IBM),
|
|
Eric Fedok (Active Data Exchange),
|
|
Daniela Florescu (Propel),
|
|
Dan Frantz (BEA Systems),
|
|
Michael Freeman (Engenia Software),
|
|
Dietmar Gaertner (Software AG),
|
|
Scott Golubock (Epicentric),
|
|
Tony Graham (Sun Microsystems),
|
|
Mike Greenberg (IONA Technologies),
|
|
Rich Greenfield (Library of Congress),
|
|
Martin Gudgin (Microsoft Corporation, formerly of DevelopMentor),
|
|
Hugo Haas (W3C),
|
|
Mark Hale (Interwoven),
|
|
Randy Hall (Intel),
|
|
Bjoern Heckel (Epicentric),
|
|
Frederick Hirsch (Zolera Systems),
|
|
Gerd Hoelzing (SAP AG),
|
|
Erin Hoffmann (Tradia Inc.),
|
|
Steve Hole (MessagingDirect Ltd.),
|
|
Mary Holstege (Calico Commerce),
|
|
Jim Hughes (Fujitsu Limited),
|
|
Oisin Hurley (IONA Technologies),
|
|
Yin-Leng Husband (Hewlett Packard, formerly of Compaq),
|
|
John Ibbotson (IBM),
|
|
Ryuji Inoue (Matsushita Electric Industrial Co., Ltd.),
|
|
Scott Isaacson (Novell, Inc.),
|
|
Kazunori Iwasa (Fujitsu Limited),
|
|
Murali Janakiraman (Rogue Wave),
|
|
Mario Jeckle (DaimlerChrysler Research and Technology),
|
|
Eric Jenkins (Engenia Software),
|
|
Mark Jones (AT&T),
|
|
Jay Kasi (Commerce One),
|
|
Jeffrey Kay (Engenia Software),
|
|
Suresh Kodichath (IONA Technologies),
|
|
Richard Koo (Vitria Technology Inc.),
|
|
Jacek Kopecky (Systinet),
|
|
Alan Kropp (Epicentric),
|
|
Julian Kumar (Epicentric),
|
|
Peter Lecuyer (Progress Software),
|
|
Tony Lee (Vitria Technology Inc.),
|
|
Michah Lerner (AT&T),
|
|
Bob Lojek (Intalio Inc.),
|
|
Henry Lowe (OMG),
|
|
Brad Lund (Intel),
|
|
Matthew MacKenzie (XMLGlobal Technologies),
|
|
Michael Mahan (Nokia),
|
|
Murray Maloney (Commerce One),
|
|
Richard Martin (Active Data Exchange),
|
|
Noah Mendelsohn (IBM, formerly of Lotus Development),
|
|
Alex Milowski (Lexica),
|
|
Kevin Mitchell (XMLSolutions),
|
|
Nilo Mitra (Ericsson),
|
|
Ed Mooney (Sun Microsystems),
|
|
Jean-Jacques Moreau (Canon),
|
|
Dean Moses (Epicentric),
|
|
Highland Mary Mountain (Intel),
|
|
Don Mullen (TIBCO Software, Inc.),
|
|
Rekha Nagarajan (Calico Commerce),
|
|
Raj Nair (Cisco Systems),
|
|
Masahiko Narita (Fujitsu Limited),
|
|
Mark Needleman (Data Research Associates),
|
|
Art Nevarez (Novell, Inc.),
|
|
Henrik Nielsen (Microsoft Corporation),
|
|
Mark Nottingham (BEA Systems, formerly of Akamai Technologies),
|
|
Conleth O'Connell (Vignette),
|
|
Kevin Perkins (Compaq),
|
|
Doug Purdy (Microsoft Corporation),
|
|
Jags Ramnaryan (BEA Systems),
|
|
Andreas Riegg (DaimlerChrysler Research and Technology),
|
|
Vilhelm Rosenqvist (NCR),
|
|
Herve Ruellan (Canon),
|
|
Marwan Sabbouh (MITRE Corporation),
|
|
Waqar Sadiq (Vitria Technology Inc.),
|
|
Rich Salz (Zolera Systems),
|
|
Krishna Sankar (Cisco Systems),
|
|
Jeff Schlimmer (Microsoft Corporation),
|
|
George Scott (Tradia Inc.),
|
|
Shane Sesta (Active Data Exchange),
|
|
Lew Shannon (NCR),
|
|
John-Paul Sicotte (MessagingDirect Ltd.),
|
|
Miroslav Simek (Systinet),
|
|
Simeon Simeonov (Macromedia),
|
|
Aaron Skonnard (DevelopMentor),
|
|
Nick Smilonich (Unisys),
|
|
Soumitro Tagore (Informix Software),
|
|
James Tauber (Bowstreet),
|
|
Anne Thomas Manes (Sun Microsystems),
|
|
Lynne Thompson (Unisys),
|
|
Patrick Thompson (Rogue Wave),
|
|
Jim Trezzo (Oracle),
|
|
Asir Vedamuthu (webMethods),
|
|
Mike Vernal (Microsoft Corporation),
|
|
Randy Waldrop (WebMethods),
|
|
Fred Waskiewicz (OMG),
|
|
David Webber (XMLGlobal Technologies),
|
|
Ray Whitmer (Netscape),
|
|
Volker Wiechers (SAP AG),
|
|
Stuart Williams (Hewlett Packard),
|
|
Yan Xu (DataChannel),
|
|
Amr Yassin (Philips Research),
|
|
Susan Yee (Active Data Exchange),
|
|
Jin Yu (MartSoft Corp.).
|
|
</p>
|
|
|
|
<p>The people who have contributed to discussions on
|
|
<a href="mailto:xml-dist-app@w3.org">xml-dist-app@w3.org</a>
|
|
are also gratefully acknowledged.</p>
|
|
|
|
<p>The editors would like to acknowledge Kirill Gavrylyuk
|
|
(Microsoft Corp.) for the gladly-received contribution of test
|
|
for SOAP 1.2 Part 1.</p>
|
|
|
|
<p>The editors would like to acknowledge Nick Smilonich for reviewing this
|
|
document. </p>
|
|
|
|
</div>
|
|
|
|
|
|
|
|
</div>
|
|
|
|
</body></html>
|