summaryrefslogtreecommitdiff
path: root/ext/soap/tests/bugs/bug36575.wsdl
blob: 0f1899bcd59d941beeccc80b82d934718142a7b1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
<?xml version="1.0" encoding="utf-8"?>
<definitions name="shoppingcart"
	xmlns="http://schemas.xmlsoap.org/wsdl/"
	xmlns:tns="urn:test.soap#" targetNamespace="urn:test.soap#"
	xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
	xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
	xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
	xmlns:xs="http://www.w3.org/2001/XMLSchema"
	xmlns:types="urn:test.soap.types#">
	<!-- all datatypes will be imported to namespace types: -->
	<types>
		<xs:schema
			xmlns:xs="http://www.w3.org/2001/XMLSchema"
			xmlns:soap = "http://schemas.xmlsoap.org/wsdl/soap/"
			xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/"
			xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/"
			xmlns:tns="urn:test.soap.types#"
			targetNamespace="urn:test.soap.types#">

			<xs:complexType name="A1">
				<xs:all>
					<xs:element name="var1" type="xs:string" nillable="true"/>
				</xs:all>
			</xs:complexType>

			<xs:complexType name="A2">
				<xs:complexContent>
					<xs:extension base="tns:A1">
						<xs:all>
							<xs:element name="var2" type="xs:string" nillable="true"/>
						</xs:all>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>

			 <xs:complexType name="A3">
				<xs:complexContent>
					<xs:extension base="tns:A2">
						<xs:all>
							<xs:element name="var3" type="xs:string" nillable="true"/>
						</xs:all>
					</xs:extension>
				</xs:complexContent>
			</xs:complexType>
		</xs:schema>
	</types>

	<message name="test-request">
		<part name="a1" type="types:A1"/>
	</message>
	<message name="test-response">
		<part name="result" type="types:A2"/>
	</message>

	<portType name="catalog-porttype">
		<operation name="test" parameterOrder="a1">
			<input name="test-request" message="tns:test-request"/>
			<output name="test-response" message="tns:test-response"/>
		</operation>
	</portType>

	<!-- @type doesn't like tns: -->
	<binding name="catalog-binding" type="tns:catalog-porttype">
		<soap:binding style="rpc"
			transport="http://schemas.xmlsoap.org/soap/http"/>

		<operation name="test">
			<soap:operation soapAction="urn:test.soap#test"/>
			<input>
				<soap:body use="encoded" namespace="urn:test.soap#"
				encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
			</input>
			<output>
				<soap:body use="encoded" namespace="urn:test.soap#"
				encodingStyle="http://schemas.xmlsoap.org/soap/encoding/"/>
			</output>
		</operation>
	</binding>

	<service name="catalog">
		<!-- @binding doesn't like to be tns: -->
		<port name="catalog-port" binding="tns:catalog-binding">
			<soap:address location="xxxxxxxx"/>
		</port>
	</service>

</definitions>