<?xml version="1.0"?>
<definitions name="EdecBordereauService" 
	targetNamespace="http://www.e-dec.ch/services/EdecBordereauService/v1/" 
	xmlns:tns="http://www.e-dec.ch/services/EdecBordereauService/v1/" 
	xmlns:xsd="http://www.w3.org/2001/XMLSchema" 
	xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
	xmlns:bordereauRequest="http://www.e-dec.ch/xml/schema/edecBordereauRequest/v1" 
	xmlns:bordereauResponse="http://www.e-dec.ch/xml/schema/edecBordereauResponse/v1" 
	xmlns="http://schemas.xmlsoap.org/wsdl/" 
	xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy"
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">

	<documentation>Service for the SYNCHRONOUS submission of e-dec bordereau requests.</documentation>

	<wsp:Policy wsu:Id="DigitalSignatureWithCertificateAndTimestampPolicy" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsse="http://schemas.xmlsoap.org/ws/2002/12/secext"
	            xmlns:wsrmp="http://schemas.xmlsoap.org/ws/2005/02/rm/policy" xmlns:sp="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy">
		<wsp:ExactlyOne>
			<wsp:All alternative-id="DigitalSignatureWithCertificateAndTimestampPolicy">
				<sp:AsymmetricBinding>
					<wsp:Policy>
						<sp:IncludeTimestamp/>
						<sp:AlgorithmSuite>
							<wsp:Policy>
								<sp:TripleDesRsa15/>
							</wsp:Policy>
						</sp:AlgorithmSuite>
						<sp:RecipientToken>
							<wsp:Policy>
								<sp:X509Token IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Always"/>
							</wsp:Policy>
						</sp:RecipientToken>
						<sp:InitiatorToken>
							<wsp:Policy>
								<sp:X509Token IncludeToken="http://schemas.xmlsoap.org/ws/2005/07/securitypolicy/IncludeToken/Always"/>
							</wsp:Policy>
						</sp:InitiatorToken>
					</wsp:Policy>
				</sp:AsymmetricBinding>
				<sp:SignedParts>
					<sp:Body/>
				</sp:SignedParts>
			</wsp:All>
		</wsp:ExactlyOne>
	</wsp:Policy>

	<types>
		<xsd:schema>
			<xsd:import namespace="http://www.e-dec.ch/xml/schema/edecBordereauRequest/v1" schemaLocation="http://www.ezv.admin.ch/pdf_linker.php?doc=edecBordereauRequest_v_0_1"/>
		</xsd:schema>
		<xsd:schema>
			<xsd:import namespace="http://www.e-dec.ch/xml/schema/edecBordereauResponse/v1" schemaLocation="http://www.ezv.admin.ch/pdf_linker.php?doc=edecBordereauResponse_v_0_1"/>
		</xsd:schema>
	</types>

	<message name="bordereauRequestRequest">
		<documentation>Contains the parameters for a bordereau request.</documentation>
		<part name="parameters" element="bordereauRequest:bordereauRequest"/>
	</message>

	<message name="bordereauRequestResponse">
		<documentation>Contains a list of bordereau numbers or a concrete bordereau.</documentation>
		<part name="parameters" element="bordereauResponse:bordereauRequestResponse"/>
	</message>

	<message name="bordereauRequestFault">
		<documentation>Contains the reason why the request failed.</documentation>
		<part name="parameters" element="bordereauResponse:bordereauRequestResponse"/>
	</message>

	<portType name="EdecBordereauPortType">
		<operation name="bordereauRequest">
			<input message="tns:bordereauRequestRequest"/>
			<output message="tns:bordereauRequestResponse" wsp:PolicyURIs="#DigitalSignatureWithCertificateAndTimestampPolicy"/>
			<fault message="tns:bordereauRequestFault" name="bordereauRequestFault"/>
		</operation>
	</portType>

	<binding name="EdecBordereauBinding" type="tns:EdecBordereauPortType">
		<soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
		<operation name="bordereauRequest">
			<soap:operation soapAction="bordereauRequest" style="document"/>
			<input>
				<soap:body use="literal" parts="parameters"/>
			</input>
			<output>
				<soap:body use="literal" parts="parameters"/>
			</output>
			<fault name="bordereauRequestFault">
				<soap:fault name="bordereauRequestFault" use="literal"/>
			</fault>
		</operation>
	</binding>


	<service name="EdecBordereauService">
		<documentation>Submit a bordereau request to e-dec and receive a synchronous response. 
				Note that a client certificate is required for authentication.</documentation>
		<port name="EdecBordereauPort" binding="tns:EdecBordereauBinding">
			<soap:address location="https://ws.edec-a.ezv.admin.ch/services/EdecBordereauService/v1"/>
		</port>
	</service>
</definitions>