1+ <?xml version =" 1.0" encoding =" UTF-8" ?>
2+ <schema xmlns =" http://www.w3.org/2001/XMLSchema"
3+ targetNamespace =" http://www.springframework.org/spring-ws/samples/airline/schemas"
4+ xmlns : tns =" http://www.springframework.org/spring-ws/samples/airline/schemas" elementFormDefault =" qualified" >
5+
6+ <element name =" GetFlightsRequest" >
7+ <complexType >
8+ <all >
9+ <element name =" from" type =" tns:AirportCode" />
10+ <element name =" to" type =" tns:AirportCode" />
11+ <element name =" departureDate" type =" date" />
12+ <element name =" serviceClass" type =" tns:ServiceClass" minOccurs =" 0" />
13+ </all >
14+ </complexType >
15+ </element >
16+
17+ <element name =" GetFlightsResponse" >
18+ <complexType >
19+ <sequence >
20+ <element name =" flight" type =" tns:Flight" minOccurs =" 0" maxOccurs =" unbounded" />
21+ </sequence >
22+ </complexType >
23+ </element >
24+
25+ <element name =" GetFlightsFault" >
26+ <complexType >
27+ <sequence >
28+ <element name =" errorCode" type =" string" />
29+ </sequence >
30+ </complexType >
31+ </element >
32+
33+ <element name =" BookFlightRequest" >
34+ <complexType >
35+ <all >
36+ <element name =" flightNumber" type =" tns:FlightNumber" />
37+ <element name =" departureTime" type =" dateTime" />
38+ <element name =" passengers" >
39+ <complexType >
40+ <choice maxOccurs =" 9" >
41+ <element name =" passenger" type =" tns:Name" />
42+ <element name =" username" type =" tns:FrequentFlyerUsername" />
43+ </choice >
44+ </complexType >
45+ </element >
46+ </all >
47+ </complexType >
48+ </element >
49+
50+ <element name =" BookFlightResponse" type =" tns:Ticket" />
51+
52+ <element name =" GetFrequentFlyerMileageRequest" />
53+
54+ <element name =" GetFrequentFlyerMileageResponse" type =" int" />
55+
56+
57+ <complexType name =" Flight" >
58+ <sequence >
59+ <element name =" number" type =" tns:FlightNumber" />
60+ <element name =" departureTime" type =" dateTime" />
61+ <element name =" from" type =" tns:Airport" />
62+ <element name =" arrivalTime" type =" dateTime" />
63+ <element name =" to" type =" tns:Airport" />
64+ <element name =" serviceClass" type =" tns:ServiceClass" />
65+ </sequence >
66+ </complexType >
67+
68+ <simpleType name =" FlightNumber" >
69+ <restriction base =" string" >
70+ <pattern value =" [A-Z][A-Z][0-9][0-9][0-9][0-9]" />
71+ </restriction >
72+ </simpleType >
73+
74+ <complexType name =" Name" >
75+ <sequence >
76+ <element name =" first" type =" string" />
77+ <element name =" last" type =" string" />
78+ </sequence >
79+ </complexType >
80+
81+ <simpleType name =" FrequentFlyerUsername" >
82+ <restriction base =" string" />
83+ </simpleType >
84+
85+
86+ <complexType name =" Airport" >
87+ <all >
88+ <element name =" code" type =" tns:AirportCode" />
89+ <element name =" name" type =" string" />
90+ <element name =" city" type =" string" />
91+ </all >
92+ </complexType >
93+
94+ <simpleType name =" AirportCode" >
95+ <restriction base =" string" >
96+ <pattern value =" [A-Z][A-Z][A-Z]" />
97+ </restriction >
98+ </simpleType >
99+
100+
101+ <complexType name =" Ticket" >
102+ <all >
103+ <element name =" id" type =" long" />
104+ <element name =" issueDate" type =" date" />
105+ <element name =" passengers" >
106+ <complexType >
107+ <sequence >
108+ <element name =" passenger" type =" tns:Name" maxOccurs =" 9" />
109+ </sequence >
110+ </complexType >
111+ </element >
112+ <element name =" flight" type =" tns:Flight" />
113+ </all >
114+ </complexType >
115+
116+ <simpleType name =" ServiceClass" >
117+ <restriction base =" NCName" >
118+ <enumeration value =" economy" />
119+ <enumeration value =" business" />
120+ <enumeration value =" first" />
121+ </restriction >
122+ </simpleType >
123+
124+
125+ </schema >
0 commit comments