aboutsummaryrefslogtreecommitdiff
path: root/moaSig
diff options
context:
space:
mode:
Diffstat (limited to 'moaSig')
-rw-r--r--moaSig/common/src/main/resources/resources/schemas/zuse_p2.xsd989
-rw-r--r--moaSig/moa-sig-lib/src/main/resources/resources/wsdl/MOA-SPSS-3.1.2.xsd839
2 files changed, 1828 insertions, 0 deletions
diff --git a/moaSig/common/src/main/resources/resources/schemas/zuse_p2.xsd b/moaSig/common/src/main/resources/resources/schemas/zuse_p2.xsd
new file mode 100644
index 0000000..d996d01
--- /dev/null
+++ b/moaSig/common/src/main/resources/resources/schemas/zuse_p2.xsd
@@ -0,0 +1,989 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- Mit XMLSpy v2016 (http://www.altova.com) von Arne Tauber (TU Graz) bearbeitet -->
+<!-- ###
+
+ Die Versionsnummer des Schemas wird immer dann hochgezogen, wenn das Schema
+ selbst verändert wurde aber auch dann, wenn zumindest eines der importierten
+ ZUSE-Schemata angepasst wurde.
+
+ ###-->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:p="http://reference.e-government.gv.at/namespace/persondata/phase2/20181206#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:msg="http://reference.e-government.gv.at/namespace/zustellung/msg/phase2/20181206#" xmlns:saml="urn:oasis:names:tc:SAML:1.0:assertion" targetNamespace="http://reference.e-government.gv.at/namespace/zustellung/msg/phase2/20181206#" elementFormDefault="qualified" attributeFormDefault="unqualified" version="2.2.007">
+ <!--### Imports ###-->
+ <!--### ZUSE-Personendaten: namespace="http://reference.e-government.gv.at/namespace/persondata/phase2/20181206#" version="2.2.007" ###-->
+ <xs:import namespace="http://reference.e-government.gv.at/namespace/persondata/phase2/20181206#" schemaLocation="zuse_mypersondata_en_p2.xsd"/>
+ <xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="W3C-XMLDSig.xsd"/>
+ <!--### Abfrage der Webserviceversion-->
+ <xs:element name="GetVersionRequest" type="msg:SimpleRequestType"/>
+ <xs:element name="GetVersionResponse">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Version">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="2.2.007"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <!--### Nachrichten und Nachrichtenstrukturen ###-->
+ <!--### Zustellstückanlieferung ###-->
+ <xs:element name="DeliveryRequest" type="msg:DeliveryRequestType">
+ <xs:annotation>
+ <xs:documentation>Zustellstückanlieferung</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="DeliveryRequestType">
+ <xs:sequence>
+ <xs:element ref="msg:Sender"/>
+ <xs:element ref="msg:Receiver">
+ <xs:annotation>
+ <xs:documentation>Adressierung des Empfängers</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element ref="msg:MetaData"/>
+ <xs:element name="Attachments" type="msg:AttachmentsType">
+ <xs:annotation>
+ <xs:documentation>Anhänge</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="Version" type="msg:VersionNumberType"/>
+ </xs:complexType>
+ <xs:element name="DeliveryResponse" type="msg:DeliveryRequestStatusType"/>
+ <xs:element name="DeliveryRequestStatus" type="msg:DeliveryRequestStatusType">
+ <xs:annotation>
+ <xs:documentation>Webservice Response of ZSDeliveryRequest, also to used asynchronously </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="DeliveryRequestStatusType">
+ <xs:sequence>
+ <xs:choice>
+ <xs:element name="Success">
+ <xs:annotation>
+ <xs:documentation>Zustellstück wurde erfolgreich übernommen</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="msg:DeliveryAnswerType">
+ <xs:sequence>
+ <xs:element ref="msg:DeliveryTimestamp"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="PartialSuccess">
+ <xs:annotation>
+ <xs:documentation>Zustellstück wurde erfolgreich übernommen, attachment wird später geladen</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="msg:DeliveryAnswerType"/>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Error">
+ <xs:annotation>
+ <xs:documentation>Zustellstück konnte nicht übernommen werden</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="msg:DeliveryAnswerType">
+ <xs:sequence>
+ <xs:element ref="msg:ErrorInfo"/>
+ <xs:element ref="msg:PreAdviceNoteSent" minOccurs="0"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:choice>
+ <xs:element ref="msg:RelayedViaERV" minOccurs="0"/>
+ <xs:element ref="dsig:Signature"/>
+ </xs:sequence>
+ <xs:attribute name="Version" type="msg:VersionNumberType"/>
+ <xs:attribute name="Id" type="xs:ID" use="optional">
+ <xs:annotation>
+ <xs:documentation>Eindeutige ID des Elements, um in der Signatur referenziert werden zu können </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:complexType>
+ <xs:element name="DeliveryRequestStatusACK" type="msg:DeliveryRequestStatusACKType">
+ <xs:annotation>
+ <xs:documentation>Wenn DeliveryRequestStatus bei asynchroner Koomunikation als Request benutzt wird, ist DeliveryRequstStatusACK die Antwort</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="DeliveryRequestStatusACKType">
+ <xs:sequence>
+ <xs:element ref="msg:AppDeliveryID"/>
+ <xs:element ref="msg:ZSDeliveryID"/>
+ </xs:sequence>
+ <xs:attribute name="Version" type="msg:VersionNumberType"/>
+ </xs:complexType>
+ <xs:annotation>
+ <xs:documentation>### Bestätigung über Zustellungs (Miß-) Erfolg ###</xs:documentation>
+ </xs:annotation>
+ <xs:element name="DeliveryNotification" type="msg:DeliveryNotificationType">
+ <xs:annotation>
+ <xs:documentation>Benachrichtigung über die erfolgte oder nicht erfolgte Zustellung</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="DeliveryNotificationType">
+ <xs:complexContent>
+ <xs:extension base="msg:DeliveryAnswerType">
+ <xs:sequence>
+ <xs:element ref="msg:SenderDetails"/>
+ <xs:element ref="msg:ReceiverDetails"/>
+ <xs:element ref="msg:Timestamp">
+ <xs:annotation>
+ <xs:documentation>Timestamp der Nachrichtenoperation, welcher vom Anzeigemodul erzeugt wurde. Im Falle der Annahme einer Zustellung entspricht der Timestamp dem Annahmezeitpunkt</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element ref="msg:User" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>Benutzer, der die Nachricht angenommen hat.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element ref="msg:Answer"/>
+ <xs:element ref="dsig:Signature"/>
+ <xs:element name="AdditionalFormat" minOccurs="0" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:base64Binary">
+ <xs:attribute name="Type" type="xs:token" use="required">
+ <xs:annotation>
+ <xs:documentation>Als MIME-Type ist „application/pdf“ zu verwenden</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="Version" type="msg:VersionNumberType"/>
+ <xs:attribute name="Id" type="xs:ID" use="optional">
+ <xs:annotation>
+ <xs:documentation>Eindeutige ID des Elements, um in der Signatur referenziert zu können </xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="DeliveryNotificationACK" type="msg:DeliveryNotificationACKType">
+ <xs:annotation>
+ <xs:documentation>Webservice Response of ZSDeliveryNotification</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="DeliveryNotificationACKType">
+ <xs:sequence>
+ <xs:element ref="msg:AppDeliveryID"/>
+ <xs:element ref="msg:ZSDeliveryID"/>
+ </xs:sequence>
+ <xs:attribute name="Version" type="msg:VersionNumberType"/>
+ </xs:complexType>
+ <xs:complexType name="DeliveryAnswerType">
+ <xs:annotation>
+ <xs:documentation>Abstrakter Antwort Typ</xs:documentation>
+ </xs:annotation>
+ <xs:sequence>
+ <xs:element ref="msg:DeliverySystem"/>
+ <xs:element ref="msg:ZSDeliveryID">
+ <xs:annotation>
+ <xs:documentation>ID des Zustellstücke innerhalb des Zustellsystems</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element ref="msg:AppDeliveryID"/>
+ <xs:element ref="msg:GZ" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="DeliveryConfirmationType">
+ <xs:complexContent>
+ <xs:extension base="msg:DeliveryAnswerType">
+ <xs:sequence>
+ <xs:element ref="msg:Sender"/>
+ <xs:element ref="msg:Receiver"/>
+ <xs:element name="DeliveryTimestamp" type="xs:dateTime">
+ <xs:annotation>
+ <xs:documentation>Übergabezeitpunkt an den Zustelldienst</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element ref="dsig:Signature"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <!--### globale Elemente und komplexe Typen###-->
+ <xs:complexType name="AbstractOperationType" abstract="true"/>
+ <xs:complexType name="AbstractSenderPersonType">
+ <xs:annotation>
+ <xs:documentation>main structure of sender</xs:documentation>
+ </xs:annotation>
+ <xs:attribute name="Id" type="xs:ID" use="optional"/>
+ </xs:complexType>
+ <xs:element name="Accepted" type="msg:AcceptedType" substitutionGroup="msg:Answer">
+ <xs:annotation>
+ <xs:documentation>Zeigt an, dass die Nachricht durch den Einstieg ins Anzeigemodul angenommen wurde. </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="AcceptedType">
+ <xs:complexContent>
+ <xs:extension base="msg:AbstractOperationType">
+ <xs:sequence>
+ <xs:element ref="msg:NotificationsPerformed"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="AdditionalCriteria" type="msg:AdditionalCriteriaType">
+ <xs:annotation>
+ <xs:documentation>Weitere über den eigentlichen Adressaten hinausgehende Kriterien zur Adressierung (bspw. c/o)</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="AdditionalCriteriaType">
+ <xs:sequence>
+ <xs:element ref="msg:MailBox" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>Eindeutige Kennung (Filiale, Standort, Abteilung, etc..) innerhalb der jur. Person </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element ref="msg:Roles" minOccurs="0"/>
+ <xs:element ref="msg:CareOf" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>Natürlichen Person innerhalb einer Orangisation der "zu Handen" (c/o) zustellen werden soll. Wird eine E-Mail-Adresse angegeben, kann die Person eindeutig identifiziert und notifiziert werden. </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="Answer" type="msg:AbstractOperationType" abstract="true">
+ <xs:annotation>
+ <xs:documentation> Rückmeldungen zu einer Nachricht</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="AppDeliveryID" type="msg:token256">
+ <xs:annotation>
+ <xs:documentation>ID des Zustellstücke beim Absender</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="Attachment" type="msg:AttachmentType"/>
+ <xs:element name="Attachments" type="msg:AttachmentsType">
+ <xs:annotation>
+ <xs:documentation>List of all attachments</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="AttachmentsType">
+ <xs:sequence>
+ <xs:element ref="msg:Attachment" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="AttachmentType">
+ <xs:sequence>
+ <xs:element name="FileName" type="msg:FileNameType">
+ <xs:annotation>
+ <xs:documentation>Dateiname min. 5 Zeichen, max 255 Zeichen</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element ref="msg:MimeType"/>
+ <xs:element ref="msg:DocumentClass" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>Dokumentenklasse als String bzw. Namespace im Fall von XML-Dokumenten im Anhang, um auf Empfängerseite eine automatische Verarbeitung durch ein Workflowsystem realisieren zu können.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="Size" type="xs:nonNegativeInteger">
+ <xs:annotation>
+ <xs:documentation>Größe in Bytes</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element ref="msg:CheckSum"/>
+ <xs:choice>
+ <xs:element name="Content" type="xs:base64Binary">
+ <xs:annotation>
+ <xs:documentation>Für Attachments deren Inhalt direkt in die Nachricht eingebettet werden. (Das Größenlimit für die gesamte Nachricht inklusive aller eingebetteten Attachments beträgt 10 MB)</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="URL" type="xs:anyURI">
+ <xs:annotation>
+ <xs:documentation>Docuementlocation in case of Callback attachements</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:choice>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="AustrianAddressesOnly" type="msg:IndicatorType">
+ <xs:annotation>
+ <xs:documentation>Die Existenz des Elements zeigt an, dass die gesuchte Person in Österreich gemeldet sein muss</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="AuthLevel" type="msg:token256">
+ <xs:annotation>
+ <xs:documentation>Höchstes Authentifizierungsniveau mit dem sich der Teilnehmer beim Portal/Kommunikationssystem angemeldet hatte. Folgende Werte sind zulässig - absteigend sortiert nach der Höhe des Authentifizierungsniveaus: "EID" > "FON" > "LOW"
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="CareOf">
+ <xs:annotation>
+ <xs:documentation>Um einer natürlichen Person innerhalb einer Orangisation "zu Handen" (c/o) zustellen zu können, reicht die vbPK-ZU oder die E-Mail-Adresse aus, um die Person über das Eintreffen der Nachricht notifiziert zu können. </xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="msg:ElectronicAddress" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>Elektronische Adresse der "Zu Handen"-Person innerhalb der Organisation</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="Name" type="msg:token256">
+ <xs:annotation>
+ <xs:documentation>Name der Person zu deren Handen adressiert wird. Hierbei handelt es sich um einen Freitext für die Anzeige, der als eindeutiger Identifikator für Verständigungen oder eine automatisierte Weiterleitung ungeeignet ist.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="CheckSum" type="msg:CheckSumType">
+ <xs:annotation>
+ <xs:documentation>Prüfsumme</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="CheckSumType">
+ <xs:annotation>
+ <xs:documentation>Prüfsumme</xs:documentation>
+ </xs:annotation>
+ <xs:sequence>
+ <xs:element name="AlgorithmID" type="xs:token">
+ <xs:annotation>
+ <xs:documentation>Hash Algorithmus, z.B. SHA-256, SHA-512</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="Value" type="xs:base64Binary">
+ <xs:annotation>
+ <xs:documentation>Hashwert</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="ClearingProfilID" type="xs:token">
+ <xs:annotation>
+ <xs:documentation>Ist zu verwenden, wenn die Abrechnung über ein anderes Profil erfolgen soll, als dem Versender-Profil </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="ConfirmationAddress">
+ <xs:annotation>
+ <xs:documentation>Webservice oder E-Mail-Adresse, an welches die Zustellbestätigung oder Fehlermeldung weitergeleitet wird (Callback)</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:choice>
+ <xs:element ref="msg:WebserviceURL"/>
+ <xs:element ref="msg:Email"/>
+ </xs:choice>
+ <xs:attribute name="Type" default="xml">
+ <xs:annotation>
+ <xs:documentation>Typ des Zustellnachweises, z.B. xml+pdf oder nur xml (default)</xs:documentation>
+ </xs:annotation>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="xml"/>
+ <xs:enumeration value="xml+pdf"/>
+ <xs:enumeration value="pdf"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="DeliveryError" type="msg:DeliveryErrorType" substitutionGroup="msg:Answer">
+ <xs:annotation>
+ <xs:documentation>Zustellung war nicht erfolgreich
+• Nachricht wurde nicht innerhalb der Zustellfrist angenommen
+• Zustellhindernis </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="DeliveryErrorType">
+ <xs:complexContent>
+ <xs:extension base="msg:AbstractOperationType">
+ <xs:sequence>
+ <xs:element ref="msg:NotificationsPerformed" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>Im Falle des verstreichens der Zustellfrist MUSS das Element befüllt sein.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element ref="msg:ErrorInfo"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="DeliveryQuality">
+ <xs:annotation>
+ <xs:documentation>Zustellqualität gemäß ZustellG:
+• RSa
+• RSa+
+• nonRSa
+• nonRSa+</xs:documentation>
+ </xs:annotation>
+ <xs:simpleType>
+ <xs:restriction base="msg:token256">
+ <xs:enumeration value="RSa"/>
+ <xs:enumeration value="RSa+"/>
+ <xs:enumeration value="nonRSa"/>
+ <xs:enumeration value="nonRSa+"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+ <xs:element name="DeliverySystem" type="xs:anyURI">
+ <xs:annotation>
+ <xs:documentation>URL des für die Nachricht verantwortlichen Zustellstellsystems</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="DeliveryTimestamp" type="xs:dateTime">
+ <xs:annotation>
+ <xs:documentation>Zustellzeitpunkt</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="DocumentClass" type="xs:token">
+ <xs:annotation>
+ <xs:documentation>Enthält den Namespace des XML-Dokuments, um auf Empfängerseite eine automatische Verarbeitung durch ein Workflowsystem realisieren zu können.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="ElectronicAddress" type="p:AbstractAddressType" abstract="true">
+ <xs:annotation>
+ <xs:documentation> Elektronische Adresse (E-Mail, HTTP, etc)</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="Email" type="p:InternetAddressType">
+ <xs:annotation>
+ <xs:documentation>Für Notfälle, wenn der Absender weder über ein Webservice noch über ein elektronisches Postfach verfügt.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="ErrorInfo" type="msg:ErrorInfoType">
+ <xs:annotation>
+ <xs:documentation>Beschreibung eines aufgetretenen Fehlers</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="ErrorInfoType">
+ <xs:annotation>
+ <xs:documentation>ComplexTpye für die Beschreibung eines aufgetretenen Fehlers</xs:documentation>
+ </xs:annotation>
+ <xs:sequence>
+ <xs:element name="Code" type="xs:token">
+ <xs:annotation>
+ <xs:documentation>Fehlercode</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="Text" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>Fehlerbeschreibung</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="ERVConfirmedDelivery" type="msg:ERVConfirmedDeliveryType" substitutionGroup="msg:Answer">
+ <xs:annotation>
+ <xs:documentation>Diese Operation zeigt an, dass eine in den ERV weitergeleitete Nachricht erfolgreich im Verfügungsbereich des Empfängers eingelangt ist. </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="ERVConfirmedDeliveryType">
+ <xs:complexContent>
+ <xs:extension base="msg:AbstractOperationType">
+ <xs:sequence>
+ <xs:element ref="msg:ERVCode"/>
+ <xs:element ref="msg:ERVDeliveryTimestamp"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="ERVCode" type="msg:token256">
+ <xs:annotation>
+ <xs:documentation>Anschriftcode des Elektronischen Rechtsverkehrs der Justiz (ERV): Wenn die Nachricht in den ERV weitergeleitet wird, ist der Anschriftcode - zwecks Nachvollziehbarkeit - bis zum Versender zurückgegeben.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="ERVDeliveryTimestamp" type="xs:dateTime">
+ <xs:annotation>
+ <xs:documentation>Datum, wann die Zustellung in der jeweiligen Übermittlungsstelle und damit im Verfügungsbereich des Empfängers eingelangt ist, d.h. die Zustellung erfolgt ist, wird als Zustellzeitpunkt verwendet und an das jeweilige Zustellsystem zurück-gemeldet. Dieses Datum ist gemäß GOG berechnet und gibt den nächsten auf die Ankunft in der Übermittlungsstelle folgenden Werktag an und enthält keine Zeitangabe.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="GZ" type="xs:token">
+ <xs:annotation>
+ <xs:documentation>Geschäftszahl</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="IgnorePostRedirectionOrder" type="msg:IndicatorType">
+ <xs:annotation>
+ <xs:documentation>Wenn dieser Marker existiert, MUSS diese Zustellung auch bei aktiver Postsperre an den tatsächlichen Empfänger zugestellt werden.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="IndicatorType">
+ <xs:annotation>
+ <xs:documentation>Dieser ComplexType ist ein Hilfskonstrukt damit ein Flag/Kennzeichen/Marker/Idikator Element nicht als XML-Any misbraucht werden kann.</xs:documentation>
+ </xs:annotation>
+ </xs:complexType>
+ <xs:element name="InternetAddress" type="p:InternetAddressType" substitutionGroup="msg:ElectronicAddress">
+ <xs:annotation>
+ <xs:documentation>element of internet address type</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="Language" type="msg:AustrianLanguageType">
+ <xs:annotation>
+ <xs:documentation>Sprache in welcher der Zustellnachweis gesendet werden soll</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="Logo" type="msg:LogoType">
+ <xs:annotation>
+ <xs:documentation>Definiert ein Logo</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="LogoType">
+ <xs:annotation>
+ <xs:documentation>Definiert ein Nachrichtenlogo</xs:documentation>
+ </xs:annotation>
+ <xs:choice>
+ <xs:element name="LogoID" type="xs:token">
+ <xs:annotation>
+ <xs:documentation>Für Logos, die vorab beim Zustelldienst für den Versender im Profil hinterlegt wurden</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:sequence>
+ <xs:element name="ContentValue" type="xs:base64Binary"/>
+ <xs:element name="ContentType" type="msg:token256"/>
+ </xs:sequence>
+ </xs:choice>
+ </xs:complexType>
+ <xs:element name="MailBox" type="xs:token">
+ <xs:annotation>
+ <xs:documentation>Spezielles Postfach des Empfängers, z.B. eine Filiale einer jur. Person</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="MetaData">
+ <xs:annotation>
+ <xs:documentation>Metadaten der Zustellung</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="msg:AppDeliveryID">
+ <xs:annotation>
+ <xs:documentation>ID des Zustellstücks beim Absender</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element ref="msg:Origin" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>Zustellsystem, welches die Nachricht überrmittelt hat. Muss gesetzt werden, wenn die Zustellsystem-Applikationen mehrere Zustellsysteme repräsentiert</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element ref="msg:Subject"/>
+ <xs:element ref="msg:GZ" minOccurs="0"/>
+ <xs:choice>
+ <xs:element ref="msg:DeliveryQuality"/>
+ <xs:element ref="msg:PrivateMessageQuality"/>
+ </xs:choice>
+ <xs:element ref="msg:NotificationLanguages" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>Sprachen - vom Versender mitgegeben - in denen die Verständigung gesendet werden soll</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element ref="msg:IgnorePostRedirectionOrder" minOccurs="0"/>
+ <xs:element ref="msg:Reference" minOccurs="0"/>
+ <xs:element ref="msg:Tags" minOccurs="0"/>
+ <xs:element ref="msg:MetadataList" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="MetadataEntry" type="msg:MetadataEntryType">
+ <xs:annotation>
+ <xs:documentation>Single metadata entry</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="MetadataEntryType">
+ <xs:sequence>
+ <xs:element name="OID" type="xs:token">
+ <xs:annotation>
+ <xs:documentation>Unique object identifier</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="Value" type="xs:anySimpleType">
+ <xs:annotation>
+ <xs:documentation>Metadata value. basic type is defined in specification document</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="DisplayInDetailView" type="xs:boolean">
+ <xs:annotation>
+ <xs:documentation>Display metadata in detailed view. If metadata are displayed by default or prohibited to display (e.g. internal data), this value cannot be overriden</xs:documentation>
+ </xs:annotation>
+ </xs:attribute>
+ </xs:complexType>
+ <xs:element name="MetadataList">
+ <xs:annotation>
+ <xs:documentation>List of metadata entries</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="msg:MetadataEntry" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="MimeType" type="msg:token256">
+ <xs:annotation>
+ <xs:documentation>Mime-Typ</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="NotificationAddressList" type="msg:NotificationAddressListType">
+ <xs:annotation>
+ <xs:documentation>Liste der verifizierten Verständigungsadressen des Teilnehmers</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="NotificationAddressListType">
+ <xs:sequence>
+ <xs:element ref="msg:ElectronicAddress" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="NotificationLanguages">
+ <xs:annotation>
+ <xs:documentation>Sprachen in denen die Verständigung gesendet werden soll</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="msg:Language" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>Sprache in der die Verständigung gesendet werden soll</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="NotificationsPerformed" type="msg:NotificationsPerformedType">
+ <xs:annotation>
+ <xs:documentation>Liste der vom AMOD durchgeführten Verständigungen des Empfängers</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="NotificationsPerformedType">
+ <xs:sequence>
+ <xs:element name="RecipientNotification" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Timestamp" type="xs:dateTime"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="Origin" type="msg:SystemComponentType">
+ <xs:annotation>
+ <xs:documentation>Herkunftssystem: Zustellsystem oder Kommunikationssystem der Behörde, von welchem die Nachricht oder Empfängerrdaten stammen</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="ParticipantID" type="msg:token256">
+ <xs:annotation>
+ <xs:documentation>ParticipantID = Landeskennung ":" ID
+ID = "VKZ:" VKZ | Org-Id
+VKZ ::= 1#32UACHAR;(Verwaltungskennzeichen gem. [VKZ])
+Org-Id ::= 1#32UACHAR;(Org-Id gem. [VKZ])
+Landeskennung ::= {2} ALPHA; (gem. ISO 3166 - Alpha2)
+(nicht normativ / nach ldap.gv.at) Beispiele: "AT:B:102", "AT:VKZ:GGA-12345", "AT:L9:9876"</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="PreAdviceNote" type="msg:PreAdviceNoteType">
+ <xs:annotation>
+ <xs:documentation>Aviso (optional)</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="PreAdviceNoteSent" type="msg:PreAdviceNoteSentType">
+ <xs:annotation>
+ <xs:documentation>Existenz des Elements zeigt an, dass ein Aviso erfolgreich an alle Verständigungsadressen des Teilnahmkandidaten versendet wurde</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="PreAdviceNoteSentType">
+ <xs:annotation>
+ <xs:documentation>(Technisch Notwendig, um implizites XML-Any zu verhindern)</xs:documentation>
+ </xs:annotation>
+ </xs:complexType>
+ <xs:complexType name="PreAdviceNoteType">
+ <xs:sequence>
+ <xs:element name="NumberOfDays" type="xs:positiveInteger">
+ <xs:annotation>
+ <xs:documentation>Frist von der Behörde bis wann die Registrierung erfolgt sein muss, um dass Behördenschriftstück noch elektronisch zu bekommen. Anderenfalls wird das Schriftstück von der Behörde auf dem normalen Postweg versandt. Diese Info wird im Aviso-E-Mail mitgegeben.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element ref="msg:NotificationAddressList" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="PrivateMessageQuality">
+ <xs:annotation>
+ <xs:documentation>Qualität der privatrechtlichen Zusendung ist von der Zustellqualität lt. ZustellG zu unterscheiden:
+• Information
+• RegisteredMail
+• RegisteredMail+
+• ConfirmReceipt
+• ConfirmReceipt+</xs:documentation>
+ </xs:annotation>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="Information"/>
+ <xs:enumeration value="RegisteredMail"/>
+ <xs:enumeration value="RegisteredMail+"/>
+ <xs:enumeration value="ConfirmReceipt"/>
+ <xs:enumeration value="ConfirmReceipt+"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+ <xs:element name="ProfileID" type="xs:token">
+ <xs:annotation>
+ <xs:documentation>ID mit der der Versender beim Zustellsystem registriert ist. (Das Zustellsystem ist für den Inhalt der Personendaten des Versenders verantwortlich, um sicherzustellen, dass diese nicht missbräuchlich verwendet werden (Vortäuschung einer anderen Identität))</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="Receiver">
+ <xs:annotation>
+ <xs:documentation>Informationen zum Empfänger</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:choice>
+ <xs:element ref="p:Identification"/>
+ <xs:sequence>
+ <xs:element ref="p:Person"/>
+ <xs:element ref="msg:AustrianAddressesOnly" minOccurs="0"/>
+ <xs:element ref="p:Address" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:choice>
+ <xs:element ref="msg:AdditionalCriteria" minOccurs="0"/>
+ <xs:element ref="msg:PreAdviceNote" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ReceiverDetails" type="p:PersonAndIdentificationType">
+ <xs:annotation>
+ <xs:documentation>Informationen nur für Senderidentifikation</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="Reference">
+ <xs:annotation>
+ <xs:documentation>Referenz auf ein anderes Zustellstück (ZSDeliveryID), auf die sich diese Zustellung bezieht</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="msg:ZSDeliveryID"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="RelayedViaERV">
+ <xs:annotation>
+ <xs:documentation>Gibt an ob das Zustellstück über den ERV zugestellt wurde</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="msg:ERVCode"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Roles">
+ <xs:annotation>
+ <xs:documentation>Rollen, welche neben globalen Vertretungsbefugten Zustellstücke entgegennehmen dürfen</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Role" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Value" type="msg:token256"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Sender">
+ <xs:annotation>
+ <xs:documentation>Informationen zum Sender</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="msg:SenderPerson"/>
+ <xs:element ref="msg:ClearingProfilID" minOccurs="0"/>
+ <xs:element ref="msg:Logo" minOccurs="0"/>
+ <xs:element ref="msg:AdditionalCriteria" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>Spezielles Postfach des Versenders z.B. eine Filiale einer jur. Person an welches dieser eine etwaige Antwort retourniert haben möchte</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element ref="msg:ConfirmationAddress" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>Webservice oder E-Mail-Adresse, an welche die Übergabebestätigung, der Zustellnachweis oder die Fehlermeldung zurückgemeldet wird (Callback)</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="SenderCorporateBody" type="msg:SenderCorporateBodyType" substitutionGroup="msg:SenderPerson">
+ <xs:annotation>
+ <xs:documentation>Versender ist eine Behörde oder ein Unternehmen, das im gesetzlichen Auftrag handeln</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="SenderCorporateBodyType">
+ <xs:annotation>
+ <xs:documentation>juridical person, organisation</xs:documentation>
+ </xs:annotation>
+ <xs:complexContent>
+ <xs:extension base="msg:AbstractSenderPersonType">
+ <xs:choice>
+ <xs:element ref="msg:SenderProfile"/>
+ <xs:sequence>
+ <xs:element ref="p:Identification"/>
+ <xs:element ref="p:CorporateBody"/>
+ </xs:sequence>
+ </xs:choice>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:element name="SenderDetails" type="p:PersonAndIdentificationType">
+ <xs:annotation>
+ <xs:documentation>Informationen nur für Senderidentifikation</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="SenderPerson" type="msg:AbstractSenderPersonType">
+ <xs:annotation>
+ <xs:documentation>Die Person des Versenders wird über das Clientzertifikat authentifiziert mit dem sich das IT-Service des Versenders mit seinem Zustellsystem verbindet. (Bei Behörden erfolgt die Authentifizierung über PVP-Header)</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="SenderProfile">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="msg:ProfileID"/>
+ <xs:element ref="p:Organization" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ServiceProviderID" type="msg:token256">
+ <xs:annotation>
+ <xs:documentation>ID des Dienstleisters, der für den Versender die Kommunikation mit dem Zustelldienst bzw. generell dem Zustellsystem durchführt. In diesem Fall ist der Dienstleister der Rechnungsempfänger</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="SimpleRequestType">
+ <xs:annotation>
+ <xs:documentation>Einfacher "Request" ohne Datenelemente</xs:documentation>
+ </xs:annotation>
+ </xs:complexType>
+ <xs:element name="Subject" type="xs:token">
+ <xs:annotation>
+ <xs:documentation>Zur Anzeige in der Mailbox, vgl. Subject von herkömml. E-mails</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="SystemComponentType">
+ <xs:annotation>
+ <xs:documentation>Systemkomponente der E-Zustellung: Portal oder Zustellsystem. (Ein Zustellsystem ist entweder ein Zustelldienst, ein Kommunikationssystem der Behörde oder ein Zielsystem)</xs:documentation>
+ </xs:annotation>
+ <xs:sequence>
+ <xs:element ref="msg:ParticipantID">
+ <xs:annotation>
+ <xs:documentation>ParticipantID = Landeskennung ":" ID
+ID = "VKZ:" VKZ | Org-Id
+VKZ ::= 1#32UACHAR; (Verwaltungskennzeichen gem. [VKZ])
+Org-Id ::= 1#32UACHAR; (Org-Id gem. [VKZ])
+Landeskennung ::= {2} ALPHA; (gem. ISO 3166 - Alpha2)
+(nicht normativ / nach ldap.gv.at) Beispiele: "AT:B:102", "AT:VKZ:GGA-12345", "AT:L9:9876"</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="Tag" type="msg:token256"/>
+ <xs:element name="Tags">
+ <xs:annotation>
+ <xs:documentation>Schlagworte zu einer Nachricht nach welchen ein Benutzer suchen kann. (Dieser müssen vom Versender einer Nachricht gesetzt werden)</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element ref="msg:Tag" maxOccurs="20"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="TargetIdentification" type="p:IdentificationType">
+ <xs:annotation>
+ <xs:documentation>Wenn im DeliveryRequest ein Target angegeben wurde, d.h. der Bereich und das VKZ des behördlichen Versenders, dann enthält das TargetIdentification Element das entsprechende, umgeschlüsselt vbPK für den Versender</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="Timestamp" type="xs:dateTime">
+ <xs:annotation>
+ <xs:documentation>Timestamp, der vom Anzeigemodul erzeugt wurde. Im Falle der Annahme einer Zustellung entspricht der Timestamp dem Zustellzeitpunkt</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="User">
+ <xs:annotation>
+ <xs:documentation>Benutzer, der die Nachricht angenommen oder gelöscht hat. Wenn die Nachrichtenoperation vom System des Anzeigemoduls ausgelöst wurde, bleibt das User Element leer</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Role">
+ <xs:annotation>
+ <xs:documentation>Rolle des Benutzers:
+• Receiver: Empfänger persönlich
+• Representative: Vertretungsbevollmächtigter
+• InsolvencyAdministrator: Insolvenzverwalters
+• System: Eine Systemkomponente der eZustellung ist Auslöser der MessageOperation
+ </xs:documentation>
+ </xs:annotation>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="Receiver"/>
+ <xs:enumeration value="Representative"/>
+ <xs:enumeration value="InsolvencyAdministrator"/>
+ <xs:enumeration value="System"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+ <xs:element ref="p:Identification"/>
+ <xs:element ref="msg:TargetIdentification" minOccurs="0"/>
+ <xs:element ref="p:PhysicalPerson"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="WebserviceURL">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:extension base="p:InternetAddressType">
+ <xs:attribute name="AlternativeEmail" type="xs:anyURI"/>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="ZSDeliveryID" type="msg:token256">
+ <xs:annotation>
+ <xs:documentation>ID des Zustellstückes MUSS über alle Zustellsysteme eindeutig sein. Die ZSDeliveryID wird durch eine UUID gemäß RFC-4122 repräsentiert. Der Node-Teil MUSS pro Zustellsystem eindeutig sein und wird vom Anzeigemodul vergeben.</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <!--### Simple Types-->
+ <xs:simpleType name="token256">
+ <xs:annotation>
+ <xs:documentation>Token auf 256 Zeichen beschränkt.</xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="xs:token">
+ <xs:minLength value="1"/>
+ <xs:maxLength value="256"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="AustrianLanguageType">
+ <xs:annotation>
+ <xs:documentation>2-stelliger Sprachcode der anerkannten österreichischen Minderheiten</xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="xs:token">
+ <xs:minLength value="2"/>
+ <xs:maxLength value="2"/>
+ <xs:enumeration value="DE"/>
+ <xs:enumeration value="HR"/>
+ <xs:enumeration value="HU"/>
+ <xs:enumeration value="SL"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="FileNameType">
+ <xs:annotation>
+ <xs:documentation>Typ zur Beschränkung von Dateinamen auf minimal 5 Zeichen und maximal 255 Zeichen</xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="xs:token">
+ <xs:maxLength value="255"/>
+ <xs:minLength value="5"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="VersionNumberType">
+ <xs:annotation>
+ <xs:documentation>Typ definiert einen regulären Ausdruck für Versionsnummer - z.B. 1.0.0</xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="xs:token">
+ <xs:pattern value="[0-9]{1,2}\.[0-9]{1,2}\.[0-9]{1,3}"/>
+ </xs:restriction>
+ </xs:simpleType>
+</xs:schema>
diff --git a/moaSig/moa-sig-lib/src/main/resources/resources/wsdl/MOA-SPSS-3.1.2.xsd b/moaSig/moa-sig-lib/src/main/resources/resources/wsdl/MOA-SPSS-3.1.2.xsd
new file mode 100644
index 0000000..69834b2
--- /dev/null
+++ b/moaSig/moa-sig-lib/src/main/resources/resources/wsdl/MOA-SPSS-3.1.2.xsd
@@ -0,0 +1,839 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- MOA SP/SS 2.0.0 Schema -->
+<xsd:schema xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="http://reference.e-government.gv.at/namespace/moa/20020822#" targetNamespace="http://reference.e-government.gv.at/namespace/moa/20020822#" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.2">
+ <xsd:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="http://www.w3.org/TR/xmldsig-core/xmldsig-core-schema.xsd"/>
+ <xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="http://www.w3.org/2001/xml.xsd"/>
+ <!--########## Create CMS Signature ### -->
+ <!--### Create CMS Signature Request ### -->
+ <xsd:element name="CreateCMSSignatureRequest">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="CreateCMSSignatureRequestType"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:complexType name="CreateCMSSignatureRequestType">
+ <xsd:sequence>
+ <xsd:element name="KeyIdentifier" type="KeyIdentifierType"/>
+ <xsd:element name="SingleSignatureInfo" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>Ermöglichung der Stapelsignatur durch
+ wiederholte Angabe dieses Elements</xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="DataObjectInfo">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="CMSDataObjectInfoType"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="SecurityLayerConformity" type="xsd:boolean" use="optional" default="true"/>
+ <xsd:attribute name="PAdESConformity" type="xsd:boolean" use="optional" default="false"/>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ <!--### Create CMS Signature Response ### -->
+ <xsd:element name="CreateCMSSignatureResponse" type="CreateCMSSignatureResponseType"/>
+ <xsd:complexType name="CreateCMSSignatureResponseType">
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>Kardinalität 1..oo erlaubt die Antwort auf eine
+ Stapelsignatur-Anfrage</xsd:documentation>
+ </xsd:annotation>
+ <xsd:element name="CMSSignature" type="xsd:base64Binary">
+ <xsd:annotation>
+ <xsd:documentation>Resultat, falls die Signaturerstellung
+ erfolgreich war</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element ref="ErrorResponse"/>
+ </xsd:choice>
+ </xsd:complexType>
+ <!--########## Create XML Signature ### -->
+ <!--### Create XML Signature Request ### -->
+ <xsd:element name="CreateXMLSignatureRequest">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="CreateXMLSignatureRequestType"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:complexType name="CreateXMLSignatureRequestType">
+ <xsd:sequence>
+ <xsd:element name="KeyIdentifier" type="KeyIdentifierType"/>
+ <xsd:element name="SingleSignatureInfo" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>Ermöglichung der Stapelsignatur durch
+ wiederholte Angabe dieses Elements</xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="DataObjectInfo" maxOccurs="unbounded">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="DataObjectInfoType">
+ <xsd:attribute name="ChildOfManifest" type="xsd:boolean" use="optional" default="false"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="CreateSignatureInfo" minOccurs="0">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="CreateSignatureEnvironment" type="ContentOptionalRefType"/>
+ <xsd:choice>
+ <xsd:annotation>
+ <xsd:documentation>Auswahl: Entweder explizite Angabe des
+ Signaturorts sowie ggf. sinnvoller Supplements im Zshg. mit
+ der Signaturumgebung, oder Verweis auf ein benanntes Profil
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:element ref="CreateSignatureEnvironmentProfile"/>
+ <xsd:element name="CreateSignatureEnvironmentProfileID" type="ProfileIdentifierType"/>
+ </xsd:choice>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="SecurityLayerConformity" type="xsd:boolean" use="optional" default="true"/>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ <!--### Create XML Signature Response ### -->
+ <xsd:complexType name="CreateXMLSignatureResponseType">
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>Kardinalität 1..oo erlaubt die Antwort auf eine
+ Stapelsignatur-Anfrage</xsd:documentation>
+ </xsd:annotation>
+ <xsd:element name="SignatureEnvironment">
+ <xsd:annotation>
+ <xsd:documentation>Resultat, falls die Signaturerstellung
+ erfolgreich war</xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:any namespace="##any" processContents="lax"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element ref="ErrorResponse"/>
+ </xsd:choice>
+ </xsd:complexType>
+ <xsd:element name="CreateXMLSignatureResponse" type="CreateXMLSignatureResponseType"/>
+ <!--########## Create PDF Signature ### -->
+ <!--### Create PDF Signature Request ### -->
+ <xsd:element name="CreatePDFSignatureRequest">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="CreatePDFSignatureRequestType"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:complexType name="CreatePDFSignatureRequestType">
+ <xsd:sequence>
+ <xsd:element name="KeyIdentifier" type="KeyIdentifierType"/>
+ <xsd:element name="SingleSignatureInfo" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>Ermöglichung der Stapelsignatur durch
+ wiederholte Angabe dieses Elements</xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="PDFDocument" type="xsd:base64Binary"/>
+ <xsd:element name="SignatureProfile" type="xsd:string" minOccurs="0" maxOccurs="1"/>
+ <xsd:element name="SignaturePosition" type="xsd:string" minOccurs="0" maxOccurs="1"/>
+ <xsd:element name="SignatureID" type="xsd:string" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ <!--### Create PDF Signature Response ### -->
+ <xsd:element name="CreatePDFSignatureResponse" type="CreatePDFSignatureResponseType"/>
+ <xsd:complexType name="CreatePDFSignatureResponseType">
+ <xsd:sequence>
+ <xsd:element name="PDFSignature" type="PDFSignedRepsonse" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <!--########## Verify CMS Signature ### -->
+ <!--### Verifiy CMS Signature Request ### -->
+ <xsd:element name="VerifyCMSSignatureRequest">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="VerifyCMSSignatureRequestType">
+ <xsd:attribute name="Signatories" type="SignatoriesType" use="optional" default="1"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:complexType name="VerifyCMSSignatureRequestType">
+ <xsd:sequence>
+ <xsd:element name="DateTime" type="xsd:dateTime" minOccurs="0"/>
+ <xsd:element name="ExtendedValidation" type="xsd:boolean" default="false" minOccurs="0"/>
+ <xsd:element name="CMSSignature" type="xsd:base64Binary"/>
+ <xsd:element name="DataObject" type="CMSDataObjectOptionalMetaType" minOccurs="0"/>
+ <xsd:element name="TrustProfileID" type="xsd:token">
+ <xsd:annotation>
+ <xsd:documentation>mit diesem Profil wird eine Menge von
+ vertrauenswürdigen Wurzelzertifikaten spezifiziert
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ <!--### Verify CMS Signature Response ### -->
+ <xsd:element name="VerifyCMSSignatureResponse" type="VerifyCMSSignatureResponseType"/>
+ <xsd:complexType name="VerifyCMSSignatureResponseType">
+ <xsd:sequence maxOccurs="unbounded">
+ <xsd:element name="SignerInfo" type="dsig:KeyInfoType">
+ <xsd:annotation>
+ <xsd:documentation>only ds:X509Data and RetrievalMethod is
+ supported; QualifiedCertificate is included as
+ X509Data/any;publicAuthority is included as X509Data/any;
+ SecureSignatureCreationDevice is included as X509Data/any,
+ IssuingCountry is included as X509Data/any</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="SignatureAlgorithm" type="xsd:string" minOccurs="0" maxOccurs="1"/>
+ <xsd:element name="SignatureCheck" type="CheckResultType"/>
+ <xsd:element name="CertificateCheck" type="CheckResultType"/>
+ <xsd:element name="FormCheckResult" type="FormResultType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="ExtendedCertificateCheck" type="ExtendedCertificateCheckResultType" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="VerifyASICCMSSignatureResponseType">
+ <xsd:sequence maxOccurs="unbounded">
+ <xsd:element name="SignerInfo" type="dsig:KeyInfoType">
+ <xsd:annotation>
+ <xsd:documentation>only ds:X509Data and RetrievalMethod is
+ supported; QualifiedCertificate is included as
+ X509Data/any;publicAuthority is included as X509Data/any;
+ SecureSignatureCreationDevice is included as X509Data/any,
+ IssuingCountry is included as X509Data/any,
+ TSLInformation is included as X509Data/any</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="SigningTime" type="xsd:dateTime" minOccurs="0"/>
+ <xsd:element name="SignatureCheck" type="CheckResultType"/>
+ <xsd:element name="CertificateCheck" type="CheckResultType"/>
+ <xsd:element name="FormCheckResult" type="FormResultType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="ExtendedCertificateCheck" type="ExtendedCertificateCheckResultType" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <!--########## Verify PDF Signature ### -->
+ <!--### Verifiy PDF Signature Request ### -->
+ <xsd:element name="VerifyPDFSignatureRequest">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="VerifyPDFSignatureRequestType">
+ <xsd:attribute name="Signatories" type="SignatoriesType" use="optional" default="1"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:complexType name="VerifyPDFSignatureRequestType">
+ <xsd:sequence>
+ <xsd:element name="DateTime" type="xsd:dateTime" minOccurs="0"/>
+ <xsd:element name="ExtendedValidation" type="xsd:boolean" default="false" minOccurs="0"/>
+ <xsd:element name="PDFSignature" type="xsd:base64Binary"/>
+ <xsd:element name="TrustProfileID" type="xsd:token">
+ <xsd:annotation>
+ <xsd:documentation>mit diesem Profil wird eine Menge von
+ vertrauenswürdigen Wurzelzertifikaten spezifiziert
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ <!--########## Verify PDF Signature ### -->
+ <!--### Verifiy ASIC Signature Request ### -->
+ <xsd:element name="VerifyASICSignatureRequest">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="VerifyASICSignatureRequestType"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:complexType name="VerifyASICSignatureRequestType">
+ <xsd:sequence>
+ <xsd:element name="DateTime" type="xsd:dateTime" minOccurs="0"/>
+ <xsd:element name="ExtendedValidation" type="xsd:boolean" default="false" minOccurs="0"/>
+ <xsd:element name="ASICSignature" type="xsd:base64Binary"/>
+ <xsd:element name="ASICExtension" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation>asics or asice</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="TrustProfileID" type="xsd:token">
+ <xsd:annotation>
+ <xsd:documentation>mit diesem Profil wird eine Menge von
+ vertrauenswürdigen Wurzelzertifikaten spezifiziert
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ <!--### Verify ASIC Signature Response ### -->
+ <xsd:element name="VerifyASICSignatureResponse" type="VerifyASICSignatureResponseType"/>
+ <xsd:complexType name="VerifyASICSignatureResponseType">
+ <xsd:sequence>
+ <xsd:element name="ASiCSignatureResult" type="ASICResultType" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <!--xsd:complexType name="signedFilesType">
+ <xsd:sequence>
+ <xsd:element name="signedFiles" type="xsd:string">
+ </xsd:sequence>
+ <xsd:attribute name="hashAlgorithm" type="xsd:string" use="optional"/>
+ </xsd:complexType-->
+ <xsd:complexType name="ASICResultType">
+ <xsd:sequence>
+ <xsd:element name="signedFiles" minOccurs="0" maxOccurs="unbounded">
+ <xsd:complexType>
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:string">
+ <xsd:attribute name="hashAlgorithm" type="xsd:string" use="optional"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="XMLSignatureResult" type="VerifyASICXMLSignatureResponseType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="CMSSignatureResult" type="VerifyASICCMSSignatureResponseType" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <!--### Verify CMS Signature Response ### -->
+ <xsd:element name="VerifyPDFSignatureResponse" type="VerifyPDFSignatureResponseType"/>
+ <xsd:complexType name="VerifyPDFSignatureResponseType">
+ <xsd:sequence maxOccurs="unbounded">
+ <xsd:element name="SignatureResult" type="PDFSignatureResultType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="PDFSignatureResultType">
+ <xsd:sequence>
+ <xsd:element name="SignerInfo" type="dsig:KeyInfoType" minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>only ds:X509Data and RetrievalMethod is
+ supported; QualifiedCertificate is included as
+ X509Data/any;publicAuthority is included as X509Data/any;
+ SecureSignatureCreationDevice is included as X509Data/any,
+ IssuingCountry is included as X509Data/any</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="SigningTime" type="xsd:dateTime" minOccurs="0"/>
+ <xsd:element name="SignatureAlgorithm" type="xsd:string" minOccurs="0" maxOccurs="1"/>
+ <xsd:element name="SignatureCheck" type="CheckResultType"/>
+ <xsd:element name="CertificateCheck" type="CheckResultType"/>
+ <xsd:element name="FormCheckResult" type="FormResultType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="ExtendedCertificateCheck" type="ExtendedCertificateCheckResultType" minOccurs="0" maxOccurs="1"/>
+ <xsd:element name="SignatureProperties" type="PDFSignatureProperties" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="PDFSignatureProperties">
+ <xsd:sequence>
+ <xsd:element name="SignatureCoversFullPDF" type="xsd:boolean" minOccurs="0" maxOccurs="1"/>
+ <xsd:element name="SignatureByteRange" type="xsd:string" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <!--########## Verify XML Signature ### -->
+ <!--### Verify XML Signature Request ### -->
+ <xsd:element name="VerifyXMLSignatureRequest" type="VerifyXMLSignatureRequestType"/>
+ <xsd:complexType name="VerifyXMLSignatureRequestType">
+ <xsd:sequence>
+ <xsd:element name="DateTime" type="xsd:dateTime" minOccurs="0"/>
+ <xsd:element name="ExtendedValidation" type="xsd:boolean" default="false" minOccurs="0"/>
+ <xsd:element name="VerifySignatureInfo">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="VerifySignatureEnvironment" type="ContentOptionalRefType"/>
+ <xsd:element name="VerifySignatureLocation" type="xsd:token"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:choice minOccurs="0" maxOccurs="unbounded">
+ <xsd:element ref="SupplementProfile"/>
+ <xsd:element name="SupplementProfileID" type="xsd:string"/>
+ </xsd:choice>
+ <xsd:element name="SignatureManifestCheckParams" minOccurs="0">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="ReferenceInfo" type="VerifyTransformsDataType" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>Pro dsig:Reference-Element in der zu
+ überprüfenden XML-Signatur muss hier ein
+ ReferenceInfo-Element erscheinen. Die Reihenfolge der einzelnen
+ ReferenceInfo Elemente entspricht jener der dsig:Reference
+ Elemente in der XML-Signatur.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="ReturnReferenceInputData" type="xsd:boolean" use="optional" default="true"/>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="ReturnHashInputData" minOccurs="0"/>
+ <xsd:element name="TrustProfileID" type="xsd:token">
+ <xsd:annotation>
+ <xsd:documentation>mit diesem Profil wird eine Menge von
+ vertrauenswürdigen Wurzelzertifikaten spezifiziert
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ <!--### Verify XML Signature Response ### -->
+ <xsd:element name="VerifyXMLSignatureResponse" type="VerifyXMLSignatureResponseType"/>
+ <xsd:complexType name="VerifyXMLSignatureResponseType">
+ <xsd:sequence>
+ <xsd:element name="SignerInfo" type="dsig:KeyInfoType">
+ <xsd:annotation>
+ <xsd:documentation>only ds:X509Data and ds:RetrievalMethod is
+ supported; QualifiedCertificate is included as X509Data/any;
+ PublicAuthority is included as X509Data/any;
+ SecureSignatureCreationDevice is included as X509Data/any,
+ IssuingCountry is included as X509Data/any</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="HashInputData" type="InputDataType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="ReferenceInputData" type="InputDataType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="SignatureAlgorithm" type="xsd:string" minOccurs="0" maxOccurs="1"/>
+ <xsd:element name="SignatureCheck" type="ReferencesCheckResultType"/>
+ <xsd:element name="SignatureManifestCheck" type="ReferencesCheckResultType" minOccurs="0"/>
+ <xsd:element name="XMLDSIGManifestCheck" type="ManifestRefsCheckResultType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="CertificateCheck" type="CheckResultType"/>
+ <xsd:element name="FormCheckResult" type="FormResultType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="ExtendedCertificateCheck" type="ExtendedCertificateCheckResultType" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="VerifyASICXMLSignatureResponseType">
+ <xsd:sequence>
+ <xsd:element name="SignerInfo" type="dsig:KeyInfoType">
+ <xsd:annotation>
+ <xsd:documentation>only ds:X509Data and ds:RetrievalMethod is
+ supported; QualifiedCertificate is included as X509Data/any;
+ PublicAuthority is included as X509Data/any;
+ SecureSignatureCreationDevice is included as X509Data/any,
+ IssuingCountry is included as X509Data/any</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="SigningTime" type="xsd:dateTime" minOccurs="0"/>
+ <xsd:element name="HashInputData" type="InputDataType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="ReferenceInputData" type="InputDataType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="SignatureCheck" type="ReferencesCheckResultType"/>
+ <xsd:element name="SignatureManifestCheck" type="ReferencesCheckResultType" minOccurs="0"/>
+ <xsd:element name="XMLDSIGManifestCheck" type="ManifestRefsCheckResultType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="CertificateCheck" type="CheckResultType"/>
+ <xsd:element name="FormCheckResult" type="FormResultType" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="ExtendedCertificateCheck" type="ExtendedCertificateCheckResultType" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:simpleType name="ProfileIdentifierType">
+ <xsd:restriction base="xsd:token"/>
+ </xsd:simpleType>
+ <xsd:complexType name="InputDataType">
+ <xsd:complexContent>
+ <xsd:extension base="ContentExLocRefBaseType">
+ <xsd:attribute name="PartOf" use="optional" default="SignedInfo">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="SignedInfo"/>
+ <xsd:enumeration value="XMLDSIGManifest"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ <xsd:attribute name="ReferringSigReference" type="xsd:nonNegativeInteger" use="optional"/>
+ <xsd:attribute name="HashAlgorithm" type="xsd:string" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="MetaInfoType">
+ <xsd:sequence>
+ <xsd:element name="MimeType" type="MimeTypeType"/>
+ <xsd:element name="Description" type="xsd:anyURI" minOccurs="0"/>
+ <xsd:any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="FinalDataMetaInfoType">
+ <xsd:complexContent>
+ <xsd:extension base="MetaInfoType">
+ <xsd:sequence>
+ <xsd:element name="Type" type="xsd:anyURI" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="DataObjectInfoType">
+ <xsd:sequence>
+ <xsd:element name="DataObject">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="ContentOptionalRefType"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:choice>
+ <xsd:annotation>
+ <xsd:documentation>Auswahl: Entweder explizite Angabe EINER
+ Transformationskette inklusive ggf. sinnvoller Supplements oder
+ Verweis auf ein benanntes Profil</xsd:documentation>
+ </xsd:annotation>
+ <xsd:element ref="CreateTransformsInfoProfile"/>
+ <xsd:element name="CreateTransformsInfoProfileID" type="ProfileIdentifierType"/>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="Structure" use="required">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="detached"/>
+ <xsd:enumeration value="enveloping"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ <xsd:complexType name="CMSDataObjectInfoType">
+ <xsd:sequence>
+ <xsd:element name="DataObject">
+ <xsd:complexType>
+ <xsd:complexContent>
+ <xsd:extension base="CMSDataObjectRequiredMetaType"/>
+ </xsd:complexContent>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="Structure" use="required">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="detached"/>
+ <xsd:enumeration value="enveloping"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ <xsd:complexType name="TransformsInfoType">
+ <xsd:sequence>
+ <xsd:element ref="dsig:Transforms" minOccurs="0"/>
+ <xsd:element name="FinalDataMetaInfo" type="FinalDataMetaInfoType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="XMLDataObjectAssociationType">
+ <xsd:sequence>
+ <xsd:element name="MetaInfo" type="MetaInfoType" minOccurs="0"/>
+ <xsd:element name="Content" type="ContentRequiredRefType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="PDFSignedRepsonse">
+ <xsd:sequence>
+ <xsd:element name="SignatureID" type="xsd:string" minOccurs="0" maxOccurs="1"/>
+ <xsd:choice maxOccurs="1">
+ <xsd:element name="PDFSignature" type="xsd:base64Binary">
+ <xsd:annotation>
+ <xsd:documentation>Resultat, falls die Signaturerstellung
+ erfolgreich war</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element ref="ErrorResponse"/>
+ </xsd:choice>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CMSDataObjectOptionalMetaType">
+ <xsd:sequence>
+ <xsd:element name="MetaInfo" type="MetaInfoType" minOccurs="0"/>
+ <xsd:element name="Content" type="CMSContentBaseType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CMSDataObjectRequiredMetaType">
+ <xsd:sequence>
+ <xsd:element name="MetaInfo" type="MetaInfoType"/>
+ <xsd:element name="Content" type="CMSContentBaseType"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="CMSContentBaseType">
+ <xsd:complexContent>
+ <xsd:restriction base="ContentOptionalRefType">
+ <xsd:choice minOccurs="0">
+ <xsd:element name="Base64Content" type="xsd:base64Binary"/>
+ </xsd:choice>
+ </xsd:restriction>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="CheckResultType">
+ <xsd:sequence>
+ <xsd:element name="Code" type="xsd:nonNegativeInteger"/>
+ <xsd:element name="Info" type="AnyChildrenType" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="FormResultType">
+ <xsd:sequence>
+ <xsd:element name="Code" type="xsd:nonNegativeInteger" minOccurs="1" maxOccurs="1"/>
+ <xsd:element name="Name" type="xsd:string" minOccurs="1" maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="IndicationResultType">
+ <xsd:sequence>
+ <xsd:element name="Code" type="xsd:nonNegativeInteger" minOccurs="1" maxOccurs="1"/>
+ <xsd:element name="Name" type="xsd:string" minOccurs="1" maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="ExtendedCertificateCheckResultType">
+ <xsd:sequence>
+ <xsd:element name="Major" type="IndicationResultType" minOccurs="1" maxOccurs="1"/>
+ <xsd:element name="Minor" type="IndicationResultType" minOccurs="0" maxOccurs="1"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="ReferencesCheckResultType">
+ <xsd:complexContent>
+ <xsd:restriction base="CheckResultType">
+ <xsd:sequence>
+ <xsd:element name="Code" type="xsd:nonNegativeInteger"/>
+ <xsd:element name="Info" type="ReferencesCheckResultInfoType" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:restriction>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="ReferencesCheckResultInfoType" mixed="true">
+ <xsd:complexContent>
+ <xsd:restriction base="AnyChildrenType">
+ <xsd:sequence>
+ <xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="FailedReference" type="xsd:positiveInteger" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:restriction>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="ManifestRefsCheckResultType">
+ <xsd:complexContent>
+ <xsd:restriction base="CheckResultType">
+ <xsd:sequence>
+ <xsd:element name="Code" type="xsd:nonNegativeInteger"/>
+ <xsd:element name="Info" type="ManifestRefsCheckResultInfoType"/>
+ </xsd:sequence>
+ </xsd:restriction>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="ManifestRefsCheckResultInfoType" mixed="true">
+ <xsd:complexContent>
+ <xsd:restriction base="AnyChildrenType">
+ <xsd:sequence>
+ <xsd:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="FailedReference" type="xsd:positiveInteger" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element name="ReferringSigReference" type="xsd:positiveInteger"/>
+ </xsd:sequence>
+ </xsd:restriction>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <!--########## Error Response ### -->
+ <xsd:element name="ErrorResponse" type="ErrorResponseType">
+ <xsd:annotation>
+ <xsd:documentation>Resultat, falls die Signaturerstellung gescheitert
+ ist</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:complexType name="ErrorResponseType">
+ <xsd:sequence>
+ <xsd:element name="ErrorCode" type="xsd:integer"/>
+ <xsd:element name="Info" type="xsd:string"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <!--########## Auxiliary Types ### -->
+ <xsd:simpleType name="KeyIdentifierType">
+ <xsd:restriction base="xsd:string"/>
+ </xsd:simpleType>
+ <xsd:simpleType name="KeyStorageType">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="Software"/>
+ <xsd:enumeration value="Hardware"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:simpleType name="MimeTypeType">
+ <xsd:restriction base="xsd:token"/>
+ </xsd:simpleType>
+ <xsd:complexType name="AnyChildrenType" mixed="true">
+ <xsd:sequence>
+ <xsd:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="XMLContentType" mixed="true">
+ <xsd:complexContent>
+ <xsd:extension base="AnyChildrenType">
+ <xsd:attribute ref="xml:space" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="ContentBaseType">
+ <xsd:choice minOccurs="0">
+ <xsd:element name="Base64Content" type="xsd:base64Binary"/>
+ <xsd:element name="XMLContent" type="XMLContentType"/>
+ <xsd:element name="LocRefContent" type="xsd:anyURI"/>
+ </xsd:choice>
+ </xsd:complexType>
+ <xsd:complexType name="ContentExLocRefBaseType">
+ <xsd:complexContent>
+ <xsd:restriction base="ContentBaseType">
+ <xsd:choice minOccurs="0">
+ <xsd:element name="Base64Content" type="xsd:base64Binary"/>
+ <xsd:element name="XMLContent" type="XMLContentType"/>
+ </xsd:choice>
+ </xsd:restriction>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="ContentOptionalRefType">
+ <xsd:complexContent>
+ <xsd:extension base="ContentBaseType">
+ <xsd:attribute name="Reference" type="xsd:anyURI" use="optional"/>
+ </xsd:extension>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="ContentRequiredRefType">
+ <xsd:complexContent>
+ <xsd:restriction base="ContentOptionalRefType">
+ <xsd:choice minOccurs="0">
+ <xsd:element name="Base64Content" type="xsd:base64Binary"/>
+ <xsd:element name="XMLContent" type="XMLContentType"/>
+ <xsd:element name="LocRefContent" type="xsd:anyURI"/>
+ </xsd:choice>
+ <xsd:attribute name="Reference" type="xsd:anyURI" use="required"/>
+ </xsd:restriction>
+ </xsd:complexContent>
+ </xsd:complexType>
+ <xsd:complexType name="VerifyTransformsDataType">
+ <xsd:choice maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>Ein oder mehrere Transformationswege können von
+ der Applikation an MOA mitgeteilt werden. Die zu prüfende Signatur
+ hat zumindest einem dieser Transformationswege zu entsprechen. Die
+ Angabe kann explizit oder als Profilbezeichner erfolgen.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:element ref="VerifyTransformsInfoProfile"/>
+ <xsd:element name="VerifyTransformsInfoProfileID" type="xsd:string">
+ <xsd:annotation>
+ <xsd:documentation>Profilbezeichner für einen Transformationsweg
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:complexType>
+ <xsd:element name="QualifiedCertificate">
+ <xsd:complexType>
+ <xsd:attribute name="source" use="optional">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="TSL"/>
+ <xsd:enumeration value="Certificate"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="SecureSignatureCreationDevice">
+ <xsd:complexType>
+ <xsd:attribute name="source" use="optional">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="TSL"/>
+ <xsd:enumeration value="Certificate"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="IssuingCountry" type="xsd:token"/>
+ <xsd:element name="PublicAuthority" type="PublicAuthorityType"/>
+ <xsd:complexType name="PublicAuthorityType">
+ <xsd:sequence>
+ <xsd:element name="Code" type="xsd:string" minOccurs="0"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:simpleType name="SignatoriesType">
+ <xsd:union memberTypes="AllSignatoriesType">
+ <xsd:simpleType>
+ <xsd:list itemType="xsd:positiveInteger"/>
+ </xsd:simpleType>
+ </xsd:union>
+ </xsd:simpleType>
+ <xsd:simpleType name="AllSignatoriesType">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="all"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+ <xsd:complexType name="CreateSignatureLocationType">
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:token">
+ <xsd:attribute name="Index" type="xsd:integer" use="required"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+ <xsd:complexType name="TransformParameterType">
+ <xsd:choice minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>Die Angabe des Transformationsparameters
+ (explizit oder als Hashwert) kann unterlassen werden, wenn die
+ Applikation von der Unveränderlichkeit des Inhalts der in
+ "Transformationsparamter", Attribut "URI" angegebenen URI ausgehen
+ kann.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:element name="Base64Content" type="xsd:base64Binary">
+ <xsd:annotation>
+ <xsd:documentation>Der Transformationsparameter explizit angegeben.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="Hash">
+ <xsd:annotation>
+ <xsd:documentation>Der Hashwert des Transformationsparameters.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="dsig:DigestMethod"/>
+ <xsd:element ref="dsig:DigestValue"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:choice>
+ <xsd:attribute name="URI" type="xsd:anyURI" use="required"/>
+ </xsd:complexType>
+ <xsd:element name="CreateSignatureEnvironmentProfile">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="CreateSignatureLocation" type="CreateSignatureLocationType"/>
+ <xsd:element name="Supplement" type="XMLDataObjectAssociationType" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="VerifyTransformsInfoProfile">
+ <xsd:annotation>
+ <xsd:documentation>Explizite Angabe des Transformationswegs
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element ref="dsig:Transforms" minOccurs="0"/>
+ <xsd:element name="TransformParameter" type="TransformParameterType" minOccurs="0" maxOccurs="unbounded">
+ <xsd:annotation>
+ <xsd:documentation>Alle impliziten Transformationsparameter, die
+ zum Durchlaufen der oben angeführten Transformationskette
+ bekannt sein müssen, müssen hier angeführt werden. Das
+ Attribut "URI" bezeichnet den Transformationsparameter in exakt
+ jener Weise, wie er in der zu überprüfenden Signatur gebraucht
+ wird.</xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="Supplement" type="XMLDataObjectAssociationType"/>
+ <xsd:element name="SupplementProfile" type="XMLDataObjectAssociationType"/>
+ <xsd:element name="CreateTransformsInfoProfile">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="CreateTransformsInfo" type="TransformsInfoType"/>
+ <xsd:element ref="Supplement" minOccurs="0" maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+</xsd:schema>