F.3 XML Schema definition

29.1633GPPInterworking between the IP Multimedia (IM) Core Network (CN) subsystem and Circuit Switched (CS) networksTS

<?xml version="1.0" encoding="UTF-8"?>

<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" xmlns="http://uri.etsi.org/ngn/params/xml/simservs/pstn" xmlns:ns1="http://uri.etsi.org/ngn/params/xml/simservs/pstn" targetNamespace="http://uri.etsi.org/ngn/params/xml/simservs/pstn" elementFormDefault="qualified">

<xs:annotation>

<xs:documentation>XML Schema definition for mapping of some PSTN into SIP MIME Bodies</xs:documentation>

</xs:annotation>

<!-Definition of simple types

<xs:simpleType name="OneBitType">

<xs:restriction base="xs:string">

<xs:pattern value="[0-1]"/>

</xs:restriction>

</xs:simpleType>

<xs:simpleType name="TwoBitType">

<xs:restriction base="xs:string">

<xs:pattern value="[0-1][0-1]"/>

</xs:restriction>

</xs:simpleType>

<xs:simpleType name="ThreeBitType">

<xs:restriction base="xs:string">

<xs:pattern value="[0-1][0-1][0-1]"/>

</xs:restriction>

</xs:simpleType>

<xs:simpleType name="FourBitType">

<xs:restriction base="xs:string">

<xs:pattern value="[0-1][0-1][0-1][0-1]"/>

</xs:restriction>

</xs:simpleType>

<xs:simpleType name="FiveBitType">

<xs:restriction base="xs:string">

<xs:pattern value="[0-1][0-1][0-1][0-1][0-1]"/>

</xs:restriction>

</xs:simpleType>

<xs:simpleType name="SixBitType">

<xs:restriction base="xs:string">

<xs:pattern value="[0-1][0-1][0-1][0-1][0-1][0-1]"/>

</xs:restriction>

</xs:simpleType>

<xs:simpleType name="SevenBitType">

<xs:restriction base="xs:string">

<xs:pattern value="[0-1][0-1][0-1][0-1][0-1][0-1][0-1]"/>

</xs:restriction>

</xs:simpleType>

<!-Definition of complex types

<!-Definition of BearerCapability Octets

<xs:complexType name="BCOctet3Type">

<xs:sequence>

<xs:element name="CodingStandard" type="TwoBitType"/>

<xs:element name="InformationTransferCapability" type="FiveBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="BCOctet4Type">

<xs:sequence>

<xs:element name="TransferMode" type="TwoBitType"/>

<xs:element name="InformationTransferRate" type="FiveBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="BCOctet4-1Type">

<xs:sequence>

<xs:element name="RateMultiplier" type="SevenBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="BCOctet5Type">

<xs:sequence>

<xs:element name="Layer1Identification" type="TwoBitType"/>

<xs:element name="UserInfoLayer1Protocol" type="FiveBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="BCOctet5aType">

<xs:sequence>

<xs:element name="SynchronousAsynchronous" type="OneBitType"/>

<xs:element name="Negotiation" type="OneBitType"/>

<xs:element name="UserRate" type="FiveBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="BCOctet5bV110Type">

<xs:sequence>

<xs:element name="IntermediateRate" type="TwoBitType"/>

<xs:element name="NIConTX" type="OneBitType"/>

<xs:element name="NIConRX" type="OneBitType"/>

<xs:element name="FlowControlOnTX" type="OneBitType"/>

<xs:element name="FlowControlOnRX" type="OneBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="BCOctet5bV120Type">

<xs:sequence>

<xs:element name="RateAdaptionHeader" type="OneBitType"/>

<xs:element name="MultipleFrameEstablishmentSupport" type="OneBitType"/>

<xs:element name="ModeOfOperation" type="OneBitType"/>

<xs:element name="LogicalLinkIdentifier" type="OneBitType"/>

<xs:element name="Assignor" type="OneBitType"/>

<xs:element name="InbandOutbandNegotiation" type="OneBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="BCOctet5cType">

<xs:sequence>

<xs:element name="NumberOfStopBits" type="TwoBitType"/>

<xs:element name="NumberOfDataBits" type="TwoBitType"/>

<xs:element name="Parity" type="ThreeBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="BCOctet5dType">

<xs:sequence>

<xs:element name="DuplexMode" type="OneBitType"/>

<xs:element name="ModemType" type="SixBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="BCOctet6Type">

<xs:sequence>

<xs:element name="Layer2Identification" type="TwoBitType"/>

<xs:element name="UserInfoLayer2Protocol" type="FiveBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="BCOctet7Type">

<xs:sequence>

<xs:element name="Layer3Identification" type="TwoBitType"/>

<xs:element name="UserInfoLayer3Protocol" type="FiveBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="BCOctet7aType">

<xs:sequence>

<xs:element name="AdditionalLayer3Info" type="FourBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="BCOctet7bType">

<xs:sequence>

<xs:element name="AdditionalLayer3Info" type="FourBitType"/>

</xs:sequence>

</xs:complexType>

<!-Definition of High Layer Compatibility Octets

<xs:complexType name="HLOctet3Type">

<xs:sequence>

<xs:element name="CodingStandard" type="TwoBitType"/>

<xs:element name="Interpretation" type="ThreeBitType"/>

<xs:element name="PresentationMethod" type="TwoBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="HLOctet4Type">

<xs:sequence>

<xs:element name="HighLayerCharacteristics" type="SevenBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="HLOctet4aMaintenanceType">

<xs:sequence>

<xs:element name="HighLayerCharacteristics" type="SevenBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="HLOctet4aAudioType">

<xs:sequence>

<xs:element name="VideoTelephonyCharacteristics" type="SevenBitType"/>

</xs:sequence>

</xs:complexType>

<!-Definition of Low Layer Compatibility Octets

<xs:complexType name="LLOctet3Type">

<xs:sequence>

<xs:element name="CodingStandard" type="TwoBitType"/>

<xs:element name="InformationTransferCapability" type="FiveBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet3aType">

<xs:sequence>

<xs:element name="NegotiationIndicator" type="OneBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet4Type">

<xs:sequence>

<xs:element name="TransferMode" type="TwoBitType"/>

<xs:element name="InformationTransferRate" type="FiveBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet4-1Type">

<xs:sequence>

<xs:element name="RateMultiplier" type="SevenBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet5Type">

<xs:sequence>

<xs:element name="Layer1Identification" type="TwoBitType"/>

<xs:element name="UserInfoLayer1Protocol" type="FiveBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet5aType">

<xs:sequence>

<xs:element name="SynchronousAsynchronous" type="OneBitType"/>

<xs:element name="Negotiation" type="OneBitType"/>

<xs:element name="UserRate" type="FiveBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet5bV110Type">

<xs:sequence>

<xs:element name="IntermediateRate" type="TwoBitType"/>

<xs:element name="NIConTX" type="OneBitType"/>

<xs:element name="NIConRX" type="OneBitType"/>

<xs:element name="FlowControlOnTX" type="OneBitType"/>

<xs:element name="FlowControlOnRX" type="OneBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet5bV120Type">

<xs:sequence>

<xs:element name="RateAdaptionHeader" type="OneBitType"/>

<xs:element name="MultipleFrameEstablishmentSupport" type="OneBitType"/>

<xs:element name="ModeOfOperation" type="OneBitType"/>

<xs:element name="LogicalLinkIdentifier" type="OneBitType"/>

<xs:element name="Assignor" type="OneBitType"/>

<xs:element name="InbandOutbandNegotiation" type="OneBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet5cType">

<xs:sequence>

<xs:element name="NumberOfStopBits" type="TwoBitType"/>

<xs:element name="NumberOfDataBits" type="TwoBitType"/>

<xs:element name="Parity" type="ThreeBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet5dType">

<xs:sequence>

<xs:element name="DuplexMode" type="OneBitType"/>

<xs:element name="ModemType" type="SixBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet6Type">

<xs:sequence>

<xs:element name="Layer2Identification" type="TwoBitType"/>

<xs:element name="UserInfoLayer2Protocol" type="FiveBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet6aHDLCType">

<xs:sequence>

<xs:element name="Mode" type="TwoBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet6aUserSpecificType">

<xs:sequence>

<xs:element name="UserSpecificLayer2Information" type="SevenBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet6bType">

<xs:sequence>

<xs:element name="WindowSize" type="SevenBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet7Type">

<xs:sequence>

<xs:element name="Layer3Identification" type="TwoBitType"/>

<xs:element name="UserInfoLayer3Protocol" type="FiveBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet7aUserSpecificType">

<xs:sequence>

<xs:element name="OptionalLayer3Information" type="SevenBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet7aX25Type">

<xs:sequence>

<xs:element name="Mode" type="TwoBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet7bX25Type">

<xs:sequence>

<xs:element name="DefaultPacketSize" type="FourBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet7cType">

<xs:sequence>

<xs:element name="PacketWindowSize" type="SevenBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet7aTR9577Type">

<xs:sequence>

<xs:element name="AdditionalLayer3Info" type="FourBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LLOctet7bTR9577Type">

<xs:sequence>

<xs:element name="AdditionalLayer3Info" type="FourBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="DispOctet3Type">

<xs:sequence>

<xs:element name="DisplayInformation" type="SevenBitType"/>

</xs:sequence>

</xs:complexType>

<!-Definition of the information elements

<xs:complexType name="BearerCapabilityType">

<xs:sequence>

<xs:element name="Bcoctet3" type="BCOctet3Type"/>

<xs:element name="Bcoctet4" type="BCOctet4Type"/>

<xs:element name="Bcoctet4-1" type="BCOctet4-1Type" minOccurs="0"/>

<xs:element name="Bcoctet5" type="BCOctet5Type" minOccurs="0"/>

<xs:element name="Bcoctet5a" type="BCOctet5aType" minOccurs="0"/>

<xs:element name="Bcoctet5bV110" type="BCOctet5bV110Type" minOccurs="0"/>

<xs:element name="Bcoctet5bV120" type="BCOctet5bV120Type" minOccurs="0"/>

<xs:element name="Bcoctet5c" type="BCOctet5cType" minOccurs="0"/>

<xs:element name="Bcoctet5d" type="BCOctet5dType" minOccurs="0"/>

<xs:element name="Bcoctet6" type="BCOctet6Type" minOccurs="0"/>

<xs:element name="Bcoctet7" type="BCOctet7Type" minOccurs="0"/>

<xs:element name="Bcoctet7a" type="BCOctet7aType" minOccurs="0"/>

<xs:element name="Bcoctet7b" type="BCOctet7bType" minOccurs="0"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="HighLayerCompatibilityType">

<xs:sequence>

<xs:element name="HLOctet3" type="HLOctet3Type"/>

<xs:element name="HLOctet4" type="HLOctet4Type"/>

<xs:element name="HLOctet4aMaintenance" type="HLOctet4aMaintenanceType" minOccurs="0"/>

<xs:element name="HLOctet4Audio" type="HLOctet4aAudioType" minOccurs="0"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="LowLayerCompatibilityType">

<xs:sequence>

<xs:element name="LLOctet3" type="LLOctet3Type"/>

<xs:element name="LLOctet3a" type="LLOctet3aType" minOccurs="0"/>

<xs:element name="LLOctet4" type="LLOctet4Type"/>

<xs:element name="LLOctet4-1" type="LLOctet4-1Type" minOccurs="0"/>

<xs:element name="LLOctet5" type="LLOctet5Type" minOccurs="0"/>

<xs:element name="LLOctet5a" type="LLOctet5aType" minOccurs="0"/>

<xs:element name="LLOctet5bV110" type="LLOctet5bV110Type" minOccurs="0"/>

<xs:element name="LLOctet5bV120" type="LLOctet5bV120Type" minOccurs="0"/>

<xs:element name="LLOctet5c" type="LLOctet5cType" minOccurs="0"/>

<xs:element name="LLOctet5d" type="LLOctet5dType" minOccurs="0"/>

<xs:element name="LLOctet6" type="LLOctet6Type" minOccurs="0"/>

<xs:element name="LLOctet6aHDLC" type="LLOctet6aHDLCType" minOccurs="0"/>

<xs:element name="LLOctet6aUserSpecific" type="LLOctet6aUserSpecificType" minOccurs="0"/>

<xs:element name="LLOctet6b" type="LLOctet6bType" minOccurs="0"/>

<xs:element name="LLOctet7" type="LLOctet7Type" minOccurs="0"/>

<xs:element name="LLOctet7aUserSpecific" type="LLOctet7aUserSpecificType" minOccurs="0"/>

<xs:element name="LLOctet7aX25" type="LLOctet7aX25Type" minOccurs="0"/>

<xs:element name="LLOctet7bX25" type="LLOctet7bX25Type" minOccurs="0"/>

<xs:element name="LLOctet7c" type="LLOctet7cType" minOccurs="0"/>

<xs:element name="LLOctet7aTR9577" type="LLOctet7aTR9577Type" minOccurs="0"/>

<xs:element name="LLOctet7bTR9577" type="LLOctet7bTR9577Type" minOccurs="0"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="DisplayType">

<xs:sequence>

<xs:element name="DispOctet3" type="DispOctet3Type"/>

</xs:sequence>

</xs:complexType>

<!-Definition of progress indicator

<xs:complexType name="ProgressOctet3Type">

<xs:sequence>

<xs:element name="CodingStandard" type="TwoBitType"/>

<xs:element name="Location" type="FourBitType "/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="ProgressOctet4Type">

<xs:sequence>

<xs:element name="ProgressDescription" type="SevenBitType"/>

</xs:sequence>

</xs:complexType>

<xs:complexType name="ProgressIndicatorType">

<xs:sequence>

<xs:element name="ProgressOctet3" type="ProgressOctet3Type"/>

<xs:element name="ProgressOctet4" type="ProgressOctet4Type"/>

</xs:sequence>

</xs:complexType>

<!-Definition of document structure

<xs:element name="PSTN">

<xs:complexType>

<xs:sequence>

<xs:element name="BearerCapability" type="BearerCapabilityType" minOccurs="0" maxOccurs="2"/>

<xs:element name="HighLayerCompatibility" type="HighLayerCompatibilityType" minOccurs="0" maxOccurs="2"/>

<xs:element name="LowLayerCompatibility" type="LowLayerCompatibilityType" minOccurs="0"/>

<xs:element name="ProgressIndicator" type="ProgressIndicatorType" minOccurs="0" maxOccurs="unbounded"/>

<xs:element name="Display" type="DisplayType" minOccurs="0" maxOccurs="unbounded"/>

<xs:element name="sendingCompleteIndication" minOccurs="0"/>

</xs:sequence>

</xs:complexType>

</xs:element>

</xs:schema>