<?xml version="1.0" encoding="UTF-8"?>
<!-- Definition des Meldeschemas statistischer Meldungen an die OeNB (Acknowledgement) -->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<xs:include schemaLocation="http://www.oenb.at/de/_xsd/meldewesen/2007/meldewesen.xsd"/>
	<xs:element name="MelderAck">
		<xs:annotation>
			<xs:documentation>Meldungen eines Erfassers</xs:documentation>
		</xs:annotation>
		<xs:complexType>
			<xs:choice maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Details enthalten mehrere Meldungen unterschiedlicher Belege</xs:documentation>
				</xs:annotation>
				<xs:sequence>
					<xs:element ref="StatusAck"/>
					<xs:element ref="ResponseAck" maxOccurs="unbounded"/>
				</xs:sequence>
				<xs:element name="Beleg">
					<xs:annotation>
						<xs:documentation>Meldungen sind gegliedert nach Belegen</xs:documentation>
					</xs:annotation>
					<xs:complexType>
						<xs:sequence>
							<xs:annotation>
								<xs:documentation>Meldung: bestimmt durch Melder, BelegId, Meldeperiode, Meldungstyp und Dimensionen</xs:documentation>
							</xs:annotation>
							<xs:element ref="BelegId"/>
							<xs:sequence maxOccurs="unbounded">
								<xs:element name="Meldung">
									<xs:complexType>
										<xs:sequence>
											<xs:choice>
												<xs:element name="MelderIdentnr" type="IdentNrType"/>
												<xs:element name="Institutsleitzahl" type="InstitutsleitzahlType"/>
											</xs:choice>
											<xs:element ref="Meldeperiode"/>
											<xs:element ref="Meldungstyp" minOccurs="0"/>
											<xs:sequence>
												<xs:element ref="StatusAck"/>
												<xs:element ref="ResponseAck" maxOccurs="unbounded"/>
											</xs:sequence>
										</xs:sequence>
										<xs:attribute name="MeldungsRef" type="xs:positiveInteger" use="required"/>
									</xs:complexType>
								</xs:element>
							</xs:sequence>
						</xs:sequence>
					</xs:complexType>
				</xs:element>
			</xs:choice>
			<xs:attribute name="KopfRef" type="xs:positiveInteger" use="required"/>
			<xs:attribute name="Version" default="2010.1.00"/>
		</xs:complexType>
	</xs:element>
	<xs:element name="ResponseAck">
		<xs:complexType>
			<xs:sequence>
				<xs:element name="Error" type="ErrorType"/>
			</xs:sequence>
			<xs:attribute name="LdIsocode" type="IsoLandType" use="optional"/>
			<xs:attribute name="WaIsocode" type="IsoWaehrungType" use="optional"/>
			<xs:attribute name="BeOenbIdentnr" type="IdentNrType" use="optional"/>
			<xs:attribute name="DeDgrcode" use="optional">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="3"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="PaSekcode" use="optional">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="3"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="BrOenacecode" type="OenaceBrancheUgrType" use="optional"/>
			<xs:attribute name="WpIsincode" use="optional">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="12"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="WpIntcode" use="optional">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:maxLength value="12"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:attribute>
			<xs:attribute name="Posnr" type="xs:string" use="optional"/>
			<xs:attribute name="Werttyp" type="xs:string" use="optional"/>
		</xs:complexType>
	</xs:element>
	<xs:complexType name="ErrorType">
		<xs:sequence>
			<xs:element name="ErrorNr">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:length value="7"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="ErrorKat">
				<xs:simpleType>
					<xs:restriction base="xs:string">
						<xs:minLength value="1"/>
						<xs:maxLength value="1"/>
						<xs:enumeration value="E"/>
						<xs:enumeration value="F"/>
						<xs:enumeration value="I"/>
						<xs:enumeration value="W"/>
					</xs:restriction>
				</xs:simpleType>
			</xs:element>
			<xs:element name="ErrorText" type="xs:string"/>
			<xs:element name="ErrorKommentar" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="StatusAck" default="R">
		<xs:simpleType>
			<xs:restriction base="xs:string">
				<xs:minLength value="1"/>
				<xs:maxLength value="1"/>
				<xs:enumeration value="Y"/>
				<xs:enumeration value="X"/>
				<xs:enumeration value="K"/>
				<xs:enumeration value="F"/>
				<xs:enumeration value="R"/>
				<xs:enumeration value="G"/>
			</xs:restriction>
		</xs:simpleType>
	</xs:element>
</xs:schema>
