<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2001/XMLSchema" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns:ebics="http://www.ebics.org/H003" targetNamespace="http://www.ebics.org/H003" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0">
	<annotation>
		<documentation xml:lang="de">ebics_keymgmt_request.xsd ist das EBICS-Protokollschema für Schlüsselmanagement-Anfragen (HIA, HPB, HSA, INI).</documentation>
	</annotation>
	<import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="xmldsig-core-schema.xsd">
		<annotation>
			<documentation xml:lang="de">XML-Signature.</documentation>
		</annotation>
	</import>
	<include schemaLocation="ebics_types.xsd"/>
	<include schemaLocation="ebics_orders.xsd"/>
	<complexType name="StaticHeaderBaseType" abstract="true">
		<annotation>
			<documentation xml:lang="de">Datentyp für den statischen EBICS-Header (allgemein).</documentation>
		</annotation>
		<sequence>
			<element name="HostID" type="ebics:HostIDType">
				<annotation>
					<documentation xml:lang="de">Hostname des Banksystems.</documentation>
				</annotation>
			</element>
			<element name="Nonce" type="ebics:NonceType" minOccurs="0">
				<annotation>
					<documentation xml:lang="de">Zufallswert; damit wird die Initialisierungsnachricht des Clients einzigartig; nur anzugeben, falls Authentifikationssignatur vorhanden.</documentation>
				</annotation>
			</element>
			<element name="Timestamp" type="ebics:TimestampType" minOccurs="0">
				<annotation>
					<documentation xml:lang="de">aktueller Zeitstempel zur Begrenzung der serverseitigen Nonce-Speicherung; nur anzugeben, falls Authentifikationssignatur vorhanden.</documentation>
				</annotation>
			</element>
			<element name="PartnerID" type="ebics:PartnerIDType">
				<annotation>
					<documentation xml:lang="de">Kunden-ID des serverseitig administrierten Kunden.</documentation>
				</annotation>
			</element>
			<element name="UserID" type="ebics:UserIDType">
				<annotation>
					<documentation xml:lang="de">Teilnehmer-ID des serverseitig zu diesem Kunden administrierten Teilnehmers.</documentation>
				</annotation>
			</element>
			<element name="SystemID" type="ebics:UserIDType" minOccurs="0">
				<annotation>
					<documentation xml:lang="de">technische User-ID für Multi-User-Systeme.</documentation>
				</annotation>
			</element>
			<element name="Product" type="ebics:ProductElementType" nillable="true" minOccurs="0">
				<annotation>
					<documentation xml:lang="de">Kennung des Kundenprodukts bzw. Herstellerkennung oder Name.</documentation>
				</annotation>
			</element>
			<element name="OrderDetails" type="ebics:OrderDetailsType">
				<annotation>
					<documentation xml:lang="de">Auftragsdetails.</documentation>
				</annotation>
			</element>
			<element name="SecurityMedium" type="ebics:SecurityMediumType">
				<annotation>
					<documentation xml:lang="de">Angabe des Sicherheitsmediums, das der Kunde verwendet.</documentation>
				</annotation>
			</element>
			<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
		</sequence>
	</complexType>
	<complexType name="OrderDetailsType" abstract="true">
		<annotation>
			<documentation xml:lang="de">Datentyp für OrderDetails im statischen EBICS-Header (allgemein).</documentation>
		</annotation>
		<sequence>
			<element name="OrderType" type="ebics:OrderTBaseType">
				<annotation>
					<documentation xml:lang="de">Auftragsart.</documentation>
				</annotation>
			</element>
			<element name="OrderID" type="ebics:OrderIDType" minOccurs="0">
				<annotation>
					<documentation xml:lang="de">Auftragsnummer von Sendeaufträgen gemäß DFÜ-Abkommen.</documentation>
				</annotation>
			</element>
			<element name="OrderAttribute" type="ebics:OrderAttributeBaseType">
				<annotation>
					<documentation xml:lang="de">Auftragsattribut.</documentation>
				</annotation>
			</element>
		</sequence>
	</complexType>
	<complexType name="ProductElementType">
		<annotation>
			<documentation xml:lang="de">Datentyp für Element mit Kennung des Kundenprodukts bzw. Herstellerkennung oder Name.</documentation>
		</annotation>
		<simpleContent>
			<extension base="ebics:ProductType">
				<attribute name="Language" type="ebics:LanguageType" use="required">
					<annotation>
						<documentation xml:lang="de">Sprachkennzeichen der Kundenproduktversion (gemäß ISO 639).</documentation>
					</annotation>
				</attribute>
				<attribute name="InstituteID" type="ebics:InstituteIDType" use="optional">
					<annotation>
						<documentation xml:lang="de">Kennung des Herausgebers des Kundenprodukts bzw. des betreuenden Kreditinstituts.</documentation>
					</annotation>
				</attribute>
			</extension>
		</simpleContent>
	</complexType>
	<complexType name="EmptyMutableHeaderType">
		<annotation>
			<documentation xml:lang="de">Datentyp für den leeren variablen EBICS-Header von Key Managemen Aufträgen.</documentation>
		</annotation>
		<sequence>
			<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
		</sequence>
	</complexType>
	<element name="ebicsUnsecuredRequest">
		<annotation>
			<documentation>Anfragestruktur für ungesicherte Auftragsarten HIA (Authentifikations- und Verschlüsselungsschlüssel senden) und INI (bankfachllichen Schlüssel senden).</documentation>
		</annotation>
		<complexType>
			<sequence>
				<element name="header">
					<annotation>
						<documentation xml:lang="de">enthält die technischen Transaktionsdaten.</documentation>
					</annotation>
					<complexType>
						<sequence>
							<element name="static" type="ebics:UnsecuredRequestStaticHeaderType">
								<annotation>
									<documentation xml:lang="de">enhält alle festen Headereinträge.</documentation>
								</annotation>
							</element>
							<element name="mutable" type="ebics:EmptyMutableHeaderType">
								<annotation>
									<documentation xml:lang="de">enthält alle variablen Headereinträge.</documentation>
								</annotation>
							</element>
						</sequence>
						<attributeGroup ref="ebics:AuthenticationMarker"/>
					</complexType>
				</element>
				<element name="body">
					<annotation>
						<documentation xml:lang="de">enthält die Auftragsdaten.</documentation>
					</annotation>
					<complexType>
						<sequence>
							<annotation>
								<documentation xml:lang="de"/>
							</annotation>
							<element name="DataTransfer">
								<annotation>
									<documentation xml:lang="de">Transfer von Auftragsdaten.</documentation>
								</annotation>
								<complexType>
									<sequence>
										<element name="OrderData">
											<annotation>
												<documentation xml:lang="de">enthält Auftragsdaten.</documentation>
											</annotation>
											<complexType>
												<simpleContent>
													<extension base="ebics:OrderDataType">
														<anyAttribute namespace="##targetNamespace" processContents="lax"/>
													</extension>
												</simpleContent>
											</complexType>
										</element>
									</sequence>
								</complexType>
							</element>
						</sequence>
					</complexType>
				</element>
			</sequence>
			<attributeGroup ref="ebics:VersionAttrGroup"/>
		</complexType>
	</element>
	<complexType name="UnsecuredRequestStaticHeaderType">
		<annotation>
			<documentation xml:lang="de">Datentyp für den statischen EBICS-Header bei ungesicherten Sendeauftragsarten (Aufträge HIA und INI): kein Nonce, kein Timestamp, keine EU-Datei, keine X001 Authentifizierung, keine Verschlüsselung, keine Digests der öffentlichen Bankschlüssel, Nutzdaten komprimiert, Auftragsattribut DZNNN</documentation>
		</annotation>
		<complexContent>
			<restriction base="ebics:StaticHeaderBaseType">
				<sequence>
					<element name="HostID" type="ebics:HostIDType">
						<annotation>
							<documentation xml:lang="de">Hostname des Banksystems.</documentation>
						</annotation>
					</element>
					<element name="Nonce" type="ebics:NonceType" minOccurs="0" maxOccurs="0">
						<annotation>
							<documentation xml:lang="de">Zufallswert; damit wird die Initialisierungsnachricht des Clients einzigartig; nicht anzugeben für ebicsUnsecuredRequest.</documentation>
						</annotation>
					</element>
					<element name="Timestamp" type="ebics:TimestampType" minOccurs="0" maxOccurs="0">
						<annotation>
							<documentation xml:lang="de">aktueller Zeitstempel zur Begrenzung der serverseitigen Nonce-Speicherung; nicht anzugeben für ebicsUnsecuredRequest.</documentation>
						</annotation>
					</element>
					<element name="PartnerID" type="ebics:PartnerIDType">
						<annotation>
							<documentation xml:lang="de">Kunden-ID des serverseitig administrierten Kunden.</documentation>
						</annotation>
					</element>
					<element name="UserID" type="ebics:UserIDType">
						<annotation>
							<documentation xml:lang="de">Teilnehmer-ID des serverseitig zu diesem Kunden administrierten Teilnehmers.</documentation>
						</annotation>
					</element>
					<element name="SystemID" type="ebics:UserIDType" minOccurs="0">
						<annotation>
							<documentation xml:lang="de">technische User-ID für Multi-User-Systeme.</documentation>
						</annotation>
					</element>
					<element name="Product" type="ebics:ProductElementType" nillable="true" minOccurs="0">
						<annotation>
							<documentation xml:lang="de">Kennung des Kundenprodukts bzw. Herstellerkennung oder Name.</documentation>
						</annotation>
					</element>
					<element name="OrderDetails" type="ebics:UnsecuredReqOrderDetailsType">
						<annotation>
							<documentation xml:lang="de">Auftragsdetails.</documentation>
						</annotation>
					</element>
					<element name="SecurityMedium" type="ebics:SecurityMediumType">
						<annotation>
							<documentation xml:lang="de">Angabe des Sicherheitsmediums, das der Kunde verwendet.</documentation>
						</annotation>
					</element>
					<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
				</sequence>
			</restriction>
		</complexContent>
	</complexType>
	<complexType name="UnsecuredReqOrderDetailsType">
		<annotation>
			<documentation xml:lang="de">Datentyp für OrderDetails im statischen EBICS-Header von ebicsUnsecuredRequest.</documentation>
		</annotation>
		<complexContent>
			<restriction base="ebics:OrderDetailsType">
				<sequence>
					<element name="OrderType" type="ebics:OrderTBaseType">
						<annotation>
							<documentation xml:lang="de">Auftragsart.</documentation>
						</annotation>
					</element>
					<element name="OrderID" type="ebics:OrderIDType">
						<annotation>
							<documentation xml:lang="de">Auftragsnummer von Sendeaufträgen gemäß DFÜ-Abkommen.</documentation>
						</annotation>
					</element>
					<element name="OrderAttribute" type="ebics:OrderAttributeBaseType" fixed="DZNNN">
						<annotation>
							<documentation xml:lang="de">Auftragsattribut: DZNNN.</documentation>
						</annotation>
					</element>
				</sequence>
			</restriction>
		</complexContent>
	</complexType>
	<element name="ebicsNoPubKeyDigestsRequest">
		<annotation>
			<documentation>Anfragestruktur für Auftragsarten ohne Übertragung der Digests der öffentlichen Bankschlüssel (HPB Bankschlüssel abholen).</documentation>
		</annotation>
		<complexType>
			<sequence>
				<element name="header">
					<annotation>
						<documentation xml:lang="de">enthält die technischen Transaktionsdaten.</documentation>
					</annotation>
					<complexType>
						<sequence>
							<element name="static" type="ebics:NoPubKeyDigestsRequestStaticHeaderType">
								<annotation>
									<documentation xml:lang="de">enhält alle festen Headereinträge.</documentation>
								</annotation>
							</element>
							<element name="mutable" type="ebics:EmptyMutableHeaderType">
								<annotation>
									<documentation xml:lang="de">enthält alle variablen Headereinträge.</documentation>
								</annotation>
							</element>
						</sequence>
						<attributeGroup ref="ebics:AuthenticationMarker"/>
					</complexType>
				</element>
				<element ref="ebics:AuthSignature">
					<annotation>
						<documentation xml:lang="de">Authentifikationssignatur.</documentation>
					</annotation>
				</element>
				<element name="body">
					<annotation>
						<documentation xml:lang="de">enthält optionale Zertifikate (vorgesehen).</documentation>
					</annotation>
					<complexType>
						<sequence>
							<annotation>
								<documentation xml:lang="de"/>
							</annotation>
							<element ref="ds:X509Data" minOccurs="0" maxOccurs="0">
								<annotation>
									<documentation xml:lang="de">X.509-Daten des Teilnehmers.</documentation>
								</annotation>
							</element>
						</sequence>
					</complexType>
				</element>
			</sequence>
			<attributeGroup ref="ebics:VersionAttrGroup"/>
		</complexType>
	</element>
	<complexType name="NoPubKeyDigestsRequestStaticHeaderType">
		<annotation>
			<documentation xml:lang="de">Datentyp für den statischen EBICS-Header bei Aufträgen ohne Übertragung der Digests der Bankschlüssel (Auftrag HBP): keine Digests der öffentlichen Bankschlüssel, keine EU-Datei, keine Nutzdaten, OrderId optional!, Nonce, Timestamp, X001 Authentifizierung, Auftragsattribut DZHNN</documentation>
		</annotation>
		<complexContent>
			<restriction base="ebics:StaticHeaderBaseType">
				<sequence>
					<element name="HostID" type="ebics:HostIDType">
						<annotation>
							<documentation xml:lang="de">Hostname des Banksystems.</documentation>
						</annotation>
					</element>
					<element name="Nonce" type="ebics:NonceType">
						<annotation>
							<documentation xml:lang="de">Zufallswert; damit wird die Initialisierungsnachricht des Clients einzigartig.</documentation>
						</annotation>
					</element>
					<element name="Timestamp" type="ebics:TimestampType">
						<annotation>
							<documentation xml:lang="de">aktueller Zeitstempel zur Begrenzung der serverseitigen Nonce-Speicherung.</documentation>
						</annotation>
					</element>
					<element name="PartnerID" type="ebics:PartnerIDType">
						<annotation>
							<documentation xml:lang="de">Kunden-ID des serverseitig administrierten Kunden.</documentation>
						</annotation>
					</element>
					<element name="UserID" type="ebics:UserIDType">
						<annotation>
							<documentation xml:lang="de">Teilnehmer-ID des serverseitig zu diesem Kunden administrierten Teilnehmers.</documentation>
						</annotation>
					</element>
					<element name="SystemID" type="ebics:UserIDType" minOccurs="0">
						<annotation>
							<documentation xml:lang="de">technische User-ID für Multi-User-Systeme.</documentation>
						</annotation>
					</element>
					<element name="Product" type="ebics:ProductElementType" nillable="true" minOccurs="0">
						<annotation>
							<documentation xml:lang="de">Kennung des Kundenprodukts bzw. Herstellerkennung oder Name.</documentation>
						</annotation>
					</element>
					<element name="OrderDetails" type="ebics:NoPubKeyDigestsReqOrderDetailsType">
						<annotation>
							<documentation xml:lang="de">Auftragsdetails.</documentation>
						</annotation>
					</element>
					<element name="SecurityMedium" type="ebics:SecurityMediumType">
						<annotation>
							<documentation xml:lang="de">Angabe des Sicherheitsmediums, das der Kunde verwendet.</documentation>
						</annotation>
					</element>
					<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
				</sequence>
			</restriction>
		</complexContent>
	</complexType>
	<complexType name="NoPubKeyDigestsReqOrderDetailsType">
		<annotation>
			<documentation xml:lang="de">Datentyp für OrderDetails im statischen EBICS-Header von ebicsNoPubKeyDigestsRequest.</documentation>
		</annotation>
		<complexContent>
			<restriction base="ebics:OrderDetailsType">
				<sequence>
					<element name="OrderType" type="ebics:OrderTBaseType">
						<annotation>
							<documentation xml:lang="de">Auftragsart.</documentation>
						</annotation>
					</element>
					<!-- OrderId for HPB is optional in original schema -->
					<element name="OrderID" type="ebics:OrderIDType" minOccurs="0">
						<annotation>
							<documentation xml:lang="de">Auftragsnummer von Sendeaufträgen gemaess DFÜ-Abkommen.</documentation>
						</annotation>
					</element>
					<element name="OrderAttribute" type="ebics:OrderAttributeBaseType">
						<annotation>
							<documentation xml:lang="de">Auftragsattribut.</documentation>
						</annotation>
					</element>
				</sequence>
			</restriction>
		</complexContent>
	</complexType>
	<element name="ebicsUnsignedRequest">
		<annotation>
			<documentation>Anfragestruktur für Sendeaufträge mit EU-Datei und Nutzdaten aber ohne Authentifizierungssignatur und Digests der Bankschlüssel (Auftrag HSA Authentifikations- und Verschlüsselungsschlüssel senden, signiert mit FTAM-Schlüssel).</documentation>
		</annotation>
		<complexType>
			<sequence>
				<element name="header">
					<annotation>
						<documentation xml:lang="de">enthält die technischen Transaktionsdaten.</documentation>
					</annotation>
					<complexType>
						<sequence>
							<element name="static" type="ebics:UnsignedRequestStaticHeaderType">
								<annotation>
									<documentation xml:lang="de">enhält alle festen Headereinträge.</documentation>
								</annotation>
							</element>
							<element name="mutable" type="ebics:EmptyMutableHeaderType">
								<annotation>
									<documentation xml:lang="de">enthält alle variablen Headereinträge.</documentation>
								</annotation>
							</element>
						</sequence>
						<attributeGroup ref="ebics:AuthenticationMarker"/>
					</complexType>
				</element>
				<element name="body">
					<annotation>
						<documentation xml:lang="de">enthält die Auftragsdaten und EUs.</documentation>
					</annotation>
					<complexType>
						<sequence>
							<annotation>
								<documentation xml:lang="de"/>
							</annotation>
							<element name="DataTransfer">
								<annotation>
									<documentation xml:lang="de">Transfer von Auftragsdaten und EUs.</documentation>
								</annotation>
								<complexType>
									<sequence>
										<element name="SignatureData">
											<annotation>
												<documentation xml:lang="de">enthält Signaturdaten (EUs).</documentation>
											</annotation>
											<complexType>
												<simpleContent>
													<extension base="ebics:SignatureDataType">
														<attributeGroup ref="ebics:AuthenticationMarker"/>
													</extension>
												</simpleContent>
											</complexType>
										</element>
										<element name="OrderData">
											<annotation>
												<documentation xml:lang="de">enthält Auftragsdaten.</documentation>
											</annotation>
											<complexType>
												<simpleContent>
													<extension base="ebics:OrderDataType">
														<anyAttribute namespace="##targetNamespace" processContents="lax"/>
													</extension>
												</simpleContent>
											</complexType>
										</element>
									</sequence>
								</complexType>
							</element>
						</sequence>
					</complexType>
				</element>
			</sequence>
			<attributeGroup ref="ebics:VersionAttrGroup"/>
		</complexType>
	</element>
	<complexType name="UnsignedRequestStaticHeaderType">
		<annotation>
			<documentation xml:lang="de">Datentyp für den statischen EBICS-Header für ebicsUnsignedRequest.Datentyp für den statischen EBICS-Header bei Aufträgen ohne Authentifizierungssignatur (Auftrag HSA): keine X001 Authentifizierung, keine Digests der öffentlichen Bankschlüssel, EU-Datei, Nutzdaten, Nonce, Timestamp, OrderId, Auftragsattribut OZNNN</documentation>
		</annotation>
		<complexContent>
			<restriction base="ebics:StaticHeaderBaseType">
				<sequence>
					<element name="HostID" type="ebics:HostIDType">
						<annotation>
							<documentation xml:lang="de">Hostname des Banksystems.</documentation>
						</annotation>
					</element>
					<element name="Nonce" type="ebics:NonceType" minOccurs="0" maxOccurs="0">
						<annotation>
							<documentation xml:lang="de">Zufallswert; damit wird die Initialisierungsnachricht des Clients einzigartig; nicht anzugeben bei ebicsUnsignedRequest.</documentation>
						</annotation>
					</element>
					<element name="Timestamp" type="ebics:TimestampType" minOccurs="0" maxOccurs="0">
						<annotation>
							<documentation xml:lang="de">aktueller Zeitstempel zur Begrenzung der serverseitigen Nonce-Speicherung; nicht anzugeben bei ebicsUnsignedRequest.</documentation>
						</annotation>
					</element>
					<element name="PartnerID" type="ebics:PartnerIDType">
						<annotation>
							<documentation xml:lang="de">Kunden-ID des serverseitig administrierten Kunden.</documentation>
						</annotation>
					</element>
					<element name="UserID" type="ebics:UserIDType">
						<annotation>
							<documentation xml:lang="de">Teilnehmer-ID des serverseitig zu diesem Kunden administrierten Teilnehmers.</documentation>
						</annotation>
					</element>
					<element name="SystemID" type="ebics:UserIDType" minOccurs="0">
						<annotation>
							<documentation xml:lang="de">technische User-ID für Multi-User-Systeme.</documentation>
						</annotation>
					</element>
					<element name="Product" type="ebics:ProductElementType" nillable="true" minOccurs="0">
						<annotation>
							<documentation xml:lang="de">Kennung des Kundenprodukts bzw. Herstellerkennung oder Name.</documentation>
						</annotation>
					</element>
					<element name="OrderDetails" type="ebics:UnsignedReqOrderDetailsType">
						<annotation>
							<documentation xml:lang="de">Auftragsdetails.</documentation>
						</annotation>
					</element>
					<element name="SecurityMedium" type="ebics:SecurityMediumType">
						<annotation>
							<documentation xml:lang="de">Angabe des Sicherheitsmediums, das der Kunde verwendet.</documentation>
						</annotation>
					</element>
					<any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
				</sequence>
			</restriction>
		</complexContent>
	</complexType>
	<complexType name="UnsignedReqOrderDetailsType">
		<annotation>
			<documentation xml:lang="de">Datentyp für OrderDetails im statischen EBICS-Header von ebicsUnsignedRequest.</documentation>
		</annotation>
		<complexContent>
			<restriction base="ebics:OrderDetailsType">
				<sequence>
					<element name="OrderType" type="ebics:OrderTBaseType">
						<annotation>
							<documentation xml:lang="de">Auftragsart.</documentation>
						</annotation>
					</element>
					<element name="OrderID" type="ebics:OrderIDType">
						<annotation>
							<documentation xml:lang="de">Auftragsnummer von Sendeaufträgen gemäß DFÜ-Abkommen.</documentation>
						</annotation>
					</element>
					<element name="OrderAttribute" type="ebics:OrderAttributeBaseType" fixed="OZNNN">
						<annotation>
							<documentation xml:lang="de">Auftragsattribut: OZNNN.</documentation>
						</annotation>
					</element>
				</sequence>
			</restriction>
		</complexContent>
	</complexType>
</schema>
