<?xml version="1.0" encoding="UTF-8"?>
<!--
Versio 1.0
Versio 1.1 / 7.6.2018 / Jyri Piirainen
  - Lisätty TulostusToimittaja-elementti.
  - LahetaOC -> LahetaTulostukseen.
Versio 1.2 / 14.2.2019 / Jyri Piirainen
  - Lisätty LaskutusTunniste LahetaViesti operaation Kysely -elementiin.
Versio 1.3 / 15.2.2019 / Jyri Piirainen
  - Asetettu LaskutusTunnisteen minimi pituudeksi 6 merkkiä.
Versio 1.4 / 15.2.2019 / Jyri Piirainen
  - Lisätty Laskutus elementti ja LaskutusTunniste siirretty sen alle Tunniste nimellä. Lisätty Laskutus Salasana.
Versio 1.5 / 7.7.2021 / Ari Pyykko
  - Lisätty Viestityyppi Kohde_WS2-elementin alle.
Versio 1.6 / 10.3.2022 / Erkka Mäkinen
  - Lisätty Varitulostus-elementti Kysely_WS2A-elementtiin.
Versio 1.7 / 27.9.2022 / Jussi Aaltonen
  - Muutettu Viranomainen.PalveluTunnus-elementti pakolliseksi.
  - Muutettu Kohde_WS2:n elementit Nimeke ja KuvausTeksti pakollisiksi.
  - Poistettu Kohde_WS2:n elementit Maksullisuus, MaksamisKuvausTeksti, SmsLisatieto ja TavoitettavuusTietoSMS.
  - Poistettu Kysely_WS2A:n Tiedostot-elementti.
  - Poistettu Kohde_WS2A:n Sivut-elementti.
Versio 1.8 / 19.3.2024
  - Lisätty Kysely_WS2A LahetaViesti operaatiolle Laskutus-elementtiin Kustannuspaikka
-->
<xsd:schema xmlns:msc="http://schemas.microsoft.com/ws/2005/12/wsdl/contract" xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/" xmlns:soap12="http://schemas.xmlsoap.org/wsdl/soap12/" xmlns:soapenc="http://schemas.xmlsoap.org/soap/encoding/" xmlns:tns="http://www.suomi.fi/asiointitili" xmlns:wsa="http://schemas.xmlsoap.org/ws/2004/08/addressing" xmlns:wsa10="http://www.w3.org/2005/08/addressing" xmlns:wsam="http://www.w3.org/2007/05/addressing/metadata" xmlns:wsap="http://schemas.xmlsoap.org/ws/2004/08/addressing/policy" xmlns:wsaw="http://www.w3.org/2006/05/addressing/wsdl" xmlns:wsdl="http://schemas.xmlsoap.org/wsdl/" xmlns:wsp="http://schemas.xmlsoap.org/ws/2004/09/policy" xmlns:wsu="http://docs.oasis-open.org/wss/2004/01/oasis-200401-wss-wssecurity-utility-1.0.xsd" xmlns:wsx="http://schemas.xmlsoap.org/ws/2004/09/mex" xmlns:xsd="http://www.w3.org/2001/XMLSchema" targetNamespace="http://www.suomi.fi/asiointitili" elementFormDefault="qualified" version="1.8">
	<xsd:complexType name="Viranomainen">
		<xsd:sequence>
			<xsd:element name="ViranomaisTunnus" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="PalveluTunnus" type="xsd:string" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="KayttajaTunnus" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Yhteyshenkilo" type="tns:Yhteyshenkilo" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Osoite" type="tns:Osoite" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="SanomaTunniste" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="SanomaVersio" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="SanomaVarmenneNimi" type="xsd:string" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Kysely_WS1">
		<xsd:sequence>
			<xsd:element name="KyselyLaji" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="KyselyAlku" type="xsd:dateTime" nillable="true" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="KyselyLoppu" type="xsd:dateTime" nillable="true" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Asiakkaat" type="tns:ArrayOfAsiakas" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ArrayOfAsiakas">
		<xsd:sequence>
			<xsd:element name="Asiakas" type="tns:Asiakas" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Asiakas">
		<xsd:sequence>
			<xsd:element name="Osoite" type="tns:Osoite" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
		<xsd:attribute name="AsiakasTunnus" type="xsd:string"/>
		<xsd:attribute name="Sahkoposti" type="xsd:string"/>
		<xsd:attribute name="Matkapuhelin" type="xsd:string"/>
		<xsd:attribute name="TunnusTyyppi" type="xsd:string" default="SSN"/>
	</xsd:complexType>
	<xsd:complexType name="Yhteyshenkilo">
		<xsd:attribute name="Nimi" type="xsd:string"/>
		<xsd:attribute name="Sahkoposti" type="xsd:string"/>
		<xsd:attribute name="Matkapuhelin" type="xsd:string"/>
	</xsd:complexType>
	<xsd:complexType name="Osoite">
		<xsd:sequence>
			<xsd:element name="Nimi" type="xsd:string" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Lahiosoite" type="xsd:string" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Postinumero" type="xsd:string" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Postitoimipaikka" type="xsd:string" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Maa" type="xsd:string" default="FI" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Vastaus_WS1">
		<xsd:sequence>
			<xsd:element name="TilaKoodi" type="tns:TilaKoodi_WS" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Asiakkaat" type="tns:ArrayOfAsiakasJaTila_WS1" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="TilaKoodi_WS">
		<xsd:sequence>
			<xsd:element name="TilaKoodi" type="xsd:int" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="TilaKoodiKuvaus" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="SanomaTunniste" type="xsd:string" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ArrayOfAsiakasJaTila_WS1">
		<xsd:sequence>
			<xsd:element name="Asiakas" type="tns:AsiakasJaTila_WS1" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="AsiakasJaTila_WS1">
		<xsd:sequence>
			<xsd:element name="Tila" type="xsd:int" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="TilaPvm" type="xsd:dateTime" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="TiliPassivoitu" type="xsd:int" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
		<xsd:attribute name="AsiakasTunnus" type="xsd:string"/>
		<xsd:attribute name="TunnusTyyppi" type="xsd:string"/>
	</xsd:complexType>
	<xsd:complexType name="Kysely_WS2">
		<xsd:sequence>
			<xsd:element name="KohdeMaara" type="xsd:int" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Kohteet" type="tns:ArrayOfKohde_WS2" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ArrayOfKohde_WS2">
		<xsd:sequence>
			<xsd:element name="Kohde" type="tns:Kohde_WS2" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Kohde_WS2">
		<xsd:sequence>
			<xsd:element name="Asiakas" type="tns:Asiakas" minOccurs="1" maxOccurs="unbounded"/>
			<xsd:element name="ViranomaisTunniste" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Viittaus" type="tns:Viittaus_WS" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="VahvistusVaatimus" type="xsd:int" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="VaadiLukukuittaus" type="xsd:int" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="AsiaNumero" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Nimeke" type="xsd:string" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="LahetysPvm" type="xsd:dateTime" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="LahettajaNimi" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="KuvausTeksti" type="xsd:string" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="Tila" type="tns:Tila_WS2" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Tiedostot" type="tns:ArrayOfTiedosto" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="ViranomaisenEmail" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="EmailLisatietoOtsikko" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="EmailLisatietoSisalto" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="TavoitettavuusTietoEmail" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Viestityyppi" type="xsd:int" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="LisaaOsoitesivu" type="xsd:boolean" default="false" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="SalliLiitteenKiertoPystyyn" type="xsd:boolean" default="false" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ArrayOfKohde_WS2A">
		<xsd:sequence>
			<xsd:element name="Kohde" type="tns:Kohde_WS2A" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Kohde_WS2A">
		<xsd:complexContent>
			<xsd:extension base="tns:Kohde_WS2">
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:complexType name="Viittaus_WS">
		<xsd:attribute name="ViittausTunniste" type="xsd:string"/>
		<xsd:attribute name="ViittausTunnisteTyyppi" type="xsd:string"/>
	</xsd:complexType>
	<xsd:complexType name="Tila_WS2">
		<xsd:sequence>
			<xsd:element name="TilaKoodi" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Tila" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="TilaKuvaus" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="TilaPvm" type="xsd:dateTime" nillable="true" minOccurs="1" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ArrayOfTiedosto">
		<xsd:sequence>
			<xsd:element name="Tiedosto" type="tns:Tiedosto" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Tiedosto">
		<xsd:sequence>
			<xsd:element name="TiedostonKuvaus" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="TiedostoURL" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="TiedostoSisalto" type="xsd:base64Binary" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="TiedostoID" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="TiedostoKoko" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="TiedostoMuoto" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="TiedostoNimi" type="xsd:string" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Vastaus_WS2">
		<xsd:sequence>
			<xsd:element name="TilaKoodi" type="tns:TilaKoodi_WS" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="KohdeMaara" type="xsd:int" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Kohteet" type="tns:ArrayOfKohdeJaAsiakasTila_WS2_V" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="ArrayOfKohdeJaAsiakasTila_WS2_V">
		<xsd:sequence>
			<xsd:element name="Kohde" type="tns:KohdeJaAsiakasTila_WS2_V" nillable="true" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="KohdeJaAsiakasTila_WS2_V">
		<xsd:sequence>
			<xsd:element name="ViranomaisTunniste" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Asiakas" type="tns:AsiakasJaKohteenTila" minOccurs="0" maxOccurs="unbounded"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="AsiakasJaKohteenTila">
		<xsd:sequence>
			<xsd:element name="AsiointitiliTunniste" type="xsd:string" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="KohteenTila" type="xsd:int" minOccurs="1" maxOccurs="1"/>
			<xsd:element name="KohteenTilaKuvaus" type="xsd:string" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
		<xsd:attribute name="AsiakasTunnus" type="xsd:string"/>
		<xsd:attribute name="TunnusTyyppi" type="xsd:string"/>
	</xsd:complexType>
	<xsd:complexType name="Kysely_WS2A">
		<xsd:sequence>
			<xsd:element name="Paperi" type="xsd:boolean" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Kohteet" type="tns:ArrayOfKohde_WS2A" minOccurs="0" maxOccurs="1"/>
			<xsd:element name="Tulostustoimittaja" type="xsd:string" minOccurs="1" maxOccurs="1">
				<xsd:annotation>
					<xsd:documentation>Esim. Edita, Posti</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="LahetaTulostukseen" type="xsd:boolean" default="true" minOccurs="0" maxOccurs="1">
				<xsd:annotation>
					<xsd:documentation>Testikäytössä, aikaisemmin LahetaOC</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="Laskutus" minOccurs="0">
				<xsd:complexType>
					<xsd:sequence>
						<xsd:element name="Tunniste">
							<xsd:annotation>
								<xsd:documentation>Tulostustoimittajalle toimitettava palvelukohtainen tunniste</xsd:documentation>
							</xsd:annotation>
							<xsd:simpleType>
								<xsd:restriction base="xsd:string">
                                    <xsd:minLength value="6"/>
									<xsd:maxLength value="6"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="Salasana" minOccurs="0">
							<xsd:annotation>
								<xsd:documentation>Laskutukseen liittyvä salasana, jos Tulostustoimittaja sitä vaatii</xsd:documentation>
							</xsd:annotation>
							<xsd:simpleType>
								<xsd:restriction base="xsd:string">
                                    <xsd:minLength value="4"/>
									<xsd:maxLength value="4"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
						<xsd:element name="Kustannuspaikka" minOccurs="0">
							<xsd:annotation>
								<xsd:documentation>Asiakasorganisaation sisäiseen kustannusten seurantaan tai niiden kohdentamista varten käytettävä tunniste</xsd:documentation>
							</xsd:annotation>
							<xsd:simpleType>
								<xsd:restriction base="xsd:string">
									<xsd:minLength value="1"/>
									<xsd:maxLength value="15"/>
									<xsd:pattern value="[A-Z0-9]{1,15}"/>
								</xsd:restriction>
							</xsd:simpleType>
						</xsd:element>
					</xsd:sequence>
				</xsd:complexType>
			</xsd:element>
			<xsd:element name="Varitulostus" type="xsd:boolean" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Vastaus_WS2A">
		<xsd:sequence>
			<xsd:element name="TilaKoodi" type="tns:TilaKoodi_WS" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:complexType name="Kysely_WS10"/>
	<xsd:complexType name="Vastaus_WS10">
		<xsd:sequence>
			<xsd:element name="TilaKoodi" type="tns:TilaKoodi_WS" minOccurs="0" maxOccurs="1"/>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:element name="HaeAsiakkaita">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element name="Viranomainen" type="tns:Viranomainen" minOccurs="1" maxOccurs="1"/>
				<xsd:element name="Kysely" type="tns:Kysely_WS1" minOccurs="1" maxOccurs="1"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="HaeAsiakkaitaResponse">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element name="HaeAsiakkaitaResult" type="tns:Vastaus_WS1" minOccurs="1" maxOccurs="1"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="LisaaKohteita">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element name="Viranomainen" type="tns:Viranomainen" minOccurs="1" maxOccurs="1"/>
				<xsd:element name="Kysely" type="tns:Kysely_WS2" minOccurs="1" maxOccurs="1"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="LisaaKohteitaResponse">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element name="LisaaKohteitaResult" type="tns:Vastaus_WS2" minOccurs="1" maxOccurs="1"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="LahetaViesti">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element name="Viranomainen" type="tns:Viranomainen" minOccurs="1" maxOccurs="1"/>
				<xsd:element name="Kysely" type="tns:Kysely_WS2A" minOccurs="1" maxOccurs="1"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="LahetaViestiResponse">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element name="LahetaViestiResult" type="tns:Vastaus_WS2A" minOccurs="1" maxOccurs="1"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="HaeTilaTieto">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element name="Viranomainen" type="tns:Viranomainen" minOccurs="1" maxOccurs="1"/>
				<xsd:element name="Kysely" type="tns:Kysely_WS10" minOccurs="1" maxOccurs="1"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
	<xsd:element name="HaeTilaTietoResponse">
		<xsd:complexType>
			<xsd:sequence>
				<xsd:element name="HaeTilaTietoResult" type="tns:Vastaus_WS10" minOccurs="1" maxOccurs="1"/>
			</xsd:sequence>
		</xsd:complexType>
	</xsd:element>
</xsd:schema>
