diff options
author | Christof Rabensteiner <christof.rabensteiner@iaik.tugraz.at> | 2019-04-04 10:49:04 +0200 |
---|---|---|
committer | Christof Rabensteiner <christof.rabensteiner@iaik.tugraz.at> | 2019-04-04 10:49:04 +0200 |
commit | 7f64be6c0e2e0f77d688c88fa64021a2e093b5db (patch) | |
tree | 17606f1369f5b80babd33b7d07719277fb9994ab /src/main | |
parent | 83e53a096eb73b9792c7b51cf31e93ec32c1dd4d (diff) | |
download | moa-zs-7f64be6c0e2e0f77d688c88fa64021a2e093b5db.tar.gz moa-zs-7f64be6c0e2e0f77d688c88fa64021a2e093b5db.tar.bz2 moa-zs-7f64be6c0e2e0f77d688c88fa64021a2e093b5db.zip |
Update zusemsg schemes to v2.0.b
Diffstat (limited to 'src/main')
-rw-r--r-- | src/main/resources/zusemsg/zuse_mypersondata_en_p2.xsd | 38 | ||||
-rw-r--r-- | src/main/resources/zusemsg/zuse_p2.xsd | 1062 |
2 files changed, 508 insertions, 592 deletions
diff --git a/src/main/resources/zusemsg/zuse_mypersondata_en_p2.xsd b/src/main/resources/zusemsg/zuse_mypersondata_en_p2.xsd index 9a27360..271e56e 100644 --- a/src/main/resources/zusemsg/zuse_mypersondata_en_p2.xsd +++ b/src/main/resources/zusemsg/zuse_mypersondata_en_p2.xsd @@ -9,15 +9,21 @@ PersonData Blueprint solution for use with ZUSE Spezifikation, containes slimmed <xs:annotation> <xs:documentation>This version of person deploys only global elements. All types derived from abstract types have been replaced by substitution groups</xs:documentation> </xs:annotation> - <!-- ### structure of a person ### --> - <xs:element name="PersonData" type="p:PersonDataType"> + <!-- ### structure for person data ### --> + <xs:element name="Person" type="p:AbstractPersonType" abstract="true"/> + <!-- ### structure of a person with Identification ### --> + <xs:element name="PersonAndIdentification" type="p:PersonAndIdentificationType"> + <xs:annotation> + <xs:documentation>element of person details type</xs:documentation> + </xs:annotation> + </xs:element> + <!-- ### structure of a person with address### --> + <xs:element name="PersonAndAddress" type="p:PersonAndAddressType"> <xs:annotation> <xs:documentation>element of signed person datastructure type</xs:documentation> </xs:annotation> </xs:element> - <!-- ### base type for person data ### --> - <xs:element name="Person" type="p:AbstractPersonType" abstract="true"/> - <!-- ### physical person and corporate body ### --> + <!-- ### physical person, corporate body and authority ### --> <xs:element name="Authority" type="p:AuthorityType" substitutionGroup="p:Person"> <xs:annotation> <xs:documentation>Behörde, nur diese darf in RSa-Qualität versenden</xs:documentation> @@ -30,7 +36,7 @@ PersonData Blueprint solution for use with ZUSE Spezifikation, containes slimmed </xs:element> <xs:element name="PhysicalPerson" type="p:PhysicalPersonType" substitutionGroup="p:Person"> <xs:annotation> - <xs:documentation>element of physical person type, dreived from Person (abstract)</xs:documentation> + <xs:documentation>element of physical person type, dreived from Person </xs:documentation> </xs:annotation> </xs:element> <xs:element name="CorporateBody" type="p:CorporateBodyType" substitutionGroup="p:Person"> @@ -53,7 +59,7 @@ PersonData Blueprint solution for use with ZUSE Spezifikation, containes slimmed <xs:documentation>part of an organisation, see also X.500 ou (eg departement, section, branch, ...) , compare Organisation</xs:documentation> </xs:annotation> </xs:element> - <xs:element name="DateOfBirth" type="p:DateOfBirthType"> + <xs:element name="DateOfBirth" type="xs:date"> <xs:annotation> <xs:documentation>date of birth, compare Geburtsdatum</xs:documentation> </xs:annotation> @@ -107,7 +113,17 @@ PersonData Blueprint solution for use with ZUSE Spezifikation, containes slimmed <xs:attribute name="Id" type="xs:ID" use="optional"/> </xs:complexType> <!--### Complex types ###--> - <xs:complexType name="PersonDataType"> + <xs:complexType name="PersonAndIdentificationType"> + <xs:annotation> + <xs:documentation>person datastructure. The first Identification elements (from the base type) denote the record as such (e.g. database key for this record) - not to be mistaken for identifiers of the person or of an address (they have their own Identification elements).</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element ref="p:Identification"/> + <xs:element ref="p:Person"/> + </xs:sequence> + <xs:attribute name="Id" type="xs:ID" use="optional"/> + </xs:complexType> + <xs:complexType name="PersonAndAddressType"> <xs:annotation> <xs:documentation>signed person datastructure. The first Identification elements (from the base type) denote the record as such (e.g. database key for this record) - not to be mistaken for identifiers of the person or of an address (they have their own Identification elements).</xs:documentation> </xs:annotation> @@ -317,12 +333,6 @@ PersonData Blueprint solution for use with ZUSE Spezifikation, containes slimmed </xs:complexContent> </xs:complexType> <!-- ### strings of defined maximum lenght for use with ZMR address #### --> - <xs:simpleType name="DateOfBirthType"> - <xs:annotation> - <xs:documentation>simple type for dates (union), which may omit day and/or month</xs:documentation> - </xs:annotation> - <xs:union memberTypes="xs:date xs:gYearMonth xs:gYear"/> - </xs:simpleType> <xs:simpleType name="string3"> <xs:restriction base="xs:string"> <xs:maxLength value="3"/> diff --git a/src/main/resources/zusemsg/zuse_p2.xsd b/src/main/resources/zusemsg/zuse_p2.xsd index 24e426e..3b92024 100644 --- a/src/main/resources/zusemsg/zuse_p2.xsd +++ b/src/main/resources/zusemsg/zuse_p2.xsd @@ -11,7 +11,7 @@ <xs:sequence> <xs:element name="Version"> <xs:simpleType> - <xs:restriction base="xs:string"> + <xs:restriction base="xs:token"> <xs:enumeration value="2.2.0"/> </xs:restriction> </xs:simpleType> @@ -23,7 +23,7 @@ <!--### Zustellstückanlieferung ###--> <xs:element name="DeliveryRequest" type="msg:DeliveryRequestType"> <xs:annotation> - <xs:documentation>Zustellstückanleiferung</xs:documentation> + <xs:documentation>Zustellstückanlieferung</xs:documentation> </xs:annotation> </xs:element> <xs:complexType name="DeliveryRequestType"> @@ -44,15 +44,10 @@ <xs:attribute name="Version" type="msg:VersionNumberType"/> </xs:complexType> <xs:element name="DeliveryResponse" type="msg:DeliveryRequestStatusType"/> - <xs:element name="DeliveryRequestStatus"> + <xs:element name="DeliveryRequestStatus" type="msg:DeliveryRequestStatusType"> <xs:annotation> <xs:documentation>Webservice Response of ZSDeliveryRequest, also to used asynchronously </xs:documentation> </xs:annotation> - <xs:complexType> - <xs:complexContent> - <xs:extension base="msg:DeliveryRequestStatusType"/> - </xs:complexContent> - </xs:complexType> </xs:element> <xs:complexType name="DeliveryRequestStatusType"> <xs:sequence> @@ -97,15 +92,10 @@ </xs:sequence> <xs:attribute name="Version" type="msg:VersionNumberType"/> </xs:complexType> - <xs:element name="DeliveryRequestStatusACK"> + <xs:element name="DeliveryRequestStatusACK" type="msg:DeliveryRequestStatusACKType"> <xs:annotation> - <xs:documentation>Wenn DeliveryRequestStatus in asynchroner Koomunikation als Request benutz wird, ist DeliveryRequstStatusACK die Antwort</xs:documentation> + <xs:documentation>Wenn DeliveryRequestStatus bei asynchroner Koomunikation als Request benutzt wird, ist DeliveryRequstStatusACK die Antwort</xs:documentation> </xs:annotation> - <xs:complexType> - <xs:complexContent> - <xs:extension base="msg:DeliveryRequestStatusACKType"/> - </xs:complexContent> - </xs:complexType> </xs:element> <xs:complexType name="DeliveryRequestStatusACKType"> <xs:sequence> @@ -123,63 +113,42 @@ </xs:annotation> </xs:element> <xs:complexType name="DeliveryNotificationType"> - <xs:sequence> - <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:element name="SenderDetails"> - <xs:complexType> - <xs:sequence> - <xs:element ref="p:Identification"/> - <xs:element ref="p:Person"/> - </xs:sequence> - </xs:complexType> - </xs:element> - <xs:element name="ReceiverDetails"> - <xs:complexType> - <xs:sequence> - <xs:element ref="p:Identification"/> - <xs:element ref="p:Person"/> - </xs:sequence> - </xs:complexType> - </xs:element> - <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" maxOccurs="unbounded"/> - <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:string" use="required"/> - </xs:extension> - </xs:simpleContent> - </xs:complexType> - </xs:element> - </xs:sequence> - <xs:attribute name="Version" type="msg:VersionNumberType"/> + <xs:complexContent> + <xs:extension base="msg:DeliveryAnswerType"> + <xs:sequence> + <xs:element ref="msg:SenderDetails"/> + <xs:element ref="msg:ReceiverDetails"/> + <xs:element ref="msg:RelayedViaERV" minOccurs="0"/> + <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" maxOccurs="unbounded"/> + <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:extension> + </xs:simpleContent> + </xs:complexType> + </xs:element> + </xs:sequence> + <xs:attribute name="Version" type="msg:VersionNumberType"/> + </xs:extension> + </xs:complexContent> </xs:complexType> - <xs:element name="DeliveryNotificationACK"> + <xs:element name="DeliveryNotificationACK" type="msg:DeliveryNotificationACKType"> <xs:annotation> <xs:documentation>Webservice Response of ZSDeliveryNotification</xs:documentation> </xs:annotation> - <xs:complexType> - <xs:complexContent> - <xs:extension base="msg:DeliveryNotificationACKType"/> - </xs:complexContent> - </xs:complexType> </xs:element> <xs:complexType name="DeliveryNotificationACKType"> <xs:sequence> @@ -188,176 +157,12 @@ </xs:sequence> <xs:attribute name="Version" type="msg:VersionNumberType"/> </xs:complexType> - <!--### sonstige globale Elemente ###--> - <xs:simpleType name="VersionNumberType"> - <xs:restriction base="xs:string"> - <xs:pattern value="[0-9]{1,2}\.[0-9]{1,2}\.[0-9]{1,2}"/> - </xs:restriction> - </xs:simpleType> - <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="GZ" type="xs:string"> - <xs:annotation> - <xs:documentation>Geschäftszahl</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="ZSDeliveryID" type="msg:token256"> - <xs:annotation> - <xs:documentation>ID des Zustellstücke. Die ZSDeliveryID in Kombination mit der ParticipantID des Zustellsystems, welches die Nachricht übernmittelt hat muss eindeutig sein.</xs:documentation> - </xs:annotation> - </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: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="Identification" type="p:IdentificationType"> - <xs:annotation> - <xs:documentation>Identifikation basierend auf Type/Value</xs:documentation> - </xs:annotation> - </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: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 welches die Zustellbestätigung, der Zustellnachweis oder Fehlermeldung weitergeleitet wird (Callback)</xs:documentation> - </xs:annotation> - </xs:element> - </xs:sequence> - </xs:complexType> - </xs:element> - <xs:element name="SenderDetails"> - <xs:annotation> - <xs:documentation>Informationen nur für Senderidentifikation</xs:documentation> - </xs:annotation> - <xs:complexType> - <xs:sequence> - <xs:element ref="msg:SenderIdentificationPerson"/> - </xs:sequence> - </xs:complexType> - </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="msg:Identification"/> - <xs:element ref="p:Person"/> - </xs:choice> - <xs:element ref="p:Address" minOccurs="0" maxOccurs="unbounded"/> - <xs:element ref="msg:AdditionalCriteria" minOccurs="0"/> - <xs:element ref="msg:PreAdviceNote" minOccurs="0"/> - </xs:sequence> - </xs:complexType> - </xs:element> - <xs:element name="ReceiverDetails"> - <xs:annotation> - <xs:documentation>Informationen nur für Empfaengeridentifikation</xs:documentation> - </xs:annotation> - <xs:complexType> - <xs:sequence> - <xs:element ref="msg:ReceiverIdentificationPerson"/> - </xs:sequence> - </xs:complexType> - </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"> - <xs:annotation> - <xs:documentation>Anwendungsbereich/Urspung der Nachricht</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element ref="msg:Subject" minOccurs="0"/> - <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:Portals" minOccurs="0"/> - <xs:element ref="msg:MetadataList" minOccurs="0"/> - </xs:sequence> - </xs:complexType> - </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:string"> - <xs:enumeration value="xml"/> - <xs:enumeration value="xml+pdf"/> - </xs:restriction> - </xs:simpleType> - </xs:attribute> - </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="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> - <!--### Hilfstypen ###--> <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> @@ -367,31 +172,6 @@ <xs:element ref="msg:GZ" minOccurs="0"/> </xs:sequence> </xs:complexType> - <xs:element name="DeliveryTimestamp" type="xs:dateTime"> - <xs:annotation> - <xs:documentation>Zustellzeitpunkt</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="RelayedViaERV" type="xs:boolean"> - <xs:annotation> - <xs:documentation>Gibt an ob das Zustellstück über den ERV zugestellt wurde</xs:documentation> - </xs:annotation> - </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="NameExtension" type="xs:string"> - <xs:annotation> - <xs:documentation>Zusätzliche Nameserweiterung, die im Anzeigemodul zu den Personendaten des Absenders angezeigt werden. (Die Personendaten selbst werden vom Zustellsystem auf Basis der Profildaten eingesteuert)</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element name="MailBox" type="xs:string"> - <xs:annotation> - <xs:documentation>Spezielles Postfach des Empfängers, z.B. eine Filiale einer jur. Person</xs:documentation> - </xs:annotation> - </xs:element> <xs:complexType name="DeliveryConfirmationType"> <xs:complexContent> <xs:extension base="msg:DeliveryAnswerType"> @@ -408,39 +188,65 @@ </xs:extension> </xs:complexContent> </xs:complexType> - <xs:element name="MimeType" type="msg:token256"> + <!--### globale Elemente und komplexe Typen###--> + <xs:complexType name="AbstractOperationType" abstract="true"/> + <xs:complexType name="AbstractSenderPersonType"> <xs:annotation> - <xs:documentation>Mime-Typ</xs:documentation> + <xs:documentation>main structure of sender</xs:documentation> </xs:annotation> - </xs:element> - <xs:element name="CheckSum" type="msg:CheckSumType"> + <xs:attribute name="Id" type="xs:ID" use="optional"/> + <xs:anyAttribute namespace="##other"/> + </xs:complexType> + <xs:element name="Accepted" type="msg:AcceptedType" substitutionGroup="msg:Answer"> <xs:annotation> - <xs:documentation>Prüfsumme</xs:documentation> + <xs:documentation>Zeigt an, dass die Nachricht durch den Einstieg ins Anzeigemodul angenommen wurde. </xs:documentation> </xs:annotation> </xs:element> - <xs:complexType name="CheckSumType"> + <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>Prüfsumme</xs:documentation> + <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 name="AlgorithmID" type="xs:token"> + <xs:element ref="msg:MailBox" minOccurs="0"> <xs:annotation> - <xs:documentation>Hash Algorithmus, z.B. SHA-256, SHA-512</xs:documentation> + <xs:documentation>Eindeutige Kennung (Filiale, Standort, Abteilung, etc..) innerhalb der jur. Person </xs:documentation> </xs:annotation> </xs:element> - <xs:element name="Value" type="xs:base64Binary"> + <xs:element ref="msg:Roles" minOccurs="0"/> + <xs:element ref="msg:CareOf" minOccurs="0"> <xs:annotation> - <xs:documentation>Hashwert</xs:documentation> + <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"> + <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:element name="Attachment" type="msg:AttachmentType"/> <xs:complexType name="AttachmentsType"> <xs:sequence> <xs:element ref="msg:Attachment" maxOccurs="unbounded"/> @@ -448,9 +254,9 @@ </xs:complexType> <xs:complexType name="AttachmentType"> <xs:sequence> - <xs:element name="FileName" type="msg:token256"> + <xs:element name="FileName" type="msg:FileNameType"> <xs:annotation> - <xs:documentation>Dateiname</xs:documentation> + <xs:documentation>Dateiname min. 5 Zeichen, max 255 Zeichen</xs:documentation> </xs:annotation> </xs:element> <xs:element ref="msg:MimeType"/> @@ -459,7 +265,7 @@ <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:positiveInteger"> + <xs:element name="Size" type="xs:nonNegativeInteger"> <xs:annotation> <xs:documentation>Größe in Bytes</xs:documentation> </xs:annotation> @@ -479,57 +285,96 @@ </xs:choice> </xs:sequence> </xs:complexType> - <xs:element name="ErrorInfo" type="msg:ErrorInfoType"/> - <xs:complexType name="ErrorInfoType"> + <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="Code" type="xs:token"> + <xs:element name="AlgorithmID" type="xs:token"> <xs:annotation> - <xs:documentation>Fehlercode</xs:documentation> + <xs:documentation>Hash Algorithmus, z.B. SHA-256, SHA-512</xs:documentation> </xs:annotation> </xs:element> - <xs:element name="Text" type="xs:string" minOccurs="0"> + <xs:element name="Value" type="xs:base64Binary"> <xs:annotation> - <xs:documentation>Fehlerbeschreibung</xs:documentation> + <xs:documentation>Hashwert</xs:documentation> </xs:annotation> </xs:element> </xs:sequence> </xs:complexType> - <xs:element name="NotificationsPerformed" type="msg:NotificationsPerformedType"/> - <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="PreAdviceNote" type="msg:PreAdviceNoteType"> + <xs:element name="ConfirmationAddress"> <xs:annotation> - <xs:documentation>Aviso (optional)</xs:documentation> + <xs:documentation>Webservice oder E-Mail-Adresse, an welches die Zustellbestätigung oder Fehlermeldung weitergeleitet wird (Callback)</xs:documentation> </xs:annotation> - </xs:element> - <xs:complexType name="PreAdviceNoteType"> - <xs:sequence> - <xs:element name="NumberOfDays" type="xs:positiveInteger"> + <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>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:documentation>Typ des Zustellnachweises, z.B. xml+pdf oder nur xml (default)</xs:documentation> </xs:annotation> - </xs:element> - <xs:element ref="msg:NotificationAddressList" minOccurs="0"/> - </xs:sequence> - </xs:complexType> - <xs:element name="NotificationAddressList" type="msg:NotificationAddressListType"> + <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>Liste der verifizierten Verständigungsadressen des Teilnehmers</xs:documentation> + <xs:documentation>Zustellung war nicht erfolgreich +• Nachricht wurde nicht innerhalb der Zustellfrist angenommen +• Zustellhindernis </xs:documentation> </xs:annotation> </xs:element> - <xs:complexType name="NotificationAddressListType"> - <xs:sequence> - <xs:element ref="msg:ElectronicAddress" maxOccurs="unbounded"/> - </xs:sequence> + <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> @@ -548,40 +393,74 @@ </xs:restriction> </xs:simpleType> </xs:element> - <xs:element name="PrivateMessageQuality"> + <xs:element name="DeliverySystem" type="xs:anyURI"> <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:documentation>URL des für die Nachricht verantwortlichen Zustellstellsystems</xs:documentation> </xs:annotation> - <xs:simpleType> - <xs:restriction base="xs:string"> - <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="NotificationLanguages"> + <xs:element name="DeliveryTimestamp" type="xs:dateTime"> <xs:annotation> - <xs:documentation>Sprachen in denen die Verständigung gesendet werden soll</xs:documentation> + <xs:documentation>Zustellzeitpunkt</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="Language" type="xs:token"> + <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="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:AustrianEthicMinorityLanguageType"> <xs:annotation> <xs:documentation>Sprache in welcher der Zustellnachweis gesendet werden soll</xs:documentation> </xs:annotation> @@ -607,13 +486,42 @@ </xs:sequence> </xs:choice> </xs:complexType> - <xs:element name="MetadataList"> + <xs:element name="MailBox" type="xs:token"> <xs:annotation> - <xs:documentation>List of metadata entries</xs:documentation> + <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:MetadataEntry" maxOccurs="unbounded"/> + <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> @@ -641,95 +549,58 @@ </xs:annotation> </xs:attribute> </xs:complexType> - <xs:element name="Subject" type="xs:string"> - <xs:annotation> - <xs:documentation>Zur Anzeige in der Mailbox, vgl. Subject von herkömml. E-mails</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="Roles"> + <xs:element name="MetadataList"> <xs:annotation> - <xs:documentation>Rollen, welche neben globalen Vertretungsbefugten Zustellstücke entgegennehmen dürfen</xs:documentation> + <xs:documentation>List of metadata entries</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:element ref="msg:MetadataEntry" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> </xs:element> - <xs:element name="Tags"> + <xs:element name="MimeType" type="msg:token256"> <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:documentation>Mime-Typ</xs:documentation> </xs:annotation> - <xs:complexType> - <xs:sequence> - <xs:element ref="msg:Tag" maxOccurs="unbounded"/> - </xs:sequence> - </xs:complexType> </xs:element> - <xs:element name="Tag" type="msg:token256"/> - <xs:element name="Properties" type="msg:PropertiesType"> + <xs:element name="NotificationAddressList" type="msg:NotificationAddressListType"> <xs:annotation> - <xs:documentation>Liste der verfahrensspezifischen Metadaten. Diese dienen rein der Visualisierung in der Detailansicht der Nachricht. D.h. sowohl der Name als auch der Wert der Eigenschaft sind in menschenlesbarer Form zu liefern. Daraus folgt, die Daten sind nicht für die maschinelle Verarbeitung geeignet. (Verfahrensspezifischen Metadaten für die maschinelle Verarbeitung sind immer als eigenständiges Attachment im XML-Format zu liefern)</xs:documentation> + <xs:documentation>Liste der verifizierten Verständigungsadressen des Teilnehmers</xs:documentation> </xs:annotation> </xs:element> - <xs:complexType name="PropertiesType"> + <xs:complexType name="NotificationAddressListType"> <xs:sequence> - <xs:element ref="msg:Property" maxOccurs="unbounded"/> + <xs:element ref="msg:ElectronicAddress" maxOccurs="unbounded"/> </xs:sequence> </xs:complexType> - <xs:element name="Property"> + <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:group ref="msg:ValueGroup"/> + <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:attribute name="Name" type="xs:string" use="required"/> </xs:complexType> </xs:element> - <xs:group name="ValueGroup"> - <xs:choice> - <xs:element name="String" type="xs:string"/> - <xs:element name="Date" type="xs:date"/> - <xs:element name="DateTime" type="xs:dateTime"/> - <xs:element name="Decimal" type="xs:decimal"/> - <xs:element name="Integer" type="xs:long"/> - </xs:choice> - </xs:group> - <xs:element name="Value" type="msg:ValueType"/> - <xs:complexType name="ValueType"> - <xs:sequence> - <xs:group ref="msg:ValueGroup"/> - </xs:sequence> - </xs:complexType> - <xs:complexType name="SystemComponentType"> + <xs:element name="NotificationsPerformed" type="msg:NotificationsPerformedType"> <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: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 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 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> @@ -748,124 +619,156 @@ 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="Portals"> - <xs:annotation> - <xs:documentation>Liste von Portalen für welche die Nachricht speziell bestimmt ist - vorrangig für Kommunikationssysteme von Behörden mit niederschwelliger Authentifizierung (Wird für die GUI Funktion 'gefiltert u. gereiht' benötigt)</xs:documentation> - </xs:annotation> - <xs:complexType> - <xs:sequence> - <xs:element ref="msg:Portal" maxOccurs="unbounded"/> - </xs:sequence> - </xs:complexType> - </xs:element> - <xs:element name="Portal" type="msg:SystemComponentType"> + <xs:element name="PreAdviceNote" type="msg:PreAdviceNoteType"> <xs:annotation> - <xs:documentation>Portalkennung </xs:documentation> + <xs:documentation>Aviso (optional)</xs:documentation> </xs:annotation> </xs:element> - <xs:element name="CareOf"> + <xs:element name="PreAdviceNoteSent" type="msg:PreAdviceNoteSentType"> <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:documentation>Existenz des Elements zeigt an, dass ein Aviso erfolgreich an alle Verständigungsadressen des Teilnahmkandidaten versendet wurde</xs:documentation> </xs:annotation> - <xs:complexType> - <xs:sequence> - <xs:element ref="p:Identification" minOccurs="0"/> - <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="AdditionalCriteria" type="msg:AdditionalCriteriaType"> + <xs:complexType name="PreAdviceNoteSentType"> <xs:annotation> - <xs:documentation>Weitere über den eigentlichen Adressaten hinausgehende Kriterien zur Adressierung (bspw. c/o)</xs:documentation> + <xs:documentation>(Technisch Notwendig, um implizites XML-Any zu verhindern)</xs:documentation> </xs:annotation> - </xs:element> - <xs:complexType name="AdditionalCriteriaType"> + </xs:complexType> + <xs:complexType name="PreAdviceNoteType"> <xs:sequence> - <xs:element ref="msg:MailBox" minOccurs="0"> + <xs:element name="NumberOfDays" type="xs:positiveInteger"> <xs:annotation> - <xs:documentation>Eindeutige Kennung (Filiale, Standort, Abteilung, etc..) innerhalb der jur. Person </xs:documentation> + <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:Roles" minOccurs="0"/> - <xs:element ref="msg:CareOf" minOccurs="0"/> + <xs:element ref="msg:NotificationAddressList" minOccurs="0"/> </xs:sequence> </xs:complexType> - <xs:element name="AuthLevel" type="msg:token256"> + <xs:element name="PrivateMessageQuality"> <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: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> - <!--### Absender ###--> - <xs:element name="SenderPerson" type="msg:AbstractSenderPersonType"> + <xs:element name="ProfileID" type="xs:token"> <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: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="SenderIdentificationPerson" type="msg:AbstractIdentificationPersonType"/> - <xs:element name="ReceiverIdentificationPerson" type="msg:AbstractIdentificationPersonType"/> - <xs:element name="SenderAuthority" type="msg:SenderAuthorityType" substitutionGroup="msg:SenderPerson"> + <xs:element name="Receiver"> <xs:annotation> - <xs:documentation>Versender ist eine Behörde</xs:documentation> + <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="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="SenderPhysicalPerson" type="msg:SenderPhysicalPersonType" substitutionGroup="msg:SenderPerson"> + <xs:element name="ReceiverDetails" type="p:PersonAndIdentificationType"> <xs:annotation> - <xs:documentation>Versender ist eine natürliche Person</xs:documentation> + <xs:documentation>Informationen nur für Senderidentifikation</xs:documentation> </xs:annotation> </xs:element> - <xs:element name="SenderCorporateBody" type="msg:SenderCorporateBodyType" substitutionGroup="msg:SenderPerson"> + <xs:element name="Reference"> <xs:annotation> - <xs:documentation>Versender ist ein Unternehmen</xs:documentation> + <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="SenderAuthorityDetails" type="msg:IdentificationAuthorityType" substitutionGroup="msg:SenderIdentificationPerson"/> - <xs:element name="SenderCorporateBodyDetails" type="msg:IdentificationCorporateBodyType" substitutionGroup="msg:SenderIdentificationPerson"/> - <xs:element name="SenderPhysicalPersonDetails" type="msg:IdentificationPhysicalPersonType" substitutionGroup="msg:SenderIdentificationPerson"/> - <xs:element name="ReceiverAuthorityDetails" type="msg:IdentificationAuthorityType" substitutionGroup="msg:ReceiverIdentificationPerson"/> - <xs:element name="ReceiverCorporateBodyDetails" type="msg:IdentificationCorporateBodyType" substitutionGroup="msg:ReceiverIdentificationPerson"/> - <xs:element name="ReceiverPhysicalPersonDetails" type="msg:IdentificationPhysicalPersonType" substitutionGroup="msg:ReceiverIdentificationPerson"/> - <xs:complexType name="AbstractSenderPersonType"> + <xs:element name="RelayedViaERV" type="xs:boolean"> <xs:annotation> - <xs:documentation>main structure of sender</xs:documentation> + <xs:documentation>Gibt an ob das Zustellstück über den ERV zugestellt wurde</xs:documentation> </xs:annotation> - <xs:attribute name="Id" type="xs:ID" use="optional"/> - <xs:anyAttribute namespace="##other"/> - </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: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 welches die Zustellbestätigung, der Zustellnachweis oder Fehlermeldung weitergeleitet wird (Callback)</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + </xs:element> + <xs:element name="SenderAuthority" type="msg:SenderAuthorityType" substitutionGroup="msg:SenderPerson"> + <xs:annotation> + <xs:documentation>Versender ist eine Behörde</xs:documentation> + </xs:annotation> + </xs:element> <xs:complexType name="SenderAuthorityType"> <xs:annotation> - <xs:documentation>juridical person, organisation</xs:documentation> + <xs:documentation>authority</xs:documentation> </xs:annotation> <xs:complexContent> <xs:extension base="msg:AbstractSenderPersonType"> - <xs:sequence> - <xs:element ref="msg:Identification"> - <xs:annotation> - <xs:documentation>Identifikation basierend auf Type/Value</xs:documentation> - </xs:annotation> - </xs:element> - <xs:element ref="p:Authority"/> - </xs:sequence> + <xs:choice> + <xs:element ref="msg:SenderProfile"/> + <xs:sequence> + <xs:element ref="p:Identification"/> + <xs:element ref="p:Authority"/> + </xs:sequence> + </xs:choice> </xs:extension> </xs:complexContent> </xs:complexType> - <xs:complexType name="SenderPhysicalPersonType"> + <xs:element name="SenderCorporateBody" type="msg:SenderCorporateBodyType" substitutionGroup="msg:SenderPerson"> <xs:annotation> - <xs:documentation>physical person</xs:documentation> + <xs:documentation>Versender ist ein Unternehmen, das im gesetzlichen Auftrag handeln</xs:documentation> </xs:annotation> - <xs:complexContent> - <xs:extension base="msg:AbstractSenderPersonType"/> - </xs:complexContent> - </xs:complexType> + </xs:element> <xs:complexType name="SenderCorporateBodyType"> <xs:annotation> <xs:documentation>juridical person, organisation</xs:documentation> @@ -873,153 +776,156 @@ Landeskennung ::= {2} ALPHA; (gem. ISO 3166 - Alpha2) <xs:complexContent> <xs:extension base="msg:AbstractSenderPersonType"> <xs:sequence> - <xs:element ref="p:Organization" minOccurs="0"/> + <xs:element ref="msg:SenderProfile"/> </xs:sequence> </xs:extension> </xs:complexContent> </xs:complexType> - <xs:complexType name="AbstractIdentificationPersonType"> + <xs:element name="SenderDetails" type="p:PersonAndIdentificationType"> <xs:annotation> - <xs:documentation>main structure of sender</xs:documentation> + <xs:documentation>Informationen nur für Senderidentifikation</xs:documentation> </xs:annotation> - <xs:sequence> - <xs:element ref="p:Identification"/> - </xs:sequence> - <xs:attribute name="Id" type="xs:ID" use="optional"/> - <xs:anyAttribute namespace="##other"/> - </xs:complexType> - <xs:complexType name="IdentificationAuthorityType"> - <xs:complexContent> - <xs:extension base="msg:AbstractIdentificationPersonType"> - <xs:sequence> - <xs:element ref="p:Authority"/> - </xs:sequence> - </xs:extension> - </xs:complexContent> - </xs:complexType> - <xs:complexType name="IdentificationCorporateBodyType"> - <xs:complexContent> - <xs:extension base="msg:AbstractIdentificationPersonType"> - <xs:sequence> - <xs:element ref="p:CorporateBody"/> - </xs:sequence> - </xs:extension> - </xs:complexContent> - </xs:complexType> - <xs:complexType name="IdentificationPhysicalPersonType"> - <xs:complexContent> - <xs:extension base="msg:AbstractIdentificationPersonType"> - <xs:sequence> - <xs:element ref="p:PhysicalPerson"/> - </xs:sequence> - </xs:extension> - </xs:complexContent> - </xs:complexType> - <xs:element name="PreAdviceNoteSent" type="msg:PreAdviceNoteSentType"> + </xs:element> + <xs:element name="SenderPerson" type="msg:AbstractSenderPersonType"> <xs:annotation> - <xs:documentation>Existenz des Elements zeigt an, dass ein Aviso erfolgreich an alle Verständigungsadressen des Teilnahmkandidaten versendet wurde</xs:documentation> + <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:complexType name="PreAdviceNoteSentType"> + <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>(Technisch Notwendig, um implizites XML-Any zu verhindern)</xs:documentation> + <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="ElectronicAddress" type="p:AbstractAddressType" abstract="true"/> - <xs:element name="InternetAddress" type="p:InternetAddressType" substitutionGroup="msg:ElectronicAddress"> + <xs:element name="Subject" type="xs:token"> <xs:annotation> - <xs:documentation>element of internet address type</xs:documentation> + <xs:documentation>Zur Anzeige in der Mailbox, vgl. Subject von herkömml. E-mails</xs:documentation> </xs:annotation> </xs:element> - <xs:element name="IgnorePostRedirectionOrder" type="msg:IndicatorType"> + <xs:complexType name="SystemComponentType"> <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: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="unbounded"/> + </xs:sequence> + </xs:complexType> </xs:element> - <xs:complexType name="IndicatorType"> + <xs:element name="Timestamp" type="xs:dateTime"> <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:documentation>Timestamp, der vom Anzeigemodul erzeugt wurde. Im Falle der Annahme einer Zustellung entspricht der Timestamp dem Zustellzeitpunkt</xs:documentation> </xs:annotation> - </xs:complexType> + </xs:element> <xs:element name="User"> <xs:annotation> - <xs:documentation>Benutzer, der die Nachricht angenommen oder gelöscht hat. Wenn die Nachrichtenoperation vom Anzeigemodul ausgelöst wurde, bleibt das User Element leer</xs:documentation> + <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" type="xs:token"> + <xs:element name="Role"> <xs:annotation> <xs:documentation>Rolle des Benutzers: • Receiver: Empfänger persönlich • Representative: Vertretungsbevollmächtigter • InsolvencyAdministrator: Insolvenzverwalters -• System: Anzeigemodul + </xs:documentation> </xs:annotation> + <xs:simpleType> + <xs:restriction base="xs:token"> + <xs:enumeration value="Receiver"/> + <xs:enumeration value="Representative"/> + <xs:enumeration value="InsolvencyAdministrator"/> + </xs:restriction> + </xs:simpleType> </xs:element> <xs:element ref="p:Identification"/> - <xs:element ref="p:PhysicalPerson" minOccurs="0"/> + <xs:element ref="p:PhysicalPerson"/> </xs:sequence> </xs:complexType> </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 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="Answer" type="msg:AbstractOperationType"> + <xs:element name="ZSDeliveryID" type="msg:token256"> <xs:annotation> - <xs:documentation> Rückmeldungen zu einer Nachricht</xs:documentation> + <xs:documentation>ID des Zustellstücke. Die ZSDeliveryID in Kombination mit der ParticipantID des Zustellsystems, welches die Nachricht übernmittelt hat muss eindeutig sein.</xs:documentation> </xs:annotation> </xs:element> - <xs:complexType name="AbstractOperationType" abstract="true"/> - <xs:element name="Accepted" type="msg:AcceptedType" substitutionGroup="msg:Answer"> + <!--### Simple Types--> + <xs:simpleType name="token256"> <xs:annotation> - <xs:documentation>Zeigt an, dass die Nachricht durch den Einstieg ins Anzeigemodul angenommen wurde. </xs:documentation> + <xs:documentation>Token auf 256 Zeichen beschränkt.</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="DeliveryError" type="msg:DeliveryErrorType" substitutionGroup="msg:Answer"> + <xs:restriction base="xs:token"> + <xs:minLength value="1"/> + <xs:maxLength value="256"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="AustrianEthicMinorityLanguageType"> <xs:annotation> - <xs:documentation>Zustellung war nicht erfolgreich -• Nachricht wurde nicht innerhalb der Zustellfrist angenommen -• Zustellhindernis </xs:documentation> + <xs:documentation>2-stelliger Sprachcode der anerkannten österreichischen Minderheiten</xs:documentation> </xs:annotation> - </xs:element> - <xs:complexType name="DeliveryErrorType"> - <xs:complexContent> - <xs:extension base="msg:AbstractOperationType"> - <xs:sequence> - <xs:element ref="msg:ErrorInfo"/> - <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:sequence> - </xs:extension> - </xs:complexContent> - </xs:complexType> - <xs:complexType name="SimpleRequestType"> + <xs:restriction base="xs:token"> + <xs:minLength value="2"/> + <xs:maxLength value="2"/> + <xs:enumeration value="HR"/> + <xs:enumeration value="HU"/> + <xs:enumeration value="SL"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="FileNameType"> <xs:annotation> - <xs:documentation>Einfacher "Request" ohne Datenelemente</xs:documentation> + <xs:documentation>Typ zur Beschränkung von Dateinamen auf minimal 5 Zeichen und maximal 255 Zeichen</xs:documentation> </xs:annotation> - </xs:complexType> - <xs:simpleType name="token256"> + <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>Token auf 256 Zeichen beschränkt.</xs:documentation> + <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:minLength value="1"/> - <xs:maxLength value="256"/> + <xs:pattern value="[0-9]{1,2}\.[0-9]{1,2}\.[0-9]{1,2}"/> </xs:restriction> </xs:simpleType> </xs:schema> |