Skip to content
TS_103_221_01.xsd 43 KiB
Newer Older
<?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" 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.14.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"/>
    <xs:element name="X1TopLevelErrorResponse" type="TopLevelErrorResponse"/>
    <xs:complexType name="RequestContainer">
        <xs:sequence>
            <xs:element name="x1RequestMessage" type="X1RequestMessage" minOccurs="1" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="ResponseContainer">
        <xs:sequence>
            <xs:element name="x1ResponseMessage" type="X1ResponseMessage" minOccurs="1" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>
    <!-- Top-level Message definitions -->
    <!-- See section 6.1 -->
    <xs:complexType name="X1RequestMessage">
        <xs:sequence>
            <xs:element name="admfIdentifier" type="AdmfIdentifier"/>
            <xs:element name="neIdentifier" type="NeIdentifier"/>
            <xs:element name="messageTimestamp" type="etsi103280:QualifiedMicrosecondDateTime"/>
            <xs:element name="version" type="Version"/>
            <xs:element name="x1TransactionId" type="X1TransactionId"/>
        </xs:sequence>
    </xs:complexType>
    <!-- See section 6.1 -->
    <xs:complexType name="X1ResponseMessage">
        <xs:sequence>
            <xs:element name="admfIdentifier" type="AdmfIdentifier"/>
            <xs:element name="neIdentifier" type="NeIdentifier"/>
            <xs:element name="messageTimestamp" type="etsi103280:QualifiedMicrosecondDateTime"/>
            <xs:element name="version" type="Version"/>
            <xs:element name="x1TransactionId" type="X1TransactionId"/>
        </xs:sequence>
    </xs:complexType>
    <!-- See section 5.1 -->
    <xs:simpleType name="XId">
        <xs:restriction base="etsi103280:UUID"/>
    </xs:simpleType>
    <xs:simpleType name="DId">
        <xs:restriction base="etsi103280:UUID"/>
    </xs:simpleType>
    <!-- See section 5.2 -->
    <xs:simpleType name="X1TransactionId">
        <xs:restriction base="etsi103280:UUID"/>
    </xs:simpleType>
    <!-- See section 6.1 -->
    <xs:simpleType name="AdmfIdentifier">
        <xs:restriction base="xs:token"/>
    </xs:simpleType>
    <!-- See section 6.1 -->
    <xs:simpleType name="NeIdentifier">
        <xs:restriction base="xs:token"/>
    </xs:simpleType>
    <!-- See section 6.1 -->
    <xs:simpleType name="Version">
        <xs:restriction base="xs:string">
            <xs:pattern value="v1\.\d+\.\d+"/>
        </xs:restriction>
    </xs:simpleType>
    <!-- Error Reponse -->
    <xs:complexType name="TopLevelErrorResponse">
        <xs:sequence>
            <xs:element name="admfIdentifier" type="AdmfIdentifier"/>
            <xs:element name="neIdentifier" type="NeIdentifier"/>
            <xs:element name="messageTimestamp" type="etsi103280:QualifiedMicrosecondDateTime"/>
            <xs:element name="version" type="Version"/>
        </xs:sequence>
    </xs:complexType>
    <!-- See section 6.7 -->
    <xs:complexType name="ErrorResponse">
        <xs:complexContent>
            <xs:extension base="X1ResponseMessage">
                <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>
    </xs:complexType>
    <xs:simpleType name="RequestMessageType">
        <xs:restriction base="xs:string">
            <xs:enumeration value="ActivateTask"/>
            <xs:enumeration value="ModifyTask"/>
            <xs:enumeration value="DeactivateTask"/>
            <xs:enumeration value="DeactivateAllTasks"/>
            <xs:enumeration value="GetTaskDetails"/>
            <xs:enumeration value="CreateDestination"/>
            <xs:enumeration value="ModifyDestination"/>
            <xs:enumeration value="RemoveDestination"/>
            <xs:enumeration value="RemoveAllDestinations"/>
            <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">
        <xs:sequence>
            <xs:element name="errorCode" type="xs:integer"/>
            <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">
        <xs:complexContent>
            <xs:extension base="X1RequestMessage">
                <xs:sequence>
                    <xs:element name="taskDetails" type="TaskDetails"/>
                </xs:sequence>
            </xs:extension>
        </xs:complexContent>
    </xs:complexType>
    <!-- See section 6.2.1.2 -->
    <xs:complexType name="TaskDetails">
        <xs:sequence>
            <xs:element name="xId" type="XId"/>
            <xs:element name="targetIdentifiers" type="ListOfTargetIdentifiers"/>
            <xs:element name="deliveryType" type="DeliveryType"/>
            <xs:element name="listOfDIDs" type="ListOfDids"/>
            <xs:element name="listOfMediationDetails" type="ListOfMediationDetails" minOccurs="0"/>
            <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>
    <xs:complexType name="ListOfTargetIdentifiers">
        <xs:sequence>
            <xs:element name="targetIdentifier" type="TargetIdentifier" minOccurs="1" maxOccurs="unbounded"/>
        </xs:sequence>
    </xs:complexType>
    <xs:complexType name="TargetIdentifier">
        <xs:choice>
            <xs:element name="e164Number" type="etsi103280:InternationalE164"/>
            <xs:element name="imsi" type="etsi103280:IMSI"/>
            <xs:element name="imei" type="etsi103280:IMEI"/>
            <xs:element name="macAddress" type="etsi103280:MACAddress"/>
            <xs:element name="ipv4Address" type="etsi103280:IPv4Address"/>
            <xs:element name="ipv6Address" type="etsi103280:IPv6Address"/>
            <xs:element name="ipv4Cidr" type="etsi103280:IPCIDR"/>
            <xs:element name="ipv6Cidr" type="etsi103280:IPv6CIDR"/>
            <xs:element name="tcpPort" type="etsi103280:TCPPort"/>
            <xs:element name="tcpPortRange" type="etsi103280:TCPPortRange"/>
            <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"/>
            <xs:element name="impu" type="Impu"/>
            <xs:element name="impi" type="Impi"/>
            <xs:element name="nai" type="etsi103280:NAI"/>
            <xs:element name="radiusAttribute" type="xs:hexBinary"/>
            <xs:element name="gtpuTunnelId" type="GtpTunnelId"/>
            <xs:element name="gtpcTunnelId" type="GtpTunnelId"/>
            <xs:element name="callPartyRole" type="CallPartyRole"/>
            <xs:element name="nonLocalIdentifier" type="NonLocalIdentifier"/>
            <xs:element name="supiimsi" type="etsi103280:SUPIIMSI"/>
            <xs:element name="supinai" type="etsi103280:SUPINAI"/>
            <xs:element name="suci" type="etsi103280:SUCI"/>
            <xs:element name="peiImei" type="etsi103280:PEIIMEI"/>
            <xs:element name="peiImeiCheckDigit" type="etsi103280:PEIIMEICheckDigit"/>
            <xs:element name="peiImeisv" type="etsi103280:PEIIMEISV"/>
            <xs:element name="gpsiMsisdn" type="etsi103280:GPSIMSISDN"/>
            <xs:element name="gpsiNai" type="etsi103280:GPSINAI"/>
Loading full blame...