blob: 378ad516d71ec5670efda1c955d7fbb35ac29c22 [file] [log] [blame]
<!--
Copyright (c) 2017, 2018 Oracle and/or its affiliates. All rights reserved.
This program and the accompanying materials are made available under the
terms of the Eclipse Public License v. 2.0, which is available at
http://www.eclipse.org/legal/epl-2.0.
This Source Code may also be made available under the following Secondary
Licenses when the conditions for such availability set forth in the
Eclipse Public License v. 2.0 are satisfied: GNU General Public License,
version 2 with the GNU Classpath Exception, which is available at
https://www.gnu.org/software/classpath/license.html.
SPDX-License-Identifier: EPL-2.0 OR GPL-2.0 WITH Classpath-exception-2.0
-->
<definitions
name="HelloTest"
targetNamespace="urn:test"
xmlns="http://schemas.xmlsoap.org/wsdl/"
xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
xmlns:ttns="urn:test:types"
xmlns:tns="urn:test">
<types>
<xsd:schema targetNamespace="urn:test:types">
<xsd:element name="Test1Response" type="ttns:Test1ResponseType"/>
<xsd:complexType name="Test1ResponseType">
<xsd:sequence>
<xsd:element name="c" type="xsd:int"/>
<xsd:element name="d" type="xsd:int"/>
</xsd:sequence>
</xsd:complexType>
<!-- Case 1A -->
<xsd:element name="Root1A" type="ttns:Root1AType"/>
<xsd:complexType name="Root1AType">
<xsd:sequence>
<xsd:element name="data1a" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
<!-- Case 1A Simple-->
<xsd:element name="Root1ASimple" type="ttns:Root1ATypeSimple"/>
<xsd:simpleType name="Root1ATypeSimple">
<xsd:restriction base="xsd:string">
<xsd:enumeration value="oneASimple1" />
<xsd:enumeration value="oneASimple2" />
</xsd:restriction>
</xsd:simpleType>
<!-- Case 1B -->
<xsd:element name="Root1B">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="data1b" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<!-- Case 2A -->
<xsd:element name="Root2A" type="xsd:string"/>
<!-- Case 2B -->
<xsd:element name="Root2B" type="ttns:Root2BType"/>
<xsd:complexType name="Root2BType">
<xsd:sequence>
<xsd:element name="Inside2B">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="data2b" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
<!-- Case 1B and Case 2B -->
<xsd:element name="Root1B2B">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Inside1B2B">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="data1b2b" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<!-- Case 3A -->
<xsd:element name="Root3A">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="Inside3A1" minOccurs="1" maxOccurs="2">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="data3a1" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<xsd:element name="Inside3A2" maxOccurs="unbounded">
<xsd:complexType>
<xsd:sequence>
<xsd:element name="data3a2" type="xsd:string"/>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
</xsd:sequence>
</xsd:complexType>
</xsd:element>
<!-- Case 1B Simple -->
<xsd:element name="Root1BSimple">
<xsd:simpleType>
<xsd:restriction base="xsd:string">
<xsd:enumeration value="String1" />
<xsd:enumeration value="String2" />
</xsd:restriction>
</xsd:simpleType>
</xsd:element>
</xsd:schema>
</types>
<message name="TestRequest1A">
<part name="oneA" element="ttns:Root1A"/>
</message>
<message name="TestRequest1ASimple">
<part name="oneA" element="ttns:Root1ASimple"/>
</message>
<message name="TestRequest1B">
<part name="oneB" element="ttns:Root1B"/>
</message>
<message name="TestRequest1BSimple">
<part name="oneB" element="ttns:Root1BSimple"/>
</message>
<message name="TestRequest2A">
<part name="twoA" element="ttns:Root2A"/>
</message>
<message name="TestRequest2B">
<part name="twoB" element="ttns:Root2B"/>
</message>
<message name="TestRequest1B2B">
<part name="oneBtwoB" element="ttns:Root1B2B"/>
</message>
<message name="TestRequest3A">
<part name="threeA" element="ttns:Root3A"/>
</message>
<message name="Test1Response">
<part name="result" element="ttns:Test1Response"/>
</message>
<portType name="Test1A">
<operation name="test1">
<input message="tns:TestRequest1A"/>
<output message="tns:Test1Response"/>
</operation>
</portType>
<portType name="Test1ASimple">
<operation name="test1">
<input message="tns:TestRequest1ASimple"/>
<output message="tns:Test1Response"/>
</operation>
</portType>
<portType name="Test1B">
<operation name="test1">
<input message="tns:TestRequest1B"/>
<output message="tns:Test1Response"/>
</operation>
</portType>
<portType name="Test1BSimple">
<operation name="test1">
<input message="tns:TestRequest1BSimple"/>
<output message="tns:Test1Response"/>
</operation>
</portType>
<portType name="Test2A">
<operation name="test1">
<input message="tns:TestRequest2A"/>
<output message="tns:Test1Response"/>
</operation>
</portType>
<portType name="Test2B">
<operation name="test1">
<input message="tns:TestRequest2B"/>
<output message="tns:Test1Response"/>
</operation>
</portType>
<portType name="Test1B2B">
<operation name="test1">
<input message="tns:TestRequest1B2B"/>
<output message="tns:Test1Response"/>
</operation>
</portType>
<portType name="Test3A">
<operation name="test1">
<input message="tns:TestRequest3A"/>
<output message="tns:Test1Response"/>
</operation>
</portType>
<binding name="TestBinding1A" type="tns:Test1A">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="test1">
<soap:operation soapAction=""/>
<input> <soap:body use="literal"/> </input>
<output> <soap:body use="literal"/> </output>
</operation>
</binding>
<binding name="TestBinding1ASimple" type="tns:Test1ASimple">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="test1">
<soap:operation soapAction=""/>
<input> <soap:body use="literal"/> </input>
<output> <soap:body use="literal"/> </output>
</operation>
</binding>
<binding name="TestBinding1B" type="tns:Test1B">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="test1">
<soap:operation soapAction=""/>
<input> <soap:body use="literal"/> </input>
<output> <soap:body use="literal"/> </output>
</operation>
</binding>
<binding name="TestBinding1BSimple" type="tns:Test1BSimple">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="test1">
<soap:operation soapAction=""/>
<input> <soap:body use="literal"/> </input>
<output> <soap:body use="literal"/> </output>
</operation>
</binding>
<binding name="TestBinding2A" type="tns:Test2A">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="test1">
<soap:operation soapAction=""/>
<input> <soap:body use="literal"/> </input>
<output> <soap:body use="literal"/> </output>
</operation>
</binding>
<binding name="TestBinding2B" type="tns:Test2B">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="test1">
<soap:operation soapAction=""/>
<input> <soap:body use="literal"/> </input>
<output> <soap:body use="literal"/> </output>
</operation>
</binding>
<binding name="TestBinding1B2B" type="tns:Test1B2B">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="test1">
<soap:operation soapAction=""/>
<input> <soap:body use="literal"/> </input>
<output> <soap:body use="literal"/> </output>
</operation>
</binding>
<binding name="TestBinding3A" type="tns:Test3A">
<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
<operation name="test1">
<soap:operation soapAction=""/>
<input> <soap:body use="literal"/> </input>
<output> <soap:body use="literal"/> </output>
</operation>
</binding>
<service name="TestService">
<port name="TestPort1A" binding="tns:TestBinding1A">
<soap:address location="http://test.org/test"/>
</port>
<port name="TestPort1ASimple" binding="tns:TestBinding1ASimple">
<soap:address location="http://test.org/test"/>
</port>
<port name="TestPort1B" binding="tns:TestBinding1B">
<soap:address location="http://test.org/test"/>
</port>
<port name="TestPort1BSimple" binding="tns:TestBinding1BSimple">
<soap:address location="http://test.org/test"/>
</port>
<port name="TestPort2A" binding="tns:TestBinding2A">
<soap:address location="http://test.org/test"/>
</port>
<port name="TestPort2B" binding="tns:TestBinding2B">
<soap:address location="http://test.org/test"/>
</port>
<port name="TestPort1B2B" binding="tns:TestBinding1B2B">
<soap:address location="http://test.org/test"/>
</port>
<port name="TestPort3A" binding="tns:TestBinding3A">
<soap:address location="http://test.org/test"/>
</port>
</service>
</definitions>