Commit f2a3c7f1 authored by canterburym's avatar canterburym Committed by canterburym
Browse files

Initial draft

parent 5b9ef698
Loading
Loading
Loading
Loading
+20 −2
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
           xmlns:x1="http://uri.etsi.org/03221/X1/2017/10"
           xmlns:etsi103280="http://uri.etsi.org/03280/common/2017/07"
           xmlns="urn:3GPP:ns:li:3GPPX1Extensions:r16:v4"
           targetNamespace="urn:3GPP:ns:li:3GPPX1Extensions:r16:v4"
           elementFormDefault="qualified">

	<xs:import namespace="http://uri.etsi.org/03221/X1/2017/10"/>
  <xs:import namespace="http://uri.etsi.org/03280/common/2017/07"/>

  <xs:element name="X1Extensions" type="X1Extension"></xs:element>

  <xs:element name="PTCLIX1TargetIdentifierExtensions" type="PTCLIX1TargetIdentifierExtensions"></xs:element>
@@ -241,4 +246,17 @@

  <xs:element name="IdentityAssociationTargetIdentifier" type="EmptyElement"></xs:element>

  <xs:complexType name="DelegatedTask">
    <xs:complexContent>
      <xs:extension base="x1:GenericObject">
        <xs:sequence>
          <xs:element name="NEID" type="x1:NeIdentifier"/>
          <xs:element name="TaskDetails" type="x1:TaskDetails"/>
          <xs:element name="TaskStatus" type="x1:TaskStatus" minOccurs="0"/>
          <xs:element name="LastTaskStatusTime" type="etsi103280:QualifiedMicrosecondDateTime" minOccurs="0"/>
        </xs:sequence>
      </xs:extension>
    </xs:complexContent>
  </xs:complexType>

</xs:schema>
+40 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://uri.etsi.org/03221/X1/2017/10/DestinationSet" xmlns:x1="http://uri.etsi.org/03221/X1/2017/10" xmlns:etsi103280="http://uri.etsi.org/03280/common/2017/07" targetNamespace="http://uri.etsi.org/03221/X1/2017/10/DestinationSet" elementFormDefault="qualified" version="1.11.1">
	<xs:import namespace="http://uri.etsi.org/03280/common/2017/07"/>
	<xs:import namespace="http://uri.etsi.org/03221/X1/2017/10"/>
	<!-- Message containers -->
	<xs:complexType name="DestinationSetDetails">
		<xs:complexContent>
			<xs:extension base="x1:GenericObject">
				<xs:sequence>
					<xs:element name="friendlyName" type="xs:string" minOccurs="0"/>
					<xs:element name="listOfAssociatedDIDs" type="ListOfAssociatedDIDs"/>
					<xs:element name="destinationSetDetailsExtension" type="DestinationSetDetailsExtension" minOccurs="0" maxOccurs="unbounded"/>
					<xs:element name="destinationSetType" type="DestinationSetType"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="ListOfAssociatedDIDs">
		<xs:sequence>
			<xs:element name="AssociatedDID" type="AssociatedDID" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="AssociatedDID">
		<xs:sequence>
			<xs:element name="dId" type="x1:DId"/>
			<xs:element name="preference" type="xs:integer"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="DestinationSetDetailsExtension">
		<xs:complexContent>
			<xs:extension base="x1:Extension" />			
		</xs:complexContent>
	</xs:complexType>
	<xs:simpleType name="DestinationSetType">
		<xs:restriction base="xs:string">
			<xs:enumeration value="Redundant"/>
			<xs:enumeration value="Duplicate"/>
		</xs:restriction>
	</xs:simpleType>
</xs:schema>
+35 −0
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://uri.etsi.org/03221/X1/2017/10/HashedID" xmlns:x1="http://uri.etsi.org/03221/X1/2017/10" xmlns:etsi103280="http://uri.etsi.org/03280/common/2017/07" targetNamespace="http://uri.etsi.org/03221/X1/2017/10/HashedID" elementFormDefault="qualified" version="1.10.1">
	<xs:import namespace="http://uri.etsi.org/03280/common/2017/07"/>
	<xs:import namespace="http://uri.etsi.org/03221/X1/2017/10"/>
	<!-- Message containers -->
	<xs:complexType name="HashContext">
		<xs:complexContent>
			<xs:extension base="x1:GenericObject">
				<xs:sequence>
					<xs:element name="hashAlgorithm" type="HashAlgorithm"/>
					<xs:element name="salt" type="Salt"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:simpleType name="HashAlgorithm">
		<xs:restriction base="xs:string">
			<xs:enumeration value="sha-256"/>
			<xs:enumeration value="sha-512"/>
			<xs:enumeration value="sha3-512"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:simpleType name="Salt">
		<xs:restriction base="xs:hexBinary">
			<xs:minLength value="8"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="HashedIdentifier">
		<xs:sequence>
			<xs:element name="hashContextID" type="x1:GenericObjectID"/>
			<xs:element name="targetIdentityType" type="etsi103280:ShortString"/>
			<xs:element name="hashDigest" type="xs:hexBinary"/>
		</xs:sequence>
	</xs:complexType>
</xs:schema>
+229 −1
Original line number Diff line number Diff line
<?xml version="1.0" encoding="utf-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://uri.etsi.org/03221/X1/2017/10" xmlns:etsi103280="http://uri.etsi.org/03280/common/2017/07" targetNamespace="http://uri.etsi.org/03221/X1/2017/10" elementFormDefault="qualified" version="1.8.1">
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://uri.etsi.org/03221/X1/2017/10" xmlns:etsi103280="http://uri.etsi.org/03280/common/2017/07" xmlns:hashedID="http://uri.etsi.org/03221/X1/2017/10/HashedID" xmlns:destinationSet="http://uri.etsi.org/03221/X1/2017/10/DestinationSet" targetNamespace="http://uri.etsi.org/03221/X1/2017/10" elementFormDefault="qualified" version="1.12.1">
	<xs:import namespace="http://uri.etsi.org/03280/common/2017/07"/>
	<xs:import namespace="http://uri.etsi.org/03221/X1/2017/10/HashedID"/>
	<!-- Message containers -->
	<xs:element name="X1Request" type="RequestContainer"/>
	<xs:element name="X1Response" type="ResponseContainer"/>
@@ -77,6 +78,7 @@
				<xs:sequence>
					<xs:element name="requestMessageType" type="RequestMessageType"/>
					<xs:element name="errorInformation" type="ErrorInformation"/>
					<xs:element name="extensionInformation" type="ExtensionInformation" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
@@ -95,12 +97,22 @@
			<xs:enumeration value="GetDestinationDetails"/>
			<xs:enumeration value="GetNEStatus"/>
			<xs:enumeration value="GetAllDetails"/>
			<xs:enumeration value="GetAllTaskDetails"/>
			<xs:enumeration value="GetAllDestinationDetails"/>
			<xs:enumeration value="GetAllGenericObjectDetails"/>
			<xs:enumeration value="ListAllDetails"/>
			<xs:enumeration value="ReportTaskIssue"/>
			<xs:enumeration value="ReportDestinationIssue"/>
			<xs:enumeration value="ReportNEIssue"/>
			<xs:enumeration value="Ping"/>
			<xs:enumeration value="Keepalive"/>
			<xs:enumeration value="CreateObject"/>
			<xs:enumeration value="ModifyObject"/>
			<xs:enumeration value="GetObject"/>
			<xs:enumeration value="DeleteObject"/>
			<xs:enumeration value="ListObjectsOfType"/>
			<xs:enumeration value="DeleteAllObjects"/>
			<xs:enumeration value="ExtendedRequestMessageType"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="ErrorInformation">
@@ -109,6 +121,17 @@
			<xs:element name="errorDescription" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ExtensionInformation">
		<xs:sequence>
			<xs:element name="extensionSpecification" type="ExtensionSpecification"/>
			<xs:element name="extendedRequestMessageType" type="xs:string"/>
		</xs:sequence>
	</xs:complexType>
	<xs:simpleType name="ExtensionSpecification">
		<xs:restriction base="xs:string">
			<xs:enumeration value="TS133128"/>
		</xs:restriction>
	</xs:simpleType>
	<!-- Individual Message Definitions -->
	<!-- See section 6.2.1 -->
	<xs:complexType name="ActivateTaskRequest">
@@ -131,6 +154,7 @@
			<xs:element name="correlationID" type="xs:nonNegativeInteger" minOccurs="0"/>
			<xs:element name="implicitDeactivationAllowed" type="xs:boolean" minOccurs="0"/>
			<xs:element name="productID" type="XId" minOccurs="0"/>
			<xs:element name="listOfServiceTypes" type="ListOfServiceTypes" minOccurs="0"/>
			<xs:element name="taskDetailsExtensions" type="TaskDetailsExtensions" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
@@ -154,6 +178,7 @@
			<xs:element name="udpPort" type="etsi103280:UDPPort"/>
			<xs:element name="udpPortRange" type="etsi103280:UDPPortRange"/>
			<xs:element name="emailAddress" type="etsi103280:EmailAddress"/>
			<xs:element name="internationalizedEmailAddress" type="etsi103280:InternationalizedEmailAddress"/>
			<xs:element name="sipUri" type="etsi103280:SIPURI"/>
			<xs:element name="telUri" type="etsi103280:TELURI"/>
			<xs:element name="h323Uri" type="H323Uri"/>
@@ -173,6 +198,8 @@
			<xs:element name="peiImeisv" type="etsi103280:PEIIMEISV"/>
			<xs:element name="gpsiMsisdn" type="etsi103280:GPSIMSISDN"/>
			<xs:element name="gpsiNai" type="etsi103280:GPSINAI"/>
			<xs:element name="eui64" type="etsi103280:EUI64"/>
			<xs:element name="hashedIdentifier" type="hashedID:HashedIdentifier"/>
			<xs:element name="targetIdentifierExtension" type="TargetIdentifierExtension"/>
		</xs:choice>
	</xs:complexType>
@@ -251,6 +278,7 @@
			<xs:enumeration value="messaging"/>
			<xs:enumeration value="pushToTalk"/>
			<xs:enumeration value="LALS"/>
			<xs:enumeration value="RCS"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="LocationTypeOptions">
@@ -288,6 +316,7 @@
	<xs:complexType name="ListOfDids">
		<xs:sequence>
			<xs:element name="dId" type="DId" minOccurs="0" maxOccurs="unbounded"/>
			<xs:element name="dSId" type="GenericObjectID" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ListOfMediationDetails">
@@ -626,6 +655,7 @@
					<xs:element name="neStatusDetails" type="NeStatusDetails"/>
					<xs:element name="listOfTaskResponseDetails" type="ListOfTaskResponseDetails"/>
					<xs:element name="listOfDestinationResponseDetails" type="ListOfDestinationResponseDetails"/>
					<xs:element name="listOfGenericObjectResponseDetails" type="ListOfGenericObjectResponseDetails" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
@@ -655,6 +685,7 @@
				<xs:sequence>
					<xs:element name="ListOfXIDs" type="ListOfXids"/>
					<xs:element name="ListOfDIDs" type="ListOfDids"/>
					<xs:element name="ListOfGenericObjectIDs" type="ListOfGenericObjectIDs" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
@@ -664,6 +695,62 @@
			<xs:element name="xId" type="XId" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<!-- See section 6.4.7 -->
	<xs:complexType name="GetAllTaskDetailsRequest">
		<xs:complexContent>
			<xs:extension base="X1RequestMessage">
				<xs:sequence/>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<!-- See section 6.4.7 -->
	<xs:complexType name="GetAllTaskDetailsResponse">
		<xs:complexContent>
			<xs:extension base="X1ResponseMessage">
				<xs:sequence>
					<xs:element name="listOfTaskResponseDetails" type="ListOfTaskResponseDetails" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<!-- See section 6.4.8 -->
	<xs:complexType name="GetAllDestinationDetailsRequest">
		<xs:complexContent>
			<xs:extension base="X1RequestMessage">
				<xs:sequence/>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<!-- See section 6.4.8 -->
	<xs:complexType name="GetAllDestinationDetailsResponse">
		<xs:complexContent>
			<xs:extension base="X1ResponseMessage">
				<xs:sequence>
					<xs:element name="listOfDestinationResponseDetails" type="ListOfDestinationResponseDetails" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
<!-- See section 6.4.9 -->
	<xs:complexType name="GetAllGenericObjectDetailsRequest">
		<xs:complexContent>
			<xs:extension base="X1RequestMessage">
				<xs:sequence>
				<xs:element name="objectType" type="GenericObjectType" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<!-- See section 6.4.9 -->
	<xs:complexType name="GetAllGenericObjectDetailsResponse">
		<xs:complexContent>
			<xs:extension base="X1ResponseMessage">
				<xs:sequence>
					<xs:element name="listOfGenericObjectResponseDetails" type="ListOfGenericObjectResponseDetails" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<!-- See section 6.5.2 -->
	<xs:complexType name="ReportTaskIssueRequest">
		<xs:complexContent>
@@ -729,6 +816,7 @@
				<xs:sequence>
					<xs:element name="typeOfNeIssueMessage" type="TypeOfNeIssueMessage"/>
					<xs:element name="description" type="xs:string"/>
					<xs:element name="issueCode" type="xs:integer" minOccurs="0"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
@@ -739,6 +827,7 @@
			<xs:enumeration value="Warning"/>
			<xs:enumeration value="FaultCleared"/>
			<xs:enumeration value="FaultReport"/>
			<xs:enumeration value="Alert"/>
		</xs:restriction>
	</xs:simpleType>
	<!-- See section 6.5.4 -->
@@ -787,4 +876,143 @@
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:simpleType name="GenericObjectID">
		<xs:restriction base="etsi103280:UUID"/>
	</xs:simpleType>
	<xs:simpleType name="GenericObjectType">
		<xs:restriction base="xs:string">
			<xs:pattern value="Q\{[^{}]*\}.+"/>
		</xs:restriction>
	</xs:simpleType>
	<xs:complexType name="GenericObject" abstract="true">
		<xs:sequence>
			<xs:element name="objectId" type="GenericObjectID"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="CreateObjectRequest">
		<xs:complexContent>
			<xs:extension base="X1RequestMessage">
				<xs:sequence>
					<xs:element name="createObject" type="GenericObject"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="CreateObjectResponse">
		<xs:complexContent>
			<xs:extension base="X1ResponseMessage">
				<xs:sequence>
					<xs:element name="oK" type="OK"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="ModifyObjectRequest">
		<xs:complexContent>
			<xs:extension base="X1RequestMessage">
				<xs:sequence>
					<xs:element name="modifyObject" type="GenericObject"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="ModifyObjectResponse">
		<xs:complexContent>
			<xs:extension base="X1ResponseMessage">
				<xs:sequence>
					<xs:element name="oK" type="OK"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="GetObjectRequest">
		<xs:complexContent>
			<xs:extension base="X1RequestMessage">
				<xs:sequence>
					<xs:element name="objectId" type="GenericObjectID"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="GetObjectResponse">
		<xs:complexContent>
			<xs:extension base="X1ResponseMessage">
				<xs:sequence>
					<xs:element name="genericObjectResponseDetails" type="GenericObjectResponseDetails"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="GenericObjectResponseDetails">
		<xs:sequence>
			<xs:element name="object" type="GenericObject"/>
			<xs:element name="status" type="GenericObjectStatus" minOccurs="0"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="ListOfGenericObjectResponseDetails">
		<xs:sequence>
			<xs:element name="genericObjectResponseDetails" type="GenericObjectResponseDetails" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="GenericObjectStatus">
		<xs:sequence/>
	</xs:complexType>
	<xs:complexType name="DeleteObjectRequest">
		<xs:complexContent>
			<xs:extension base="X1RequestMessage">
				<xs:sequence>
					<xs:element name="objectId" type="GenericObjectID"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="DeleteObjectResponse">
		<xs:complexContent>
			<xs:extension base="X1ResponseMessage">
				<xs:sequence>
					<xs:element name="oK" type="OK"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="ListObjectsOfTypeRequest">
		<xs:complexContent>
			<xs:extension base="X1RequestMessage">
				<xs:sequence>
					<xs:element name="objectType" type="GenericObjectType"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="ListObjectsOfTypeResponse">
		<xs:complexContent>
			<xs:extension base="X1ResponseMessage">
				<xs:sequence>
					<xs:element name="listOfObjects" type="ListOfGenericObjectIDs"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="ListOfGenericObjectIDs">
		<xs:sequence>
			<xs:element name="objectId" type="GenericObjectID" minOccurs="0" maxOccurs="unbounded"/>
		</xs:sequence>
	</xs:complexType>
	<xs:complexType name="DeleteAllObjectsRequest">
		<xs:complexContent>
			<xs:extension base="X1RequestMessage">
				<xs:sequence>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
	<xs:complexType name="DeleteAllObjectsResponse">
		<xs:complexContent>
			<xs:extension base="X1ResponseMessage">
				<xs:sequence>
					<xs:element name="oK" type="OK"/>
				</xs:sequence>
			</xs:extension>
		</xs:complexContent>
	</xs:complexType>
</xs:schema>