<?xml version="1.0" encoding="UTF-8"?>
<xsd:schema xmlns="urn:omds3CommonServiceTypes-1-1-0" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:omds="urn:omds20" targetNamespace="urn:omds3CommonServiceTypes-1-1-0" elementFormDefault="qualified" attributeFormDefault="qualified" version="1.1.1">
	<xsd:import namespace="urn:omds20" schemaLocation="omds29-00.xsd"/>
	<!-- Elemente, die von allen Services gemeinsam verwendet werden -->
	<xsd:element name="serviceFault" type="ServiceFault">
		<xsd:annotation>
			<xsd:documentation>Fault-Element, wie es von einer Soap-Operation im Falle eines Faults geworfen wird</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:complexType name="ServiceFault">
		<xsd:annotation>
			<xsd:documentation>Enthält eventuelle Fehlermeldungen + Fehlercode + Fehlertyp.</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="errorType">
				<xsd:annotation>
					<xsd:documentation>Fehlertyp ( 1 = Fehler, 2 = Warnung, 3 = Hinweis)
                    </xsd:documentation>
				</xsd:annotation>
				<xsd:simpleType>
					<xsd:restriction base="xsd:integer">
						<xsd:pattern value="1">
							<xsd:annotation>
								<xsd:documentation>Fehler</xsd:documentation>
							</xsd:annotation>
						</xsd:pattern>
						<xsd:pattern value="2">
							<xsd:annotation>
								<xsd:documentation>Warnung</xsd:documentation>
							</xsd:annotation>
						</xsd:pattern>
						<xsd:pattern value="3">
							<xsd:annotation>
								<xsd:documentation>Hinweis</xsd:documentation>
							</xsd:annotation>
						</xsd:pattern>
					</xsd:restriction>
				</xsd:simpleType>
			</xsd:element>
			<xsd:element name="errorCode" type="xsd:integer">
				<xsd:annotation>
					<xsd:documentation>Fehlercode entsprechend allgemeiner Fehlerliste
                    </xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="errorMsg" type="xsd:string">
				<xsd:annotation>
					<xsd:documentation>Eine ausgeschriebene Fehlermeldung, für den User</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="GeschaeftsfallId_Type">
		<xsd:annotation>
			<xsd:documentation>Der Typ einer GeschaeftsfallId</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string"/>
	</xsd:simpleType>
	<xsd:element name="GeschaeftsfallId" type="GeschaeftsfallId_Type">
		<xsd:annotation>
			<xsd:documentation>Eine GeschäftsfallId als String</xsd:documentation>
		</xsd:annotation>
	</xsd:element>
	<xsd:simpleType name="OMDSVersion_Type">
		<xsd:annotation>
			<xsd:documentation>Die OMDS-Version als String</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:maxLength value="20"/>
			<xsd:enumeration value="OMDS-Services 1.0.0"/>
			<xsd:enumeration value="OMDS-Services 1.1.0"/>
			<xsd:enumeration value="OMDS-Services 1.1.1"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="AuthorizationFilter" abstract="true">
		<xsd:annotation>
			<xsd:documentation>Definiert einen abstrakten Filter um bestimmte spezifische Elemente herauszufiltern</xsd:documentation>
		</xsd:annotation>
	</xsd:complexType>
	<xsd:complexType name="AgentFilter_Type">
		<xsd:annotation>
			<xsd:documentation>Ein spezieller AuthorizationFilterType, der eine Anfrage dahingehend einschränkt, dass nur Ergebnisse für eine bestimmte MaklerID oder Vermnr (Vermittlernummer) zurück gegeben werden</xsd:documentation>
		</xsd:annotation>
		<xsd:complexContent>
			<xsd:extension base="AuthorizationFilter">
				<xsd:choice>
					<xsd:element name="MaklerID" type="MaklerID_Type">
						<xsd:annotation>
							<xsd:documentation>Entspricht der MaklerID in der OMDS-Datensatzdefinition. Die MaklerID ist eine übergeordnete ID des Vermittlers unter welcher mehrere Vermittlernummern zusammengefasst sein können. Diese ID ist in der Regel spezifisch für das jeweilige VU, bei welchem die Daten abgeholt werden. Ein zulässiger Spezialfall ist, dass die MaklerID mit der Vermittlernummer (Vermnr) zusammenfällt.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
					<xsd:element name="Vermnr" type="omds:Vermnr" maxOccurs="unbounded">
						<xsd:annotation>
							<xsd:documentation>Die Vermittlernummer vom Typ Vermnr aus der OMDS-Datensatz Definition. Die Vermittlernummer wird als Filterparameter verwendet, um eine Anfrage auf eine bestimmte Vermittlernummer zu beschränken, wenn der Benutzer auf mehrere Vermittlernummern berechtigt ist.</xsd:documentation>
						</xsd:annotation>
					</xsd:element>
				</xsd:choice>
			</xsd:extension>
		</xsd:complexContent>
	</xsd:complexType>
	<xsd:simpleType name="MaklerID_Type">
		<xsd:annotation>
			<xsd:documentation>Dieser Typ definiert eine MaklerID als String mit mindestens einem und max. 26 Zeichen. Diese Typ-Definition entspricht der Definition des Attributs MaklerID im OMDS-Datensatz, in dem es aber keinen unabhaengigen, referenzierbaren Typ gibt.</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:minLength value="1"/>
			<xsd:maxLength value="26"/>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:complexType name="ElementIdType">
		<xsd:annotation>
			<xsd:documentation>Ein Typ für eine Objekt-Id in Verbindung mit einem möglichen Ablaufzeitpunkt und dem Hinweis, ob die Id nur einmalig oder auch mehrmalig verwendet werden kann</xsd:documentation>
		</xsd:annotation>
		<xsd:sequence>
			<xsd:element name="id" type="xsd:string">
				<xsd:annotation>
					<xsd:documentation>Die eindeutige Id des Elements als String</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="idValidUntil" type="xsd:dateTime">
				<xsd:annotation>
					<xsd:documentation>Die Gültigkeit der Id des Elements. Wenn die Gültigkeit "null", 
					ist die Id unbegrenzt gueltig. Von der geplanten Gültigkeit unabhängig kann das 
					Element dennoch aus anderen Gründen gelöscht werden.</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
			<xsd:element name="idIsSingleUse" type="xsd:boolean">
				<xsd:annotation>
					<xsd:documentation>wahr wenn die Id nur einmal verwendet werden kann, sonst falsch</xsd:documentation>
				</xsd:annotation>
			</xsd:element>
		</xsd:sequence>
	</xsd:complexType>
	<xsd:simpleType name="DocumentType">
		<xsd:annotation>
			<xsd:documentation>Definiert die unterschiedlichen Dokumententypen</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:int">
			<xsd:minInclusive value="0"/>
			<xsd:maxInclusive value="26"/>
			<xsd:enumeration value="0">
				<xsd:annotation>
					<xsd:documentation>Sonstiges</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="1">
				<xsd:annotation>
					<xsd:documentation>Antrag</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="2">
				<xsd:annotation>
					<xsd:documentation>Deckungsbestätigung</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="3">
				<xsd:annotation>
					<xsd:documentation>Erstpolizze</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="4">
				<xsd:annotation>
					<xsd:documentation>Folgepolizze</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="5">
				<xsd:annotation>
					<xsd:documentation>Zusatzvereinbarungen</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="6">
				<xsd:annotation>
					<xsd:documentation>Vinkulierungen</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="7">
				<xsd:annotation>
					<xsd:documentation>Bewertungsgutachten</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="8">
				<xsd:annotation>
					<xsd:documentation>Verständigung Gewinnbeteiligungen</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="9">
				<xsd:annotation>
					<xsd:documentation>Umsatz/Lohnsummenmeldung</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="10">
				<xsd:annotation>
					<xsd:documentation>Umsatz/Lohnsummenabrechnung</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="11">
				<xsd:annotation>
					<xsd:documentation>BU-Summenmeldung</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="12">
				<xsd:annotation>
					<xsd:documentation>BU-Summenabrechnung</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="13">
				<xsd:annotation>
					<xsd:documentation>Finanzamtsbestätigung</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="14">
				<xsd:annotation>
					<xsd:documentation>Kündigung</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="15">
				<xsd:annotation>
					<xsd:documentation>Stornopolizze</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="16">
				<xsd:annotation>
					<xsd:documentation>Schadenmeldung</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="17">
				<xsd:annotation>
					<xsd:documentation>Schadennachtrag</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="18">
				<xsd:annotation>
					<xsd:documentation>Gutachten</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="19">
				<xsd:annotation>
					<xsd:documentation>Behördliche Anzeigebestätigung</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="20">
				<xsd:annotation>
					<xsd:documentation>Kostenvoranschlag</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="21">
				<xsd:annotation>
					<xsd:documentation>Rechnung</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="22">
				<xsd:annotation>
					<xsd:documentation>Schadenablehnung</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="23">
				<xsd:annotation>
					<xsd:documentation>Schadenfoto</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="24">
				<xsd:annotation>
					<xsd:documentation>Abfindungserklärung</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="25">
				<xsd:annotation>
					<xsd:documentation>Restwertangebot</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="26">
				<xsd:annotation>
					<xsd:documentation>Schreiben Rechtsanwalt</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<!-- Dokumententypen Schaden -->
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:simpleType name="PartnerRoleType">
		<xsd:annotation>
			<xsd:documentation>Definition der Partnerrollen über jeweils 2 Buchstaben. Typ wurde angelehnt an VtgRolleCd_Type, allerdings wurde neuer Typ benötigt, da Versicherte Person als Partnerrolle relevant ist.</xsd:documentation>
		</xsd:annotation>
		<xsd:restriction base="xsd:string">
			<xsd:length value="2"/>
			<xsd:enumeration value="VN">
				<xsd:annotation>
					<xsd:documentation>Versicherungsnehmer</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
			<xsd:enumeration value="VP">
				<xsd:annotation>
					<xsd:documentation>Versicherte Person</xsd:documentation>
				</xsd:annotation>
			</xsd:enumeration>
		</xsd:restriction>
	</xsd:simpleType>
	<xsd:element name="OrdnungsbegriffZuordFremd">
		<xsd:annotation>
			<xsd:documentation>Ein Ordnungsbegriff aus einem Fremdsystem, welcher dabei hilft die Kommunikation zwischen zwei Systemen zu vereinfachen</xsd:documentation>
		</xsd:annotation>
		<xsd:simpleType>
			<xsd:restriction base="xsd:string">
				<xsd:maxLength value="255"/>
			</xsd:restriction>
		</xsd:simpleType>
	</xsd:element>
</xsd:schema>
