diff options
author | Christof Rabensteiner <christof.rabensteiner@iaik.tugraz.at> | 2019-04-08 10:31:59 +0200 |
---|---|---|
committer | Christof Rabensteiner <christof.rabensteiner@iaik.tugraz.at> | 2019-04-08 10:31:59 +0200 |
commit | a8bd62ade64937e554e977c755e2989a798161cc (patch) | |
tree | 863b4ecaf0dcb11c081aaf0b6827b49bc9220d09 | |
parent | 648632858c007b361476953d0b3019c410a75fb7 (diff) | |
download | moa-zs-a8bd62ade64937e554e977c755e2989a798161cc.tar.gz moa-zs-a8bd62ade64937e554e977c755e2989a798161cc.tar.bz2 moa-zs-a8bd62ade64937e554e977c755e2989a798161cc.zip |
Update mzs:DeliveryRequest Schema
- Remove MZSDreq/Sender/ConfirmationAddress (because its already
Available in Sender/{WebserviceURL,EmailAddress})
- Simplify MZSDReq/Receiver (no actual schema change, just
refactoring)
- Remove XML Payload (because this delivery method does not exist in
zusemsg)
- Simplify Payload Schema and adapt it to zusemsg:Attachment
- Remove DayOfBirthType (because dead code)
- Metadata: replace mzs definition of metadata with reference to
msg:Metadata. Reason: Both interfaces work the exact same way so
there is no reason in not reusing the interface. Using the same
interface definitions does not affect the integration effort for app
developers, because the msg:metadata changed quite drastically and
app developers will need to integrate these changes anyways. The
changes in zusemsg:Metadata are so invasive that MOAZS cannot
prevent them from propagating into the app2mzs interfaces. A benefit
from reusing the msg:MetaData interface is that there will be less
types, less duplicate code, less repetition, and
therefore cleaner and easier to maintain.
-rw-r--r-- | src/main/resources/mzs/app2mzs.xsd | 163 | ||||
-rw-r--r-- | src/main/resources/mzs/mzs_mypersondata_en.xsd | 12 |
2 files changed, 12 insertions, 163 deletions
diff --git a/src/main/resources/mzs/app2mzs.xsd b/src/main/resources/mzs/app2mzs.xsd index cd388a1..bf5d421 100644 --- a/src/main/resources/mzs/app2mzs.xsd +++ b/src/main/resources/mzs/app2mzs.xsd @@ -40,166 +40,28 @@ </xs:choice> <xs:element ref="msg:Logo" minOccurs="0"/> <xs:element ref="msg:AdditionalCriteria" minOccurs="0"/> - <xs:element ref="msg:ConfirmationAddress" minOccurs="0"/> </xs:sequence> </xs:complexType> </xs:element> - <xs:element ref="Receiver"/> - <xs:element name="MetaData"> - <xs:complexType> - <xs:sequence> - <xs:element name="Subject" type="xs:string" minOccurs="0"/> - <xs:element ref="AppDeliveryID"/> - <xs:element name="GZ" type="xs:string" minOccurs="0"/> - <xs:element name="DeliveryQuality"> - <xs:annotation> - <xs:documentation>RSa oder non-RSa</xs:documentation> - </xs:annotation> - <xs:simpleType> - <xs:restriction base="xs:string"> - <xs:enumeration value="RSa"/> - <xs:enumeration value="RSa+"/> - <xs:enumeration value="nonRSa"/> - <xs:enumeration value="nonRSa+"/> - <xs:enumeration value="R"/> - <xs:enumeration value="R+"/> - <xs:enumeration value="RS"/> - <xs:enumeration value="RS+"/> - </xs:restriction> - </xs:simpleType> - </xs:element> - <xs:element name="DeliveryConfirmation" type="xs:boolean" minOccurs="0"/> - <xs:element name="RequiresEncryption" type="xs:boolean"/> - <xs:element name="DocumentClass" minOccurs="0"> - <xs:simpleType> - <xs:restriction base="xs:token"> - <xs:maxLength value="255"/> - <xs:minLength value="1"/> - </xs:restriction> - </xs:simpleType> - </xs:element> - <xs:element name="References" minOccurs="0"> - <xs:complexType> - <xs:choice maxOccurs="unbounded"> - <xs:element ref="AppDeliveryID"/> - <xs:element name="GZ" type="xs:string"/> - <xs:element ref="MZSDeliveryID"/> - <xs:element name="ZSDeliveryID" type="xs:string"/> - </xs:choice> - </xs:complexType> - </xs:element> - <xs:element name="DualDelivery" minOccurs="0"> - <xs:complexType> - <xs:sequence> - <xs:element name="DualDeliveryServer" type="xs:string" minOccurs="0"/> - <xs:element name="PrintParameter" minOccurs="0"> - <xs:complexType> - <xs:sequence> - <xs:any namespace="##any" processContents="skip" minOccurs="0" maxOccurs="unbounded"/> - </xs:sequence> - <xs:attribute name="profile" type="xs:anyURI" use="optional"/> - </xs:complexType> - </xs:element> - </xs:sequence> - </xs:complexType> - </xs:element> - <xs:element name="MailBody" minOccurs="0"> - <xs:annotation> - <xs:documentation>Optional mail body</xs:documentation> - </xs:annotation> - <xs:complexType> - <xs:sequence> - <xs:element name="MimeType" type="xs:token"/> - <xs:element name="Content" type="xs:base64Binary"/> - </xs:sequence> - </xs:complexType> - </xs:element> - </xs:sequence> - </xs:complexType> - </xs:element> - <xs:element name="XMLDocument" minOccurs="0"> + <xs:element name="Receiver" type="p:PersonDataType"/> + <xs:element name="MetaData" ref="msg:MetaData" /> + <xs:element name="Payload" minOccurs="0" maxOccurs="unbounded"> <xs:complexType> <xs:sequence> - <xs:element name="XMLContent"> - <xs:complexType> - <xs:sequence> - <xs:any namespace="##any" processContents="lax"/> - </xs:sequence> - </xs:complexType> - </xs:element> <xs:choice> - <xs:element name="XMLProfileID"/> - <xs:sequence> - <xs:element name="FileName" type="xs:token"/> - <xs:element name="MIMEType" type="xs:token"/> - <xs:element name="ResultingMIMEType" type="xs:token"/> - <xs:element name="SignatureXPath"> - <xs:complexType> - <xs:simpleContent> - <xs:extension base="xs:string"> - <xs:attribute name="Index" type="xs:integer" use="required"/> - </xs:extension> - </xs:simpleContent> - </xs:complexType> - </xs:element> - <xs:element name="SignatureStylesheet"> - <xs:complexType> - <xs:sequence> - <xs:element name="XMLContent"> - <xs:complexType> - <xs:sequence> - <xs:any namespace="##any" processContents="lax"/> - </xs:sequence> - </xs:complexType> - </xs:element> - </xs:sequence> - </xs:complexType> - </xs:element> - <xs:element name="PreviewStylesheet" minOccurs="0"> - <xs:complexType> - <xs:sequence> - <xs:element name="FileName" type="xs:token"/> - <xs:element name="XMLContent"> - <xs:complexType> - <xs:sequence> - <xs:any namespace="##any" processContents="lax"/> - </xs:sequence> - </xs:complexType> - </xs:element> - </xs:sequence> - </xs:complexType> - </xs:element> - </xs:sequence> + <xs:element name="BinaryDocument" type="xs:base64Binary" /> + <xs:element name="DocumentReference" type="xs:anyURI" /> </xs:choice> - </xs:sequence> - </xs:complexType> - </xs:element> - <xs:element name="Payload" minOccurs="0" maxOccurs="unbounded"> - <xs:complexType> - <xs:choice> - <xs:element name="BinaryDocument"> - <xs:complexType> - <xs:sequence> - <xs:element name="Base64Content" type="xs:base64Binary"/> - <xs:element name="FileName" type="xs:token"/> - <xs:element name="MIMEType" type="xs:token"/> - </xs:sequence> - </xs:complexType> - </xs:element> - <xs:element name="DocumentReference"> + <xs:element name="FileName" type="xs:token"/> + <xs:element name="MIMEType" type="xs:token"/> + <xs:element name="MD5Checksum" type="xs:string" minOccurs="0"/> + <xs:element name="msg:DocumentClass" minOccurs="0" /> + <xs:element name="Size" type="xs:nonNegativeInteger"> <xs:annotation> - <xs:documentation>URL fuer Callback Attachment</xs:documentation> + <xs:documentation>Größe in Bytes</xs:documentation> </xs:annotation> - <xs:complexType> - <xs:sequence> - <xs:element name="URL" type="xs:anyURI"/> - <xs:element name="FileName" type="xs:token"/> - <xs:element name="MIMEType" type="xs:token"/> - <xs:element name="MD5Checksum" type="xs:string" minOccurs="0"/> - </xs:sequence> - </xs:complexType> </xs:element> - </xs:choice> + </xs:sequence> </xs:complexType> </xs:element> </xs:sequence> @@ -250,7 +112,6 @@ </xs:simpleType> </xs:element> <xs:element name="MZSDeliveryID" type="xs:string"/> - <xs:element name="Receiver" type="p:PersonDataType"/> <xs:element name="Success" type="SuccessType"> <xs:annotation> <xs:documentation>Zustellstück was successfully delivered to MOA-ZS</xs:documentation> diff --git a/src/main/resources/mzs/mzs_mypersondata_en.xsd b/src/main/resources/mzs/mzs_mypersondata_en.xsd index 43a3a88..756669f 100644 --- a/src/main/resources/mzs/mzs_mypersondata_en.xsd +++ b/src/main/resources/mzs/mzs_mypersondata_en.xsd @@ -12,11 +12,6 @@ <xs:documentation>dummy abstract Peson Data element needed for bi-lingual schema (substitution groups)</xs:documentation> </xs:annotation> </xs:element> - <xs:element name="PersonData" type="PersonDataType"> - <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="AbstractPersonType"/> <!-- ### physical person and corporate body ### --> @@ -324,11 +319,4 @@ </xs:extension> </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:schema> |