<?xml version="1.0" encoding="UTF-8"?>
<xs:schema targetNamespace="http://www.pacificspirit.com/ns/2005/05/WDL/" xmlns:tns="http://www.pacificspirit.com/ns/2005/05/WDL/" xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:element name="resources">
		<xs:complexType name="resourcesType">
			<xs:sequence>
				<xs:any namespace="##other" processContents="lax" maxOccurs="unbounded"/>
				<xs:element ref="tns:resource" maxOccurs="unbounded"/>
				<xs:any namespace="##other" processContents="lax" maxOccurs="unbounded"/>
			</xs:sequence>
		</xs:complexType>
	</xs:element>
	<xs:element name="resource">
		<xs:complexType name="resourceType">
			<xs:choice>
				<xs:element ref="tns:operation"/>
				<xs:element ref="tns:getoperation"/>			
				<xs:any namespace="##other" processContents="lax"/>
			</xs:choice>
			<xs:attribute name="location" type="xs:anyURI"/>
			<xs:attribute name="authenticationType" type="xs:string"/>
			<xs:attribute name="authenticationRealm" type="xs:string"/>
			<xs:attribute name="httpVersion" type="xs:string"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="operation">
		<xs:complexType name="operationType">
			<xs:sequence>
				<xs:element ref="tns:input" maxOccurs="unbounded"/>
				<xs:element ref="tns:output" maxOccurs="unbounded"/>
				<xs:any namespace="##other" processContents="lax"/>
			</xs:sequence>
			<xs:attribute name="method" type="xs:string"/>
			<xs:attribute name="location" type="xs:string"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="input">
		<xs:complexType name="inputType">
			<xs:sequence>
				<xs:element ref="tns:header" minOccurs="0" maxOccurs="unbounded"/>
			</xs:sequence>
			<xs:attribute name="ref" type="xs:QName"/>
			<xs:attribute name="transferCoding" type="xs:string"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="output">
		<xs:complexType name="outputType">
			<xs:sequence>
				<xs:element ref="tns:header" minOccurs="0" maxOccurs="unbounded"/>
			</xs:sequence>
			<xs:attribute name="code" type="xs:string"/>
			<xs:attribute name="ref" type="xs:QName"/>
			<xs:attribute name="transferCoding" type="xs:string"/>
		</xs:complexType>
	</xs:element>		
	<xs:element name="header">
		<xs:complexType name="headerType">
			<xs:sequence/>
			<xs:attribute name="headerName" type="xs:string"/>
			<xs:attribute name="ref" type="xs:QName"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="getoperation">
		<xs:complexType name="operationType">
			<xs:sequence>
				<xs:element ref="tns:output" minOccurs="1" maxOccurs="unbounded"/>
				<xs:any namespace="##other" processContents="lax"/>
			</xs:sequence>
			<xs:attribute name="method" type="xs:string" use="prohibited"/>
			<xs:attribute name="location" type="xs:string"/>
		</xs:complexType>
	</xs:element>

</xs:schema>
