<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://uri.etsi.org/02657/v1.17.1#/RetainedData" targetNamespace="http://uri.etsi.org/02657/v1.17.1#/RetainedData" elementFormDefault="qualified">
	<xs:include schemaLocation="RDMessage,ver17 for NatParas.xsd"/>
	<xs:include schemaLocation="NatParas3.xsd"/>
	<!-- Natparas Version: 01.17.01.07.1.01 -->
	<xs:simpleType name="Date">
		<xs:restriction base="xs:string">
			<xs:pattern value="\d{4}(0[1-9]|1[012])(0[1-9]|[12][0-9]|3[01])"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="MacAddress">
		<xs:restriction base="xs:hexBinary">
			<xs:length value="6"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="UserName">
		<xs:restriction base="xs:string"/>
	</xs:simpleType>
	<xs:complexType name="Target">
		<xs:choice>
			<xs:element name="telephonyPartyInformation" type="TelephonyPartyInformation"/>
			<xs:element name="telephonySubscriber" type="TelephonySubscriber"/>
		</xs:choice>
	</xs:complexType>
	<xs:complexType name="LegalBasis">
		<xs:choice>
			<xs:element name="stPO_100a" type="NULL" minOccurs="0"/>
			<xs:element name="stPO_100ae_oder_100g_Abs1_Satz1_Nr1_und_Satz3" type="NULL" minOccurs="0"/>
			<!--  Diese Verkehrsdatenanfrage ist nur noch bis Ende Juli 2017 zulässig  -->
			<xs:element name="stPO_100g" type="NULL" minOccurs="0"/>
			<!--  Verkehrsdaten ohne Standortdaten aus 96 TKG-Daten oder in Echtzeit  -->
			<xs:element name="stPO_100g_Abs1_Satz1_Nr1oder2" type="NULL" minOccurs="0" />
			<!--  Verkehrsdaten mit künftig anfallenden Standortdaten aus 96 TKG-Daten oder in Echtzeit  -->
			<xs:element name="stPO_100g_Abs1_Satz1_Nr1_und_Satz3" type="NULL" minOccurs="0" />
			<!--  Verkehrsdaten mit Standortdaten aus 113b TKG-Daten  -->
			<xs:element name="stPO_100g_Abs2" type="NULL" minOccurs="0" />
			<!--  retrograde Funkzellenabfrage aus 96 TKG-Daten  -->
			<xs:element name="stPO_100g_Abs3_Satz1" type="NULL" minOccurs="0" />
			<!--  retrograde Funkzellenabfrage aus 113b TKG-Daten  -->
			<xs:element name="stPO_100g_Abs3_Satz2" type="NULL" minOccurs="0" />
			<xs:element name="stPO100j1_Satz1_ivm_TKG113" type="NULL" minOccurs="0"/>
			<xs:element name="stPO100j1_Satz2_ivm_TKG113" type="NULL" minOccurs="0"/>
			<xs:element name="stPO100j_Abs2_iVm_TKG113" type="NULL" minOccurs="0"/>
			<xs:element name="g10" type="NULL" minOccurs="0"/>
			<xs:element name="bKAG_10" type="NULL" minOccurs="0"/>
			<xs:element name="bKAG_37_Abs4_iVm_Landesrecht" type="NULL" minOccurs="0"/>
			<xs:element name="bKAG_40" type="NULL" minOccurs="0"/>
			<xs:element name="bKAG_51" type="NULL" minOccurs="0"/>
			<xs:element name="bKAG_52" type="NULL" minOccurs="0"/>
			<xs:element name="bKAG_53" type="NULL" minOccurs="0"/>
			<xs:element name="bPolG_22a" type="NULL" minOccurs="0"/>
			<xs:element name="mADG_10" type="NULL" minOccurs="0"/>
			<xs:element name="bVerfSchG_8" type="NULL" minOccurs="0"/>
			<xs:element name="bayPAG_43_Abs2_Satz1_Nr1_und_oder_Nr2" type="NULL" minOccurs="0"/>
			<xs:element name="bayPAG_43_Abs2_Satz1_Nr1_und_oder_Nr2_ohne_Standortdaten" type="NULL" minOccurs="0"/>
			<xs:element name="bayPAG_43_Abs2_Satz2" type="NULL" minOccurs="0"/>
			<xs:element name="bayPAG_43_Abs5_Satz1" type="NULL" minOccurs="0"/>
			<xs:element name="bayPAG_43_Abs5_Satz2" type="NULL" minOccurs="0"/>
			<xs:element name="bayPAG_43_Abs6" type="NULL" minOccurs="0"/>
			<xs:element name="bayPAG_42_Abs4_Satz1_Nr2" type="NULL" minOccurs="0"/>
			<xs:element name="bayPAG_43_Abs2_Satz1_Nr3" type="NULL" minOccurs="0"/>
			<xs:element name="bayPAG_42" type="NULL" minOccurs="0"/>
			<xs:element name="bremVerSchG_7_abs3" type="NULL" minOccurs="0"/>
			<xs:element name="bremVerSchG_8c_abs1" type="NULL" minOccurs="0"/>
			<xs:element name="polG_BW" type="NULL" minOccurs="0"/>
			<xs:element name="aSOG_25a" type="NULL" minOccurs="0"/>
			<xs:element name="bbPolG_33b" type="NULL" minOccurs="0"/>
			<xs:element name="hSOG_15a" type="NULL" minOccurs="0"/>
			<xs:element name="sOG_HH" type="NULL" minOccurs="0"/>
			<xs:element name="sOG_MV_34a" type="NULL" minOccurs="0"/>
			<xs:element name="nds_SOG_33" type="NULL" minOccurs="0"/>
			<xs:element name="nds_SOG_33a_Abs2_Satz1_Nr1" type="NULL" minOccurs="0"/>
			<xs:element name="nds_SOG_33a_Abs2_Satz1_Nr2" type="NULL" minOccurs="0"/>
			<xs:element name="nds_SOG_33a_Abs2_Satz1_Nr3" type="NULL" minOccurs="0"/>
			<xs:element name="nds_SOG_33c_Abs1_Satz1" type="NULL" minOccurs="0"/>
			<xs:element name="nds_SOG_33c_Abs2_Satz1" type="NULL" minOccurs="0"/>
			<xs:element name="nds_SOG_33c_Abs3" type="NULL" minOccurs="0"/>
			<xs:element name="polG_NRW_20a" type="NULL" minOccurs="0"/>
			<xs:element name="pOG_RLP" type="NULL" minOccurs="0"/>
			<xs:element name="sPolG_28b_Abs1_iVm_28c_Abs1_SPolG" type="NULL" minOccurs="0"/>
			<xs:element name="sPolG_28b_Abs1_Nr1_und_Abs5_iVm_28c_Abs1_SPolG" type="NULL" minOccurs="0"/>
			<xs:element name="saechsPolG" type="NULL" minOccurs="0"/>
			<xs:element name="saechsVSG_11a" type="NULL" minOccurs="0"/>
			<xs:element name="saechsVSG_11b" type="NULL" minOccurs="0"/>
			<xs:element name="thuerVSG_9_iVm_tKG113" type="NULL" minOccurs="0"/>
			<xs:element name="thuerVSG_8_Abs2" type="NULL" minOccurs="0"/>
			<xs:element name="thuer_PAG_34b" type="NULL" minOccurs="0"/>
			<xs:element name="sOG_LSA" type="NULL" minOccurs="0"/>
			<xs:element name="lvwG_185a" type="NULL" minOccurs="0"/>
			<xs:element name="pAG_34a" type="NULL" minOccurs="0"/>
			<xs:element name="stGB_34" type="NULL" minOccurs="0"/>
			<xs:element name="tKG113_iVm_Art_14_und_15_BayVSG" type="NULL" minOccurs="0"/>
			<xs:element name="tKUEV_23_Testanordnung_TKUE" type="NULL" minOccurs="0"/>
			<xs:element name="tKUEV_34_iVm_32_und_23_Testanordnung_VD" type="NULL" minOccurs="0"/>
			<xs:element name="tKUEV_34_iVm_32_und_23_Testanordnung_VD_in_Echtzeit" type="NULL" minOccurs="0"/>
			<xs:element name="other_LegalBasis" type="xs:string" minOccurs="0"/>
		</xs:choice>
	</xs:complexType>
	<xs:complexType name="WarrantTarget">
		<xs:sequence>
			<!-- 'targetNumber' identifiziert ein Target in den Metadaten des warrantRequests -->
			<xs:element name="targetNumber" type="xs:integer"/>
			<xs:element name="deactivateTarget" type="xs:boolean" minOccurs="0"/>
			<xs:element name="target" type="Target"/>
			<xs:element name="startDateTime" type="GeneralizedTime"/>
			<xs:element name="endDateTime" type="GeneralizedTime"/>
			<xs:element name="targetType">
				<xs:complexType>
					<xs:choice>
						<xs:element name="usageData" type="UsageData"/>
						<xs:element name="subscriberData" type="SubscriberData"/>
						<xs:element name="lawfulInterception" type="InterceptionCriteria"/>
						<xs:element name="locating" type="Locating"/>
					</xs:choice>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="WarrantTextform">
		<xs:sequence>
			<xs:element name="originator" type="xs:string"/>
			<xs:element name="originatorContactDetails" type="xs:string"/>
			<xs:element name="text" type="xs:string"/>
			<xs:element name="endOfText" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="Warrant">
		<xs:sequence>
			<xs:element name="warrant">
				<xs:complexType>
					<xs:choice>
						<xs:element name="warrantTIFF" type="xs:string"/>
						<xs:element name="warrantTextform" type="WarrantTextform"/>
					</xs:choice>
				</xs:complexType>
			</xs:element>
			<xs:element name="warrantDate" type="Date"/>
			<!-- Das Flag 'needsConfirmation' ist zu setzen, falls noch eine Bestätigung, wie bspw. bei einer Eilanordnung TKÜ, benötigt wird -->
			<xs:element name="needsConfirmation" type="NULL" minOccurs="0"/>
			<xs:element name="warrantTargets">
				<xs:complexType>
					<xs:sequence maxOccurs="unbounded">
						<xs:element name="WarrantTarget" type="WarrantTarget"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
			<xs:element name="legalBases">
				<xs:complexType>
					<xs:sequence maxOccurs="unbounded">
						<xs:element name="LegalBasis" type="LegalBasis"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="UsageData">
		<xs:sequence>
			<!-- Hier ist eine Auswahl zu treffen, ob die Anfrage den Telefondienst oder -datendienst betrifft und ob ein Late-record gewuenscht ist 'true' oder 'false' -->
			<xs:element name="telephonyService" type="xs:boolean"/>
			<xs:element name="dataService" type="xs:boolean"/>
			<xs:element name="lateRecordRequest" type="xs:boolean"/>
			<xs:element name="zielwahlRequest" type="xs:boolean"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="RequestedData">
		<xs:sequence>
			<xs:element name="pIN" type="NULL" minOccurs="0"/>
			<xs:element name="pUK" type="NULL" minOccurs="0"/>
			<xs:element name="billingMethod" type="NULL" minOccurs="0"/>
			<xs:element name="bankAccount" type="NULL" minOccurs="0"/>
			<xs:element name="billingAddress" type="NULL" minOccurs="0"/>
			<xs:element name="contractPeriod" type="NULL" minOccurs="0"/>
			<xs:element name="other" type="xs:string" minOccurs="0"/>
			<!-- Das Feld 'other' ist ein Freitextfeld -->
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="SubscriberData">
		<xs:sequence>
			<xs:element name="requestedData" type="RequestedData" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="Locating">
		<xs:sequence>
			<xs:element name="mSISDN" type="PartyNumber" minOccurs="0"/>
			<xs:element name="iMSI" type="IMSI" minOccurs="0"/>
			<xs:element name="vLR" type="PartyNumber" minOccurs="0"/>
			<xs:element name="startDateTime" type="GeneralizedTime" minOccurs="0"/>
			<xs:element name="endDateTime" type="GeneralizedTime" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="RadioStructure">
		<!-- Da alle Parameter in den Feldern von ETSI TS 102 657 übermittelt werden, bleibt dieser Datentyp leer -->
	</xs:complexType>
	<xs:complexType name="InterceptionCriteria">
		<xs:sequence>
			<!-- Für IRI-only müssen die Elemente 'interceptVoice' und 'interceptData'auf 'false' gesetzt werden -->
			<xs:element name="interceptVoice" type="xs:boolean"/>
			<xs:element name="interceptData" type="xs:boolean"/>
			<xs:element name="interceptIdlemodeHandover" type="xs:boolean" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="MonitoringCenter">
		<xs:sequence>
			<xs:element name="destinationNumber" type="PartyNumber" minOccurs="0"/>
			<xs:element name="ipAddress" type="IPAddress" minOccurs="0"/>
			<xs:element name="portNumber" type="xs:integer" minOccurs="0"/>
			<xs:element name="ftpAddress" type="xs:string" minOccurs="0"/>
			<xs:element name="ftpUsername" type="xs:string" minOccurs="0"/>
			<xs:element name="ftpPassword" type="xs:string" minOccurs="0"/>
			<xs:element name="x25address" type="PartyNumber" minOccurs="0"/>
			<xs:element name="x31address" type="PartyNumber" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="Activation">
		<xs:sequence>
			<xs:element name="target" type="Target"/>
			<xs:element name="internetLeitungskennung" type="InternetLeitungskennung" minOccurs="0"/>		
			<xs:element name="lIID" type="xs:string" minOccurs="0"/>
			<xs:element name="interceptionCriteria" type="InterceptionCriteria"/>
			<xs:element name="monitoringCenter" type="MonitoringCenter"/>
			<xs:element name="startDateTime" type="GeneralizedTime" minOccurs="0"/>
			<xs:element name="endDateTime" type="GeneralizedTime"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="Renewal">
		<xs:sequence>
			<xs:element name="lIID" type="xs:string"/>
			<xs:element name="endDateTime" type="GeneralizedTime"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="Modification">
		<xs:sequence>
			<xs:element name="lIID" type="xs:string"/>
			<xs:element name="newLIID" type="xs:string" minOccurs="0"/>
			<xs:element name="newInterceptionCriteria" type="InterceptionCriteria" minOccurs="0"/>
			<xs:element name="newMonitoringCenter" type="MonitoringCenter" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="Deactivation">
		<xs:sequence>
			<xs:element name="lIID" type="xs:string"/>
			<xs:element name="endDateTime" type="GeneralizedTime" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="LawfulInterception">
		<xs:choice>
			<xs:element name="activation" type="Activation"/>
			<xs:element name="renewal" type="Renewal"/>
			<xs:element name="modification" type="Modification"/>
			<xs:element name="deactivation" type="Deactivation"/>
		</xs:choice>
	</xs:complexType>
	<xs:complexType name="NationalTelephonyPartyInformation">
		<xs:sequence>
			<xs:element name="countryCode" type="xs:string" default="DE"/>
			<xs:element name="headerID" type="xs:string"/>
			<xs:element name="partyNumberAKUE" type="xs:string" minOccurs="0"/>
			<xs:element name="voipID" type="xs:string" minOccurs="0"/>
			<xs:element name="lineID" type="xs:string" minOccurs="0"/>
			<xs:element name="userName" type="UserName" minOccurs="0"/>
			<xs:element name="postBoxAddress" type="xs:string" minOccurs="0"/>
			<xs:element name="macAddress" type="MacAddress" minOccurs="0"/>
			<xs:element name="ipAddress" type="IPAddress" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="NationalRequestParameters">
		<xs:sequence>
			<xs:element name="countryCode" type="xs:string" default="DE"/>
			<xs:element name="headerID" type="xs:string"/>
			<xs:element name="referencedRequestNumber" type="xs:string" minOccurs="0"/>
			<xs:element name="targetNumber" type="xs:integer" minOccurs="0"/>
			<xs:element name="groupID" type="xs:string" minOccurs="0"/>
			<xs:element name="additionalInformation" type="xs:string" minOccurs="0"/>
			<xs:element name="requestDetails">
				<xs:complexType>
					<xs:choice>
						<xs:element name="warrant" type="Warrant"/>
						<xs:element name="warrantChange" type="Warrant"/>
						<xs:element name="usageData" type="UsageData"/>
						<xs:element name="subscriberData" type="SubscriberData"/>
						<xs:element name="locating" type="Locating"/>
						<xs:element name="radioStructure" type="RadioStructure"/>
						<xs:element name="lawfulInterception" type="LawfulInterception"/>
						<xs:element name="compensation" type="Compensation"/>
					</xs:choice>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="JVEG2015">
		<!-- Datentypen für die Geltendmachung von Entschädigungsansprüchen -->
		<xs:choice>
			<xs:element name="jVEG_Nummer_100" type="NULL"/>
			<xs:element name="jVEG_Nummer_101" type="NULL"/>
			<xs:element name="jVEG_Nummer_102" type="NULL"/>
			<xs:element name="jVEG_Nummer_103" type="NULL"/>
			<xs:element name="jVEG_Nummer_104" type="NULL"/>
			<xs:element name="jVEG_Nummer_105" type="NULL"/>
			<xs:element name="jVEG_Nummer_106" type="NULL"/>
			<xs:element name="jVEG_Nummer_107" type="NULL"/>
			<xs:element name="jVEG_Nummer_108" type="NULL"/>
			<xs:element name="jVEG_Nummer_109" type="NULL"/>
			<xs:element name="jVEG_Nummer_110" type="NULL"/>
			<xs:element name="jVEG_Nummer_111" type="NULL"/>
			<xs:element name="jVEG_Nummer_112" type="NULL"/>
			<xs:element name="jVEG_Nummer_113" type="NULL"/>
			<xs:element name="jVEG_Nummer_200" type="NULL"/>
			<xs:element name="jVEG_Nummer_201" type="NULL"/>
			<xs:element name="jVEG_Nummer_202" type="NULL"/>
			<xs:element name="jVEG_Nummer_300" type="NULL"/>
			<xs:element name="jVEG_Nummer_301" type="NULL"/>
			<xs:element name="jVEG_Nummer_302" type="NULL"/>
			<xs:element name="jVEG_Nummer_303" type="NULL"/>
			<xs:element name="jVEG_Nummer_304" type="NULL"/>
			<xs:element name="jVEG_Nummer_305" type="NULL"/>
			<xs:element name="jVEG_Nummer_306" type="NULL"/>
			<xs:element name="jVEG_Nummer_307" type="NULL"/>
			<xs:element name="jVEG_Nummer_308" type="NULL"/>
			<xs:element name="jVEG_Nummer_309" type="NULL"/>
			<xs:element name="jVEG_Nummer_310" type="NULL"/>
			<xs:element name="jVEG_Nummer_311" type="NULL"/>
			<xs:element name="jVEG_Nummer_312" type="NULL"/>
			<xs:element name="jVEG_Nummer_313" type="NULL"/>
			<xs:element name="jVEG_Nummer_314" type="NULL"/>
			<xs:element name="jVEG_Nummer_315" type="NULL"/>
			<xs:element name="jVEG_Nummer_316" type="NULL"/>
			<xs:element name="jVEG_Nummer_317" type="NULL"/>
			<xs:element name="jVEG_Nummer_318" type="NULL"/>
			<xs:element name="jVEG_Nummer_319" type="NULL"/>
			<xs:element name="jVEG_Nummer_320" type="NULL"/>
			<xs:element name="jVEG_Nummer_321" type="NULL"/>
			<xs:element name="jVEG_Nummer_322" type="NULL"/>
			<xs:element name="jVEG_Nummer_323" type="NULL"/>
			<xs:element name="jVEG_Nummer_324" type="NULL"/>
			<xs:element name="jVEG_Nummer_325" type="NULL"/>
			<xs:element name="jVEG_Nummer_400" type="NULL"/>
			<xs:element name="jVEG_Nummer_401" type="NULL"/>
			<xs:element name="jVEG_Nummer_402" type="NULL"/>
		</xs:choice>
	</xs:complexType>
	<xs:complexType name="CompensationItem">
		<xs:sequence>
			<xs:element name="requestNumber" type="xs:string"/>
			<!-- Nummer des Data-, Aktivierungs- oder Renewal-Requests -->
			<xs:element name="groupID" type="xs:string" minOccurs="0"/>
			<xs:element name="jVEG2015" type="JVEG2015"/>
			<xs:element name="rebate" type="xs:boolean"/>
			<!-- Angabe, ob 20% Rabatt zutrifft, 'true' oder 'false' -->
			<xs:element name="quantity" type="xs:integer"/>
			<!-- Außer in Fällen wie bspw. Leitungskosten, ist die Menge gewoehnlich immer '1' -->
			<xs:element name="price" type="xs:double"/>
			<!-- Preis und Menge inkl. Rabatt-->
			<xs:element name="comment" type="xs:string" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="Compensation">
		<xs:sequence>
			<xs:element name="compensationName" type="xs:string"/>
			<xs:element name="compensation">
				<xs:complexType>
					<xs:sequence minOccurs="0" maxOccurs="unbounded">
						<xs:element name="CompensationItem" type="CompensationItem"/>
					</xs:sequence>
				</xs:complexType>
			</xs:element>
		</xs:sequence>
	</xs:complexType>
</xs:schema>
