<?xml version="1.0" encoding="utf-8"?>
<wsdl:definitions xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex" xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy" xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://www.elisa.fi/kulva" xmlns:wsa10="http://www.w3.org/2005/08/addressing" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" name="Kulva" targetNamespace="http://www.elisa.fi/kulva">
	<wsp:Policy wsu:Id="BasicHttpBinding_IKulva_policy">
		<wsp:ExactlyOne>
			<wsp:All>
				<http:NegotiateAuthentication xmlns:http="http://schemas.microsoft.com/ws/06/2004/policy/http"/>
			</wsp:All>
		</wsp:ExactlyOne>
	</wsp:Policy>
	<wsdl:types>
		<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" targetNamespace="http://www.elisa.fi/kulva">
			<xs:import namespace="http://schemas.datacontract.org/2004/07/KulvaWCF"/>
			<xs:element name="Stamp">
				<xs:complexType>
					<xs:sequence>
						<xs:element xmlns:q1="http://schemas.datacontract.org/2004/07/KulvaWCF" minOccurs="0" name="entry" nillable="true" type="q1:Entry"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="StampResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element xmlns:q2="http://schemas.datacontract.org/2004/07/KulvaWCF" minOccurs="0" name="StampResult" nillable="true" type="q2:GenericResult"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="Stamps">
				<xs:complexType>
					<xs:sequence>
						<xs:element xmlns:q3="http://schemas.datacontract.org/2004/07/KulvaWCF" minOccurs="0" name="entries" nillable="true" type="q3:ArrayOfEntry"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="StampsResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element xmlns:q4="http://schemas.datacontract.org/2004/07/KulvaWCF" minOccurs="0" name="StampsResult" nillable="true" type="q4:ArrayOfGenericResult"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="HeartBeat">
				<xs:complexType>
					<xs:sequence>
						<xs:element xmlns:q5="http://schemas.datacontract.org/2004/07/KulvaWCF" minOccurs="0" name="identity" nillable="true" type="q5:Identity"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="HeartBeatResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element xmlns:q6="http://schemas.datacontract.org/2004/07/KulvaWCF" minOccurs="0" name="HeartBeatResult" nillable="true" type="q6:GenericResult"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="HeartBeats">
				<xs:complexType>
					<xs:sequence>
						<xs:element xmlns:q7="http://schemas.datacontract.org/2004/07/KulvaWCF" minOccurs="0" name="identities" nillable="true" type="q7:ArrayOfIdentity"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="HeartBeatsResponse">
				<xs:complexType>
					<xs:sequence>
						<xs:element xmlns:q8="http://schemas.datacontract.org/2004/07/KulvaWCF" minOccurs="0" name="HeartBeatsResult" nillable="true" type="q8:ArrayOfGenericResult"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:schema>
		<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://schemas.microsoft.com/2003/10/Serialization/" attributeFormDefault="qualified" elementFormDefault="qualified" targetNamespace="http://schemas.microsoft.com/2003/10/Serialization/">
			<xs:element name="anyType" nillable="true" type="xs:anyType"/>
			<xs:element name="anyURI" nillable="true" type="xs:anyURI"/>
			<xs:element name="base64Binary" nillable="true" type="xs:base64Binary"/>
			<xs:element name="boolean" nillable="true" type="xs:boolean"/>
			<xs:element name="byte" nillable="true" type="xs:byte"/>
			<xs:element name="dateTime" nillable="true" type="xs:dateTime"/>
			<xs:element name="decimal" nillable="true" type="xs:decimal"/>
			<xs:element name="double" nillable="true" type="xs:double"/>
			<xs:element name="float" nillable="true" type="xs:float"/>
			<xs:element name="int" nillable="true" type="xs:int"/>
			<xs:element name="long" nillable="true" type="xs:long"/>
			<xs:element name="QName" nillable="true" type="xs:QName"/>
			<xs:element name="short" nillable="true" type="xs:short"/>
			<xs:element name="string" nillable="true" type="xs:string"/>
			<xs:element name="unsignedByte" nillable="true" type="xs:unsignedByte"/>
			<xs:element name="unsignedInt" nillable="true" type="xs:unsignedInt"/>
			<xs:element name="unsignedLong" nillable="true" type="xs:unsignedLong"/>
			<xs:element name="unsignedShort" nillable="true" type="xs:unsignedShort"/>
			<xs:element name="char" nillable="true" type="tns:char"/>
			<xs:simpleType name="char">
				<xs:restriction base="xs:int"/>
			</xs:simpleType>
			<xs:element name="duration" nillable="true" type="tns:duration"/>
			<xs:simpleType name="duration">
				<xs:restriction base="xs:duration">
					<xs:pattern value="\-?P(\d*D)?(T(\d*H)?(\d*M)?(\d*(\.\d*)?S)?)?"/>
					<xs:minInclusive value="-P10675199DT2H48M5.4775808S"/>
					<xs:maxInclusive value="P10675199DT2H48M5.4775807S"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:element name="guid" nillable="true" type="tns:guid"/>
			<xs:simpleType name="guid">
				<xs:restriction base="xs:string">
					<xs:pattern value="[\da-fA-F]{8}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{4}-[\da-fA-F]{12}"/>
				</xs:restriction>
			</xs:simpleType>
			<xs:attribute name="FactoryType" type="xs:QName"/>
			<xs:attribute name="Id" type="xs:ID"/>
			<xs:attribute name="Ref" type="xs:IDREF"/>
		</xs:schema>
		<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:tns="http://schemas.datacontract.org/2004/07/KulvaWCF" elementFormDefault="qualified" targetNamespace="http://schemas.datacontract.org/2004/07/KulvaWCF">
			<xs:complexType name="Entry">
				<xs:sequence>
					<xs:element name="Identity" nillable="true" type="tns:Identity"/>
					<xs:element name="CardId" nillable="true" type="xs:string"/>
					<xs:element name="ReasonCode" nillable="true" type="xs:string"/>
					<xs:element name="OccurredTime" type="xs:dateTime"/>
					<xs:element minOccurs="0" name="EndTime" nillable="true" type="xs:dateTime"/>
				</xs:sequence>
			</xs:complexType>
			<xs:element name="Entry" nillable="true" type="tns:Entry"/>
			<xs:complexType name="Identity">
				<xs:sequence>
					<xs:element name="ClientId" nillable="true" type="xs:string"/>
					<xs:element name="DeviceId" nillable="true" type="xs:string"/>
				</xs:sequence>
			</xs:complexType>
			<xs:element name="Identity" nillable="true" type="tns:Identity"/>
			<xs:complexType name="GenericResult">
				<xs:sequence>
					<xs:element minOccurs="0" name="DeviceId" nillable="true" type="xs:string"/>
					<xs:element minOccurs="0" name="CardId" nillable="true" type="xs:string"/>
					<xs:element minOccurs="0" name="Code" type="xs:int"/>
					<xs:element minOccurs="0" name="Message" nillable="true" type="xs:string"/>
				</xs:sequence>
			</xs:complexType>
			<xs:element name="GenericResult" nillable="true" type="tns:GenericResult"/>
			<xs:complexType name="ArrayOfEntry">
				<xs:sequence>
					<xs:element minOccurs="0" maxOccurs="unbounded" name="Entry" nillable="true" type="tns:Entry"/>
				</xs:sequence>
			</xs:complexType>
			<xs:element name="ArrayOfEntry" nillable="true" type="tns:ArrayOfEntry"/>
			<xs:complexType name="ArrayOfGenericResult">
				<xs:sequence>
					<xs:element minOccurs="0" maxOccurs="unbounded" name="GenericResult" nillable="true" type="tns:GenericResult"/>
				</xs:sequence>
			</xs:complexType>
			<xs:element name="ArrayOfGenericResult" nillable="true" type="tns:ArrayOfGenericResult"/>
			<xs:complexType name="ArrayOfIdentity">
				<xs:sequence>
					<xs:element minOccurs="0" maxOccurs="unbounded" name="Identity" nillable="true" type="tns:Identity"/>
				</xs:sequence>
			</xs:complexType>
			<xs:element name="ArrayOfIdentity" nillable="true" type="tns:ArrayOfIdentity"/>
		</xs:schema>
	</wsdl:types>
	<wsdl:message name="IKulva_Stamp_InputMessage">
		<wsdl:part name="parameters" element="tns:Stamp"/>
	</wsdl:message>
	<wsdl:message name="IKulva_Stamp_OutputMessage">
		<wsdl:part name="parameters" element="tns:StampResponse"/>
	</wsdl:message>
	<wsdl:message name="IKulva_Stamps_InputMessage">
		<wsdl:part name="parameters" element="tns:Stamps"/>
	</wsdl:message>
	<wsdl:message name="IKulva_Stamps_OutputMessage">
		<wsdl:part name="parameters" element="tns:StampsResponse"/>
	</wsdl:message>
	<wsdl:message name="IKulva_HeartBeat_InputMessage">
		<wsdl:part name="parameters" element="tns:HeartBeat"/>
	</wsdl:message>
	<wsdl:message name="IKulva_HeartBeat_OutputMessage">
		<wsdl:part name="parameters" element="tns:HeartBeatResponse"/>
	</wsdl:message>
	<wsdl:message name="IKulva_HeartBeats_InputMessage">
		<wsdl:part name="parameters" element="tns:HeartBeats"/>
	</wsdl:message>
	<wsdl:message name="IKulva_HeartBeats_OutputMessage">
		<wsdl:part name="parameters" element="tns:HeartBeatsResponse"/>
	</wsdl:message>
	<wsdl:portType name="IKulva">
		<wsdl:operation name="Stamp">
			<wsdl:input wsaw:Action="http://www.elisa.fi/kulva/IKulva/Stamp" message="tns:IKulva_Stamp_InputMessage"/>
			<wsdl:output wsaw:Action="http://www.elisa.fi/kulva/IKulva/StampResponse" message="tns:IKulva_Stamp_OutputMessage"/>
		</wsdl:operation>
		<wsdl:operation name="Stamps">
			<wsdl:input wsaw:Action="http://www.elisa.fi/kulva/IKulva/Stamps" message="tns:IKulva_Stamps_InputMessage"/>
			<wsdl:output wsaw:Action="http://www.elisa.fi/kulva/IKulva/StampsResponse" message="tns:IKulva_Stamps_OutputMessage"/>
		</wsdl:operation>
		<wsdl:operation name="HeartBeat">
			<wsdl:input wsaw:Action="http://www.elisa.fi/kulva/IKulva/HeartBeat" message="tns:IKulva_HeartBeat_InputMessage"/>
			<wsdl:output wsaw:Action="http://www.elisa.fi/kulva/IKulva/HeartBeatResponse" message="tns:IKulva_HeartBeat_OutputMessage"/>
		</wsdl:operation>
		<wsdl:operation name="HeartBeats">
			<wsdl:input wsaw:Action="http://www.elisa.fi/kulva/IKulva/HeartBeats" message="tns:IKulva_HeartBeats_InputMessage"/>
			<wsdl:output wsaw:Action="http://www.elisa.fi/kulva/IKulva/HeartBeatsResponse" message="tns:IKulva_HeartBeats_OutputMessage"/>
		</wsdl:operation>
	</wsdl:portType>
	<wsdl:binding name="BasicHttpBinding_IKulva" type="tns:IKulva">
		<wsp:PolicyReference URI="#BasicHttpBinding_IKulva_policy"/>
		<soap:binding transport="http://schemas.xmlsoap.org/soap/http"/>
		<wsdl:operation name="Stamp">
			<soap:operation soapAction="http://www.elisa.fi/kulva/IKulva/Stamp" style="document"/>
			<wsdl:input>
				<soap:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="Stamps">
			<soap:operation soapAction="http://www.elisa.fi/kulva/IKulva/Stamps" style="document"/>
			<wsdl:input>
				<soap:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="HeartBeat">
			<soap:operation soapAction="http://www.elisa.fi/kulva/IKulva/HeartBeat" style="document"/>
			<wsdl:input>
				<soap:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
		<wsdl:operation name="HeartBeats">
			<soap:operation soapAction="http://www.elisa.fi/kulva/IKulva/HeartBeats" style="document"/>
			<wsdl:input>
				<soap:body use="literal"/>
			</wsdl:input>
			<wsdl:output>
				<soap:body use="literal"/>
			</wsdl:output>
		</wsdl:operation>
	</wsdl:binding>
	<wsdl:service name="Kulva">
		<wsdl:port name="BasicHttpBinding_IKulva" binding="tns:BasicHttpBinding_IKulva">
			<soap:address location="https://domain"/>
		</wsdl:port>
	</wsdl:service>
</wsdl:definitions>
