summaryrefslogtreecommitdiff
path: root/src/main/resources/wsdl/zkopf
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/resources/wsdl/zkopf')
-rw-r--r--src/main/resources/wsdl/zkopf/W3C-XMLDSig.xsd265
-rw-r--r--src/main/resources/wsdl/zkopf/zkopf.wsdl41
-rw-r--r--src/main/resources/wsdl/zkopf/zkopf.xsd221
-rw-r--r--src/main/resources/wsdl/zkopf/zkopf_mypersondata_en.xsd379
-rw-r--r--src/main/resources/wsdl/zkopf/zuserech.wsdl70
-rw-r--r--src/main/resources/wsdl/zkopf/zuserech.xsd98
6 files changed, 1074 insertions, 0 deletions
diff --git a/src/main/resources/wsdl/zkopf/W3C-XMLDSig.xsd b/src/main/resources/wsdl/zkopf/W3C-XMLDSig.xsd
new file mode 100644
index 0000000..522cae0
--- /dev/null
+++ b/src/main/resources/wsdl/zkopf/W3C-XMLDSig.xsd
@@ -0,0 +1,265 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- PUBLIC "-//W3C//DTD XMLSchema 200102//EN" "http://www.w3.org/2001/XMLSchema.dtd"
+ -->
+<!-- Schema for XML Signatures
+ http://www.w3.org/2000/09/xmldsig#
+ $Revision: 1.1 $ on $Date: 2002/11/11 16:24:27 $ by $Author: Linauer $
+
+ Copyright 2001 The Internet Society and W3C (Massachusetts Institute
+ of Technology, Institut National de Recherche en Informatique et en
+ Automatique, Keio University). All Rights Reserved.
+ http://www.w3.org/Consortium/Legal/
+
+ This document is governed by the W3C Software License [1] as described
+ in the FAQ [2].
+
+ [1] http://www.w3.org/Consortium/Legal/copyright-software-19980720
+ [2] http://www.w3.org/Consortium/Legal/IPR-FAQ-20000620.html#DTD
+-->
+<schema targetNamespace="http://www.w3.org/2000/09/xmldsig#" xmlns:ds="http://www.w3.org/2000/09/xmldsig#" xmlns="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" version="0.1">
+ <!-- Basic Types Defined for Signatures -->
+ <!-- modified to ensure that whiteSpace is preserved
+<simpleType name="CryptoBinary">
+ <restriction base="base64Binary">
+ </restriction>
+</simpleType>
+ -->
+ <simpleType name="CryptoBinary">
+ <restriction base="string">
+ <whiteSpace value="preserve"/>
+ <pattern value="[A-Za-z0-9\+/=\n\r\t ]*"/>
+ </restriction>
+ </simpleType>
+ <!-- Start Signature -->
+ <element name="Signature" type="ds:SignatureType"/>
+ <complexType name="SignatureType">
+ <sequence>
+ <element ref="ds:SignedInfo"/>
+ <element ref="ds:SignatureValue"/>
+ <element ref="ds:KeyInfo" minOccurs="0"/>
+ <element ref="ds:Object" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="Id" type="ID" use="optional"/>
+ </complexType>
+ <element name="SignatureValue" type="ds:SignatureValueType"/>
+ <complexType name="SignatureValueType">
+ <simpleContent>
+ <extension base="ds:CryptoBinary">
+ <attribute name="Id" type="ID" use="optional"/>
+ </extension>
+ </simpleContent>
+ </complexType>
+ <!-- Start SignedInfo -->
+ <element name="SignedInfo" type="ds:SignedInfoType"/>
+ <complexType name="SignedInfoType">
+ <sequence>
+ <element ref="ds:CanonicalizationMethod"/>
+ <element ref="ds:SignatureMethod"/>
+ <element ref="ds:Reference" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="Id" type="ID" use="optional"/>
+ </complexType>
+ <element name="CanonicalizationMethod" type="ds:CanonicalizationMethodType"/>
+ <complexType name="CanonicalizationMethodType" mixed="true">
+ <sequence>
+ <any namespace="##any" minOccurs="0" maxOccurs="unbounded"/>
+ <!-- (0,unbounded) elements from (1,1) namespace -->
+ </sequence>
+ <attribute name="Algorithm" type="anyURI" use="required"/>
+ </complexType>
+ <element name="SignatureMethod" type="ds:SignatureMethodType"/>
+ <complexType name="SignatureMethodType" mixed="true">
+ <sequence>
+ <element name="HMACOutputLength" type="ds:HMACOutputLengthType" minOccurs="0"/>
+ <any namespace="##other" minOccurs="0" maxOccurs="unbounded"/>
+ <!-- (0,unbounded) elements from (1,1) external namespace -->
+ </sequence>
+ <attribute name="Algorithm" type="anyURI" use="required"/>
+ </complexType>
+ <!-- Start Reference -->
+ <element name="Reference" type="ds:ReferenceType"/>
+ <complexType name="ReferenceType">
+ <sequence>
+ <element ref="ds:Transforms" minOccurs="0"/>
+ <element ref="ds:DigestMethod"/>
+ <element ref="ds:DigestValue"/>
+ </sequence>
+ <attribute name="Id" type="ID" use="optional"/>
+ <attribute name="URI" type="anyURI" use="optional"/>
+ <attribute name="Type" type="anyURI" use="optional"/>
+ </complexType>
+ <element name="Transforms" type="ds:TransformsType"/>
+ <complexType name="TransformsType">
+ <sequence>
+ <element ref="ds:Transform" maxOccurs="unbounded"/>
+ </sequence>
+ </complexType>
+ <element name="Transform" type="ds:TransformType"/>
+ <complexType name="TransformType" mixed="true">
+ <choice minOccurs="0" maxOccurs="unbounded">
+ <any namespace="##other" processContents="lax"/>
+ <element name="XPath" type="string"/>
+ <!-- (1,1) elements from (0,unbounded) namespaces -->
+ </choice>
+ <attribute name="Algorithm" type="anyURI" use="required"/>
+ </complexType>
+ <!-- End Reference -->
+ <element name="DigestMethod" type="ds:DigestMethodType"/>
+ <complexType name="DigestMethodType" mixed="true">
+ <sequence>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="Algorithm" type="anyURI" use="required"/>
+ </complexType>
+ <element name="DigestValue" type="ds:DigestValueType"/>
+ <simpleType name="DigestValueType">
+ <restriction base="ds:CryptoBinary"/>
+ </simpleType>
+ <!-- End SignedInfo -->
+ <!-- Start KeyInfo -->
+ <element name="KeyInfo" type="ds:KeyInfoType"/>
+ <complexType name="KeyInfoType" mixed="true">
+ <choice maxOccurs="unbounded">
+ <element ref="ds:KeyName"/>
+ <element ref="ds:KeyValue"/>
+ <element ref="ds:RetrievalMethod"/>
+ <element ref="ds:X509Data"/>
+ <element ref="ds:PGPData"/>
+ <element ref="ds:SPKIData"/>
+ <element ref="ds:MgmtData"/>
+ <any namespace="##other" processContents="lax"/>
+ <!-- (1,1) elements from (0,unbounded) namespaces -->
+ </choice>
+ <attribute name="Id" type="ID" use="optional"/>
+ </complexType>
+ <element name="KeyName" type="string"/>
+ <element name="MgmtData" type="string"/>
+ <element name="KeyValue" type="ds:KeyValueType"/>
+ <complexType name="KeyValueType" mixed="true">
+ <choice>
+ <element ref="ds:DSAKeyValue"/>
+ <element ref="ds:RSAKeyValue"/>
+ <any namespace="##other" processContents="lax"/>
+ </choice>
+ </complexType>
+ <element name="RetrievalMethod" type="ds:RetrievalMethodType"/>
+ <complexType name="RetrievalMethodType">
+ <sequence>
+ <element name="Transforms" type="ds:TransformsType" minOccurs="0"/>
+ </sequence>
+ <attribute name="URI" type="anyURI"/>
+ <attribute name="Type" type="anyURI" use="optional"/>
+ </complexType>
+ <!-- Start X509Data -->
+ <element name="X509Data" type="ds:X509DataType"/>
+ <complexType name="X509DataType">
+ <sequence maxOccurs="unbounded">
+ <choice>
+ <element name="X509IssuerSerial" type="ds:X509IssuerSerialType"/>
+ <element name="X509SKI" type="ds:CryptoBinary"/>
+ <element name="X509SubjectName" type="string"/>
+ <element name="X509Certificate" type="ds:CryptoBinary"/>
+ <element name="X509CRL" type="ds:CryptoBinary"/>
+ <any namespace="##other" processContents="lax"/>
+ </choice>
+ </sequence>
+ </complexType>
+ <complexType name="X509IssuerSerialType">
+ <sequence>
+ <element name="X509IssuerName" type="string"/>
+ <element name="X509SerialNumber" type="integer"/>
+ </sequence>
+ </complexType>
+ <!-- End X509Data -->
+ <!-- Begin PGPData -->
+ <element name="PGPData" type="ds:PGPDataType"/>
+ <complexType name="PGPDataType">
+ <choice>
+ <sequence>
+ <element name="PGPKeyID" type="ds:CryptoBinary"/>
+ <element name="PGPKeyPacket" type="ds:CryptoBinary" minOccurs="0"/>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ <sequence>
+ <element name="PGPKeyPacket" type="ds:CryptoBinary"/>
+ <any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
+ </sequence>
+ </choice>
+ </complexType>
+ <!-- End PGPData -->
+ <!-- Begin SPKIData -->
+ <element name="SPKIData" type="ds:SPKIDataType"/>
+ <complexType name="SPKIDataType">
+ <sequence maxOccurs="unbounded">
+ <element name="SPKISexp" type="ds:CryptoBinary"/>
+ <any namespace="##other" processContents="lax" minOccurs="0"/>
+ </sequence>
+ </complexType>
+ <!-- End SPKIData -->
+ <!-- End KeyInfo -->
+ <!-- Start Object (Manifest, SignatureProperty) -->
+ <element name="Object" type="ds:ObjectType"/>
+ <complexType name="ObjectType" mixed="true">
+ <sequence minOccurs="0" maxOccurs="unbounded">
+ <any namespace="##any" processContents="lax"/>
+ </sequence>
+ <attribute name="Id" type="ID" use="optional"/>
+ <attribute name="MimeType" type="string" use="optional"/>
+ <attribute name="Encoding" type="anyURI" use="optional"/>
+ <!-- add a grep facet -->
+ </complexType>
+ <element name="Manifest" type="ds:ManifestType"/>
+ <complexType name="ManifestType">
+ <sequence>
+ <element ref="ds:Reference" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="Id" type="ID" use="optional"/>
+ </complexType>
+ <element name="SignatureProperties" type="ds:SignaturePropertiesType"/>
+ <complexType name="SignaturePropertiesType">
+ <sequence>
+ <element ref="ds:SignatureProperty" maxOccurs="unbounded"/>
+ </sequence>
+ <attribute name="Id" type="ID" use="optional"/>
+ </complexType>
+ <element name="SignatureProperty" type="ds:SignaturePropertyType"/>
+ <complexType name="SignaturePropertyType" mixed="true">
+ <choice maxOccurs="unbounded">
+ <any namespace="##other" processContents="lax"/>
+ <!-- (1,1) elements from (1,unbounded) namespaces -->
+ </choice>
+ <attribute name="Target" type="anyURI" use="required"/>
+ <attribute name="Id" type="ID" use="optional"/>
+ </complexType>
+ <!-- End Object (Manifest, SignatureProperty) -->
+ <!-- Start Algorithm Parameters -->
+ <simpleType name="HMACOutputLengthType">
+ <restriction base="integer"/>
+ </simpleType>
+ <!-- Start KeyValue Element-types -->
+ <element name="DSAKeyValue" type="ds:DSAKeyValueType"/>
+ <complexType name="DSAKeyValueType">
+ <sequence>
+ <sequence minOccurs="0">
+ <element name="P" type="ds:CryptoBinary"/>
+ <element name="Q" type="ds:CryptoBinary"/>
+ </sequence>
+ <element name="J" type="ds:CryptoBinary" minOccurs="0"/>
+ <element name="G" type="ds:CryptoBinary" minOccurs="0"/>
+ <element name="Y" type="ds:CryptoBinary"/>
+ <sequence minOccurs="0">
+ <element name="Seed" type="ds:CryptoBinary"/>
+ <element name="PgenCounter" type="ds:CryptoBinary"/>
+ </sequence>
+ </sequence>
+ </complexType>
+ <element name="RSAKeyValue" type="ds:RSAKeyValueType"/>
+ <complexType name="RSAKeyValueType">
+ <sequence>
+ <element name="Modulus" type="ds:CryptoBinary"/>
+ <element name="Exponent" type="ds:CryptoBinary"/>
+ </sequence>
+ </complexType>
+ <!-- End KeyValue Element-types -->
+ <!-- End Signature -->
+</schema>
diff --git a/src/main/resources/wsdl/zkopf/zkopf.wsdl b/src/main/resources/wsdl/zkopf/zkopf.wsdl
new file mode 100644
index 0000000..21750ab
--- /dev/null
+++ b/src/main/resources/wsdl/zkopf/zkopf.wsdl
@@ -0,0 +1,41 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:tns="http://reference.e-government.gv.at/namespaces/zustellung/kopf/wsdl"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:zkopf="http://reference.e-government.gv.at/namespaces/zustellung/kopf"
+ name="zkopf"
+ targetNamespace="http://reference.e-government.gv.at/namespaces/zustellung/kopf/wsdl">
+
+ <import location="zkopf.xsd" namespace="http://reference.e-government.gv.at/namespaces/zustellung/kopf"/>
+
+ <message name="BulkQuery">
+ <part name="BulkQuery" element="zkopf:BulkQuery"/>
+ </message>
+ <message name="BulkAnswer">
+ <part name="BulkAnswer" element="zkopf:BulkAnswer"/>
+ </message>
+ <portType name="BulkPortType">
+ <operation name="BulkOperation">
+ <input message="tns:BulkQuery"/>
+ <output message="tns:BulkAnswer"/>
+ </operation>
+ </portType>
+ <binding name="BulkBinding" type="tns:BulkPortType">
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+ <operation name="BulkOperation">
+ <soap:operation soapAction="tns:BulkPortType#BulkOperation" style="document"/>
+ <input>
+ <soap:body use="literal"/>
+ </input>
+ <output>
+ <soap:body use="literal"/>
+ </output>
+ </operation>
+ </binding>
+ <service name="BulkService">
+ <port name="BulkPort" binding="tns:BulkBinding">
+ <soap:address location="http://localhost:8080/zkopf/BulkQuery"/>
+ </port>
+ </service>
+</definitions>
diff --git a/src/main/resources/wsdl/zkopf/zkopf.xsd b/src/main/resources/wsdl/zkopf/zkopf.xsd
new file mode 100644
index 0000000..635001e
--- /dev/null
+++ b/src/main/resources/wsdl/zkopf/zkopf.xsd
@@ -0,0 +1,221 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- edited with XMLSpy v2006 sp2 U (http://www.altova.com) by Arne Tauber (Technische Universität Graz) -->
+<xs:schema xmlns:p="http://reference.e-government.gv.at/namespace/persondata/en/20040201#" xmlns="http://reference.e-government.gv.at/namespaces/zustellung/kopf" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:ns1="http://www.w3.org/2000/09/xmldsig#" targetNamespace="http://reference.e-government.gv.at/namespaces/zustellung/kopf" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1">
+ <xs:import namespace="http://reference.e-government.gv.at/namespace/persondata/en/20040201#" schemaLocation="zkopf_mypersondata_en.xsd"/>
+ <xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="W3C-XMLDSig.xsd"/>
+ <!-- Nachrichtenstruktur der BulkAnfrage und der Standard- bzw. Bulk Antwort des Zustellkopfes -->
+ <!-- Antwort des Zustellkopfes auf eine Standard Anfrage -->
+ <xs:element name="StdAnswer" type="StdAnswerType">
+ <xs:annotation>
+ <xs:documentation>attribute: ID</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="StdAnswerType">
+ <xs:choice>
+ <xs:element name="Success">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="gvZbPK" type="xs:token" minOccurs="0"/>
+ <xs:element name="Server" type="zuseType" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Error" type="xs:positiveInteger"/>
+ </xs:choice>
+ <xs:attribute name="ID" type="xs:token"/>
+ </xs:complexType>
+ <!-- BulkAnfrage -->
+ <xs:element name="BulkQuery" type="BulkQueryType"/>
+ <xs:complexType name="BulkQueryType">
+ <xs:choice>
+ <xs:sequence maxOccurs="unbounded">
+ <xs:element name="Query" type="QueryType">
+ <xs:annotation>
+ <xs:documentation>attribute: ID</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </xs:choice>
+ <xs:attribute name="type">
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="mass"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="ProfileID"/>
+ <xs:attribute name="private" type="xs:boolean"/>
+ </xs:complexType>
+ <xs:element name="Query" type="QueryType">
+ <xs:annotation>
+ <xs:documentation>attribute: ID</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="QueryType">
+ <xs:choice>
+ <xs:choice minOccurs="0">
+ <xs:element name="gvZbPK" type="xs:token"/>
+ <xs:element name="Identification" type="p:IdentificationType"/>
+ </xs:choice>
+ <xs:sequence>
+ <xs:choice>
+ <xs:element ref="p:CorporateBody"/>
+ <xs:element ref="p:PhysicalPerson"/>
+ </xs:choice>
+ <xs:choice minOccurs="0">
+ <xs:element ref="p:PostalAddress"/>
+ <xs:element name="VerAddress" type="messagingaddressType"/>
+ </xs:choice>
+ </xs:sequence>
+ </xs:choice>
+ <xs:attribute name="ID" type="xs:token"/>
+ <xs:attribute name="ProfileID"/>
+ </xs:complexType>
+ <!-- Antwort des Zustellkopfes auf ein Bulk-Anfrage-->
+ <xs:element name="BulkAnswer" type="BulkAnswerType"/>
+ <xs:complexType name="BulkAnswerType">
+ <xs:sequence>
+ <xs:sequence>
+ <xs:element name="ZUSEUrl" type="xs:anyURI" minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>attribute: ID</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ <xs:sequence>
+ <xs:element name="MIMEType" type="xs:string" minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>attribute: ID</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ <xs:sequence>
+ <xs:element name="Answer" type="AnswerType" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>Attribute: ID</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="AnswerType">
+ <xs:choice>
+ <xs:element name="Success">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="gvZbPK" type="xs:token" minOccurs="0"/>
+ <xs:element name="ZUSE" type="zuseType" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Error">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:positiveInteger"/>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:choice>
+ <xs:attribute name="ID" type="xs:token"/>
+ </xs:complexType>
+ <!-- Hilfstypen -->
+ <xs:complexType name="messagingaddressType">
+ <xs:sequence>
+ <xs:element ref="p:TelephoneAddress" minOccurs="0"/>
+ <xs:element ref="p:InternetAddress" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="zuseType">
+ <xs:sequence>
+ <xs:element name="edID" type="xs:token" minOccurs="0"/>
+ <xs:element name="ZUSEUrlID" type="xs:string"/>
+ <xs:element name="MIMETypes" type="xs:string"/>
+ <xs:element name="X509" type="xs:base64Binary" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ <!-- Antwort auf Pushrequest-->
+ <xs:element name="PushResponse" type="PushResponseType"/>
+ <xs:complexType name="PushResponseType">
+ <xs:choice>
+ <xs:element name="Success">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:restriction base="xs:anyType"/>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Error">
+ <xs:complexType>
+ <xs:choice>
+ <xs:sequence>
+ <xs:annotation>
+ <xs:documentation>Allgmeiner Fehler</xs:documentation>
+ </xs:annotation>
+ <xs:element name="Code" type="xs:positiveInteger"/>
+ <xs:element name="Info" type="xs:string"/>
+ </xs:sequence>
+ <xs:element name="FailedDN" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>Liste der fehlgeschlagenen DNs beim Updaten des Verzeichnisses</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="DN" type="xs:string"/>
+ <xs:element name="Info" type="xs:string"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ </xs:choice>
+ </xs:complexType>
+ <xs:element name="DeliveryAgents" type="DeliveryAgentsType">
+ <xs:annotation>
+ <xs:documentation>The list of approved delivery agents</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:complexType name="DeliveryAgentsType">
+ <xs:annotation>
+ <xs:documentation>The list of approved delivery agents</xs:documentation>
+ </xs:annotation>
+ <xs:sequence>
+ <xs:element name="DeliveryAgent" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="WebInterfaceURL">
+ <xs:simpleType>
+ <xs:restriction base="xs:anyURI">
+ <xs:minLength value="1"/>
+ <xs:whiteSpace value="collapse"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+ <xs:element name="WebServiceURL">
+ <xs:simpleType>
+ <xs:restriction base="xs:anyURI">
+ <xs:minLength value="1"/>
+ <xs:whiteSpace value="collapse"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:element name="Directory">
+ <xs:complexType>
+ <xs:sequence maxOccurs="unbounded">
+ <xs:element name="Entry">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Identification" type="p:IdentificationType"/>
+ <xs:element ref="p:CorporateBody"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
diff --git a/src/main/resources/wsdl/zkopf/zkopf_mypersondata_en.xsd b/src/main/resources/wsdl/zkopf/zkopf_mypersondata_en.xsd
new file mode 100644
index 0000000..c70325a
--- /dev/null
+++ b/src/main/resources/wsdl/zkopf/zkopf_mypersondata_en.xsd
@@ -0,0 +1,379 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- edited with XMLSPY v2004 rel. 2 U (http://www.xmlspy.com) by Larissa Naber (Bundeskanzleramt) -->
+<!-- edited with XML Spy v4.1 U (http://www.xmlspy.com) by Peter Reichstädter (CIO) -->
+<!--Generisches Schema zum Speichern und Austauschen von Personendaten
+ (c) 2001-2002 Chief Information Office Austria, Stabsstelle IKT-Strategie des Bundes, BMÖLS
+ Kontakt: Peter Reichstädter (peter.reichstaedter@cio.gv.at), Arno Hollosi (arno.hollosi@cio.gv.at)
+ Die freie Verwendung dieses Schemas in Applikationen (behördenintern, kommerziell, privat) ist erlaubt und erwünscht.
+-->
+<?xml-stylesheet type="text/xsl" href="getelementnames.xslt"?>
+<xs:schema targetNamespace="http://reference.e-government.gv.at/namespace/persondata/en/20040201#" xmlns="http://reference.e-government.gv.at/namespace/persondata/en/20040201#" xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0.0">
+ <xs:import namespace="http://www.w3.org/2000/09/xmldsig#" schemaLocation="W3C-XMLDSig.xsd"/>
+ <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>
+ <!-- ### signed structure of a person ### -->
+ <xs:element name="AbstractPersonData" type="AbstractPersonType">
+ <xs:annotation>
+ <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" substitutionGroup="AbstractPersonData">
+ <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 ### -->
+ <xs:element name="PhysicalPerson" type="PhysicalPersonType" substitutionGroup="Person">
+ <xs:annotation>
+ <xs:documentation>element of physical person type, dreived from Person (abstract)</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="CorporateBody" type="CorporateBodyType" substitutionGroup="Person">
+ <xs:annotation>
+ <xs:documentation>element of corporate body type, derived from Person</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="Name" type="PersonNameType">
+ <xs:annotation>
+ <xs:documentation>data related to the person's name</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="DateOfBirth" type="DateOfBirthType">
+ <xs:annotation>
+ <xs:documentation>date of birth, compare Geburtsdatum</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <!-- ### adress data for various types of communications ### -->
+ <xs:element name="Address" type="AbstractAddressType"/>
+ <xs:element name="PostalAddress" type="PostalAddressType" substitutionGroup="Address">
+ <xs:annotation>
+ <xs:documentation>Postal or ZMR Address, compare PostAdresse</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="InternetAddress" type="InternetAddressType" substitutionGroup="Address">
+ <xs:annotation>
+ <xs:documentation>element of internet address type</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="TelephoneAddress" type="TelephoneAddressType" substitutionGroup="Address">
+ <xs:annotation>
+ <xs:documentation>element of TelephoneAddressType, compare TelefonAdresse</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <!-- ### Identification elements ###-->
+ <xs:element name="AbstractSimpleIdentification" type="xs:string"/>
+ <xs:element name="OID" type="xs:string" substitutionGroup="AbstractSimpleIdentification"/>
+ <xs:element name="NatPErgaenzungsRegisterZahl" type="xs:string" substitutionGroup="AbstractSimpleIdentification"/>
+ <xs:element name="NichtNatPErgaenzungsRegisterZahl" type="xs:string" substitutionGroup="AbstractSimpleIdentification"/>
+ <xs:element name="VereinsRegisterZahl" type="xs:string" substitutionGroup="AbstractSimpleIdentification"/>
+ <xs:element name="FirmenbuchNummer" type="xs:string" substitutionGroup="AbstractSimpleIdentification"/>
+ <!--### elements of simple type ####-->
+ <xs:element name="FormattedNumber" type="xs:string">
+ <xs:annotation>
+ <xs:documentation>Complete Number ready formated, comapre FormatierteNummer</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <!--### Complex types ###-->
+ <xs:complexType name="PersonDataType">
+ <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>
+ <xs:complexContent>
+ <xs:extension base="AbstractPersonType">
+ <xs:sequence>
+ <xs:element ref="Person"/>
+ <xs:element ref="Address" minOccurs="0" maxOccurs="unbounded"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="IdentificationType">
+ <xs:annotation>
+ <xs:documentation>unique identifier</xs:documentation>
+ </xs:annotation>
+ <xs:sequence>
+ <xs:element name="Value">
+ <xs:annotation>
+ <xs:documentation>actual value of the identifier.</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="Id" type="xs:ID" use="optional"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Type" type="xs:anyURI">
+ <xs:annotation>
+ <xs:documentation>type of value (eg 'ZMR', 'SV-Nummer', 'Martrikelnummer', database identification, ...)</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="Authority" type="xs:anyURI" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>authority, which is reponsible for generation of the identifier (eg university in case of 'MatrikelNummer')</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>any additional properties</xs:documentation>
+ </xs:annotation>
+ </xs:any>
+ </xs:sequence>
+ <xs:attribute name="Id" type="xs:ID" use="optional"/>
+ <xs:anyAttribute namespace="##other"/>
+ </xs:complexType>
+ <xs:complexType name="AbstractPersonType">
+ <xs:annotation>
+ <xs:documentation>main structure of person data</xs:documentation>
+ </xs:annotation>
+ <xs:choice minOccurs="0">
+ <xs:element ref="AbstractSimpleIdentification" minOccurs="0"/>
+ </xs:choice>
+ <xs:attribute name="Id" type="xs:ID" use="optional"/>
+ <xs:anyAttribute namespace="##other"/>
+ </xs:complexType>
+ <xs:complexType name="PhysicalPersonType">
+ <xs:annotation>
+ <xs:documentation>physical person</xs:documentation>
+ </xs:annotation>
+ <xs:complexContent>
+ <xs:extension base="AbstractPersonType">
+ <xs:sequence minOccurs="0">
+ <xs:element ref="Name"/>
+ <xs:element ref="DateOfBirth" minOccurs="0"/>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="PersonNameType">
+ <xs:sequence>
+ <xs:element name="GivenName" type="xs:string"/>
+ <xs:element name="FamilyName">
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="primary" default="undefined">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="true"/>
+ <xs:enumeration value="false"/>
+ <xs:enumeration value="undefined"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="prefix" type="xs:string"/>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Affix" minOccurs="0" maxOccurs="unbounded">
+ <xs:annotation>
+ <xs:documentation>Inlcudes all Information that is not exactly a name: academic or aristocratic titles, ... the new position attribute can contain a suffx or prefix value</xs:documentation>
+ </xs:annotation>
+ <xs:complexType>
+ <xs:simpleContent>
+ <xs:extension base="xs:string">
+ <xs:attribute name="type" use="required">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="academicGrade"/>
+ <xs:enumeration value="aristocraticPrefix"/>
+ <xs:enumeration value="aristocraticTitle"/>
+ <xs:enumeration value="familyNamePrefix"/>
+ <xs:enumeration value="familyNameSuffix"/>
+ <xs:enumeration value="formOfAddress"/>
+ <xs:enumeration value="generation"/>
+ <xs:enumeration value="qualification"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="position" use="optional">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="prefix"/>
+ <xs:enumeration value="suffix"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:extension>
+ </xs:simpleContent>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="CorporateBodyType">
+ <xs:annotation>
+ <xs:documentation>juridical person, organisation</xs:documentation>
+ </xs:annotation>
+ <xs:complexContent>
+ <xs:extension base="AbstractPersonType">
+ <xs:sequence minOccurs="0">
+ <xs:element name="FullName" type="xs:token">
+ <xs:annotation>
+ <xs:documentation>name of corporate body (whole name), compare VollerName</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="Organization" type="xs:token" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>part of an organisation, see also X.500 ou (eg departement, section, branch, ...) , compare Organisation</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="AbstractAddressType">
+ <xs:annotation>
+ <xs:documentation>main structure of address data</xs:documentation>
+ </xs:annotation>
+ <xs:attribute name="Id" type="xs:ID" use="optional"/>
+ <xs:anyAttribute namespace="##other"/>
+ </xs:complexType>
+ <xs:complexType name="PostalAddressType">
+ <xs:complexContent>
+ <xs:extension base="AbstractAddressType">
+ <xs:sequence>
+ <xs:element name="CountryCode" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>Code for the country, use ISO or internatinal Postalstandard, compare Staatscode</xs:documentation>
+ </xs:annotation>
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:pattern value="[A-Z]{2}"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:element>
+ <xs:element name="PostalCode" type="xs:string">
+ <xs:annotation>
+ <xs:documentation>ZIP, compare Postleitzahl</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="Municipality" type="xs:string">
+ <xs:annotation>
+ <xs:documentation>compare Gemeinde</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="MunicipalityNumber" type="xs:string" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>compare Gemeindekennzahl</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="DeliveryAddress">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="StreetName" type="xs:string"/>
+ <xs:element name="BuildingNumber" type="xs:string"/>
+ <xs:element name="Unit" type="xs:string" minOccurs="0"/>
+ <xs:element name="DoorNumber" type="xs:string" minOccurs="0"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="type" default="undefined">
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:enumeration value="postOfficeBoxAddress"/>
+ <xs:enumeration value="streetAddress"/>
+ <xs:enumeration value="militaryAddress"/>
+ <xs:enumeration value="undefined"/>
+ </xs:restriction>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="TelcomNumberType">
+ <xs:choice>
+ <xs:element ref="FormattedNumber"/>
+ </xs:choice>
+ </xs:complexType>
+ <xs:complexType name="InternetAddressType">
+ <xs:annotation>
+ <xs:documentation>internet based communication</xs:documentation>
+ </xs:annotation>
+ <xs:complexContent>
+ <xs:extension base="AbstractAddressType">
+ <xs:sequence minOccurs="0">
+ <xs:element ref="dsig:KeyInfo" minOccurs="0">
+ <xs:annotation>
+ <xs:documentation>certificate for secure communication</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ <xs:element name="Address" type="xs:anyURI">
+ <xs:annotation>
+ <xs:documentation>URI: email-Address, Web, FTP, LDAP, ..., comapre Adress</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ <xs:complexType name="TelephoneAddressType">
+ <xs:annotation>
+ <xs:documentation>phone numbers</xs:documentation>
+ </xs:annotation>
+ <xs:complexContent>
+ <xs:extension base="AbstractAddressType">
+ <xs:sequence minOccurs="0">
+ <xs:element name="Number" type="TelcomNumberType">
+ <xs:annotation>
+ <xs:documentation>phonenumber</xs:documentation>
+ </xs:annotation>
+ </xs:element>
+ </xs:sequence>
+ </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:simpleType name="string3">
+ <xs:restriction base="xs:string">
+ <xs:maxLength value="3"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="string4">
+ <xs:restriction base="xs:string">
+ <xs:maxLength value="4"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="string7">
+ <xs:restriction base="xs:string">
+ <xs:maxLength value="7"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="string20">
+ <xs:restriction base="xs:string">
+ <xs:maxLength value="20"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="string30">
+ <xs:restriction base="xs:string">
+ <xs:maxLength value="30"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="string50">
+ <xs:restriction base="xs:string">
+ <xs:maxLength value="50"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="string100">
+ <xs:restriction base="xs:string">
+ <xs:maxLength value="100"/>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType name="integer5">
+ <xs:restriction base="xs:integer">
+ <xs:minInclusive value="10000"/>
+ <xs:maxInclusive value="99999"/>
+ </xs:restriction>
+ </xs:simpleType>
+</xs:schema>
diff --git a/src/main/resources/wsdl/zkopf/zuserech.wsdl b/src/main/resources/wsdl/zkopf/zuserech.wsdl
new file mode 100644
index 0000000..1036dc7
--- /dev/null
+++ b/src/main/resources/wsdl/zkopf/zuserech.wsdl
@@ -0,0 +1,70 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<definitions xmlns="http://schemas.xmlsoap.org/wsdl/"
+ xmlns:soap="http://schemas.xmlsoap.org/wsdl/soap/"
+ xmlns:tns="http://reference.e-government.gv.at/namespaces/zustellung/rech/wsdl"
+ xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ xmlns:rech="http://reference.e-government.gv.at/namespaces/zustellung/rech"
+ name="rech"
+ targetNamespace="http://reference.e-government.gv.at/namespaces/zustellung/rech/wsdl">
+
+ <import location="zuserech.xsd" namespace="http://reference.e-government.gv.at/namespaces/zustellung/rech"/>
+
+ <message name="ClearingRequest">
+ <part name="ClearingRequest" element="rech:ClearingRequest"/>
+ </message>
+ <message name="ClearingResponse">
+ <part name="ClearingResponse" element="rech:ClearingResponse"/>
+ </message>
+ <message name="ValidateTokenRequest">
+ <part name="ValidateTokenRequest" element="rech:ValidateTokenRequest"/>
+ </message>
+ <message name="ValidateTokenResponse">
+ <part name="ValidateTokenResponse" element="rech:ValidateTokenResponse"/>
+ </message>
+ <portType name="ClearingPortType">
+ <operation name="ClearingOperation">
+ <input message="tns:ClearingRequest"/>
+ <output message="tns:ClearingResponse"/>
+ </operation>
+ </portType>
+ <portType name="ValidateTokenPortType">
+ <operation name="ValidateTokenOperation">
+ <input message="tns:ValidateTokenRequest"/>
+ <output message="tns:ValidateTokenResponse"/>
+ </operation>
+ </portType>
+ <binding name="ClearingBinding" type="tns:ClearingPortType">
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+ <operation name="ClearingOperation">
+ <soap:operation soapAction="tns:ClearingPortType#ClearingOperation" style="document"/>
+ <input>
+ <soap:body use="literal"/>
+ </input>
+ <output>
+ <soap:body use="literal"/>
+ </output>
+ </operation>
+ </binding>
+ <binding name="ValidateTokenBinding" type="tns:ValidateTokenPortType">
+ <soap:binding style="document" transport="http://schemas.xmlsoap.org/soap/http"/>
+ <operation name="ValidateTokenOperation">
+ <soap:operation soapAction="tns:ValidateTokenPortType#ValidateTokenOperation" style="document"/>
+ <input>
+ <soap:body use="literal"/>
+ </input>
+ <output>
+ <soap:body use="literal"/>
+ </output>
+ </operation>
+ </binding>
+ <service name="ClearingService">
+ <port name="ClearingPort" binding="tns:ClearingBinding">
+ <soap:address location="http://localhost:8080/rech/ClearingService"/>
+ </port>
+ </service>
+ <service name="ValidateTokenService">
+ <port name="ValidateTokenPort" binding="tns:ValidateTokenBinding">
+ <soap:address location="http://localhost:8080/rech/ValidateTokenService"/>
+ </port>
+ </service>
+</definitions>
diff --git a/src/main/resources/wsdl/zkopf/zuserech.xsd b/src/main/resources/wsdl/zkopf/zuserech.xsd
new file mode 100644
index 0000000..febc83d
--- /dev/null
+++ b/src/main/resources/wsdl/zkopf/zuserech.xsd
@@ -0,0 +1,98 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<!-- edited with XMLSpy v2006 sp2 U (http://www.altova.com) by Arne Tauber (Technische Universität Graz) -->
+<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://reference.e-government.gv.at/namespaces/zustellung/rech" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" targetNamespace="http://reference.e-government.gv.at/namespaces/zustellung/rech" elementFormDefault="qualified" attributeFormDefault="unqualified">
+ <xs:element name="ClearingRequest" type="ClearingRequestType"/>
+ <xs:element name="ClearingResponse" type="ClearingResponseType"/>
+ <xs:complexType name="X509IssuerSerialType">
+ <xs:sequence>
+ <xs:element name="X509IssuerName" type="xs:string"/>
+ <xs:element name="X509SerialNumber" type="xs:long"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="ClearingRequestType">
+ <xs:sequence>
+ <xs:element name="ClearingEntry" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="X509IssuerSerial" type="X509IssuerSerialType"/>
+ <xs:element name="Token" type="xs:token"/>
+ <xs:element name="DeliveryQuality" type="xs:token"/>
+ <xs:element name="PaperNotification" type="xs:boolean"/>
+ <xs:element name="Private" minOccurs="0">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="Price" type="xs:decimal"/>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="ID" type="xs:token" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="version" type="xs:positiveInteger"/>
+ </xs:complexType>
+ <xs:complexType name="ErrorType">
+ <xs:sequence>
+ <xs:element name="Info" type="xs:string"/>
+ <xs:element name="Code" type="xs:positiveInteger"/>
+ </xs:sequence>
+ </xs:complexType>
+ <xs:complexType name="ClearingResponseType">
+ <xs:choice>
+ <xs:element name="Error" type="ErrorType"/>
+ <xs:sequence>
+ <xs:element name="ClearingEntry" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:choice>
+ <xs:element name="Success">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:restriction base="xs:anyType"/>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Error" type="ErrorType"/>
+ </xs:choice>
+ <xs:attribute name="ID" type="xs:token" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:choice>
+ </xs:complexType>
+ <xs:element name="ValidateTokenRequest" type="ValidateTokenRequestType"/>
+ <xs:element name="ValidateTokenResponse" type="ValidateTokenResponseType"/>
+ <xs:complexType name="ValidateTokenRequestType">
+ <xs:sequence>
+ <xs:element name="TokenEntry" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element name="X509IssuerSerial" type="X509IssuerSerialType"/>
+ <xs:element name="Token" type="xs:token"/>
+ </xs:sequence>
+ <xs:attribute name="ID" type="xs:token" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ <xs:attribute name="version" type="xs:positiveInteger"/>
+ </xs:complexType>
+ <xs:complexType name="ValidateTokenResponseType">
+ <xs:sequence>
+ <xs:element name="TokenEntry" maxOccurs="unbounded">
+ <xs:complexType>
+ <xs:choice>
+ <xs:element name="Success">
+ <xs:complexType>
+ <xs:complexContent>
+ <xs:restriction base="xs:anyType"/>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="Error" type="ErrorType"/>
+ </xs:choice>
+ <xs:attribute name="ID" type="xs:token" use="required"/>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+</xs:schema>