diff options
Diffstat (limited to 'src/main/resources/wsdl/ERsB/1.1/schema')
7 files changed, 1914 insertions, 0 deletions
diff --git a/src/main/resources/wsdl/ERsB/1.1/schema/PersonData_Ersb.xsd b/src/main/resources/wsdl/ERsB/1.1/schema/PersonData_Ersb.xsd new file mode 100644 index 0000000..becd0a9 --- /dev/null +++ b/src/main/resources/wsdl/ERsB/1.1/schema/PersonData_Ersb.xsd @@ -0,0 +1,438 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- edited with XMLSPY v2004 rel. 3 U (http://www.xmlspy.com) by Paul (thx) --> +<!-- 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. +--> +<!-- + Adaptierung URV URSuche v3.0 für Ersb Schnittstelle + =================================================== + 2012-10-08 sml Stiege und Türnummer in ERsB Request + 2012-09-20 sml NichtNatuerlichePerson um ErsbAttributes erweitert + 2012-09-11 sml IdentificationType um Beginn und Ende erweitert + 2012-09-03 sml IdentificationType um ErsbAttributes erweitert + 2012-08-07 sml kein mixed Content bei den Zusatzdaten mehr möglich + 2012-07-05 sml Any-Attribute und Any-Elemente nach AGII-Empfehlung durch die konkreten ersetzt. + 2012-06-14 sml Affix wieder auf unbounded (vgl. URSucheService UDB) + --> +<?xml-stylesheet type="text/xsl" href="getelementnames.xslt"?> + +<xs:schema targetNamespace="http://statistik.at/namespace/ersb/persondata/1#" + xmlns="http://statistik.at/namespace/ersb/persondata/1#" + xmlns:xs="http://www.w3.org/2001/XMLSchema" + xmlns:uri="http://statistik.at/namespace/ersb/1#" + xmlns:urs="http://statistik.at/namespace/ur/stammdaten/2#" + xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" elementFormDefault="qualified" attributeFormDefault="unqualified" version="1.0.0"> + + <!-- Import der ERSB-suche --> + + <xs:import namespace="http://statistik.at/namespace/ersb/1#" + schemaLocation="ersb-types.xsd" /> + + + <!-- Import UR Suche --> + <xs:import namespace="http://statistik.at/namespace/ur/stammdaten/2#" + schemaLocation="ur-basicTypes.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>Abstraktes PersonenDaten Element, nur auf englisch verfügbar, nicht direkt benützen sondern PersonenDaten benutzen</xs:documentation> + </xs:annotation> + </xs:element> + + <xs:element name="PersonenDaten" type="PersonenDatenTyp" substitutionGroup="AbstractPersonData"> + <xs:annotation> + <xs:documentation>Signierte Personendatenstruktur</xs:documentation> + </xs:annotation> + </xs:element> + + <!-- ### base type for person data ### --> + <xs:element name="Person" type="AbstractPersonType"> + <xs:annotation> + <xs:documentation>Abstraktes Personen Element, nur auf englisch verfügbar, nicht direkt benützen sondern NatuerlichePerson o. NichtNatuerlichePerson benutzen</xs:documentation> + </xs:annotation> + </xs:element> + <!-- ### physical person and corporate body ### --> + <xs:element name="NatuerlichePerson" type="NatuerlichePersonTyp" substitutionGroup="Person"> + <xs:annotation> + <xs:documentation>Natuerliche Person entspricht PhysicalPerson, ist eine Ableitung von Person (abstract)</xs:documentation> + </xs:annotation> + </xs:element> + + <xs:element name="NichtNatuerlichePerson" type="NichtNatuerlichePersonTyp" substitutionGroup="Person"> + <xs:annotation> + <xs:documentation>NichtNatuerlichePerson entspricht CorporatzeBody, ist Ableitung von Person (abstract)</xs:documentation> + </xs:annotation> + </xs:element> + + <!--### complex child elements of person, also available as standalone ###--> + <xs:element name="PersonenName" type="PersonenNameTyp"> + <xs:annotation> + <xs:documentation>Container für diverse Namensbestandteile, entspricht Name in der englischen Version</xs:documentation> + </xs:annotation> + </xs:element> + + + + <!-- ### adress data for various types of communications ### --> + <xs:element name="Address" type="AbstractAddressType"> + <xs:annotation> + <xs:documentation>Abstraktes Address Element, nur auf Englisch verfügbar, nicht direkt benützen sondern PostAdresse, InternetAdresse, etc benutzen</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="PostAdresse" type="PostAdresseTyp" substitutionGroup="Address"> + <xs:annotation> + <xs:documentation>Post oder ZMR Adresse, entspricht PostalAddress, ist Ableitung von Address (abstract)</xs:documentation> + </xs:annotation> + </xs:element> + + <xs:element name="TypisiertePostAdresse" type="TypisiertePostAdresseTyp" substitutionGroup="Address"> + <xs:annotation> + <xs:documentation>Typisierte Post oder ZMRAdresse, entspricht TypedPostalAddress, ist Ableitung von Address (abstract) </xs:documentation> + </xs:annotation> + </xs:element> + + <!--### elements of simple type ####--> + <xs:element name="Geburtsdatum" type="GeburtsdatumTyp"> + <xs:annotation> + <xs:documentation>Geburtsdatum, entspricht DateOfBirth</xs:documentation> + </xs:annotation> + </xs:element> + + + <!--### Complex types ###--> + + + <!-- UR Spezialisierung des PersonenDatenTyp --> + <xs:complexType name="PersonenDatenTyp"> + <xs:annotation> + <xs:documentation>Container um eine Person und ihre Adressen zu speichern</xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="AbstractPersonType"> + <xs:sequence> + <!-- UR-Spezialisierung --> + <xs:element ref="NichtNatuerlichePerson"/> + + <!-- UR-Spezialisierung --> + <xs:element ref="TypisiertePostAdresse" minOccurs="0" maxOccurs="unbounded" /> + + <xs:element name="Zusatzdaten" minOccurs="0"> + <xs:complexType mixed="false"> + <xs:sequence minOccurs="0"> + <!-- Erweiterung UR --> + <xs:element ref="uri:Bestandszeitraum" minOccurs="0" maxOccurs="unbounded" /> + <xs:element ref="uri:Bestandsnachweis" minOccurs="0" maxOccurs="unbounded" /> + <xs:element ref="uri:Vertretung" minOccurs="0" maxOccurs="unbounded" /> + <xs:element ref="uri:Rechtstatsachen" minOccurs="0" maxOccurs="unbounded" /> + <xs:element name="PersonenDaten" type="PersonenDatenZusatzdatenTyp" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + </xs:element> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <!-- UR Spezialisierung für natürliche und nichtnatürliche Personen in den Zusatzdaten--> + <xs:complexType name="PersonenDatenZusatzdatenTyp"> + <xs:annotation> + <xs:documentation>Container um eine Person und ihre Adressen zu speichern</xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="AbstractPersonType"> + <xs:sequence> + <!-- UR-Spezialisierung --> + <xs:choice minOccurs="0"> + <xs:element ref="NichtNatuerlichePerson"/> + <xs:element ref="NatuerlichePerson"/> + </xs:choice> + <!-- UR-Spezialisierung --> + <xs:element ref="TypisiertePostAdresse" minOccurs="0" maxOccurs="unbounded" /> + + <xs:element name="Zusatzdaten" minOccurs="0"> + <xs:complexType mixed="false"> + + <xs:sequence minOccurs="0"> + <!-- Erweiterung UR --> + <xs:element ref="urs:EvbStatus" minOccurs="0" maxOccurs="1" /> + <xs:element ref="uri:Funktion" minOccurs="0" maxOccurs="unbounded" /> + <xs:element ref="uri:Rechtstatsachen" minOccurs="0" maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + </xs:element> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + +<xs:complexType name="IdentificationType"> + <xs:annotation> + <xs:documentation>Container für beliebige Identifikationsmerkmale, besteht aus Type und Value Unterelementen, aus technischen Gründen nur auf Englisch verfügbar</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> + <!-- Erweiterung Ersb --> + <xs:element ref="uri:Beginn" minOccurs="0" maxOccurs="1" /> + <xs:element ref="uri:Ende" minOccurs="0" maxOccurs="1" /> + + </xs:sequence> + <xs:attribute name="Id" type="xs:ID" use="optional"/> + <!-- Erweiterung Ersb --> + <xs:attributeGroup ref="uri:ErsbAttributes" /> + + </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 name="Identification" type="IdentificationType" minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>unique identification entities</xs:documentation> + </xs:annotation> + </xs:element> + </xs:choice> + <xs:attribute name="Id" type="xs:ID" use="optional"/> + </xs:complexType> + + + <xs:complexType name="NatuerlichePersonTyp"> + <xs:annotation> + <xs:documentation>entspricht PhysicalPersonType</xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="AbstractPersonType"> + <xs:sequence minOccurs="0"> + <xs:element ref="PersonenName" minOccurs="0"/> + <xs:element ref="Geburtsdatum" minOccurs="0"/> + </xs:sequence> + <!-- Erweiterung UR --> + <xs:attributeGroup ref="uri:ErsbAttributes" /> + </xs:extension> + + </xs:complexContent> + </xs:complexType> + + + + + <xs:complexType name="NichtNatuerlichePersonTyp"> + <xs:annotation> + <xs:documentation>entspricht CorporateBodyType</xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="AbstractPersonType"> + <xs:sequence minOccurs="0"> + <xs:element name="VollerName" type="xs:token" minOccurs="0"> + <xs:annotation> + <xs:documentation>name of corporate body (whole name)</xs:documentation> + </xs:annotation> + </xs:element> + + <xs:element name="Rechtsform" type="xs:anyURI" minOccurs="0"> + <xs:annotation> + <xs:documentation>type of company (eg AG, OHG, ...)</xs:documentation> + </xs:annotation> + </xs:element> + + <!-- Erweiterung UR --> + <xs:element ref="uri:UntName" minOccurs="0" maxOccurs="unbounded" /> + <xs:element ref="uri:Rechtsform" minOccurs="0" maxOccurs="unbounded" /> + + </xs:sequence> + <!-- Erweiterung Ersb --> + <xs:attributeGroup ref="uri:ErsbAttributes" /> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + + + <xs:complexType name="PersonenNameTyp"> + <xs:annotation> + <xs:documentation>entspricht NameType</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="Vorname" type="xs:string" minOccurs="1" maxOccurs="1"/> + <xs:element name="Familienname" minOccurs="1" maxOccurs="1"> + <xs:complexType> + <xs:simpleContent> + <xs:extension base="xs:string"> + <xs:attribute name="primaer" default="undefiniert"> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="wahr"/> + <xs:enumeration value="falsch"/> + <xs:enumeration value="undefiniert"/> + </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:complexType> + <xs:simpleContent> + <xs:extension base="xs:string"> + <xs:attribute name="typ" use="optional"> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="akademischerGrad"/> + <xs:enumeration value="Adelstitel"/> + <xs:enumeration value="FamiliennamenAffix"/> + <xs:enumeration value="Anrede"/> + <xs:enumeration value="Generation"/> + <xs:enumeration value="Qualifikation"/> + </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="AbstractAddressType"> + <xs:annotation> + <xs:documentation>Struktur des Abstrakten Address Elements</xs:documentation> + </xs:annotation> + + <xs:attribute name="Id" type="xs:ID" use="optional"/> + </xs:complexType> + + + + <xs:complexType name="TypisiertePostAdresseTyp"> + <xs:annotation> + <xs:documentation>entspricht TypedPostalAddressType</xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="AbstractAddressType"> + <xs:sequence minOccurs="0"> + <xs:element ref="PostAdresse"/> + <!-- Erweiterung UR --> + <xs:element ref="urs:Typ" minOccurs="1" maxOccurs="1" /> + </xs:sequence> + <!-- Erweiterung UR --> + <xs:attributeGroup ref="uri:ErsbAttributes" /> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + + <xs:complexType name="PostAdresseTyp"> + <xs:annotation> + <xs:documentation>entspricht PostalAddressType</xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="AbstractAddressType"> + <xs:sequence> + <xs:element name="Staatscode" minOccurs="0"> + <xs:annotation> + <xs:documentation>Staatencode, ISO Code oder internationaler Post code, entspricht CountryCode</xs:documentation> + </xs:annotation> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:pattern value="[A-Z]{3}"/> + </xs:restriction> + </xs:simpleType> + </xs:element> + <xs:element name="Postleitzahl" type="xs:token" minOccurs="0"> + <xs:annotation> + <xs:documentation>entspricht PostalCode</xs:documentation> + </xs:annotation> + </xs:element> + + <xs:element name="Gemeinde" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>entspricht Municipality</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Gemeindekennziffer" minOccurs="0"/> + <xs:element name="Ortschaft" type="xs:token" minOccurs="0"/> + <xs:element name="Zustelladresse" minOccurs="0"> + <xs:annotation> + <xs:documentation>Zustelladresse oder ZMRAdresse, entspricht DeliveryAddress</xs:documentation> + </xs:annotation> + <xs:complexType> + <xs:sequence> + <xs:element name="Strassenname" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Bei Ortschaften ohne Straßenname steht hier Ortschaftsname, entspricht StreetName</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Orientierungsnummer" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>Hausnummer oder Konskriptionsnummer, z.B. 10, 124a, 78-80. Entpricht BuildingNumber</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Gebaeude" type="xs:token" minOccurs="0"> + <xs:annotation> + <xs:documentation>Gebäudeteil oder eigneens Gbäude, z.B. Stiege, Werkstatt, ..... Entspricht Unit</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Nutzungseinheit" type="xs:token" minOccurs="0"> + <xs:annotation> + <xs:documentation>Tuernummer oder andere naehere Beschreibung der Adresse (z.B. 4. Stock rechts). Entspricht DoorNumber</xs:documentation> + </xs:annotation> + </xs:element> + </xs:sequence> + </xs:complexType> + </xs:element> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + + + <!-- ### auxiliary types ### --> + <xs:simpleType name="GeburtsdatumTyp"> + <xs:annotation> + <xs:documentation>einfacher Datentyp für Daten (union): Tag und/oder Monta können ausgelassen werden, entspricht DayOfBirthType</xs:documentation> + </xs:annotation> + <xs:union memberTypes="xs:date xs:gYearMonth xs:gYear"/> + </xs:simpleType> + +</xs:schema> diff --git a/src/main/resources/wsdl/ERsB/1.1/schema/PersonData_URSuche.xsd b/src/main/resources/wsdl/ERsB/1.1/schema/PersonData_URSuche.xsd new file mode 100644 index 0000000..6c8209a --- /dev/null +++ b/src/main/resources/wsdl/ERsB/1.1/schema/PersonData_URSuche.xsd @@ -0,0 +1,511 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- edited with XMLSPY v2004 rel. 3 U (http://www.xmlspy.com) by Paul (thx) --> +<!-- 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. +--> +<!-- + Anpassungen für URV URSuche v3.0 + ================================ + 2012-09-24 sml Auslagerung Zusatzdaten in ZusatzdatenPersonenTyp + 2012-09-20 sml NichtNatuerlichePerson um VollzugAttributes erweitert + 2012-09-11 sml Kardinalität EVBStatus auf 0..1 geändert + Kardinalität TypeText von 0..n auf 0..1 geändert + 2012-08-20 hoa AdressCode/Subcode/Objektnummer hinzugefügt + 2012-08-08 sml Branche hinzugefügt + 2012-08-07 sml kein mixed Content bei den Zusatzdaten mehr möglich + 2012-08-06 sml eigener Namespace für UR-Persondata + 2012-07-05 sml Any-Attribute und Any-Elemente nach AGII-Empfehlung durch die konkreten ersetzt. + 2012-06-14 sml Affix wieder auf unbounded (vgl. URSucheService UDB) + --> +<?xml-stylesheet type="text/xsl" href="getelementnames.xslt"?> + +<xs:schema targetNamespace="http://reference.e-government.gv.at/namespace/persondata/de/20040201#" + xmlns="http://reference.e-government.gv.at/namespace/persondata/de/20040201#" xmlns:xs="http://www.w3.org/2001/XMLSchema" + xmlns:uri="http://statistik.at/namespace/ur/stammdaten/2#" xmlns:dsig="http://www.w3.org/2000/09/xmldsig#" + elementFormDefault="qualified" attributeFormDefault="unqualified" + version="1.0.0"> + + <!-- Import der UR-basic --> + <xs:import namespace="http://statistik.at/namespace/ur/stammdaten/2#" + schemaLocation="ur-basicTypes.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>Abstraktes PersonenDaten Element, nur auf englisch + verfügbar, nicht direkt benützen sondern PersonenDaten benutzen + </xs:documentation> + </xs:annotation> + </xs:element> + + <xs:element name="PersonenDaten" type="PersonenDatenTyp" + substitutionGroup="AbstractPersonData"> + <xs:annotation> + <xs:documentation>Signierte Personendatenstruktur</xs:documentation> + </xs:annotation> + </xs:element> + + <!-- ### base type for person data ### --> + <xs:element name="Person" type="AbstractPersonType"> + <xs:annotation> + <xs:documentation>Abstraktes Personen Element, nur auf englisch + verfügbar, nicht direkt benützen sondern NatuerlichePerson o. + NichtNatuerlichePerson benutzen</xs:documentation> + </xs:annotation> + </xs:element> + <!-- ### physical person and corporate body ### --> + <xs:element name="NatuerlichePerson" type="NatuerlichePersonTyp" + substitutionGroup="Person"> + <xs:annotation> + <xs:documentation>Natuerliche Person entspricht PhysicalPerson, ist + eine Ableitung von Person (abstract)</xs:documentation> + </xs:annotation> + </xs:element> + + <xs:element name="NichtNatuerlichePerson" type="NichtNatuerlichePersonTyp" + substitutionGroup="Person"> + <xs:annotation> + <xs:documentation>NichtNatuerlichePerson entspricht CorporatzeBody, + ist Ableitung von Person (abstract)</xs:documentation> + </xs:annotation> + </xs:element> + + <!--### complex child elements of person, also available as standalone ### --> + <xs:element name="PersonenName" type="PersonenNameTyp"> + <xs:annotation> + <xs:documentation>Container für diverse Namensbestandteile, + entspricht Name in der englischen Version</xs:documentation> + </xs:annotation> + </xs:element> + + + + <!-- ### adress data for various types of communications ### --> + <xs:element name="Address" type="AbstractAddressType"> + <xs:annotation> + <xs:documentation>Abstraktes Address Element, nur auf Englisch + verfügbar, nicht direkt benützen sondern PostAdresse, + InternetAdresse, etc benutzen</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="PostAdresse" type="PostAdresseTyp" + substitutionGroup="Address"> + <xs:annotation> + <xs:documentation>Post oder ZMR Adresse, entspricht PostalAddress, + ist Ableitung von Address (abstract)</xs:documentation> + </xs:annotation> + </xs:element> + + <xs:element name="TypisiertePostAdresse" type="TypisiertePostAdresseTyp" + substitutionGroup="Address"> + <xs:annotation> + <xs:documentation>Typisierte Post oder ZMRAdresse, entspricht + TypedPostalAddress, ist Ableitung von Address (abstract) + </xs:documentation> + </xs:annotation> + </xs:element> + + <!--### elements of simple type #### --> + <xs:element name="Geburtsdatum" type="GeburtsdatumTyp"> + <xs:annotation> + <xs:documentation>Geburtsdatum, entspricht DateOfBirth + </xs:documentation> + </xs:annotation> + </xs:element> + + + <!--### Complex types ### --> + + + <!-- UR Spezialisierung des PersonenDatenTyp --> + <xs:complexType name="PersonenDatenTyp"> + <xs:annotation> + <xs:documentation>Container um eine Person und ihre Adressen zu + speichern</xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="AbstractPersonType"> + <xs:sequence> + <!-- UR-Spezialisierung --> + <xs:element ref="NichtNatuerlichePerson" /> + + <!-- UR-Spezialisierung --> + <xs:element ref="TypisiertePostAdresse" minOccurs="0" + maxOccurs="unbounded" /> + + <xs:element name="Zusatzdaten" minOccurs="0"> + <!-- UR Erweiterung: kein mixed Content bei den Zusatzdaten --> + <xs:complexType mixed="false"> + <xs:sequence minOccurs="0"> + <!-- Erweiterung UR --> + <xs:element ref="uri:AendDat" minOccurs="0" + maxOccurs="1" /> + <xs:element ref="uri:Bestandszeitraum" minOccurs="0" + maxOccurs="unbounded" /> + <xs:element ref="uri:Bestandsnachweis" minOccurs="0" + maxOccurs="unbounded" /> + <xs:element ref="uri:Vertretung" minOccurs="0" + maxOccurs="unbounded" /> + <xs:element ref="uri:Rechtstatsachen" minOccurs="0" + maxOccurs="unbounded" /> + <xs:element ref="uri:Branche" minOccurs="0" + maxOccurs="unbounded" /> + <xs:element name="PersonenDaten" type="PersonenDatenZusatzdatenTyp" + minOccurs="0" maxOccurs="unbounded" /> + <xs:element ref="uri:Vollzug" minOccurs="0" + maxOccurs="unbounded" /> + </xs:sequence> + </xs:complexType> + </xs:element> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <!-- UR Spezialisierung für natürliche und nichtnatürliche Personen in den + Zusatzdaten --> + <xs:complexType name="PersonenDatenZusatzdatenTyp"> + <xs:annotation> + <xs:documentation>Container um eine Person und ihre Adressen zu + speichern</xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="AbstractPersonType"> + <xs:sequence> + <!-- UR-Spezialisierung --> + <xs:choice minOccurs="0"> + <xs:element ref="NichtNatuerlichePerson" /> + <xs:element ref="NatuerlichePerson" /> + </xs:choice> + <!-- UR-Spezialisierung --> + <xs:element ref="TypisiertePostAdresse" minOccurs="0" + maxOccurs="unbounded" /> + + <xs:element name="Zusatzdaten" type="ZusatzdatenPersonenTyp" minOccurs="0"/> + + + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + <xs:complexType name="ZusatzdatenPersonenTyp"> + + <xs:sequence> + <!-- Erweiterung UR --> + <xs:element ref="uri:EvbStatus" minOccurs="0" + maxOccurs="1" /> + <xs:element ref="uri:Funktion" minOccurs="0" + maxOccurs="unbounded" /> + <xs:element ref="uri:Rechtstatsachen" minOccurs="0" + maxOccurs="unbounded" /> + </xs:sequence> + + </xs:complexType> + <xs:complexType name="IdentificationType"> + <xs:annotation> + <xs:documentation>Container für beliebige Identifikationsmerkmale, + besteht aus Type und Value Unterelementen, aus technischen Gründen + nur auf Englisch verfügbar</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> + + <!-- Erweiterung UR --> + <xs:element ref="uri:TypeText" minOccurs="0" maxOccurs="1" /> + <xs:element ref="uri:Beginn" minOccurs="0" maxOccurs="1" /> + <xs:element ref="uri:Ende" minOccurs="0" maxOccurs="1" /> + + </xs:sequence> + <xs:attribute name="Id" type="xs:ID" use="optional" /> + </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 name="Identification" type="IdentificationType" + minOccurs="0" maxOccurs="unbounded"> + <xs:annotation> + <xs:documentation>unique identification entities</xs:documentation> + </xs:annotation> + </xs:element> + </xs:choice> + <xs:attribute name="Id" type="xs:ID" use="optional" /> + </xs:complexType> + + + <xs:complexType name="NatuerlichePersonTyp"> + <xs:annotation> + <xs:documentation>entspricht PhysicalPersonType</xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="AbstractPersonType"> + <xs:sequence minOccurs="0"> + <xs:element ref="PersonenName" minOccurs="0" /> + <xs:element ref="Geburtsdatum" minOccurs="0" /> + </xs:sequence> + <!-- Erweiterung UR --> + <xs:attributeGroup ref="uri:VollzugAttributes" /> + </xs:extension> + + </xs:complexContent> + </xs:complexType> + + + + + <xs:complexType name="NichtNatuerlichePersonTyp"> + <xs:annotation> + <xs:documentation>entspricht CorporateBodyType</xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="AbstractPersonType"> + <xs:sequence minOccurs="0"> + <xs:element name="VollerName" type="xs:token" minOccurs="0"> + <xs:annotation> + <xs:documentation>name of corporate body (whole name) + </xs:documentation> + </xs:annotation> + </xs:element> + + + <xs:element name="Rechtsform" type="xs:anyURI" + minOccurs="0"> + <xs:annotation> + <xs:documentation>type of company (eg AG, OHG, ...) + </xs:documentation> + </xs:annotation> + </xs:element> + + + <!-- Erweiterung UR --> + <xs:element ref="uri:UntName" minOccurs="0" maxOccurs="unbounded" /> + <xs:element ref="uri:Rechtsform" minOccurs="0" + maxOccurs="unbounded" /> + </xs:sequence> + <!-- Erweiterung UR --> + <xs:attributeGroup ref="uri:VollzugAttributes" /> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + + + <xs:complexType name="PersonenNameTyp"> + <xs:annotation> + <xs:documentation>entspricht NameType</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="Vorname" type="xs:string" minOccurs="1" + maxOccurs="1" /> + <xs:element name="Familienname" minOccurs="1" maxOccurs="1"> + <xs:complexType> + <xs:simpleContent> + <xs:extension base="xs:string"> + <xs:attribute name="primaer" default="undefiniert"> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="wahr" /> + <xs:enumeration value="falsch" /> + <xs:enumeration value="undefiniert" /> + </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:complexType> + <xs:simpleContent> + <xs:extension base="xs:string"> + <xs:attribute name="typ" use="optional"> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:enumeration value="akademischerGrad" /> + <xs:enumeration value="Adelstitel" /> + <xs:enumeration value="FamiliennamenAffix" /> + <xs:enumeration value="Anrede" /> + <xs:enumeration value="Generation" /> + <xs:enumeration value="Qualifikation" /> + </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="AbstractAddressType"> + <xs:annotation> + <xs:documentation>Struktur des Abstrakten Address Elements + </xs:documentation> + </xs:annotation> + + <xs:attribute name="Id" type="xs:ID" use="optional" /> + </xs:complexType> + + + + <xs:complexType name="TypisiertePostAdresseTyp"> + <xs:annotation> + <xs:documentation>entspricht TypedPostalAddressType + </xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="AbstractAddressType"> + <xs:sequence minOccurs="0"> + <xs:element ref="PostAdresse" /> + <!-- Erweiterung UR --> + <xs:element ref="uri:Typ" minOccurs="1" maxOccurs="1" /> + </xs:sequence> + <!-- Erweiterung UR --> + <xs:attributeGroup ref="uri:VollzugAttributes" /> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + + <xs:complexType name="PostAdresseTyp"> + <xs:annotation> + <xs:documentation>entspricht PostalAddressType</xs:documentation> + </xs:annotation> + <xs:complexContent> + <xs:extension base="AbstractAddressType"> + <xs:sequence> + <xs:element name="Staatscode" minOccurs="0"> + <xs:annotation> + <xs:documentation>Staatencode, ISO Code oder internationaler Post + code, entspricht CountryCode</xs:documentation> + </xs:annotation> + <xs:simpleType> + <xs:restriction base="xs:string"> + <xs:pattern value="[A-Z]{3}" /> + </xs:restriction> + </xs:simpleType> + </xs:element> + <xs:element name="Postleitzahl" type="xs:token" + minOccurs="0"> + <xs:annotation> + <xs:documentation>entspricht PostalCode</xs:documentation> + </xs:annotation> + </xs:element> + + <xs:element name="Gemeinde" type="xs:string" minOccurs="0"> + <xs:annotation> + <xs:documentation>entspricht Municipality</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Gemeindekennziffer" minOccurs="0" /> + <xs:element name="Ortschaft" type="xs:token" minOccurs="0" /> + <xs:element name="Zustelladresse" minOccurs="0"> + <xs:annotation> + <xs:documentation>Zustelladresse oder ZMRAdresse, entspricht + DeliveryAddress</xs:documentation> + </xs:annotation> + <xs:complexType> + <xs:sequence> + <xs:element name="Strassenname" type="xs:string" + minOccurs="0"> + <xs:annotation> + <xs:documentation>Bei Ortschaften ohne Straßenname steht hier + Ortschaftsname, entspricht StreetName</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="Orientierungsnummer" type="xs:string" + minOccurs="0"> + <xs:annotation> + <xs:documentation>Hausnummer oder Konskriptionsnummer, z.B. + 10, 124a, 78-80. Entpricht BuildingNumber</xs:documentation> + </xs:annotation> + </xs:element> + <xs:element name="AdressRegisterEintrag" minOccurs="0"> + <xs:annotation> + <xs:documentation>Addressregister database keys used to identify Addresses</xs:documentation> + </xs:annotation> + <xs:complexType> + <xs:sequence> + <xs:element name="Adresscode" type="string7"/> + <xs:element name="Subcode" type="string3" minOccurs="0"/> + <xs:element name="Objektnummer" type="string7" minOccurs="0"/> + </xs:sequence> + </xs:complexType> + </xs:element> + </xs:sequence> + </xs:complexType> + </xs:element> + </xs:sequence> + </xs:extension> + </xs:complexContent> + </xs:complexType> + + + + <!-- ### auxiliary types ### --> + <xs:simpleType name="GeburtsdatumTyp"> + <xs:annotation> + <xs:documentation>einfacher Datentyp für Daten (union): Tag und/oder + Monta können ausgelassen werden, entspricht DayOfBirthType + </xs:documentation> + </xs:annotation> + <xs:union memberTypes="xs:date xs:gYearMonth xs:gYear" /> + </xs:simpleType> + + <!-- ### strings of defined maximum lenght for use with ZMR address #### --> + <xs:simpleType name="string3"> + <xs:restriction base="xs:string"> + <xs:maxLength value="3"/> + </xs:restriction> + </xs:simpleType> + <xs:simpleType name="string7"> + <xs:restriction base="xs:string"> + <xs:maxLength value="7"/> + </xs:restriction> + </xs:simpleType> + +</xs:schema> diff --git a/src/main/resources/wsdl/ERsB/1.1/schema/ersb-types.xsd b/src/main/resources/wsdl/ERsB/1.1/schema/ersb-types.xsd new file mode 100644 index 0000000..882d16a --- /dev/null +++ b/src/main/resources/wsdl/ERsB/1.1/schema/ersb-types.xsd @@ -0,0 +1,62 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!-- + 2012-10-17 sml V0.0.3 ErsbRequest um Attribut Id erweitert, ErsbResponse: Kardinalität zu Personendaten von 0:1 auf 0:n geändert. + 2012-10-08 sml V0.0.2 aktion ohne defaulting + 2012-06-21 sml V0.0.1 Ersterstellung +--> + +<xsd:schema targetNamespace="http://statistik.at/namespace/ersb/1#" + xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:ersb="http://statistik.at/namespace/ersb/1#" + xmlns:pd="http://reference.e-government.gv.at/namespace/persondata/de/20040201#" + xmlns:pdersb="http://statistik.at/namespace/ersb/persondata/1#" + elementFormDefault="qualified"> + + <xsd:import namespace="http://reference.e-government.gv.at/namespace/persondata/de/20040201#" + schemaLocation="PersonData_URSuche.xsd" /> + + + <xsd:import namespace="http://statistik.at/namespace/ersb/persondata/1#" + schemaLocation="PersonData_Ersb.xsd" /> + + + <xsd:include schemaLocation="ur-basicTypesErsb.xsd" /> + + <xsd:element name="ErsbRequest" type="ersb:ErsbRequest" /> + <xsd:element name="ErsbResponse" type="ersb:ErsbResponse" /> + + <xsd:complexType name="ErsbRequest"> + <xsd:sequence> + <xsd:element name="PersonenDaten" type="pdersb:PersonenDatenTyp" + minOccurs="1" maxOccurs="1" /> + </xsd:sequence> + <xsd:attribute name="id" type="xsd:integer" use="optional" /> + </xsd:complexType> + + <!-- Responseelemente --> + <xsd:complexType name="ErsbResponse"> + <xsd:sequence> + <xsd:element name="returncode" type="xsd:int" /> + <xsd:element name="statustext" type="xsd:string" minOccurs="0" maxOccurs="1" /> + <xsd:element name="PersonenDaten" type="pd:PersonenDatenTyp" + minOccurs="0" maxOccurs="unbounded" /> + </xsd:sequence> + <xsd:attribute name="id" type="xsd:integer" use="optional" /> + </xsd:complexType> + + + <xsd:attribute name="aktion"> + <xsd:simpleType> + <xsd:restriction base="xsd:string"> + <xsd:enumeration value="ALT"></xsd:enumeration> + <xsd:enumeration value="NEU"></xsd:enumeration> + </xsd:restriction> + </xsd:simpleType> + </xsd:attribute> + + <xsd:attributeGroup name="ErsbAttributes"> + <xsd:attribute ref="ersb:aktion" use="optional"/> + </xsd:attributeGroup> + +</xsd:schema> diff --git a/src/main/resources/wsdl/ERsB/1.1/schema/specific/CustomFault.xsd b/src/main/resources/wsdl/ERsB/1.1/schema/specific/CustomFault.xsd new file mode 100644 index 0000000..c73d667 --- /dev/null +++ b/src/main/resources/wsdl/ERsB/1.1/schema/specific/CustomFault.xsd @@ -0,0 +1,18 @@ +<?xml version="1.0" encoding="UTF-8"?> +<xs:schema elementFormDefault="qualified" xmlns:xs="http://www.w3.org/2001/XMLSchema"> + + <xs:element name="Message" type="CustomFaultType"/> + + <xs:complexType name="CustomFaultType" final="extension"> + <xs:annotation> + <xs:documentation>CustomFault reporting structure</xs:documentation> + </xs:annotation> + <xs:sequence> + <xs:element name="Code" type="xs:integer"/> + <xs:element name="Reason" type="xs:string" maxOccurs="unbounded"/> + <xs:element name="Help" type="xs:string" minOccurs="0"/> + <xs:element name="Detail" type="xs:anyType" minOccurs="0"/> + </xs:sequence> + </xs:complexType> + +</xs:schema> diff --git a/src/main/resources/wsdl/ERsB/1.1/schema/ur-basicTypes.xsd b/src/main/resources/wsdl/ERsB/1.1/schema/ur-basicTypes.xsd new file mode 100644 index 0000000..13081bb --- /dev/null +++ b/src/main/resources/wsdl/ERsB/1.1/schema/ur-basicTypes.xsd @@ -0,0 +1,309 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!-- + 2013-03-14 sml V0.1.3 FktRegelTyp: alle Elemente auf minOccurs=0 geändert + 2013-03-05 sml V0.1.2 Erweiterung Taetigkeitszeitraum analog zu Bestandszeitraum + 2013-01-23 sml V0.1.1 Bestandszeitraum BestandVon auf minOccurs=0 geändert + 2012-11-20 sml V0.1.0 Erweiterung Rechtsform: ReFormExtern auf numerischen RechtsformTyp geändert, ReFormExternText für Text hinzugefügt + 2012-10-15 sml V0.0.9 Typo Vetretung => Vertretung + 2012-10-12 sml V0.0.8 Kardinalität Funktion <==> Rechtstatsache von 0:1 auf 0:n geändert + 2012-09-19 sml V0.0.7 FktRegelTyp: FktRegelBis minOccurs von 1 auf 0 geändert + 2012-07-31 sml V0.0.6 Entfernung aller any-Attribute; Umbau auf Vererbung mit VollzugsAttributen + 2012-06-21 sml V0.0.5 Aufsplittung auf ur_basic_types.xsd und ur_suche.xsd + Erweiterung der Merkmalsgruppen um any-Attribute + 2012-06-15 sml V0.0.4 Erweiterung AdressTyp (simple) um ZUSTELLADRESSE + Anpasssung vollzugBeginn und vollzugEnde auf IDREFs + Branche um Beginn und Ende (Quelle) erweitert. + 2012-06-14 hoa Vollzugsreferenzen als Attribute, + Ergängzung ERsB Attribute (Bestandszeitraum, Bestandsnachweis, Vertretung, Rechtstatsachen) + Erweiterung der SimpleTypes: AktionTyp, RT_Nummer, RT_Code + 2012-06-12 sml V0.0.2 Erweiterung SimpleTypes: AdressTyp, EvbStatusTyp + Erweiterung Elemente: VollzugGroup für vollziehbare Merkmalsgruppen + VollzugElem für die Quellinfo + Einbau ID/IDREF für Vollzug (VollzugRef) + Typ (AdressTyp) und EvbStatus (EvbStausTyp) + 2012-06-04 hoa V0.0.1 Entwurf +--> + +<xsd:schema targetNamespace="http://statistik.at/namespace/ur/stammdaten/2#" + xmlns:std="http://statistik.at/namespace/ur/stammdaten/2#" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:st="http://statistik.at/namespace/ur/simpleTypes/2#" + elementFormDefault="qualified"> + + <xsd:import namespace="http://statistik.at/namespace/ur/simpleTypes/2#" + schemaLocation="ur-simpleTypes.xsd" /> + + + + + + + <!-- Responseelemente --> + + <xsd:attribute name="vollzugBeginn" type="xsd:IDREF" /> + <xsd:attribute name="vollzugEnde" type="xsd:IDREF" /> + + <xsd:attributeGroup name="VollzugAttributes"> + <xsd:attribute ref="std:vollzugBeginn" use="optional" /> + <xsd:attribute ref="std:vollzugEnde" use="optional"/> + </xsd:attributeGroup> + + <xsd:element name="Beginn" type="std:QuellenType"/> + <xsd:element name="Ende" type="std:QuellenType"/> + <xsd:element name="Vollzug" type="std:Vollzug" /> + + <xsd:element name="TypeText" type="xsd:string" /> + <xsd:element name="UntName" type="std:UntNameVollzug" /> + <xsd:element name="Rechtsform" type="std:RechtsformVollzug" /> + <xsd:element name="Bestandszeitraum" type="std:BestandszeitraumVollzug" /> + <xsd:element name="Taetigkeitszeitraum" type="std:TaetigkeitszeitraumVollzug" /> + <xsd:element name="Bestandsnachweis" type="std:BestandsnachweisVollzug" /> + <xsd:element name="Vertretung" type="std:VertretungVollzug" /> + <xsd:element name="Rechtstatsachen" type="std:RechtstatsachenVollzug" /> + <xsd:element name="Funktion" type="std:FunktionVollzug" /> + <xsd:element name="Branche" type="std:Branche" /> + <xsd:element name="AendDat" type="xsd:dateTime" /> + <xsd:element name="bpkWTUR" type="xsd:string" /> + <xsd:element name="Typ" type="st:AdressTyp" /> + <xsd:element name="EvbStatus" type="st:EvbStatusTyp" /> + + <xsd:complexType name="UntName" abstract="true"> + <xsd:sequence> + <xsd:element name="VollerName" type="st:UntNameTyp" + minOccurs="1" maxOccurs="1" /> + </xsd:sequence> + </xsd:complexType> + + + <xsd:complexType name="UntNameVollzug"> + <xsd:complexContent> + <xsd:extension base="std:UntName"> + <!-- Vollzug Attribute --> + <xsd:attributeGroup ref="std:VollzugAttributes" /> + </xsd:extension> + </xsd:complexContent> + </xsd:complexType> + + + <xsd:complexType name="Rechtsform" abstract="true"> + <xsd:sequence> + <xsd:element name="ReForm" type="st:RechtsformTyp" + minOccurs="0" maxOccurs="1" /> + <xsd:element name="ReFormText" type="st:RechtsformTextTyp" + minOccurs="0" maxOccurs="1" /> + <xsd:element name="ReFormExtern" type="st:RechtsformTyp" + minOccurs="1" maxOccurs="1" /> + <xsd:element name="ReFormExternText" type="st:RechtsformTextTyp" + minOccurs="0" maxOccurs="1" /> + </xsd:sequence> + </xsd:complexType> + + + <xsd:complexType name="RechtsformVollzug"> + <xsd:complexContent> + <xsd:extension base="std:Rechtsform"> + <!-- Vollzug Attribute --> + <xsd:attributeGroup ref="std:VollzugAttributes" /> + </xsd:extension> + </xsd:complexContent> + </xsd:complexType> + + + <xsd:complexType name="Bestandszeitraum" abstract="true"> + <xsd:sequence> + <xsd:element name="BestandVon" type="xsd:date" + minOccurs="0" maxOccurs="1" /> + <xsd:element name="BestandBis" type="xsd:date" + minOccurs="0" maxOccurs="1" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="BestandszeitraumVollzug"> + <xsd:complexContent> + <xsd:extension base="std:Bestandszeitraum"> + <!-- Vollzug Attribute --> + <xsd:attributeGroup ref="std:VollzugAttributes" /> + </xsd:extension> + </xsd:complexContent> + </xsd:complexType> + + <xsd:complexType name="Taetigkeitszeitraum" abstract="true"> + <xsd:sequence> + <xsd:element name="TaetigVon" type="xsd:date" + minOccurs="0" maxOccurs="1" /> + <xsd:element name="TaetigBis" type="xsd:date" + minOccurs="0" maxOccurs="1" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="TaetigkeitszeitraumVollzug"> + <xsd:complexContent> + <xsd:extension base="std:Taetigkeitszeitraum"> + <!-- Vollzug Attribute --> + <xsd:attributeGroup ref="std:VollzugAttributes" /> + </xsd:extension> + </xsd:complexContent> + </xsd:complexType> + + <xsd:complexType name="Bestandsnachweis" abstract="true"> + <xsd:simpleContent> + <xsd:extension base="xsd:string"> + </xsd:extension> + </xsd:simpleContent> + </xsd:complexType> + + <xsd:complexType name="BestandsnachweisVollzug"> + <xsd:complexContent> + <xsd:extension base="std:Bestandsnachweis"> + <!-- Vollzug Attribute --> + <xsd:attributeGroup ref="std:VollzugAttributes" /> + </xsd:extension> + </xsd:complexContent> + </xsd:complexType> + + + <xsd:complexType name="Vertretung" abstract="true"> + <xsd:simpleContent> + <xsd:extension base="xsd:string"> + </xsd:extension> + </xsd:simpleContent> + </xsd:complexType> + + <xsd:complexType name="VertretungVollzug"> + <xsd:complexContent> + <xsd:extension base="std:Vertretung"> + <!-- Vollzug Attribute --> + <xsd:attributeGroup ref="std:VollzugAttributes" /> + </xsd:extension> + </xsd:complexContent> + </xsd:complexType> + + <xsd:complexType name="Rechtstatsachen" abstract="true"> + <xsd:sequence> + <xsd:element name="RT_Nummer" type="st:RT_NummerTyp" + minOccurs="0" maxOccurs="1" /> + <xsd:element name="RT_Code" type="st:RT_CodeTyp" + minOccurs="0" maxOccurs="1" /> + <xsd:element name="RT_Text" type="xsd:string" + minOccurs="0" maxOccurs="1" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="RechtstatsachenVollzug"> + <xsd:complexContent> + <xsd:extension base="std:Rechtstatsachen"> + <!-- Vollzug Attribute --> + <xsd:attributeGroup ref="std:VollzugAttributes" /> + </xsd:extension> + </xsd:complexContent> + </xsd:complexType> + + + <xsd:complexType name="Vollzug"> + <xsd:sequence> + <xsd:element name="Antrag" type="std:VollzugElem" minOccurs="1" maxOccurs="1" /> + <xsd:element name="Vollzug" type="std:VollzugElem" minOccurs="0" maxOccurs="1" /> + <xsd:element name="Zurueckstellung" type="std:VollzugElem" minOccurs="0" maxOccurs="1" /> + </xsd:sequence> + <xsd:attribute name="id" type="xsd:ID" use="required" /> + <xsd:attribute name="nummer" type="xsd:integer" use="required" /> + <xsd:attribute name="status" type="st:VollzugStatusTyp" use="required" /> + </xsd:complexType> + + <xsd:complexType name="VollzugElem"> + <xsd:simpleContent> + <xsd:extension base="xsd:date"> + <xsd:attribute name="quelle" type="st:QuelleTyp" use="required" /> + <xsd:attribute name="quText" use="required" /> + </xsd:extension> + </xsd:simpleContent> + </xsd:complexType> + + <xsd:complexType name="QuellenType"> + <xsd:simpleContent> + <xsd:extension base="xsd:date"> + <xsd:attribute name="quelle" type="st:QuelleTyp" use="required"/> + <xsd:attribute name="quText" use="required"/> + </xsd:extension> + </xsd:simpleContent> + </xsd:complexType> + + <xsd:complexType name="Funktion" abstract="true"> + <xsd:sequence> + <xsd:element name="FktName" type="st:FunktionTyp" + minOccurs="1" maxOccurs="1" /> + <xsd:element name="FktNameText" type="st:FunktionTextTyp" + minOccurs="0" maxOccurs="1" /> + + <!-- + <xsd:element name="FktRegel" type="std:FktRegelTyp" + minOccurs="0" maxOccurs="1" /> + <xsd:element name="Rechtstatsachen" type="std:Rechtstatsachen" + minOccurs="0" maxOccurs="1" /> + --> + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="FunktionVollzug"> + <xsd:complexContent> + <xsd:extension base="std:Funktion"> + <xsd:sequence> + <xsd:element name="FktRegel" type="std:FktRegelTypVollzug" + minOccurs="0" maxOccurs="1" /> + <xsd:element name="Rechtstatsachen" type="std:RechtstatsachenVollzug" + minOccurs="0" maxOccurs="unbounded" /> + </xsd:sequence> + <xsd:attributeGroup ref="std:VollzugAttributes" /> + </xsd:extension> + + </xsd:complexContent> + </xsd:complexType> + + + + <xsd:complexType name="FktRegelTyp" abstract="true"> + <xsd:sequence> + <xsd:element name="FktRegelVon" type="xsd:date" + minOccurs="0" maxOccurs="1" /> + <xsd:element name="FktRegelBis" type="xsd:date" + minOccurs="0" maxOccurs="1" /> + <xsd:element name="FktRegelText" type="st:FktRegelTextTyp" + minOccurs="0" maxOccurs="1" /> + </xsd:sequence> + </xsd:complexType> + + <xsd:complexType name="FktRegelTypVollzug"> + <xsd:complexContent> + <xsd:extension base="std:FktRegelTyp"> + <!-- Vollzug Attribute --> + <xsd:attributeGroup ref="std:VollzugAttributes" /> + </xsd:extension> + </xsd:complexContent> + </xsd:complexType> + + + <xsd:complexType name="Branche"> + <xsd:sequence> + <xsd:element name="Oenace" type="std:OenaceType" + minOccurs="1" maxOccurs="1" /> + <xsd:element name="OenaceText" type="xsd:string" + minOccurs="1" maxOccurs="1" /> + <xsd:element name="Beginn" type="std:QuellenType" + minOccurs="1" maxOccurs="1"/> + <xsd:element name="Ende" type="std:QuellenType" + minOccurs="0" maxOccurs="1"/> + </xsd:sequence> + <xsd:attribute name="art" type="st:OenaceArtTyp" use="required" /> + </xsd:complexType> + + + <xsd:complexType name="OenaceType"> + <xsd:simpleContent> + <xsd:extension base="st:OenaceCodeTyp"> + <xsd:attribute name="jahr" type="st:OenaceJahrTyp" + use="required" /> + </xsd:extension> + </xsd:simpleContent> + </xsd:complexType> + +</xsd:schema> diff --git a/src/main/resources/wsdl/ERsB/1.1/schema/ur-basicTypesErsb.xsd b/src/main/resources/wsdl/ERsB/1.1/schema/ur-basicTypesErsb.xsd new file mode 100644 index 0000000..93b9bbf --- /dev/null +++ b/src/main/resources/wsdl/ERsB/1.1/schema/ur-basicTypesErsb.xsd @@ -0,0 +1,133 @@ +<?xml version="1.0" encoding="UTF-8" ?> +<!-- + 2012-10-15 sml V0.0.4 Typo Vertretung => Vertretung + 2012-10-12 sml V0.0.3 Kardinalität Funktion <==> Rechtstatsache von 0:1 auf 0:n geändert + 2012-10-12 sml V0.0.2 FunktionErsb: Ausbesserung auf ersb:RechtstatsachenErsb + 2012-08-06 sml V0.0.1 Entwurf +--> + +<xsd:schema targetNamespace="http://statistik.at/namespace/ersb/1#" + xmlns:std="http://statistik.at/namespace/ur/stammdaten/2#" + xmlns:xsd="http://www.w3.org/2001/XMLSchema" + xmlns:ersb="http://statistik.at/namespace/ersb/1#" + xmlns:st="http://statistik.at/namespace/ur/simpleTypes/2#" + elementFormDefault="qualified"> + +<!-- + <xsd:import namespace="http://statistik.at/namespace/ur/simpleTypes/2#" + schemaLocation="ur-simpleTypes.xsd" /> + --> + <xsd:import namespace="http://statistik.at/namespace/ur/stammdaten/2#" + schemaLocation="ur-basicTypes.xsd" /> + + <xsd:include schemaLocation="ersb-types.xsd" /> + + + <!-- Responseelemente --> + <!-- + <xsd:element name="TypeText" type="xsd:string" /> + <xsd:element name="Branche" type="std:Branche" /> + <xsd:element name="AendDat" type="xsd:dateTime" /> + <xsd:element name="bpkWTUR" type="xsd:string" /> + <xsd:element name="Typ" type="st:AdressTyp" /> + <xsd:element name="EvbStatus" type="st:EvbStatusTyp" /> + + --> + <xsd:element name="UntName" type="ersb:UntNameErsb" /> + <xsd:element name="Rechtsform" type="ersb:RechtsformErsb" /> + <xsd:element name="Bestandszeitraum" type="ersb:BestandszeitraumErsb" /> + <xsd:element name="Bestandsnachweis" type="ersb:BestandsnachweisErsb" /> + <xsd:element name="Vertretung" type="ersb:VertretungErsb" /> + <xsd:element name="Rechtstatsachen" type="ersb:RechtstatsachenErsb" /> + <xsd:element name="Funktion" type="ersb:FunktionErsb" /> + + <!-- Beginn- und Endedatum für IdentificationType --> + <xsd:element name="Beginn" type="xsd:date" /> + <xsd:element name="Ende" type="xsd:date" /> + + + <!-- complex data types --> + <xsd:complexType name="UntNameErsb"> + <xsd:complexContent> + <xsd:extension base="std:UntName"> + <!-- Ersb Attribute --> + <xsd:attributeGroup ref="ersb:ErsbAttributes" /> + </xsd:extension> + </xsd:complexContent> + </xsd:complexType> + + <xsd:complexType name="RechtsformErsb"> + <xsd:complexContent> + <xsd:extension base="std:Rechtsform"> + <!-- Ersb Attribute --> + <xsd:attributeGroup ref="ersb:ErsbAttributes" /> + </xsd:extension> + </xsd:complexContent> + </xsd:complexType> + + <xsd:complexType name="BestandszeitraumErsb"> + <xsd:complexContent> + <xsd:extension base="std:Bestandszeitraum"> + <!-- Ersb Attribute --> + <xsd:attributeGroup ref="ersb:ErsbAttributes" /> + </xsd:extension> + </xsd:complexContent> + </xsd:complexType> + + + <xsd:complexType name="BestandsnachweisErsb"> + <xsd:complexContent> + <xsd:extension base="std:Bestandsnachweis"> + <!-- Ersb Attribute --> + <xsd:attributeGroup ref="ersb:ErsbAttributes" /> + </xsd:extension> + </xsd:complexContent> + </xsd:complexType> + + + <xsd:complexType name="VertretungErsb"> + <xsd:complexContent> + <xsd:extension base="std:Vertretung"> + <!-- Ersb Attribute --> + <xsd:attributeGroup ref="ersb:ErsbAttributes" /> + </xsd:extension> + </xsd:complexContent> + </xsd:complexType> + + + + <xsd:complexType name="RechtstatsachenErsb"> + <xsd:complexContent> + <xsd:extension base="std:Rechtstatsachen"> + <!-- Ersb Attribute --> + <xsd:attributeGroup ref="ersb:ErsbAttributes" /> + </xsd:extension> + </xsd:complexContent> + </xsd:complexType> + + <xsd:complexType name="FunktionErsb"> + <xsd:complexContent> + <xsd:extension base="std:Funktion"> + <xsd:sequence> + <xsd:element name="FktRegel" type="ersb:FktRegelTypErsb" + minOccurs="0" maxOccurs="1" /> + <xsd:element name="Rechtstatsachen" type="ersb:RechtstatsachenErsb" + minOccurs="0" maxOccurs="unbounded" /> + </xsd:sequence> + <!-- Ersb Attribute --> + <xsd:attributeGroup ref="ersb:ErsbAttributes" /> + </xsd:extension> + + </xsd:complexContent> + </xsd:complexType> + + <xsd:complexType name="FktRegelTypErsb"> + <xsd:complexContent> + <xsd:extension base="std:FktRegelTyp"> + <!-- Ersb Attribute --> + <xsd:attributeGroup ref="ersb:ErsbAttributes" /> + </xsd:extension> + </xsd:complexContent> + </xsd:complexType> + +</xsd:schema> diff --git a/src/main/resources/wsdl/ERsB/1.1/schema/ur-simpleTypes.xsd b/src/main/resources/wsdl/ERsB/1.1/schema/ur-simpleTypes.xsd new file mode 100644 index 0000000..7533ead --- /dev/null +++ b/src/main/resources/wsdl/ERsB/1.1/schema/ur-simpleTypes.xsd @@ -0,0 +1,443 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!-- + 2012-11-19 V0.0.2 sml minInclusive von RechtsformTyp und FunktionTyp auf 0 geändert. + 2012-08-07 V0.0.1 sml AktionTyp entfernt +--> + +<schema targetNamespace="http://statistik.at/namespace/ur/simpleTypes/2#" + version="1.0" xmlns:tns="http://statistik.at/namespace/ur/simpleTypes/2#" + xmlns="http://www.w3.org/2001/XMLSchema" + elementFormDefault="qualified"> + + <!-- ******************************************************************************* --> + <!-- Allegemeine Typen --> + <!-- ******************************************************************************* --> + + <simpleType name="VersionTyp"> + <annotation> + <documentation> + Versionsnummer + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="10" /> + </restriction> + </simpleType> + + <simpleType name="QuelleTyp"> + <annotation> + <documentation> + Identifikationsnummer eines Quellregisters + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="10" /> + </restriction> + </simpleType> + + <simpleType name="VollzugStatusTyp"> + <annotation> + <documentation> + Status des Vollzugsobjektes + </documentation> + </annotation> + <restriction base="string"> + <enumeration value="A" /> + <enumeration value="V" /> + <enumeration value="Z" /> + </restriction> + </simpleType> + + <simpleType name="ErgebnisVollzugStatusTyp"> + <annotation> + <documentation> + Im Ergebnis berücksichtigte Status des Vollzugsobjektes + </documentation> + </annotation> + <restriction base="string"> + <enumeration value="V" /> + <enumeration value="AZV" /> + </restriction> + </simpleType> + +<!-- + <simpleType name="AktionTyp"> + <annotation> + <documentation> + Unterscheidung zwischen zu beendenden und neu anzulegenden Merkmalsgruppen + </documentation> + </annotation> + <restriction base="string"> + <enumeration value="NEU" /> + <enumeration value="ALT" /> + </restriction> + </simpleType> + --> + + <!-- ******************************************************************************* --> + <!-- Typen für Unternehmensmerkmale --> + <!-- ******************************************************************************* --> + + <simpleType name="KurTyp"> + <annotation> + <documentation> + UR Kennziffer eines Unternehmens + </documentation> + </annotation> + <restriction base="string"> + <pattern value="R[0-9]{3}[A-Z][0-9]{3}[A-Z0-9]"/> + <length value="9"/> + </restriction> + </simpleType> + + <simpleType name="FbnTyp"> + <annotation> + <documentation> + Firmenbuchnummer + </documentation> + </annotation> + <restriction base="string"> + <pattern value="[0-9]{6}[a-z]"/> + <length value="7"/> + </restriction> + </simpleType> + + <simpleType name="ZvrTyp"> + <annotation> + <documentation> + Vereinsregisternummer + </documentation> + </annotation> + <restriction base="string"> + <pattern value="[0-9]{9}"/> + <length value="9"/> + </restriction> + </simpleType> + + <simpleType name="ErjTyp"> + <annotation> + <documentation> + Ordnungsnummer aus dem ERsB + </documentation> + </annotation> + <restriction base="string"> + <pattern value="[0-9]{13}"/> + <length value="13"/> + </restriction> + </simpleType> + + <simpleType name="UntNameTyp"> + <annotation> + <documentation> + Bezeichnung eines Unternehmens + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="255" /> + </restriction> + </simpleType> + + <simpleType name="BpkTyp"> + <annotation> + <documentation> + unverschlüsseltes bPK + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="28" /> + </restriction> + </simpleType> + + <simpleType name="BpkEncodedTyp"> + <annotation> + <documentation> + verschlüsseltes bPK (base64 codiert) + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="172" /> + </restriction> + </simpleType> + + <simpleType name="RechtsformTyp"> + <annotation> + <documentation> + Rechtsformcode eines Unternehmens + </documentation> + </annotation> + <restriction base="integer"> + <minInclusive value="0" /> + <maxInclusive value="9999" /> + </restriction> + </simpleType> + + <simpleType name="RechtsformTextTyp"> + <annotation> + <documentation> + Langtext der Rechtsform eines Unternehmens + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="100" /> + </restriction> + </simpleType> + + <simpleType name="IdArtTyp"> + <annotation> + <documentation> + Art eines externen Schlüssels + </documentation> + </annotation> + <restriction base="string"> + <length value="3" /> + </restriction> + </simpleType> + + <simpleType name="IdTyp"> + <annotation> + <documentation> + Wert eines externen Schlüssels + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="60" /> + </restriction> + </simpleType> + + <simpleType name="OenaceJahrTyp"> + <annotation> + <documentation> + Jahr des ÖNACE-Systems + </documentation> + </annotation> + <restriction base="integer"> + <enumeration value="2008" /> + <minInclusive value="1000" /> + <maxInclusive value="9999" /> + </restriction> + </simpleType> + + <simpleType name="OenaceCodeTyp"> + <annotation> + <documentation> + ÖNACE - Branchenkennzahl + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="10" /> + </restriction> + </simpleType> + + <simpleType name="OenaceArtTyp"> + <annotation> + <documentation> + Art der ÖNACE (Haupt-/Nebentätigkeit) + </documentation> + </annotation> + <restriction base="string"> + <enumeration value="H" /> + <enumeration value="N" /> + </restriction> + </simpleType> + + <simpleType name="RT_NummerTyp"> + <annotation> + <documentation> + Rechtstatsachen-Nummer + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="3" /> + </restriction> + </simpleType> + + <simpleType name="RT_CodeTyp"> + <annotation> + <documentation> + Rechtstatsachen-Code + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="4" /> + </restriction> + </simpleType> + + <!-- ******************************************************************************* --> + <!-- Typen für Adressmerkmale --> + <!-- ******************************************************************************* --> + + <simpleType name="StrasseTyp"> + <annotation> + <documentation> + Strassenname + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="100" /> + </restriction> + </simpleType> + + <simpleType name="HNrTyp"> + <annotation> + <documentation> + Hausnummer + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="100" /> + </restriction> + </simpleType> + + <simpleType name="PlzTyp"> + <annotation> + <documentation> + Postleitzahl + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="10" /> + </restriction> + </simpleType> + + <simpleType name="OrtTyp"> + <annotation> + <documentation> + Ortsname + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="50" /> + </restriction> + </simpleType> + + <simpleType name="GemnrTyp"> + <annotation> + <documentation> + Gemeindekennziffer + </documentation> + </annotation> + <restriction base="integer"> + <minInclusive value="10000" /> + <maxInclusive value="99999" /> + </restriction> + </simpleType> + + <simpleType name="LandTyp"> + <annotation> + <documentation> + Landescode gem. ISO 3166 ALPHA-3 + </documentation> + </annotation> + <restriction base="string"> + <length value="3" /> + </restriction> + </simpleType> + + <simpleType name="AdressTyp"> + <annotation> + <documentation> + AdressTyp + </documentation> + </annotation> + <restriction base="string"> + <enumeration value="SITZ"/> + <enumeration value="ZUSTELLADRESSE"/> + </restriction> + </simpleType> + + <!-- ******************************************************************************* --> + <!-- Typen für Personenmerkmale --> + <!-- ******************************************************************************* --> + + <simpleType name="NachnameTyp"> + <annotation> + <documentation> + Nachname der vertretungsbefugten Person + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="100" /> + </restriction> + </simpleType> + + <simpleType name="VornameTyp"> + <annotation> + <documentation> + Vorname der vertretungsbefugten Person + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="100" /> + </restriction> + </simpleType> + + <simpleType name="TitelTyp"> + <annotation> + <documentation> + Titel der vertretungsbefugten Person + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="50" /> + </restriction> + </simpleType> + + <simpleType name="FunktionTyp"> + <annotation> + <documentation> + Funktionscode der vertretungsbefugten Person + </documentation> + </annotation> + <restriction base="integer"> + <minInclusive value="0" /> + <maxInclusive value="9999" /> + </restriction> + </simpleType> + + <simpleType name="FunktionTextTyp"> + <annotation> + <documentation> + Funktionsbezeichnung der vertretungsbefugten Person + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="100" /> + </restriction> + </simpleType> + + <simpleType name="FktRegelTextTyp"> + <annotation> + <documentation> + Funktionsregeltext für vertretungsbefugte Person + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="2000" /> + </restriction> + </simpleType> + + + <simpleType name="VertretungsbefugnisTyp"> + <annotation> + <documentation> + Art der Vertretungsbefugnis + </documentation> + </annotation> + <restriction base="string"> + <maxLength value="40" /> + </restriction> + </simpleType> + + <simpleType name="EvbStatusTyp"> + <annotation> + <documentation> + Einzelvertretungsbefugnis + </documentation> + </annotation> + <restriction base="string"> + <enumeration value="J" /> + <enumeration value="N" /> + <enumeration value="U" /> + </restriction> + </simpleType> +</schema>
\ No newline at end of file |