<?xml version="1.0" encoding="UTF-8"?>
<!-- edited with XMLSpy v2013 (http://www.altova.com) by Mr. Nobody (Altova GmbH) -->
<xs:schema xmlns="http://www.altova.com/documentation" xmlns:xs="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.altova.com/documentation" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:include schemaLocation="../Schema/SchemaDocumentation.xsd"/>
	<xs:element name="WSDLDocumentation">
		<xs:annotation>
			<xs:documentation>Root element of the WSDL documentation</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:sequence>
				<xs:element ref="Document"/>
				<xs:element name="DocumentationSettings">
					<xs:complexType>
						<xs:sequence>
							<xs:element name="Includes">
								<xs:complexType>
									<xs:attribute name="overview" type="xs:boolean" use="required"/>
									<xs:attribute name="referencedFiles" type="xs:boolean" use="required"/>
									<xs:attribute name="types" type="xs:boolean" use="required"/>
									<xs:attribute name="service" type="xs:boolean" use="required"/>
									<xs:attribute name="binding" type="xs:boolean" use="required"/>
									<xs:attribute name="portType" type="xs:boolean" use="required"/>
									<xs:attribute name="messages" type="xs:boolean" use="required"/>
								</xs:complexType>
							</xs:element>
							<xs:element name="Details">
								<xs:complexType>
									<xs:attribute name="typesDiagram" type="xs:boolean" use="required"/>
									<xs:attribute name="serviceDiagram" type="xs:boolean" use="required"/>
									<xs:attribute name="bindingDiagram" type="xs:boolean" use="required"/>
									<xs:attribute name="portTypeDiagram" type="xs:boolean" use="required"/>
									<xs:attribute name="messageParts" type="xs:boolean" use="required"/>
									<xs:attribute name="sourceCode" type="xs:boolean" use="required"/>
									<xs:attribute name="extensibilities" type="xs:boolean" use="required"/>
									<xs:attribute name="usedBy" type="xs:boolean" use="required"/>
									<xs:attribute name="port" type="xs:boolean" use="required"/>
									<xs:attribute name="portTypeOperations" type="xs:boolean" use="required"/>
								</xs:complexType>
							</xs:element>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
				<xs:element name="WSDLDocument">
					<xs:complexType>
						<xs:attribute name="wsdlLocation" type="xs:anyURI" use="required"/>
						<xs:attribute name="href" type="xs:anyURI" use="required"/>
						<xs:attribute name="targetNamespace" type="xs:string" use="required"/>
					</xs:complexType>
				</xs:element>
				<xs:choice minOccurs="0" maxOccurs="unbounded">
					<xs:element ref="Service"/>
					<xs:element ref="Binding"/>
					<xs:element ref="PortType"/>
					<xs:element ref="Message"/>
					<xs:element ref="SchemaDocument"/>
				</xs:choice>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="Service">
		<xs:complexType mixed="true">
			<xs:complexContent>
				<xs:extension base="TNamedItem">
					<xs:sequence>
						<xs:element ref="Documentations" minOccurs="0"/>
						<xs:element ref="Diagram" minOccurs="0"/>
						<xs:element ref="ImportedFrom" minOccurs="0"/>
						<xs:element name="Ports" minOccurs="0">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="Port" minOccurs="0" maxOccurs="unbounded">
										<xs:complexType mixed="true">
											<xs:complexContent>
												<xs:extension base="TNamedItem">
													<xs:sequence>
														<xs:element ref="Documentations" minOccurs="0"/>
														<xs:element name="Binding" type="TText" minOccurs="0"/>
														<xs:element ref="Extensibility" minOccurs="0"/>
													</xs:sequence>
												</xs:extension>
											</xs:complexContent>
										</xs:complexType>
									</xs:element>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
						<xs:element ref="Source" minOccurs="0"/>
					</xs:sequence>
					<xs:attribute name="newFile" type="xs:anyURI"/>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
	<xs:element name="Binding">
		<xs:complexType mixed="true">
			<xs:complexContent>
				<xs:extension base="TNamedItem">
					<xs:sequence>
						<xs:element ref="Documentations" minOccurs="0"/>
						<xs:element ref="Diagram" minOccurs="0"/>
						<xs:element ref="ImportedFrom" minOccurs="0"/>
						<xs:element name="Type" type="TText" minOccurs="0"/>
						<xs:element ref="Extensibility" minOccurs="0"/>
						<xs:element name="Operations" minOccurs="0">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="Operation" minOccurs="0" maxOccurs="unbounded">
										<xs:complexType mixed="true">
											<xs:sequence>
												<xs:element ref="Documentations" minOccurs="0"/>
												<xs:element ref="Extensibility" minOccurs="0"/>
												<xs:element name="Input" type="TSource" minOccurs="0"/>
												<xs:element name="Output" type="TSource" minOccurs="0"/>
											</xs:sequence>
											<xs:attribute name="name" type="xs:string" use="required"/>
										</xs:complexType>
									</xs:element>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
						<xs:element name="UsedBy" minOccurs="0">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="By" minOccurs="0" maxOccurs="unbounded">
										<xs:complexType>
											<xs:sequence>
												<xs:element name="Port" type="TText" minOccurs="0"/>
												<xs:element name="Service" type="TText" minOccurs="0"/>
											</xs:sequence>
										</xs:complexType>
									</xs:element>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
						<xs:element ref="Source" minOccurs="0"/>
					</xs:sequence>
					<xs:attribute name="newFile" type="xs:anyURI"/>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
	<xs:element name="PortType">
		<xs:complexType mixed="true">
			<xs:complexContent>
				<xs:extension base="TNamedItem">
					<xs:sequence>
						<xs:element ref="Documentations" minOccurs="0"/>
						<xs:element ref="Diagram" minOccurs="0"/>
						<xs:element ref="ImportedFrom" minOccurs="0"/>
						<xs:element name="Operations" minOccurs="0">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="Operation" minOccurs="0" maxOccurs="unbounded">
										<xs:complexType mixed="true">
											<xs:complexContent>
												<xs:extension base="TNamedItem">
													<xs:sequence>
														<xs:element ref="Documentations" minOccurs="0"/>
														<xs:element name="Messages" minOccurs="0">
															<xs:complexType>
																<xs:sequence>
																	<xs:element name="Message" minOccurs="0" maxOccurs="unbounded">
																		<xs:complexType mixed="true">
																			<xs:sequence>
																				<xs:element ref="Documentations" minOccurs="0"/>
																			</xs:sequence>
																			<xs:attribute name="type" type="xs:string" use="required"/>
																			<xs:attribute name="name" type="xs:string" use="required"/>
																			<xs:attribute name="ref" type="xs:string">
																				<xs:annotation>
																					<xs:documentation>Specifies link to another component in the documentation.</xs:documentation>
																				</xs:annotation>
																			</xs:attribute>
																		</xs:complexType>
																	</xs:element>
																</xs:sequence>
															</xs:complexType>
														</xs:element>
													</xs:sequence>
												</xs:extension>
											</xs:complexContent>
										</xs:complexType>
									</xs:element>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
						<xs:element name="UsedBy" minOccurs="0">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="Binding" type="TText" minOccurs="0"/>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
						<xs:element ref="Source" minOccurs="0"/>
					</xs:sequence>
					<xs:attribute name="newFile" type="xs:anyURI"/>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
	<xs:element name="Message">
		<xs:complexType mixed="true">
			<xs:complexContent>
				<xs:extension base="TNamedItem">
					<xs:sequence>
						<xs:element ref="Documentations" minOccurs="0"/>
						<xs:element ref="ImportedFrom" minOccurs="0"/>
						<xs:element name="Parts" minOccurs="0">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="Part" minOccurs="0" maxOccurs="unbounded">
										<xs:complexType>
											<xs:sequence>
												<xs:choice>
													<xs:element name="Element" type="TText"/>
													<xs:element name="Type" type="TText"/>
												</xs:choice>
												<xs:element ref="Documentations" minOccurs="0"/>
											</xs:sequence>
											<xs:attribute name="name" type="xs:string" use="required"/>
										</xs:complexType>
									</xs:element>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
						<xs:element name="UsedBy" minOccurs="0">
							<xs:complexType>
								<xs:sequence>
									<xs:element name="By" minOccurs="0" maxOccurs="unbounded">
										<xs:complexType>
											<xs:sequence>
												<xs:element name="Operation" type="TText"/>
												<xs:element name="PortType" type="TText"/>
											</xs:sequence>
										</xs:complexType>
									</xs:element>
								</xs:sequence>
							</xs:complexType>
						</xs:element>
						<xs:element ref="Source" minOccurs="0"/>
					</xs:sequence>
					<xs:attribute name="newFile" type="xs:anyURI"/>
				</xs:extension>
			</xs:complexContent>
		</xs:complexType>
	</xs:element>
	<xs:element name="Documentations">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="Documentation" type="xs:string" minOccurs="0" maxOccurs="unbounded"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="Extensibility" type="TSource"/>
	<xs:element name="ImportedFrom" type="xs:string"/>
</xs:schema>
