<?xml version="1.0" encoding="UTF-8"?>
<!-- Copyright 2004 The Apache Software Foundation

     Licensed under the Apache License, Version 2.0 (the "License");
     you may not use this file except in compliance with the License.
     You may obtain a copy of the License at

         http://www.apache.org/licenses/LICENSE-2.0

     Unless required by applicable law or agreed to in writing, software
     distributed under the License is distributed on an "AS IS" BASIS,
     WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     See the License for the specific language governing permissions and
     limitations under the License. -->

<!-- =======================================================================
 Typdefinitionen für Schnittstellen,
 Namensraum ist:  keins
=======================================================================-->
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" attributeFormDefault="unqualified">
	<!--
	============================================================
	Dokument/Instanz Identifikation
	ID-Elemente identifizieren eindeutig Objekte. Werte zur Identifizierung werden in
	Attribute EX, RT und RTV eingetragen:
	RT-Attribut (Root) enthält eine eindeutige OID des Objekts (Person/Organisation oder
	Schlüsseltabelle ...)
	EX-Attribut (Extension) enthält die Erweiterung zu OID z.B. fortlaufende Nummer,
	oder GUID bei XML-Dokumenten oder kodierten Wert aus der Schlüsseltabelle.
	RTV-Attribut wird bei Referenzierung auf Schlüsseltabellen verwendet. Hier wird
	Schlüsseltabellenversion eingegeben.
	============================================================-->
	<xs:element name="id" type="id_typ">
		<xs:annotation>
			<xs:documentation>enthält eindeutige Instanz-ID</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="id_typ">
		<xs:attribute name="EX" type="xs:string" use="optional"/>
		<xs:attribute name="RT" type="xs:string" use="required"/>
		<xs:attribute name="RTV" type="xs:string" use="optional"/>
	</xs:complexType>
	<xs:complexType name="doc_id_typ">
		<xs:annotation>
			<xs:documentation>ist dem id_typ identisch</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="id_typ"/>
		</xs:complexContent>
	</xs:complexType>
	<xs:element name="set_id" type="id_typ">
		<xs:annotation>
			<xs:documentation>enthält eindeutige Instanz-ID, die über alle Versionen und zusammgengehörende Dokumente konstant bleibt</xs:documentation>
		</xs:annotation>
	</xs:element>
	<!--
	============================================================
	Dokumentenverwaltung
	Die Zuordnung des Dokuments zu einem bestimmten Dokumenttyp wird über
	das Element <document_type_cd> erreicht. Die Dokumente werden mit
	Hilfe der Elemente <id>, <set_id>, <version_nbr> und <document_relationship>
	verwaltet. Mit <document_relationship> wird eine verkettete Liste von Dokumenten
	abgebildet, wie ein Pointer der auf den Vorgänger oder anderes Dokument zeigt.
	============================================================
	-->
	<!-- ************************ version_nbr_typ ********************************* -->
	<xs:element name="version_nbr" type="version_nbr_typ">
		<xs:annotation>
			<xs:documentation>Versionnummer des XML-Dokuments</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="version_nbr_typ">
		<xs:attribute name="V" type="xs:nonNegativeInteger" use="required"/>
	</xs:complexType>
	<!-- ************************ document_relationship_typ ********************************* -->
	<xs:element name="document_relationship" type="document_relationship_typ">
		<xs:annotation>
			<xs:documentation>Beziehung zu anderen Dokumenten ("Anhang", "Ersatz")</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="document_relationship_typ">
		<xs:sequence>
			<xs:element name="document_relationship.type_cd" type="document_relationship.type_cd_typ">
				<xs:annotation>
					<xs:documentation>Art der Dokumentbeziehung ("Anhang", "Ersatz")</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element ref="related_document"/>
			<xs:element ref="local_header" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="document_relationship.type_cd_typ">
		<xs:complexContent>
			<xs:restriction base="v_s_string_typ">
				<xs:attribute name="S" type="xs:string" use="optional" fixed="1.2.276.0.76.5.101"/>
			</xs:restriction>
		</xs:complexContent>
	</xs:complexType>
	<!-- ************************ related_document_typ ********************************* -->
	<xs:element name="related_document" type="related_document_typ">
		<xs:annotation>
			<xs:documentation>Verweis auf das Original/Anhang-Dokument</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="related_document_typ">
		<xs:sequence>
			<xs:element ref="id"/>
			<xs:element ref="set_id" minOccurs="0"/>
			<xs:element ref="version_nbr" minOccurs="0"/>
			<xs:element ref="local_header" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<!-- ************************ document_type_cd_typ ********************************* -->
	<xs:element name="document_type_cd" type="document_type_cd_typ">
		<xs:annotation>
			<xs:documentation>Dokumenttype Code</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="document_type_cd_typ">
		<xs:complexContent>
			<xs:restriction base="v_s_string_typ">
				<xs:attribute name="S" type="xs:string" use="optional" fixed="1.2.276.0.76.5.100"/>
			</xs:restriction>
		</xs:complexContent>
	</xs:complexType>
	<!--
	============================================================
	Zeitangaben:
	service_tmr_typ: Gültigkeitszeitram der Daten (XML-Dokuments).
 	origination_dttm_typ: Erstellungsdatum des XML-Dokuments
	============================================================
	-->
	<!-- ************************ service_tmr_typ ********************************* -->
	<xs:element name="service_tmr" type="service_tmr_typ">
		<xs:annotation>
			<xs:documentation>Gültigkeitszeitraum (date..date)</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="service_tmr_typ">
		<xs:complexContent>
			<xs:extension base="v_zeitraum_typ"/>
		</xs:complexContent>
	</xs:complexType>
	<!-- ************************ origination_dttm_typ ********************************* -->
	<xs:element name="origination_dttm" type="origination_dttm_typ">
		<xs:annotation>
			<xs:documentation>Erstellungsdatum</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="origination_dttm_typ">
		<xs:complexContent>
			<xs:extension base="v_date_typ"/>
		</xs:complexContent>
	</xs:complexType>
	<!--
	============================================================
	Person/Organisation- Angaben:
	intended_recipient_typ: beabsichtigter Empfänger/Zielgruppe.
	originator_typ: Ersteller/Urheber (Person oder Organisationi).
	provider_typ: Sender/Lieferer (Person oder Organisation).
	person_typ: Person
	person_name_typ: Name der Person
	organization_typ: Organisation
	addr_typ: Adersse
	============================================================
	-->
	<!-- ************************ intended_recipient_typ ********************************* -->
	<xs:element name="intended_recipient" type="intended_recipient_typ">
		<xs:annotation>
			<xs:documentation>Empfänger / Zielgruppe der Daten</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="intended_recipient_typ">
		<xs:sequence>
			<xs:element name="intended_recipient.type_cd" type="intended_recipient.type_cd_typ" minOccurs="0"/>
			<xs:element ref="function_cd" minOccurs="0"/>
			<xs:element ref="person" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element ref="organization" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element ref="local_header" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="intended_recipient.type_cd_typ">
		<xs:complexContent>
			<xs:restriction base="v_s_string_typ">
				<xs:attribute name="S" type="xs:string" use="optional" fixed="1.2.276.0.76.5.102"/>
			</xs:restriction>
		</xs:complexContent>
	</xs:complexType>
	<!-- ************************ originator_typ ********************************** -->
	<xs:element name="originator" type="originator_typ">
		<xs:annotation>
			<xs:documentation>Ersteller, Urheber des Dokuments / der Daten</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="originator_typ">
		<xs:sequence>
			<xs:element name="originator.type_cd" type="originator.type_cd_typ" minOccurs="0"/>
			<xs:element ref="function_cd" minOccurs="0"/>
			<xs:element ref="participation_tmr" minOccurs="0"/>
			<xs:element ref="person" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element ref="organization" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element ref="local_header" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="originator.type_cd_typ">
		<xs:complexContent>
			<xs:restriction base="v_s_string_typ">
				<xs:attribute name="S" type="xs:string" use="optional" fixed="1.2.276.0.76.5.103"/>
			</xs:restriction>
		</xs:complexContent>
	</xs:complexType>
	<!-- ************************ provider_typ ********************************** -->
	<xs:element name="provider" type="provider_typ">
		<xs:annotation>
			<xs:documentation>Sender, Lieferant des Dokuments (kann gleichzeitig der Urheber sein)</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="provider_typ">
		<xs:sequence>
			<xs:element name="provider.type_cd" type="provider.type_cd_typ" minOccurs="0"/>
			<xs:element ref="function_cd" minOccurs="0"/>
			<xs:element ref="participation_tmr" minOccurs="0"/>
			<xs:element ref="person" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element ref="organization" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element ref="local_header" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="provider.type_cd_typ">
		<xs:complexContent>
			<xs:restriction base="v_s_string_typ">
				<xs:attribute name="S" type="xs:string" use="optional" fixed="1.2.276.0.76.5.104"/>
			</xs:restriction>
		</xs:complexContent>
	</xs:complexType>
	<xs:element name="function_cd" type="function_cd_typ">
		<xs:annotation>
			<xs:documentation>Funktion/Rolle der Person/Organisation</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="function_cd_typ">
		<xs:complexContent>
			<xs:restriction base="v_s_string_typ">
				<xs:attribute name="S" type="xs:string" use="optional" fixed="1.2.276.0.76.5.105"/>
			</xs:restriction>
		</xs:complexContent>
	</xs:complexType>
	<xs:element name="participation_tmr" type="v_zeitraum_typ">
		<xs:annotation>
			<xs:documentation>Zeitraum/Zeitpunkt der Teilnahme</xs:documentation>
		</xs:annotation>
	</xs:element>
	<!-- ************************ person_typ ********************************** -->
	<xs:element name="person" type="person_typ">
		<xs:annotation>
			<xs:documentation>Person-Daten</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:element name="group" type="group_typ">
		<xs:annotation>
			<xs:documentation>zugehörende Gruppe, Ausprägung (z.B. Augenarzt)</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="group_typ">
		<xs:complexContent>
			<xs:extension base="v_s_string_typ">
				<xs:sequence>
					<xs:element ref="group.type_cd"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:element name="group.type_cd" type="v_s_string_typ">
		<xs:annotation>
			<xs:documentation>Gruppebezeichnung (z.B. Facharztagruppe)</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="person_typ">
		<xs:sequence>
			<xs:element ref="id" minOccurs="0"/>
			<xs:element ref="person_name" minOccurs="0"/>
			<xs:element name="organization.nm" type="v_string_typ" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element ref="addr" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element ref="telecom" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element ref="local_header" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:element name="telecom" type="v_string_typ">
		<xs:annotation>
			<xs:documentation>Telekomunnikation (tel,mail,fax,...)</xs:documentation>
		</xs:annotation>
	</xs:element>
	<!-- ************************ person_name_typ ********************************** -->
	<xs:element name="person_name" type="person_name_typ">
		<xs:annotation>
			<xs:documentation>Name der Person</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="person_name_typ">
		<xs:sequence>
			<xs:element name="nm" type="person_name_nm_typ"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="person_name_nm_typ">
		<xs:choice minOccurs="0" maxOccurs="unbounded">
			<xs:element name="GIV" type="pnxp_string_typ">
				<xs:annotation>
					<xs:documentation>Vorname</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="MID" type="pnxp_string_typ">
				<xs:annotation>
					<xs:documentation>Zusatzname</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="FAM" type="pnxp_string_typ">
				<xs:annotation>
					<xs:documentation>Nachname</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="PFX" type="pnxp_string_typ">
				<xs:annotation>
					<xs:documentation>Titel (Dr.)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="SFX" type="pnxp_string_typ">
				<xs:annotation>
					<xs:documentation>Namenzusatz</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="DEL" type="pnxp_string_typ">
				<xs:annotation>
					<xs:documentation>Trennzeichen</xs:documentation>
				</xs:annotation>
			</xs:element>
		</xs:choice>
	</xs:complexType>
	<!-- ************************ organization_typ ********************************** -->
	<xs:element name="organization" type="organization_typ">
		<xs:annotation>
			<xs:documentation>Organisations-Daten</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="organization_typ">
		<xs:sequence>
			<xs:element ref="id" minOccurs="0"/>
			<xs:element name="organization.nm" type="v_string_typ" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element ref="addr" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element ref="telecom" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element ref="local_header" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<!-- ************************ addr_typ ********************************** -->
	<xs:element name="addr" type="addr_typ">
		<xs:annotation>
			<xs:documentation>Adresse</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="addr_typ">
		<xs:choice minOccurs="0" maxOccurs="unbounded">
			<xs:element name="STR" type="v_string_typ"/>
			<xs:element name="HNR" type="v_string_typ"/>
			<xs:element name="POB" type="v_string_typ"/>
			<xs:element name="ZIP" type="v_string_typ"/>
			<xs:element name="CTY" type="v_string_typ"/>
			<xs:element name="STA" type="v_string_typ"/>
			<xs:element name="CNT" type="v_string_typ"/>
			<xs:element name="ADL" type="v_string_typ"/>
		</xs:choice>
	</xs:complexType>
	<!--
	============================================================
	CDA-Hilfstypen (patient_typ)
	============================================================
	-->
	<xs:element name="patient" type="patient_typ">
		<xs:annotation>
			<xs:appinfo>Patient-Informationen</xs:appinfo>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="patient_typ">
		<xs:sequence>
			<xs:element name="patient.type_cd" type="v_s_string_typ" minOccurs="0"/>
			<xs:element ref="person"/>
			<xs:element name="birth_dttm" type="v_date_typ" minOccurs="0"/>
			<xs:element name="administrative_gender_cd" type="v_s_string_typ" minOccurs="0"/>
			<xs:element ref="local_header" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<!--
	============================================================
	local_header, 	Einzige Stelle, wo eigendefinierte Elemente  und SCIPHOX SSUS
	verwendet werden können.
	============================================================
	-->
	<xs:element name="local_header" type="local_header-cont.model">
		<xs:annotation>
			<xs:documentation>Element für weitere, datenartspezifische, Metainformationen</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="local_header-cont.model" mixed="true">
		<xs:choice minOccurs="0" maxOccurs="unbounded">
			<xs:any processContents="skip" minOccurs="0" maxOccurs="unbounded"/>
		</xs:choice>
		<xs:attribute name="ignore" type="ignore_typ" default="markup"/>
		<xs:attribute name="descriptor" type="xs:string"/>
		<xs:attribute name="render" type="xs:string"/>
	</xs:complexType>
	<!--
	============================================================
	Komplexe Hilfstypen:
	v_string_typ: enthält nur den V-Attribut für einfache Daten-Angaben
	v_s_string_typ: wird für kodierte Wertepaare mit optionaler Schlüsseltabelle verwendet
	v_date_typ: enthält nur den V-Attribut für einfache Datums-Angaben
	v_zeitraum_typ: enthält nur den V-Attribut für Zeitraum-Angaben
	============================================================
	-->
	<!-- ************************ v_string_typ ********************************** -->
	<xs:complexType name="v_string_typ">
		<xs:attribute name="V" type="xs:string" use="required"/>
	</xs:complexType>
	<!-- ************************ v_s_string_typ ********************************** -->
	<xs:element name="TRANSLTN" type="transltn_typ">
		<xs:annotation>
			<xs:documentation>interne/alternative Kodes und Schlüsseltabellen</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="transltn_typ">
		<xs:complexContent>
			<xs:restriction base="v_s_string_typ"/>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="v_s_string_typ">
		<xs:attribute name="V" type="xs:string" use="required"/>
		<xs:attribute name="DN" type="xs:string" use="optional"/>
		<xs:attribute name="S" type="xs:string" use="optional"/>
		<xs:attribute name="SN" type="xs:string" use="optional"/>
		<xs:attribute name="SV" type="xs:string" use="optional"/>
	</xs:complexType>
	<!-- ************************ v_date_typ ********************************** -->
	<xs:complexType name="v_date_typ">
		<xs:attribute name="V" type="xs:date" use="required"/>
	</xs:complexType>
	<!-- ************************ v_zeitraum_typ ********************************** -->
	<xs:complexType name="v_zeitraum_typ">
		<xs:annotation>
			<xs:documentation>Zeitraum: datum..datum</xs:documentation>
		</xs:annotation>
		<xs:attribute name="V" type="zeitraum_typ" use="required"/>
	</xs:complexType>
	<!-- ************************ pnxp_string_typ ********************************** -->
	<xs:complexType name="pnxp_string_typ">
		<xs:attribute name="V" type="xs:string" use="required"/>
		<xs:attribute name="QUAL" type="xs:NMTOKENS" use="optional"/>
	</xs:complexType>
	<!-- ======================================================================= -->
	<!-- Eigendefinierten Datentypen -->
	<!-- ======================================================================= -->
	<!--
	============================================================
	Schnittstelle-Angaben:
	interface_typ: enthält Informationen über die Schnittstelle selbst.
	interface_nm_typ: Bezeichnung der Schnittstelle kann auch als kodierter Wert angegeben werden.
	interface_version_typ: Die Version der Schnittstelle
	description_typ: Kurzbeschreibung der Schnittstelle.
	============================================================-->
	<!-- ************************ interface_typ ********************************* -->
	<xs:element name="interface" type="interface_typ">
		<xs:annotation>
			<xs:documentation>enthält Informationen über die Schnittstelle selbst</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="interface_typ">
		<xs:sequence>
			<xs:element name="id" type="interface_id_typ"/>
			<xs:element name="interface.nm" type="interface_nm_typ"/>
			<xs:element name="version" type="interface_version_typ"/>
			<xs:element ref="originator" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="description" type="description_typ" minOccurs="0"/>
			<xs:element ref="local_header" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="interface_id_typ">
		<xs:complexContent>
			<xs:restriction base="id_typ">
				<xs:attribute name="RT" type="xs:string" use="required" fixed="1.2.276.0.76.5.109"/>
			</xs:restriction>
		</xs:complexContent>
	</xs:complexType>
	<!-- ************************ interface_nm_typ ********************************* -->
	<xs:complexType name="interface_nm_typ">
		<xs:annotation>
			<xs:documentation>Bezeichnung der Schnittstelle</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="v_string_typ"/>
		</xs:complexContent>
	</xs:complexType>
	<!-- ************************ interface_version_typ ********************************* -->
	<xs:complexType name="interface_version_typ">
		<xs:annotation>
			<xs:documentation>Version der Schnittstellenbeschreibung</xs:documentation>
		</xs:annotation>
		<xs:complexContent>
			<xs:extension base="v_string_typ"/>
		</xs:complexContent>
	</xs:complexType>
	<!-- ************************ description_typ ********************************* -->
	<xs:complexType name="description_typ">
		<xs:annotation>
			<xs:documentation>Kurzbeschreibung oder Link auf die WebSite mit der Schnittstellenbeschreibung</xs:documentation>
		</xs:annotation>
		<xs:attribute name="V" type="xs:string" use="required"/>
		<xs:attribute name="URL" type="xs:anyURI" use="optional"/>
	</xs:complexType>
	<!--
	============================================================
	Geltungsbereich:
	wenn die Daten nur in bestimmten KV-Bereichen gelten
	============================================================-->
	<xs:element name="scope" type="scope_typ">
		<xs:annotation>
			<xs:documentation>Geltungsbereich</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="scope_typ">
		<xs:sequence>
			<xs:element name="id" type="scope_id_typ" maxOccurs="unbounded"/>
			<xs:element name="scope.type_cd" type="scope.type_cd_typ">
				<xs:annotation>
					<xs:documentation>z.B. 1=KV-Geltungsbereich</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element name="scope.nm" type="v_string_typ" minOccurs="0" maxOccurs="unbounded">
				<xs:annotation>
					<xs:documentation>Name des Bereichs zu dem id-Element (z.B. KV-Nord)</xs:documentation>
				</xs:annotation>
			</xs:element>
			<xs:element ref="local_header" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="scope_id_typ">
		<xs:complexContent>
			<xs:restriction base="id_typ">
				<xs:attribute name="RT" type="xs:string" use="required" fixed="1.2.276.0.76.5.106"/>
			</xs:restriction>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="scope.type_cd_typ">
		<xs:complexContent>
			<xs:restriction base="v_s_string_typ">
				<xs:attribute name="S" type="xs:string" use="optional" fixed="1.2.276.0.76.5.107"/>
			</xs:restriction>
		</xs:complexContent>
	</xs:complexType>
	<!--
	============================================================
	Bearbeitungszustand:
	kann als kodierter Wert angegeben werden, im welchen Bearbeitungszustand das Dokument sich befindet
	============================================================-->
	<xs:element name="state" type="state_typ">
		<xs:annotation>
			<xs:documentation>Bearbeitungszustand</xs:documentation>
		</xs:annotation>
	</xs:element>
	<xs:complexType name="state_typ">
		<xs:complexContent>
			<xs:restriction base="v_s_string_typ">
				<xs:attribute name="S" type="xs:string" use="optional" fixed="1.2.276.0.76.5.108"/>
			</xs:restriction>
		</xs:complexContent>
	</xs:complexType>
	<!-- ======================================================================= -->
	<!-- einfache Typen -->
	<!-- ======================================================================= -->
	<xs:simpleType name="null.code.set">
		<xs:annotation>
			<xs:documentation>Ausprägungen für NULL-Attribut</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:enumeration value="NI"/>
			<xs:enumeration value="NA"/>
			<xs:enumeration value="UNK"/>
			<xs:enumeration value="NASK"/>
			<xs:enumeration value="ASKU"/>
			<xs:enumeration value="NAV"/>
			<xs:enumeration value="OTH"/>
			<xs:enumeration value="PINF"/>
			<xs:enumeration value="NINF"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="guid_typ">
		<xs:annotation>
			<xs:documentation>Typ für einen Global Unique Identifier</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:pattern value="[a-fA-F0-9]{8}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{4}-[a-fA-F0-9]{12}"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="zeitraum_typ">
		<xs:annotation>
			<xs:documentation>Zeitraum datum..datum</xs:documentation>
		</xs:annotation>
		<xs:restriction base="xs:string">
			<xs:pattern value="([1,2][0-9]{3}-[0-1][0-9]-(([0-2][0-9])|([3][0-1]))\.\.[1,2][0-9]{3}-[0-1][0-9]-(([0-2][0-9])|([3][0-1])))|([1,2][0-9]{3}-[0-1][0-9]-(([0-2][0-9])|([3][0-1])))|(\.\.[1,2][0-9]{3}-[0-1][0-9]-(([0-2][0-9])|([3][0-1])))|([1,2][0-9]{3}-[0-1][0-9]-(([0-2][0-9])|([3][0-1]))\.\.)"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="ignore_typ">
		<xs:restriction base="xs:string">
			<xs:enumeration value="all"/>
			<xs:enumeration value="markup"/>
		</xs:restriction>
	</xs:simpleType>
</xs:schema>
