W3C home > Mailing lists > Public > public-ws-desc-eds@w3.org > January 2007

2002/ws/desc/test-suite/documents/good/MessageMultipart-1G HTTPservice.filename,NONE,1.1 TestMetadata.xml,NONE,1.1 servicetypes.xsd,NONE,1.1 HTTPservice.wsdl,NONE,1.1

From: Jonathan Marsh via cvs-syncmail <cvsmail@w3.org>
Date: Mon, 22 Jan 2007 09:15:13 +0000
To: public-ws-desc-eds@w3.org
Message-Id: <E1H8vGj-0007vg-AL@lionel-hutz.w3.org>

Update of /sources/public/2002/ws/desc/test-suite/documents/good/MessageMultipart-1G
In directory hutz:/tmp/cvs-serv30289/test-suite/documents/good/MessageMultipart-1G

Added Files:
	HTTPservice.filename TestMetadata.xml servicetypes.xsd 
	HTTPservice.wsdl 
Log Message:
Factored the multipart serialization into it's own testcase.

--- NEW FILE: TestMetadata.xml ---
<?xml version="1.0"?>
<TestMetadata xmlns="http://www.w3.org/2006/02/wsdl/TestMetadata">
	<Identifier>
		http://dev.w3.org/cvsweb/2002/ws/desc/test-suite/documents/good/MessageMultipart-1G
	</Identifier>
	<Title>Good Document</Title>
	<Purpose>For testing interoperability</Purpose>
	<Description>Exercise the multipart serialization for purposes of exchanging messages with the HTTP binding.</Description>
	<Status>accepted</Status>
	<SpecRef></SpecRef>
	<Preconditions>none</Preconditions>
	<Inputs>
		<Input role="root">HTTPservice.wsdl</Input>
		<Input role="required-extension">http://www.w3.org/2006/01/wsdl/http</Input>
	</Inputs>
	<ExpectedResults>
		<Successful>true</Successful>
	</ExpectedResults>
	<Version>1.0</Version>
	<Contributor>
		<Name>Jonathan Marsh</Name>
		<Affiliation>WSO2</Affiliation>
		<EMail>jonathan@wso2.com</EMail>
	</Contributor>
	<Rights>http://www.w3.org/Consortium/Legal/2002/copyright-documents-20021231</Rights>
	<Grouping>/documents/good</Grouping>
	<SeeAlso><Reference>http://www.w3.org/TR/wsdl20</Reference></SeeAlso>
</TestMetadata>

--- NEW FILE: servicetypes.xsd ---
    <xs:schema elementFormDefault="qualified" targetNamespace="http://example.org/message-test/xsd"
      xmlns:xs="http://www.w3.org/2001/XMLSchema"
      xmlns:xsmt="http://example.org/message-test/xsd">
      
      <xs:element name="EchoName" type="xsmt:EchoStructType"/>
      <xs:element name="EchoName2" type="xsmt:EchoStructType"/>
      <xs:complexType name="EchoStructType">
        <xs:sequence>
          <xs:element name="FirstName" type="xs:string"/>
          <xs:element name="MiddleName" type="xs:string"/>
          <xs:element name="LastName" type="xs:string"/>
        </xs:sequence>
      </xs:complexType>

      <xs:element name="EchoNameFault" type="xsmt:FaultStructType"/>
      <xs:complexType name="FaultStructType">
        <xs:sequence>
          <xs:element name="Fault" type="xs:string"/>
          <xs:element name="FirstName" type="xs:string"/>
          <xs:element name="MiddleName" type="xs:string"/>
          <xs:element name="LastName" type="xs:string"/>
        </xs:sequence>
      </xs:complexType>
      <xs:element name="messageTestFault" type="xsmt:IntFaultStruct"/>
      <xs:complexType name="IntFaultStruct">
        <xs:all>
          <xs:element name="faultNumber" type="xs:int"/>
          <xs:element name="faultOperationName" type="xs:string"/>
        </xs:all>
      </xs:complexType>
    </xs:schema>

--- NEW FILE: HTTPservice.filename ---
<filename>MessageMultipart-1G/HTTPservice.wsdl</filename>

--- NEW FILE: HTTPservice.wsdl ---
<description xmlns="http://www.w3.org/2006/01/wsdl"
    targetNamespace="http://example.org/message-test" xmlns:tns="http://example.org/message-test"
    xmlns:whttp="http://www.w3.org/2006/01/wsdl/http" 
    xmlns:xsmt="http://example.org/message-test/xsd" xmlns:wsdlx="http://www.w3.org/2006/01/wsdl-extensions">

  <documentation><![CDATA[
    This test is factors the multipart binding out of MessageTest-2G, enabling separate testing
    and results for this case.
      
    When running a test pass against this WSDL, each endpoint should be invoked in order, and 
    each operation within the interface bound by that binding should be invoked in the order 
    it appears in the interface, extended interfaces first.  Thus the order will be:
        EchoName - simple structure echoing in-out operation.
          For the purposes of this test, the structure must match:
            <EchoName xmlns="http://example.org/message-test/xsd">
              <FirstName>myfirst</FirstName>
              <MiddleName>mymiddle</MiddleName>
              <LastName>mylast</LastName>
            </EchoName>
        EchoNameExpectFault - simple structure echoing in-out operation, but defined to return a fault.
        Send - one-way operation sending arbitrary XML payload.
        GuaranteedFault - robust-one-way operation, defined to return a simple fault.
  
  ]]></documentation>

  <types>
    <import xmlns="http://www.w3.org/2001/XMLSchema" schemaLocation="servicetypes.xsd"
      namespace="http://example.org/message-test/xsd"/>
  </types>

  <interface name="Echo">
    <fault name="EchoNameFault" element="xsmt:EchoNameFault"></fault>
    <operation name="EchoName" pattern="http://www.w3.org/2006/01/wsdl/in-out"
      style="http://www.w3.org/2006/01/wsdl/style/iri http://www.w3.org/2006/01/wsdl/style/multipart">
      <documentation>Invoke this operation with an EchoName element, and recieve the same EchoName element back.</documentation>
      <input element="xsmt:EchoName"/>
      <output element="xsmt:EchoName"/>
      <outfault ref="tns:EchoNameFault"/>
    </operation>
    <operation name="EchoNameExpectFault" pattern="http://www.w3.org/2006/01/wsdl/in-out"
      style="http://www.w3.org/2006/01/wsdl/style/iri">
      <documentation>Invoke this operation with an EchoName element, and recieve an EchoNameFault back, 
        with the text "rejected" and the first, middle and last names from the input message.</documentation>
      <input element="xsmt:EchoName2"/>
      <output element="xsmt:EchoName2"/>
      <outfault ref="tns:EchoNameFault"/>
    </operation>
    <operation name="Send" pattern="http://www.w3.org/2006/01/wsdl/in-only">
      <documentation>Invoke this operation with any XML payload.</documentation>
      <input element="#any"/>
    </operation>
    <operation name="GuaranteedFault" pattern="http://www.w3.org/2006/01/wsdl/robust-in-only">
      <documentation>Invoke this operation no input, and receive back an EchoNameFault, with the text
      "default" and some random first, middle, and last name information.</documentation>
      <input element="#none"/>
      <outfault ref="tns:EchoNameFault"/>
    </operation>
  </interface>

  <binding name="EchoMultipartHTTPBinding" interface="tns:Echo" type="http://www.w3.org/2006/01/wsdl/http"
    whttp:queryParameterSeparatorDefault=";">
    <documentation>
      This binding tests inputSerialization="multipart/form-data" and 
      [output|fault]Serialization="application/xml"
    </documentation>
    <fault ref="tns:EchoNameFault"/>
    <operation ref="tns:EchoName" whttp:location="EchoName?first={FirstName};middle={MiddleName};last={LastName}"
      whttp:ignoreUncited="true"
      whttp:inputSerialization="multipart/form-data"
      whttp:outputSerialization="application/xml"
      whttp:faultSerialization="application/xml">
      <input />
      <output />
      <outfault ref="tns:EchoNameFault" />
    </operation>
    <operation ref="tns:EchoNameExpectFault" whttp:location="EchoNameExpectFault"
      whttp:inputSerialization="multipart/form-data"
      whttp:outputSerialization="application/xml"
      whttp:faultSerialization="application/xml">
      <input />
      <output />
      <outfault ref="tns:EchoNameFault" />
    </operation>
    <operation ref="tns:Send" whttp:location="Send"
      whttp:inputSerialization="application/xml">
      <input />
    </operation>
    <operation ref="tns:GuaranteedFault" whttp:location="GuaranteedFault"
      whttp:inputSerialization="multipart/form-data"
      whttp:faultSerialization="application/xml">
      <input />
      <outfault ref="tns:EchoNameFault" />
    </operation>
  </binding>
  
  <service name="MessageMultipart1GService" interface="tns:Echo">
    <documentation>Exercise each endpoint in order.</documentation>
    <endpoint name="MessageTestMultipartHTTP" binding="tns:EchoMultipartHTTPBinding"
      address="http://example.org/MessageMultipart-1G/endpoint-1/"/>
  </service>
</description>
Received on Monday, 22 January 2007 09:15:18 GMT

This archive was generated by hypermail 2.2.0+W3C-0.50 : Monday, 22 January 2007 09:15:21 GMT