11 Message functional definitions and contents
24.3343GPPProximity-services (ProSe) User Equipment (UE) to ProSe function protocol aspectsRelease 17Stage 3TS
11.1 Overview
This clause contains the definition and contents of the messages used in the procedures described in the present document.
11.2 ProSe discovery messages
11.2.1 General
This subclause defines the XML schema and MIME type related to ProSe direct discovery messages and EPC-level ProSe discovery messages.
This subclause also defines the format of the PC5_DISCOVERY message transmitted over the PC5 interface.
11.2.2 application/3gpp-prose+xml
The MIME type is used to carry information related to the ProSe discovery operation. It shall be coded as an XML document containing one of the following ProSe discovery messages:
– DISCOVERY_REQUEST;
– DISCOVERY_RESPONSE;
– MATCH_REPORT;
– MATCH_REPORT_ACK;
– DISCOVERY_UPDATE_REQUEST;
– DISCOVERY_UPDATE_RESPONSE;
– ANNOUNCING_ALERT_REQUEST;
– ANNOUNCING_ALERT_RESPONSE;
– UE_REGISTRATION_REQUEST;
– UE_REGISTRATION_RESPONSE;
– APPLICATION_REGISTRATION_REQUEST;
– APPLICATION_REGISTRATION_RESPONSE;
– PROXIMITY_REQUEST;
– PROXIMITY_REQUEST_RESPONSE;
– PROXIMITY_ALERT;
– UE_DEREGISTRATION_REQUEST;
– UE_DEREGISTRATION_RESPONSE;
– CANCEL_PROXIMITY_REQUEST;
– CANCEL_PROXIMITY_RESPONSE;
– PROXIMITY_REQUEST_VALIDATION; or
– PROXIMITY_REQUEST_VALIDATION_RESPONSE.
Each of those messages is presented in the XML document as an XML element named after the corresponding message.
11.2.3 XML Schema
Implementations in compliance with the present document shall implement the XML schema defined below for messages used in ProSe direct discovery procedures over PC3 interface.
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns="urn:3GPP:ns:ProSe:Discovery:2014"
elementFormDefault="qualified"
targetNamespace="urn:3GPP:ns:ProSe:Discovery:2014">
<xs:annotation>
<xs:documentation>
Info for ProSe Discovery Control Messages Syntax
</xs:documentation>
</xs:annotation>
<!– Complex types defined for parameters with complicated structure –>
<xs:complexType name="AppID-info">
<xs:sequence>
<xs:element name="OS-ID">
<xs:simpleType>
<xs:restriction base="xs:hexBinary">
<xs:length value="16"/>
</xs:restriction>
</xs:simpleType>
</xs:element>
<xs:element name="OS-App-ID" type="xs:string"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="PLMN-info">
<xs:sequence>
<xs:element name="mcc" type="xs:integer"/>
<xs:element name="mnc" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="IMSI-info">
<xs:sequence>
<xs:element name="MCC" type="xs:integer"/>
<xs:element name="MNC" type="xs:integer"/>
<xs:element name="MSIN" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="DiscFilter-info">
<xs:sequence>
<xs:element name="ProSe-Application-Code" type="xs:hexBinary"/>
<xs:element name="ProSe-Application-Mask" type="xs:hexBinary" maxOccurs="unbounded"/>
<xs:element name="TTL-timer-T4002" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="MatchingFilter-info">
<xs:sequence>
<xs:element name="Code" type="xs:hexBinary"/>
<xs:element name="Mask" type="xs:hexBinary" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="DUCK-info">
<xs:sequence>
<xs:element name="discovery-user-confidentiality-key" type="xs:hexBinary"/>
<xs:element name="encrypted-bitmask" type="xs:hexBinary"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="RestrictedDiscFilter-info">
<xs:sequence>
<xs:element name="filter" type="MatchingFilter-info" maxOccurs="unbounded"/>
<xs:element name="TTL-timer-T4009" type="xs:integer"/>
<xs:element name="restricted-security" type="Restricted-Security-info" minOccurs="0" />
<xs:element name="RPAUID" type="xs:string" minOccurs="0" />
<xs:element name="DUSK" type="xs:hexBinary" minOccurs="0" />
<xs:element name="DUIK" type="xs:hexBinary" minOccurs="0" />
<xs:element name="MIC-check-indicator" type="xs:boolean" minOccurs="0" />
<xs:element name="DUCK" type="DUCK-info" minOccurs="0" />
<xs:element name="metadata-indicator" type="xs:integer" minOccurs="0"/>
<xs:element name="metadata" type="xs:string" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="RestrictedCodeSuffixRange-info">
<xs:sequence>
<xs:element name="beginning-suffix-code" type="xs:hexBinary" />
<xs:element name="ending-suffix-code" type="xs:hexBinary" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="RestrictedMonitoringUpdate-info">
<xs:sequence>
<xs:element name="updated-filter" type="RestrictedDiscFilter-info" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="RestrictedAnnouncingUpdate-info">
<xs:sequence>
<xs:element name="ProSe-Restricted-Code" type="xs:hexBinary" />
<xs:element name="validity-timer-T4007" type="xs:integer" />
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="MonitoringUpdate-info">
<xs:sequence>
<xs:element name="updated-filter" type="DiscFilter-info" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="AnnouncingUpdate-info">
<xs:sequence>
<xs:element name="ProSe-Application-Code" type="xs:hexBinary" />
<xs:element name="validity-timer-T4000" type="xs:integer" />
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="Update-Option-info">
<xs:choice>
<xs:element name="update-info-restricted-announce" type="RestrictedAnnouncingUpdate-info" />
<xs:element name="update-info-restricted-monitor" type="RestrictedMonitoringUpdate-info" />
<xs:element name="update-info-open-annnounce" type="AnnouncingUpdate-info" />
<xs:element name="update-info-open-monitor" type="MonitoringUpdate-info"/>
<xs:element name="anyExt" type="anyExtType" />
<xs:any namespace="##other" processContents="lax"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="Restricted-Code-Option-info">
<xs:choice>
<xs:element name="ProSe-Restricted-Code" type="xs:hexBinary" />
<xs:element name="ProSe-Response-Code" type="xs:hexBinary" />
<xs:element name="anyExt" type="anyExtType" />
<xs:any namespace="##other" processContents="lax"/>
</xs:choice>
</xs:complexType>
<xs:complexType name="WLANAssistance-info">
<xs:sequence>
<xs:element name="ssid" type="xs:string"/>
<xs:element name="WLAN-secret-key" type="xs:string"/>
<xs:element name="group-owner-indication" type="xs:boolean"/>
<xs:element name="P2P-device-address-self" type="xs:hexBinary" minOccurs="0"/>
<xs:element name="P2P-device-address-peer" type="xs:hexBinary" minOccurs="0"/>
<xs:element name="operation-channel" type="xs:integer"/>
<xs:element name="validity-time" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="Subquery-info">
<xs:sequence>
<xs:element name="ProSe-Rquery-Code" type="xs:hexBinary" />
<xs:element name="response-filter" type="MatchingFilter-info" maxOccurs="unbounded"/>
<xs:element name="validity-timer-T4013" type="xs:integer"/>
<xs:element name="restricted-security" type="Restricted-Security-info" minOccurs="0" />
<xs:element name="RPAUID" type="xs:string" minOccurs="0" />
<xs:element name="metadata" type="xs:string" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="Restricted-Security-info">
<xs:sequence>
<xs:element name="DUSK" type="xs:hexBinary" minOccurs="0" />
<xs:element name="DUIK" type="xs:hexBinary" minOccurs="0" />
<xs:element name="DUCK" type="DUCK-info" minOccurs="0" />
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="ApplicationCodeSuffixRange-info">
<xs:sequence>
<xs:element name="beginning-suffix-code" type="xs:hexBinary" />
<xs:element name="ending-suffix-code" type="xs:hexBinary" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="ProSeApplicationCodeACE-info">
<xs:sequence>
<xs:element name=" ProSe-Application-Code-Prefix" type="xs:hexBinary" />
<xs:element name=" ProSe-Application-Code-Suffix-Range" type="ApplicationCodeSuffixRange-info" maxOccurs="unbounded" />
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<!– Complex types defined for transaction-level –>
<xs:complexType name="AnnounceRsp-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="ProSe-Application-Code" type="xs:hexBinary" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="ProSe-Application-Code-ACE" type="ProSeApplicationCodeACE-info" minOccurs="0"/>
<xs:element name="validity-timer-T4000" type="xs:integer" minOccurs="0" />
<xs:element name="discovery-key" type="xs:hexBinary" minOccurs="0" />
<xs:element name="discovery-entry-ID" type="xs:integer" minOccurs="0" />
<xs:element name="ACE-enabled-indicator" type="xs:integer" minOccurs="0"/>
<xs:element name="PC5-tech" type="xs:integer" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="MonitorRsp-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="discovery-filter" type="DiscFilter-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="discovery-entry-ID" type="xs:integer" minOccurs="0" />
<xs:element name="ACE-enabled-indicator" type="xs:integer" minOccurs="0"/>
<xs:element name="PC5-tech" type="xs:integer" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="DiscReq-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="command" type="xs:integer"/>
<xs:element name="UE-identity" type="IMSI-info"/>
<xs:element name="ProSe-Application-ID" type="xs:string"/>
<xs:element name="application-identity" type="AppID-info"/>
<xs:element name="discovery-entry-ID" type="xs:integer" minOccurs="0" />
<xs:element name="Requested-Timer" type="xs:integer" minOccurs="0" />
<xs:element name="metadata" type="xs:string" minOccurs="0"/>
<xs:element name="Announcing-PLMN-ID" type="PLMN-info" minOccurs="0" />
<xs:element name="ACE-enabled-indicator" type="xs:integer" minOccurs="0"/>
<xs:element name="PC5-tech" type="xs:integer" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="RestrictedDiscReq-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="command" type="xs:integer"/>
<xs:element name="UE-identity" type="IMSI-info"/>
<xs:element name="RPAUID" type="xs:string"/>
<xs:element name="application-identity" type="AppID-info"/>
<xs:element name="discovery-type" type="xs:integer"/>
<xs:element name="ACE-enabled-indicator" type="xs:integer" minOccurs="0"/>
<xs:element name="announcing-type" type="xs:integer" minOccurs="0"/>
<xs:element name="application-level-container" type="xs:hexBinary" minOccurs="0"/>
<xs:element name="discovery-model" type="xs:integer" minOccurs="0"/>
<xs:element name="Announcing-PLMN-ID" type="PLMN-info" minOccurs="0" />
<xs:element name="discovery-entry-ID" type="xs:integer"/>
<xs:element name="Requested-Timer" type="xs:integer" minOccurs="0" />
<xs:element name="PC5-tech" type="xs:integer" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="RestrictedAnnounceRsp-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="ProSe-Restricted-Code" type="xs:hexBinary" minOccurs="0"/>
<xs:element name="ProSe-Restricted-Code-Suffix-Range" type="RestrictedCodeSuffixRange-info" minOccurs="0"/>
<xs:element name="validity-timer-T4007" type="xs:integer" minOccurs="0"/>
<xs:element name="ACE-enabled-indicator" type="xs:integer" minOccurs="0" />
<xs:element name="restricted-code-security-material" type="Restricted-Security-info" minOccurs="0" />
<xs:element name="on-demand-announcing-enabled-indicator" type="xs:boolean" minOccurs="0" />
<xs:element name="discovery-entry-ID" type="xs:integer"/>
<xs:element name="PC5-tech" type="xs:integer" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="RestrictedMonitorRsp-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="restricted-discovery-filter" type="RestrictedDiscFilter-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="ACE-enabled-indicator" type="xs:integer" minOccurs="0" />
<xs:element name="application-level-container" type="xs:hexBinary"/>
<xs:element name="discovery-entry-ID" type="xs:integer"/>
<xs:element name="PC5-tech" type="xs:integer" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="RestrictedDiscovereeRsp-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="ProSe-Response-Code" type="xs:hexBinary" />
<xs:element name="query-filter" type="MatchingFilter-info" maxOccurs="unbounded"/>
<xs:element name="validity-timer-T4011" type="xs:integer"/>
<xs:element name="restricted-code-security-material " type="Restricted-Security-info" minOccurs="0" />
<xs:element name="discovery-entry-ID" type="xs:integer"/>
<xs:element name="PC5-tech" type="xs:integer" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="RestrictedDiscovererRsp-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="subquery-result" type="Subquery-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="discovery-entry-ID" type="xs:integer"/>
<xs:element name="PC5-tech" type="xs:integer" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="RejectRsp-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="PC3-control-protocol-cause-value" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="UE-RejectRsp-info">
<xs:sequence>
<xs:element name="prose-function-transaction-ID" type="xs:integer"/>
<xs:element name="PC3-control-protocol-cause-value" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="MatchRep-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="ProSe-Application-Code" type="xs:hexBinary"/>
<xs:element name="UE-identity" type="IMSI-info"/>
<xs:element name="Monitored-PLMN-ID" type="PLMN-info"/>
<xs:element name="VPLMN-ID" type="PLMN-info" minOccurs="0"/>
<xs:element name="MIC" type="xs:hexBinary"/>
<xs:element name="UTC-based-counter" type="xs:hexBinary"/>
<xs:element name="Metadata-flag" type="xs:boolean"/>
<xs:element name="MessageType" type="xs:hexBinary" minOccurs="0"/>
<xs:element name="PC5-tech" type="xs:integer" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="RestrictedMatch-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="UE-identity" type="IMSI-info"/>
<xs:element name="discovery-type" type="xs:integer"/>
<xs:element name="application-identity" type="AppID-info"/>
<xs:element name="RPAUID" type="xs:string"/>
<xs:element name="Restricted-Code-Discovered" type="Restricted-Code-Option-info" />
<xs:element name="MIC" type="xs:hexBinary" minOccurs="0"/>
<xs:element name="MessageType" type="xs:hexBinary" minOccurs="0"/>
<xs:element name="UTC-based-counter" type="xs:hexBinary" minOccurs="0"/>
<xs:element name="Metadata-flag" type="xs:boolean" />
<xs:element name="PC5-tech" type="xs:integer" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="MatchAck-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="ProSe-Application-ID" type="xs:string"/>
<xs:element name="validity-timer-T4004" type="xs:integer"/>
<xs:element name="metadata" type="xs:string" minOccurs="0"/>
<xs:element name="metadata-index-mask" type="xs:hexBinary" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="match-report-refresh-timer-T4006" type="xs:integer"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="RestrictedMatchAck-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="application-identity" type="AppID-info"/>
<xs:element name="RPAUID" type="xs:string"/>
<xs:element name="validity-timer-T4016" type="xs:integer"/>
<xs:element name="metadata" type="xs:string" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="match-report-refresh-timer-T4017" type="xs:integer"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="MatchReject-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="PC3-control-protocol-cause-value" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="DiscUpdateReq-info">
<xs:sequence>
<xs:element name="prose-function-transaction-ID" type="xs:integer"/>
<xs:element name="UE-identity" type="IMSI-info"/>
<xs:element name="discovery-entry-ID" type="xs:integer"/>
<xs:element name="update-info" type="Update-Option-info" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="DiscUpdateRsp-info">
<xs:sequence>
<xs:element name="prose-function-transaction-ID" type="xs:integer"/>
<xs:element name="discovery-entry-ID" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="AnnouncingAlertReq-info">
<xs:sequence>
<xs:element name="prose-function-transaction-ID" type="xs:integer"/>
<xs:element name="RPAUID" type="xs:string"/>
<xs:element name="UE-identity" type="IMSI-info"/>
<xs:element name="discovery-entry-ID" type="xs:integer"/>
<xs:element name="ProSe-Restricted-Code" type="xs:hexBinary"/>
<xs:element name="ProSe-Restricted-Code-Suffix-Range" type="RestrictedCodeSuffixRange-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="AnnouncingAlertRsp-info">
<xs:sequence>
<xs:element name="prose-function-transaction-ID" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<!– Complex types defined for Message-level –>
<xs:complexType name="prose-direct-discovery-request">
<xs:sequence>
<xs:element name="discovery-request" type="DiscReq-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="restricted-discovery-request" type="RestrictedDiscReq-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="network-initiated-transaction-method" type="xs:integer"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-direct-discovery-response">
<xs:sequence>
<xs:element name="Current-Time" type="xs:dateTime"/>
<xs:element name="Max-Offset" type="xs:integer"/>
<xs:element name="response-announce" type="AnnounceRsp-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="response-monitor" type="MonitorRsp-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="restricted-announce-response" type="RestrictedAnnounceRsp-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="restricted-monitor-response" type="RestrictedMonitorRsp-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="restricted-discoveree-response" type="RestrictedDiscovereeRsp-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="restricted-discoverer-response" type="RestrictedDiscovererRsp-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="response-reject" type="RejectRsp-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="network-initiated-transaction-method" type="xs:integer"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-direct-discovery-update-request">
<xs:sequence>
<xs:element name="discovery-update-request" type="DiscUpdateReq-info" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-direct-discovery-update-response">
<xs:sequence>
<xs:element name="response-update" type="DiscUpdateRsp-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="response-reject" type="UE-RejectRsp-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-direct-discovery-match-report">
<xs:sequence>
<xs:element name="match-report" type="MatchRep-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="restricted-match" type="RestrictedMatch-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-direct-discovery-match-report-ack">
<xs:sequence>
<xs:element name="Current-Time" type="xs:dateTime"/>
<xs:element name="match-ack" type="MatchAck-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="match-reject" type="MatchReject-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="restricted-match-ack" type="RestrictedMatchAck-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-direct-discovery-announcing-alert-request">
<xs:sequence>
<xs:element name="announcing-alert-request" type="AnnouncingAlertReq-info" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-direct-discovery-announcing-alert-response">
<xs:sequence>
<xs:element name="announcing-alert-response" type="AnnouncingAlertRsp-info" maxOccurs="unbounded"/>
<xs:element name="response-reject" type="UE-RejectRsp-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<!– extension allowed –>
<xs:complexType name="DiscMsgExtType">
<xs:sequence>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<!– XML attribute for any future extensions –>
<xs:complexType name="anyExtType">
<xs:sequence>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<!– Complex types defined for EPC-level Discovery transaction-level –>
<xs:complexType name="UeRegReq-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="UE-identity" type="IMSI-info" />
<xs:element name="WLAN-Link-Layer-ID" type="xs:hexBinary" minOccurs="0"/>
<xs:element name="method-for-server-initiated-transaction" type="xs:integer"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="UeRegRsp-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="EPC-ProSe-User-ID" type="xs:hexBinary"/>
<xs:element name="server-initiated-method-config" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="UeRegReject-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="PC3-EPC-control-protocol-cause-value" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="AppRegReq-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="EPC-ProSe-User-ID" type="xs:hexBinary"/>
<xs:element name="application-identity" type="AppID-info"/>
<xs:element name="Application-Layer-User-ID" type="xs:string"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="AppRegRsp-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="allowed-range-class" type="xs:integer" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="AppRegReject-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="PC3-EPC-control-protocol-cause-value" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="ProximityReq-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="EPC-ProSe-User-ID" type="xs:hexBinary"/>
<xs:element name="application-identity" type="AppID-info"/>
<xs:element name="Application-Layer-User-ID-A" type="xs:string"/>
<xs:element name="Application-Layer-User-ID-B" type="xs:string"/>
<xs:element name="requested-range-class" type="xs:integer"/>
<xs:element name="UE-A-location" type="xs:string"/>
<xs:element name="time-window" type="xs:integer"/>
<xs:element name="WLAN-indication" type="xs:boolean" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="ProximityReqAccept-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="ProximityReqReject-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="PC3-EPC-control-protocol-cause-value" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="ProximityAlert-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="application-identity" type="AppID-info"/>
<xs:element name="Application-Layer-User-ID-A" type="xs:string"/>
<xs:element name="Application-Layer-User-ID-B" type="xs:string"/>
<xs:element name="assistance-information" type="WLANAssistance-info" minOccurs="0" />
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="UeDeregReq-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="EPC-ProSe-User-ID" type="xs:hexBinary"/>
<xs:element name="PC3-EPC-control-protocol-cause-value" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="UeDeregRsp-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="CancelProximityReq-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="EPC-ProSe-User-ID-A" type="xs:hexBinary"/>
<xs:element name="application-identity" type="AppID-info"/>
<xs:element name="EPC-ProSe-User-ID-B" type="xs:hexBinary"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="CancelProximityRsp-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="ProximityReqValidation-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="application-identity" type="AppID-info"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="ProximityReqValidationRspAccept-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="ProximityReqValidationRspReject-info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="PC3-EPC-control-protocol-cause-value" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<!– Complex types defined for EPC level Discovery Message-level –>
<xs:complexType name="prose-epc-level-ue-registration-request">
<xs:sequence>
<xs:element name="ue-registration-request" type="UeRegReq-info" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-epc-level-ue-registration-response">
<xs:sequence>
<xs:element name="response-register" type="UeRegRsp-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="response-reject" type="UeRegReject-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-epc-level-application-registration-request">
<xs:sequence>
<xs:element name="application-registration-request" type="AppRegReq-info" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-epc-level-application-registration-response">
<xs:sequence>
<xs:element name="response-register" type="AppRegRsp-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="response-reject" type="AppRegReject-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-epc-level-proximity-request">
<xs:sequence>
<xs:element name="proximity-request" type="ProximityReq-info" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-epc-level-proximity-request-response">
<xs:sequence>
<xs:element name="response-accept" type="ProximityReqAccept-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="response-reject" type="ProximityReqReject-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-epc-level-proximity-alert">
<xs:sequence>
<xs:element name="proximity-alert" type="ProximityAlert-info" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-epc-level-ue-deregistration-request">
<xs:sequence>
<xs:element name="ue-deregistration-request" type="UeDeregReq-info" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-epc-level-ue-deregistration-response">
<xs:sequence>
<xs:element name="ue-deregistration-response" type="UeDeregRsp-info" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-epc-level-cancel-proximity-request">
<xs:sequence>
<xs:element name="cancel-proximity-request" type="CancelProximityReq-info" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-epc-level-cancel-proximity-response">
<xs:sequence>
<xs:element name="cancel-proximity-response" type="CancelProximityRsp-info" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-epc-level-proximity-request-validation">
<xs:sequence>
<xs:element name="proximity-request-validation" type="ProximityReqValidation-info" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="prose-epc-level-proximity-request-validation-response">
<xs:sequence>
<xs:element name="response-accept" type="ProximityReqValidationRspAccept-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="response-reject" type="ProximityReqValidationRspReject-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<!– Top levelDiscovery Message definition –>
<xs:element name="prose-discovery-message">
<xs:complexType>
<xs:choice>
<xs:element name="DISCOVERY_REQUEST" type="prose-direct-discovery-request"/>
<xs:element name="DISCOVERY_RESPONSE" type="prose-direct-discovery-response"/>
<xs:element name="MATCH_REPORT" type="prose-direct-discovery-match-report"/>
<xs:element name="MATCH_REPORT_ACK" type="prose-direct-discovery-match-report-ack"/>
<xs:element name="UE_REGISTRATION_REQUEST" type="prose-epc-level-ue-registration-request"/>
<xs:element name="UE_REGISTRATION_RESPONSE" type="prose-epc-level-ue-registration-response"/>
<xs:element name="APPLICATION_REGISTRATION_REQUEST" type="prose-epc-level-application-registration-request"/>
<xs:element name="APPLICATION_REGISTRATION_RESPONSE" type="prose-epc-level-application-registration-response"/>
<xs:element name="PROXIMITY_REQUEST" type="prose-epc-level-proximity-request"/>
<xs:element name="PROXIMITY_REQUEST_RESPONSE" type="prose-epc-level-proximity-request-response"/>
<xs:element name="PROXIMITY_ALERT" type="prose-epc-level-proximity-alert"/>
<xs:element name="UE_DEREGISTRATION_REQUEST" type="prose-epc-level-ue-deregistration-request"/>
<xs:element name="UE_DEREGISTRATION_RESPONSE" type="prose-epc-level-ue-deregistration-response"/>
<xs:element name="CANCEL_PROXIMITY_REQUEST" type="prose-epc-level-cancel-proximity-request"/>
<xs:element name="CANCEL_PROXIMITY_RESPONSE" type="prose-epc-level-cancel-proximity-response"/>
<xs:element name="PROXIMITY_REQUEST_VALIDATION" type="prose-epc-level-proximity-request-validation"/>
<xs:element name="PROXIMITY_REQUEST_VALIDATION_RESPONSE" type="prose-epc-level-proximity-request-validation-response"/>
<xs:element name="DISCOVERY_UPDATE_REQUEST" type="prose-direct-discovery-update-request"/>
<xs:element name="DISCOVERY_UPDATE_RESPONSE" type="prose-direct-discovery-update-response"/>
<xs:element name="ANNOUNCING_ALERT_REQUEST" type="prose-direct-discovery-announcing-alert-request"/>
<xs:element name="ANNOUNCING_ALERT_RESPONSE" type="prose-direct-discovery-announcing-alert-response"/>
<xs:element name="message-ext" type="DiscMsgExtType"/>
<xs:any namespace="##other" processContents="lax"/>
</xs:choice>
</xs:complexType>
</xs:element>
</xs:schema>
An entity receiving the XML body ignores any unknown XML element and any unknown XML attribute.
11.2.4 Semantics
11.2.4.1 General
The <prose-discovery-message> element is the root element of this XML document and it can be one of the following elements:
– <DISCOVERY_REQUEST>;
– <DISCOVERY_RESPONSE>;
– <MATCH_REPORT>;
– <MATCH_REPORT_ACK>;
– <UE_REGISTRATION_REQUEST>;
– <UE_REGISTRATION_RESPONSE>;
– <APPLICATION_REGISTRATION_REQUEST>;
– <APPLICATION_REGISTRATION_RESPONSE>;
– <PROXIMITY_REQUEST>;
– <PROXIMITY_REQUEST_RESPONSE>;
– <PROXIMITY_ALERT>;
– <UE_DEREGISTRATION_REQUEST>;
– <UE_DEREGISTRATION_RESPONSE>;
– <CANCEL_PROXIMITY_REQUEST>;
– <CANCEL_PROXIMITY_RESPONSE>;
– <PROXIMITY_REQUEST_VALIDATION>;
– <PROXIMITY_REQUEST_VALIDATION_RESPONSE>;
– <DISCOVERY_UPDATE_REQUEST>;
– <DISCOVERY_UPDATE_RESPONSE>
– <ANNOUNCE_ALERT_REQUEST>;
– <ANNOUNCE_ALERT_RESPONSE>;
– <message-ext> element containing other discovery message defined in future releases; or
– an element from other namespaces defined in future releases.
11.2.4.2 Semantics of <DISCOVERY_REQUEST>
The <DISCOVERY_REQUEST> element contains one or more of the following elements:
1) zero, one or more <discovery-request> element which contains transactions sent from the UE to the ProSe Function as announcing or monitoring requests for open ProSe direct discovery. Each <discovery-request> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.2.2.1;
b) a <command> element containing the parameter defined in subclause 12.2.2.2;
c) a <UE-identity> element containing the parameter defined in subclause 12.2.2.3;
d) a <Prose-Application-ID> element containing the parameter defined in subclause 12.2.2.4;
e) an <application-identity> element containing the parameter defined in subclause 12.2.2.5;
f) a <Discovery-Entry-ID> element containing the parameter defined in subclause 12.2.2.33;
g) an optional <Requested-Timer> element containing the parameter defined in subclause 12.2.2.27;
h) an optional <metadata> element containing the parameter defined in subclause 12.2.2.21;
i) an optional <Announcing-PLMN-ID> element containing the parameter defined in subclause 12.2.2.64;
j) zero or one <ACE-enabled-indicator> element containing the parameter defined in subclause 12.2.2.38;
k) zero or one <PC5-tech> element containing the parameter defined in subclause 12.2.2.71;
l) zero or one <anyExt> element containing elements defined in future releases;
m) zero, one or more elements from other namespaces defined in future releases; and
n) zero, one or more attributes defined in future releases;
2) zero, one, or more <restricted-discovery-request> element which contains transactions sent from the UE to the ProSe Function as announcing or monitoring requests for restricted ProSe directed discovery model A or transactions sent from the UE to the ProSe Function as discoveree or discoverer requests for restricted ProSe directed discovery model B. Each <restricted-discovery-request> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.2.2.1;
b) a <command> element containing the parameter defined in subclause 12.2.2.2;
c) a <UE-identity> element containing the parameter defined in subclause 12.2.2.3;
d) a <RPAUID> element containing the parameter defined in subclause 12.2.2.30;
e) an <application-identity> element containing the parameter defined in subclause 12.2.2.5;
f) a <discovery-type> element containing the parameter defined in subclause 12.2.2.25;
g) zero or one <ACE-enabled-indicator> element containing the parameter defined in subclause 12.2.2.38;
h) an <announcing-type> element containing the parameter defined in subclause 12.2.2.31;
i) an <application-level-container> element containing the parameter defined in subclause 12.2.2.32;
j) zero or one <discovery-model> element containing the parameter defined in subclause 12.2.2.41;
k) zero or one <Announcing-PLMN-ID> element containing the parameter defined in subclause 12.2.2.64;
l) a <discovery-entry-id> element containing the parameter defined in subclause 12.2.2.33;
m) an optional <Requested-Timer> element containing the parameter defined in subclause 12.2.2.27;
n) zero or one <PC5-tech> element containing the parameter defined in subclause 12.2.2.71;
o) zero or one <anyExt> element containing elements defined in future releases;
p) zero, one or more elements from other namespaces defined in future releases; and
q) zero, one or more attributes defined in future releases;
3) zero or one <anyExt> element containing elements defined in future releases;
4) zero, one or more elements from other namespaces defined in future releases;
5) an optional "network-initiated transaction method" attribute containing the parameter defined in subclause 12.2.2.63; and
6) zero, one or more attributes defined in future releases.
11.2.4.3 Semantics of <DISCOVERY_RESPONSE>
The <DISCOVERY_RESPONSE> element contains one or more of the following elements:
1) a <Current-Time> element containing the parameter defined in subclause 12.2.2.23;
2) a <Max-Offset> element containing the parameter defined in subclause 12.2.2.24;
3) zero, one or more <response-announce> element which contains transactions sent from the ProSe Function to the UE as a response to an announcing request if the ProSe Function accepts the request. Each <response-announce> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.2.2.1;
b) zero, one or more <ProSe-Application-Code> elements containing the parameter defined in subclause 12.2.2.6;c) zero or one <ProSe Application Code-ACE> element containing the parameter defined in subclause 12.2.2.70;
d) zero, or one <validity-timer-T4000> element containing the parameter defined in 12.2.2.7;
e) zero, or, one <discovery-key> element containing the parameter defined in subclause 12.2.2.9;
f) a <Discovery-Entry-ID> element containing the parameter defined in subclause 12.2.2.33;
g) zero or one <ACE-enabled-indicator> element containing the parameter defined in subclause 12.2.2.38;
h) zero or one <PC5-tech> element containing the parameter defined in subclause 12.2.2.71;
i) zero or one <anyExt> element containing elements defined in future releases;
j) zero, one or more elements from other namespaces defined in future releases; and
k) zero, one or more attributes defined in future releases;
4) zero, one or more <response-monitor> element which contains transactions sent from the ProSe Function to the UE as a response to a monitoring request if the ProSe Function accepts the request. Each <response-monitor> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.2.2.1;
b) zero, one or more <discovery-filter> elements containing the parameter defined in subclause 12.2.2.12;
c) a <Discovery-Entry-ID> element containing the parameter defined in subclause 12.2.2.33;
d) zero or one <ACE-enabled-indicator> element containing the parameter defined in subclause 12.2.2.38;
da) zero or one <PC5-tech> element containing the parameter defined in subclause 12.2.2.71;
e) zero or one <anyExt> element containing elements defined in future releases;
f) zero, one or more elements from other namespaces defined in future releases; and
g) zero, one or more attributes defined in future releases;
5) zero, one or more <restricted-announce-response> element which contains transactions sent from the ProSe Function to the UE as a response to an announcing request for restricted ProSe direct discovery model A if the ProSe Function accepts the request. Each <restricted-announce-response> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.2.2.1;
b) zero or one <ProSe-Restricted-Code> element containing the parameter defined in subclause 12.2.2.34;
c) zero, one or more <ProSe-Restricted-Code-Suffix-Range> element containing the parameter defined in subclause 12.2.2.35;
d) zero or one <validity-timer-T4007> element containing the parameter defined in 12.2.2.39;
e) zero or one <ACE-enabled-indicator> element containing the parameter defined in subclause 12.2.2.38;
f) zero or one <restricted-code-security-material> element containing the parameter defined in subclause 12.2.2.40;
g) an optional <on-demand-announcing-enabled-indicator> element containing the parameter defined in subclause 12.2.2.36;
h) a <discovery-entry-id> element containing the parameter defined in subclause 12.2.2.33;
i) zero or one <PC5-tech> element containing the parameter defined in subclause 12.2.2.71;
j) zero or one <anyExt> element containing elements defined in future releases;
k) zero, one or more elements from other namespaces defined in future releases; and
l) zero, one or more attributes defined in future releases;
6) zero, one or more <restricted-monitor-response> element which contains transactions sent from the ProSe Function to the UE as a response to a monitoring request for restricted ProSe direct discovery model A if the ProSe Function accepts the request. Each <restricted-monitor-response> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.2.2.1;
b) zero, one or more <restricted-discovery-filter> elements containing the parameter defined in subclause 12.2.2.37;
c) zero or one <ACE-enabled-indicator> element containing the parameter defined in subclause 12.2.2.38
d) a <discovery-entry-id> element containing the parameter defined in subclause 12.2.2.33;
e) an <application-level-container> element containing the parameter defined in subclause 12.2.2.32;
f) zero or one <PC5-tech> element containing the parameter defined in subclause 12.2.2.71;
g) zero or one <anyExt> element containing elements defined in future releases;
h) zero, one or more elements from other namespaces defined in future releases; and
i) zero, one or more attributes defined in future releases;
7) zero, one or more <restricted-discoveree-response> element which contains transactions sent from the ProSe Function to the UE as a response to a discoveree UE’s request for restricted ProSe direct discovery model B if the ProSe Function accepts the request. Each <restricted-discoveree-response> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.2.2.1;
b) a <ProSe-Response-Code> element containing the element defined in subclause12.2.2.42;
c) one or more <query-filter> elements containing the parameter defined in subclause 12.2.2.43;
d) a <validity-timer-T4011> element containing the parameter defined in subclause 12.2.2.44;
e) zero or one <restricted-code-security-material> element containing the parameter defined in subclause 12.2.2.40;
f) a <discovery-entry-id> element containing the parameter defined in subclause 12.2.2.33;
g) zero or one <PC5-tech> element containing the parameter defined in subclause 12.2.2.71;
h) zero or one <anyExt> element containing elements defined in future releases;
i) zero, one or more elements from other namespaces defined in future releases; and
j) zero, one or more attributes defined in future releases;
8) zero, one or more <restricted-discoverer-response> element which contains transactions sent from the ProSe Function to the UE as a response to a discoverer UE’s request for restricted ProSe direct discovery model B if the ProSe Function accepts the request. Each <restricted-discoverer-response> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.2.2.1;
b) one or more <subquery-result> elements containing the parameter defined in subclause 12.2.2.45;
c) a <discovery-entry-id> element containing the parameter defined in subclause 12.2.2.33;
d) zero or one <PC5-tech> element containing the parameter defined in subclause 12.2.2.71;
e) zero or one <anyExt> element containing elements defined in future releases;
f) zero, one or more elements from other namespaces defined in future releases; and
g) zero, one or more attributes defined in future releases;
9) zero, one or more <response-reject> element which contains transactions sent from the ProSe Function to the UE as a response to an announcing or monitoring requests if the ProSe Function cannot accept the request. Each <response-reject> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.2.2.1;
b) a <PC3-control-protocol-cause-value> element containing the parameter defined in subclause 12.2.2.8.
c) zero, one or more elements defined in future releases; and
d) zero, one or more attributes defined in future releases;
10) zero or one <anyExt> element containing elements defined in future releases;
11) zero, one or more elements from other namespaces defined in future releases;
12) an optional "network-initiated transaction method" attribute containing the parameter defined in subclause 12.2.2.63; and
13) zero, one or more attributes defined in future releases.
11.2.4.4 Semantics of <MATCH_REPORT>
The <MATCH_REPORT> element contains one or more of the following element:
1) zero, one or more <match-report> element which contains transactions sent from the UE to the ProSe Function to report a matching of the direct discovery. Each <match-report> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.2.2.1;
b) a <ProSe-Application-Code> element containing the parameter defined in subclause 12.2.2.6;
c) a <UE-identity> element containing the parameter defined in subclause 12.2.2.3;
d) a <Monitored-PLMN-id> element containing the parameter defined in subclause 12.2.2.16;
e) an optional <VPLMN-id> element containing the parameter defined in subclause 12.2.2.17;
f) a <MIC> element containing the parameter defined in subclause 12.2.2.11;
g) a <UTC-based-counter> element containing the parameter defined in subclause 12.2.2.18;
h) a <metadata-flag> element containing the parameter defined in subclause 12.2.2.20;
i) a <MessageType> element containing the parameter defined in subclause 12.2.2.10;
j) zero or one <PC5-tech> element containing the parameter defined in subclause 12.2.2.71;
k) zero or one <anyExt> element containing elements defined in future releases;
l) zero, one or more elements from other namespaces defined in future releases; and
m) zero, one or more attributes defined in future releases;
2) zero, one or more <restricted-match> element which contain transactions sent from the UE to the ProSe Function to report a matching of the restricted direct discovery model A or model B. Each <restricted-match> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.2.2.1;
b) a <UE-identity> element containing the parameter defined in subclause subclause 12.2.2.3;
c) a <discovery-type> element containing the parameter defined in subclause 12.2.2.25
d) an <application-identity> element containing the parameter defined in subclause 12.2.2.5
e) an <RPAUID> element containing the parameter defined in subclause 12.2.2.30;
f) a <Restricted-Code-Discovered> element containing the ProSe Restricted Code parameter defined in subclause 12.2.2.34 or ProSe Response Code parameter defined in subclause 12.2.2.42;
g) an optional <MIC> element containing the parameter defined in subclause 12.2.2.11;
h) an optional <MessageType> element containing the parameter defined in subclause 12.2.2.10;
i) an optional <UTC-based-counter> element containing the parameter defined in subclause 12.2.2.18;
j) a <metadata-flag> element containing the parameter defined in subclause 12.2.2.20;
k) zero or one <PC5-tech> element containing the parameter defined in subclause 12.2.2.71;
l) zero or one <anyExt> element containing elements defined in future releases;
m) zero, one or more elements from other namespaces defined in future releases; and
n) zero, one or more attributes defined in future releases.
3) zero or one <anyExt> element containing elements defined in future releases;
4) zero, one or more elements from other namespaces defined in future releases; and
5) zero, one or more attributes defined in future releases.
11.2.4.5 Semantics of <MATCH_REPORT_ACK>
The <MATCH_REPORT_ACK> element contains one or more of the following elements:
1) a <Current-Time> element containing the parameter defined in subclause 12.2.2.23;
2) zero, one or more <match-ack> element which contains transactions sent from the ProSe Function to the UE as a response to a match report if the ProSe Function accepts the report. Each <match-ack> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.2.2.1;
b) a <ProSe-Application-ID> element containing the parameter defined in subclause 12.2.2.4;
c) a <validity-timer-T4004> element containing the parameter defined in subclause 12.2.2.19;
d) an optional <metadata> element containing the parameter defined in subclause 12.2.2.21;
e) an optional <metadata-index-mask> element containing the parameter defined in subclause 12.2.2.62;
f) zero or one <anyExt> element containing elements defined in future releases;
g) zero, one or more elements from other namespaces defined in future releases;
h) a mandatory "match-report-refresh-timer-T4006" attribute containing the parameter defined in subclause 12.2.2.26; and
i) zero, one or more attributes defined in future releases;
3) zero, one or more <restricted-match-ack> element which contain transactions sent from the ProSe Function to the UE as a response to a match report if the ProSe Function accepts the report. Each <restricted-match-ack> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.2.2.1;
b) an <application-identity> element containing the parameter defined in subclause 12.2.2.5;
c) an <RPAUID> element containing the parameter defined in subclause 12.2.2.30;
d) a <validity-timer-T4016> element containing the parameter defined in subclause 12.2.2.60;
e) an optional <metadata> element containing the parameter defined in subclause 12.2.2.21;
f) zero or one <anyExt> element containing elements defined in future releases;
g) zero, one or more elements from other namespaces defined in future releases;
h) an optional "match-report-refresh-timer-T4017" attribute containing the parameter defined in subclause 12.2.2.61; and
i) zero, one or more attributes defined in future releases;
4) zero, one or more <match-reject> element which contains transactions sent from the ProSe Function to the UE as a response to a match report if the ProSe Function cannot accept the match report. Each <match-reject> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.2.2.1;
b) a <PC3-control-protocol-cause-value> element containing the parameter defined in subclause 12.2.2.8;
c) zero, one or more elements defined in future releases; and
d) zero, one or more attributes defined in future releases;
5) zero or one <anyExt> element containing elements defined in future releases;
6) zero, one or more elements from other namespaces defined in future releases; and
7) zero, one or more attributes defined in future releases.
11.2.4.6 Semantics of <UE_REGISTRATION_REQUEST>
The <UE_REGISTRATION_REQUEST> element contains one or more of the following elements:
1) One or more <UE-register-request> element which contains transactions sent from the UE to the ProSe Function to register the UE. Each <UE-register-request > consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.3.2.1;
b) a <UE-identity> element containing the parameter defined in subclause 12.3.2.2;
c) a <WLAN-link-layer-ID> element containing the parameter defined in subclause 12.3.2.6;
d) a <method-for-server-initiated-transaction> element containing the parameter defined in subclause 12.3.2.14;
e) zero or one <anyExt> element containing elements defined in future releases;
f) zero, one or more elements from other namespaces defined in future releases; and
g) zero, one or more attributes defined in future releases;
2) zero or one <anyExt> element containing elements defined in future releases;
3) zero, one or more elements from other namespaces defined in future releases; and
4) zero, one or more attributes defined in future releases.
11.2.4.7 Semantics of <UE_REGISTRATION_RESPONSE>
The <UE_REGISTRATION_RESPONSE> element contains one or more of the following elements:
1) zero, one or more <response-register> element which contains transactions sent from the ProSe Function to the UE as a response to the UE_REGISTRATION_REQUEST message if the ProSe Function accepts the request. Each <response-register> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.3.2.1;
b) an <EPC-ProSe-User-ID> element containing the parameter defined in subclause 12.3.2.7;
c) a <server-initiated-method-config> element containing the parameter defined in subclause 12.3.2.15;
d) zero, one or more elements defined in future releases; and
e) zero, one or more attributes defined in future releases;
2) zero, one or more <response-reject> element which contains transactions sent from the ProSe Function to the UE as a response to the UE_REGISTRATION_REQUEST message if the ProSe Function cannot accept the request. Each <response-reject> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.3.2.1;
b) a <PC3-EPC-control-protocol-cause-value> element containing the parameter defined in subclause 12.3.2.5;
c) zero, one or more elements defined in future releases; and
d) zero, one or more attributes defined in future releases;
3) zero or one <anyExt> element containing elements defined in future releases;
4) zero, one or more elements from other namespaces defined in future releases; and
5) zero, one or more attributes defined in future releases.
11.2.4.8 Semantics of <APPLICATION_REGISTRATION_REQUEST>
The <APPLICATION_REGISTRATION_REQUEST> element contains one or more of the following elements:
1) One or more <application-register-request> element which contains transactions sent from the UE to the ProSe Function to activate EPC-level ProSe discovery for a specific application. Each < application-register-request > consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.3.2.1;
b) an <EPC-ProSe-User-ID> element containing the parameter defined in subclause 12.3.2.7.
c) an <application-identity> element containing the parameter defined in subclause 12.3.2.3;
d) an <Application-Layer-User-ID> element containing the parameter defined in subclause 12.3.2.4;
e) zero, one or more elements defined in future releases; and
f) zero, one or more attributes defined in future releases;
2) zero or one <anyExt> element containing elements defined in future releases;
3) zero, one or more elements from other namespaces defined in future releases; and
4) zero, one or more attributes defined in future releases.
11.2.4.9 Semantics of <APPLICATION_REGISTRATION_RESPONSE>
The <APPLICATION_REGISTRATION_RESPONSE> element contains one or more of the following elements:
1) zero, one or more <response-register> element which contains transactions sent from the ProSe Function to the UE as a response to the APPLICATION_REGISTRATION_REQUEST message if the ProSe Function accepts the request. Each <response-register> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.3.2.1;
b) one or more <allowed-range-class> element containing the parameter defined in subclause 12.3.2.8;
c) zero or one <anyExt> element containing elements defined in future releases;
d) zero, one or more elements from other namespaces defined in future releases; and
e) zero, one or more attributes defined in future releases;
2) zero,one or more <response-reject> element which contains transactions sent from the ProSe Function to the UE as a response to the APPLICATION_REGISTRATION_REQUEST message if the ProSe Function cannot accept the request. Each <response-reject> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.3.2.1;
b) a <PC3-EPC-control-protocol-cause-value> element containing the parameter defined in subclause 12.3.2.5;
c) zero, one or more elements defined in future releases; and
d) zero, one or more attributes defined in future releases;
3) zero or one <anyExt> element containing elements defined in future releases;
4) zero, one or more elements from other namespaces defined in future releases; and
5) zero, one or more attributes defined in future releases.
11.2.4.10 Semantics of <PROXIMITY_REQUEST>
The <PROXIMITY_REQUEST> element contains one or more of the following elements:
1) One or more <proximity-request> element which contains transactions sent from the UE to the ProSe Function to request to be alerted when it enters in proximity with a targeted UE. Each < proximity-request > consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.3.2.1;
b) an <EPC-ProSe-User-ID-A> element containing the parameter defined in subclause 12.3.2.7;
c) an <application-identity> element containing the parameter defined in subclause 12.3.2.3;
d) an <Application-Layer-User-ID-A> element containing the parameter defined in subclause 12.3.2.4;
e) an <Application-Layer-User-ID-B> element containing the parameter defined in subclause 12.3.2.4;
f) a <requested-range-class> element containing the parameter defined in subclause 12.3.2.8;
g) a <UE-A-Location> element containing the parameter defined in subclause 12.3.2.11;
h) a <time-window> element containing the parameter defined in subclause 12.3.2.9;
i) an optional <WLAN-indication> element containing the parameter defined in subclause 12.3.2.12;
j) zero or one <anyExt> element containing elements defined in future releases;
k) zero, one or more elements from other namespaces defined in future releases; and
l) zero, one or more attributes defined in future releases;
2) zero or one <anyExt> element containing elements defined in future releases;
3) zero, one or more elements from other namespaces defined in future releases; and
4) zero, one or more attributes defined in future releases.
11.2.4.11 Semantics of <PROXIMITY_REQUEST_RESPONSE>
The <PROXIMITY_REQUEST_RESPONSE> element contains one or more of the following elements:
1) zero,one or more <response-accept> element which contains transactions sent from the ProSe Function to the UE as a response to the PROXIMITY_REQUEST message if the ProSe Function accepts the request. Each <response-register> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.3.2.1;
b) zero, one or more elements defined in future releases; and
c) zero, one or more attributes defined in future releases;
2) zero, one or more <response-reject> element which contains transactions sent from the ProSe Function to the UE as a response to the PROXIMITY_REQUEST message if the ProSe Function cannot accept the request. Each <response-reject> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.3.2.1;
b) a <PC3-EPC-control-protocol-cause-value> element containing the parameter defined in subclause 12.3.2.5;
c) zero, one or more elements defined in future releases; and
d) zero, one or more attributes defined in future releases;
3) zero or one <anyExt> element containing elements defined in future releases;
4) zero, one or more elements from other namespaces defined in future releases; and
5) zero, one or more attributes defined in future releases.
11.2.4.12 Semantics of <PROXIMITY_ALERT>
The <PROXIMITY_ALERT> element contains one or more of the following elements:
1) One or more <proximity-alert> element which contains transactions sent from the ProSe Function to the (UE A) and optionally to targeted (UE B) to alert them that they have entered in proximity. Each <proximity-alert> consists of:
a) <transaction-ID> element containing the parameter defined in subclause 12.3.2.1;
b) an <application-identity> element containing the parameter defined in subclause 12.3.2.3;
c) an <Application-Layer-User-ID-A> element containing the parameter defined in subclause 12.3.2.4;
d) an <Application-Layer-User-ID-B> element containing the parameter defined in subclause 12.3.2.4;
e) an optional <assistance-information> element containing the parameter defined in subclause 12.3.2.13;
f) zero or one <anyExt> element containing elements defined in future releases;
g) zero, one or more elements from other namespaces defined in future releases; and
h) zero, one or more attributes defined in future releases;
2) zero or one <anyExt> element containing elements defined in future releases;
3) zero, one or more elements from other namespaces defined in future releases; and
4) zero, one or more attributes defined in future releases.
11.2.4.13 Semantics of <UE_DEREGISTRATION_REQUEST>
The <UE_DEREGISTRATION_REQUEST> element contains one or more of the following elements:
1) One or more <UE-deregister-request> element which contains transactions sent either from the UE to the ProSe Function or from the ProSe Function to the UE to deregister the UE. Each < UE-deregister-request > consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.3.2.1;
b) an <EPC-ProSe-User-ID> element containing the parameter defined in subclause 12.3.2.7;
c) a <PC3-EPC-control-protocol-cause-value> element containing the parameter defined in subclause 12.3.2.5;
d) zero, one or more elements defined in future releases; and
e) zero, one or more attributes defined in future releases
2) zero or one <anyExt> element containing elements defined in future releases;
3) zero, one or more elements from other namespaces defined in future releases; and
4) zero, one or more attributes defined in future releases.
11.2.4.14 Semantics of <UE_DEREGISTRATION_RESPONSE>
The <UE_DEREGISTRATION_RESPONSE> element contains one or more of the following elements:
1) One or more <UE-deregister-response> element which contains transactions sent either from the UE to the ProSe Function or from the ProSe Function to the UE to complete the UE deregistration. Each < UE-deregister-response > consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.3.2.1;
b) zero, one or more elements defined in future releases; and
c) zero, one or more attributes defined in future releases
2) zero or one <anyExt> element containing elements defined in future releases;
3) zero, one or more elements from other namespaces defined in future releases; and
4) zero, one or more attributes defined in future releases.
11.2.4.15 Semantics of <CANCEL_PROXIMITY_REQUEST>
The <CANCEL_PROXIMITY_REQUEST> element contains one or more of the following elements:
1) One or more <cancel-proximity-request> element which contains transactions sent from the UE to the ProSe Function or from the ProSe Function to the UE to request cancellation of an ongoing proximity request. Each < cancel_proximity-request > consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.3.2.1;
b) an <EPC-ProSe-User-ID-A> element containing the parameter defined in subclause 12.3.2.7;
c) an <application-identity> element containing the parameter defined in subclause 12.3.2.3;
d) an <Application-Layer-User-ID-B> element containing the parameter defined in subclause 12.3.2.4;
e) zero, one or more elements defined in future releases; and
f) zero, one or more attributes defined in future releases;
2) zero or one <anyExt> element containing elements defined in future releases
3) zero, one or more elements from other namespaces defined in future releases; and
4) zero, one or more attributes defined in future releases.
11.2.4.16 Semantics of <CANCEL_PROXIMITY_RESPONSE>
The <CANCEL_PROXIMITY_RESPONSE> element contains one or more of the following elements:
1) One or more <cancel-proximity-responset> element which contains transactions sent from the ProSe Function to the UE or from the UE to the ProSe Function as a response to CANCEL_PROXIMITY_REQUEST message. Each < cancel_proximity-response > consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.3.2.1;
b) zero, one or more elements defined in future releases; and
c) zero, one or more attributes defined in future releases;
2) zero or one <anyExt> element containing elements defined in future releases;
3) zero, one or more elements from other namespaces defined in future releases; and
4) zero, one or more attributes defined in future releases.
11.2.4.17 Semantics of <PROXIMITY_REQUEST_VALIDATION>
The <PROXIMITY_REQUEST_VALIDATION> element contains one or more of the following elements:
1) One or more <proximity-request-validation> element which contains transactions sent by the ProSe Function to the targeted UE (UE B) to request confirmation of permission for proximity request. Each <proximity-request-validation> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.3.2.1;
b) an <application-identity> element containing the parameter defined in subclause 12.3.2.3;
c) zero, one or more elements defined in future releases; and
d) zero, one or more attributes defined in future releases;
2) zero or one <anyExt> element containing elements defined in future releases;
3) zero, one or more elements from other namespaces defined in future releases; and
4) zero, one or more attributes defined in future releases.
11.2.4.18 Semantics of <PROXIMITY_REQUEST_VALIDATION_RESPONSE>
The <PROXIMITY_REQUEST_VALIDATION_RESPONSE> element contains one or more of the following elements:
1) zero, one or more <response-accept> element which contains transactions sent from the UE to the ProSe Function as a response to the PROXIMITY_REQUEST_VALIDATION message if the application in the UE accepts the request. Each <response-accept> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.3.2.1;
b) zero, one or more elements defined in future releases; and
c) zero, one or more attributes defined in future releases;
2) zero, one or more <response-reject> element which contains transactions sent from the UE to the ProSe Function as a response to the PROXIMITY_REQUEST_VALIDATION message if the application in the UE does not accept the request. Each <response-reject> consists of:
a) a <transaction-ID> element containing the parameter defined in subclause 12.3.2.1;
b) a <PC3-EPC-control-protocol-cause-value> element containing the parameter defined in subclause 12.3.2.5.
c) zero, one or more elements defined in future releases; and
d) zero, one or more attributes defined in future releases;
3) zero or one <anyExt> element containing elements defined in future releases;
4) zero, one or more elements from other namespaces defined in future releases; and
5) zero, one or more attributes defined in future releases.
11.2.4.19 Semantics of < DISCOVERY_UPDATE_REQUEST>
The < DISCOVERY_UPDATE_REQUEST> element contains one or more of the following elements:
1) One or more <discovery-update-request> element which contains transactions sent from the ProSe Function to the UE as announcing or monitoring requests. Each <discovery-update-request> consists of:
a) a <prose-function-transaction-ID> element containing the parameter defined in subclause 12.2.2.28;
b) a <UE-identity> element containing the parameter defined in subclause 12.2.2.3;
c) a <discovery-entry-id> element containing the parameter defined in subclause 12.2.2.33;
d) an optional <update-info> element containing the parameter defined in subclause 12.2.2.29;
e) zero or one <anyExt> element containing elements defined in future releases;
f) zero, one or more elements defined in future releases; and
g) zero, one or more attributes defined in future releases;
2) zero or one <anyExt> element containing elements defined in future releases;
3) zero, one or more elements from other namespaces defined in future releases; and
4) zero, one or more attributes defined in future releases.
11.2.4.20 Semantics of < DISCOVERY_UPDATE_RESPONSE>
The < DISCOVERY_UPDATE _RESPONSE> element contains one or more of the following elements:
1) one or more <response-update> element which contains transactions sent from the UE to the ProSe Function as a response if the UE accepts the request. Each <discovery-update-response> consists of:
a) a <prose-function-transaction-ID> element containing the parameter defined in subclause 12.2.2.28;
b) a <discovery-entry-id> element containing the parameter defined in subclause 12.2.2.33;
c) zero, one or more elements defined in future releases; and
d) zero, one or more attributes defined in future releases;
2) zero, one or more <response-reject> element which contains transactions sent from the UE to the ProSe Function as a response if the UE cannot accept the request. Each <response-reject> consists of:
a) a <prose-function-transaction-ID> element containing the parameter defined in subclause 12.2.2.28;
b) a <PC3-control-protocol-cause-value> element containing the parameter defined in subclause 12.2.2.8.
c) zero, one or more elements defined in future releases; and
d) zero, one or more attributes defined in future releases;
3) zero or one <anyExt> element containing elements defined in future releases;
4) zero, one or more elements from other namespaces defined in future releases; and
5) zero, one or more attributes defined in future releases.
11.2.4.21 Semantics of <ANNOUNCING_ALERT_REQUEST>
The <ANNOUNCING_ALERT_REQUEST> element contains one or more of the following elements:
1) One or more <announcing-alert-request> element which contains transactions sent from the UE to the ProSe Function as announcing or monitoring requests. Each <announcing-alert-request> consists of:
a) a <prose-function-transaction-ID> element containing the parameter defined in subclause 12.2.2.28;
b) a <UE-identity> element containing the parameter defined in subclause 12.2.2.3;
c) a <RPAUID> element containing the parameter defined in subclause 12.2.2.30;
d) a <Discovery-Entry-ID> element containing the parameter defined in subclause 12.2.2.33;
e) a <ProSe-Restricted-Code> element containing the parameter defined in subclause 12.2.2.34;
f) zero, one or more <ProSe-Restricted-Code-Suffix-Range> element containing the parameter defined in subclause 12.2.2.35;
g) zero or one <anyExt> element containing elements defined in future releases;
h) zero, one or more elements from other namespaces defined in future releases; and
i) zero, one or more attributes defined in future releases;
2) zero or one <anyExt> element containing elements defined in future releases;
3) zero, one or more elements from other namespaces defined in future releases; and
4) zero, one or more attributes defined in future releases.
11.2.4.22 Semantics of < ANNOUNCING_ALERT_RESPONSE >
The <ANNOUNCING_ALERT_RESPONSE> element contains one or more of the following elements:
1) One or more <announcing-alert-response> element which contains transactions sent from the UE to the ProSe Function as announcing or monitoring requests. Each <announcing-alert-response> consists of:
a) a <prose-function-transaction-ID> element containing the parameter defined in subclause 12.2.2.28;
b) zero, one or more elements defined in future releases; and
c) zero, one or more attributes defined in future releases;
2) zero, one or more <response-reject> element which contains transactions sent from the UE to the ProSe Function as a response if the UE cannot accept the request. Each <response-reject> consists of:
a) a <prose-function-transaction-ID> element containing the parameter defined in subclause 12.2.2.28;
b) a <PC3-control-protocol-cause-value> element containing the parameter defined in subclause 12.2.2.8.
c) zero, one or more elements defined in future releases; and
d) zero, one or more attributes defined in future releases;
3) zero or one <anyExt> element containing elements defined in future releases;
4) zero, one or more elements from other namespaces defined in future releases; and
5) zero, one or more attributes defined in future releases.
11.2.5 PC5_DISCOVERY
11.2.5.1 Message definition
This message is sent by the UE over the PC5 interface for open ProSe direct discovery and restricted ProSe direct discovery. See table 11.2.5.1.1, table 11.2.5.1.1A, table 11.2.5.1.2, table 11.2.5.1.3, table 11.2.5.1.4, table 11.2.5.1.5, table 11.2.5.1.6, table 11.2.5.1.7, table 11.2.5.1.8, table 11.2.5.1.9 and table 11.2.5.1.10.
Table 11.2.5.1.1: PC5_DISCOVERY message content for open ProSe direct discovery
Information Element |
Type/Reference |
Presence |
Length (bits) |
Message Type (NOTE) |
Message Type 12.2.2.10 |
M |
8 |
ProSe Application Code |
Binary 12.2.2.6 |
M |
184 |
MIC |
Binary 12.2.2.11 |
M |
32 |
UTC-based Counter LSB |
Binary 12.2.2.22 |
M |
8 |
NOTE: The Discovery Type is set to "Open discovery" and the Content Type is not set to "application-controlled extension enabled". |
Table 11.2.5.1.1A: PC5_DISCOVERY message content for open ProSe direct discovery with application-controlled extension
Information Element |
Type/Reference |
Presence |
Length (bits) |
Message Type (NOTE 1) |
Message Type 12.2.2.10 |
M |
8 |
ProSe Application Code Prefix (NOTE 2) |
Binary 12.2.2.68 |
M |
32-176 |
ProSe Application Code Suffix (NOTE 2) |
Binary 12.2.2.69 |
M |
8-152 |
MIC |
Binary 12.2.2.11 |
M |
32 |
UTC-based Counter LSB |
Binary 12.2.2.22 |
M |
8 |
NOTE 1: The Discovery Type is set to "Open discovery" and the Content Type is set to "application-controlled extension enabled". NOTE 2: The sum of the lengths of the ProSe Application Code Prefix and the ProSe Application Code Suffix is 184 bits. |
Table 11.2.5.1.2: PC5_DISCOVERY message content for restricted ProSe direct discovery
Information Element |
Type/Reference |
Presence |
Length (bits) |
Message Type (NOTE) |
Message Type 12.2.2.10 |
M |
8 |
ProSe Restricted Code |
Binary 12.2.2.34 |
M |
184 |
MIC |
Binary 12.2.2.11 |
M |
32 |
UTC-based Counter LSB |
Binary 12.2.2.22 |
M |
8 |
NOTE: The Discovery Type is set to "Restricted discovery" and the Content Type is not set to "application-controlled extension enabled". |
Table 11.2.5.1.3: PC5_DISCOVERY message content for restricted ProSe direct discovery with application-controlled extension
Information Element |
Type/Reference |
Presence |
Length (bits) |
Message Type (NOTE) |
Message Type 12.2.2.10 |
M |
8 |
ProSe Restricted Code Prefix |
Binary 12.2.2.46 |
M |
64 |
ProSe Restricted Code Suffix |
Binary 12.2.2.47 |
M |
120 |
MIC |
Binary 12.2.2.11 |
M |
32 |
UTC-based Counter LSB |
Binary 12.2.2.22 |
M |
8 |
NOTE: The Discovery Type is set to "Restricted discovery", the Content Type is set to "application-controlled extension enabled" and the Discovery Model is set to "Model A". |
Table 11.2.5.1.4: PC5_DISCOVERY message for UE-to-Network Relay Discovery Announcement
Information Element |
Type/Reference |
Presence |
Length (bits) |
Message Type (NOTE) |
Message Type 12.2.2.10 |
M |
8 |
Relay Service Code |
Binary 12.2.2.51 |
M |
24 |
Announcer Info |
Binary 12.2.2.50 |
M |
48 |
ProSe Relay UE ID |
Binary 12.2.2.49 |
M |
24 |
Status Indicator |
Binary 12.2.2.67 |
M |
8 |
Spare |
Binary 12.2.2.56 |
M |
80 |
MIC |
Binary 12.2.2.11 |
M |
32 |
UTC-based Counter LSB |
Binary 12.2.2.22 |
M |
8 |
NOTE: The Discovery Type is set to "Restricted discovery", the Content Type is set to "UE-to-Network Relay Discovery Announcement or UE-to-Network Relay Discovery Response" and the Discovery Model is set to "Model A". |
Table 11.2.5.1.5: PC5_DISCOVERY message for UE-to-Network Relay Discovery Solicitation
Information Element |
Type/Reference |
Presence |
Length (bits) |
Message Type (NOTE 1) |
Message Type 12.2.2.10 |
M |
8 |
Relay Service Code |
Binary 12.2.2.51 |
M |
24 |
Discoverer Info |
Binary 12.2.2.50 |
M |
48 |
URDS Composition |
Binary 12.2.2.66 |
M |
8 |
ProSe Relay UE ID |
Binary 12.2.2.49 |
C (NOTE 2) |
24 |
Spare |
Binary 12.2.2.56 |
M |
80 or 104 (NOTE 3) |
MIC |
Binary 12.2.2.11 |
M |
32 |
UTC-based Counter LSB |
Binary 12.2.2.22 |
M |
8 |
NOTE 1: The Discovery Type is set to "Restricted discovery", the Content Type is set to "UE-to-Network Relay Discovery Solicitation" and the Discovery Model is set to "Model B". NOTE 2: Presence of the ProSe Relay UE ID is indicated by the URDS Composition. NOTE 3: If the ProSe Relay UE ID is present, then the length of the Spare is80 bits. If ProSe Relay UE ID is not included, then the length of the Spare is 104 bits. |
Table 11.2.5.1.6: PC5_DISCOVERY message for UE-to-Network Relay Discovery Response
Information Element |
Type/Reference |
Presence |
Length (bits) |
Message Type (NOTE) |
Message Type 12.2.2.10 |
M |
8 |
Relay Service Code |
Binary 12.2.2.51 |
M |
24 |
Discoveree Info |
Binary 12.2.2.50 |
M |
48 |
ProSe Relay UE ID |
Binary 12.2.2.49 |
M |
24 |
Status Indicator |
Binary 12.2.2.67 |
M |
8 |
Spare |
Binary 12.2.2.56 |
M |
80 |
MIC |
Binary 12.2.2.11 |
M |
32 |
UTC-based Counter LSB |
Binary 12.2.2.22 |
M |
8 |
NOTE: The Discovery Type is set to "Restricted discovery", the Content Type is set to "UE-to-Network Relay Discovery Announcement or UE-to-Network Relay Discovery Response" and the Discovery Model is set to "Model B". |
Table 11.2.5.1.7: PC5_DISCOVERY message for Group Member Discovery Announcement
Information Element |
Type/Reference |
Presence |
Length (bits) |
Message Type (NOTE) |
Message Type 12.2.2.10 |
M |
8 |
Discovery Group ID |
Binary 12.2.2.54 |
M |
24 |
Announcer Info |
Binary 12.2.2.50 |
M |
48 |
ProSe UE ID |
Binary 12.2.2.48 |
M |
24 |
Spare |
Binary 12.2.2.56 |
M |
88 |
MIC |
Binary 12.2.2.11 |
M |
32 |
UTC-based Counter LSB |
Binary 12.2.2.22 |
M |
8 |
NOTE: The Discovery Type is set to "Restricted discovery", the Content Type is set to "Group Member Discovery Announcement or Group Member Discovery Response" and the Discovery Model is set to "Model A". |
Table 11.2.5.1.8: PC5_DISCOVERY message for Group Member Discovery Solicitation
Information Element |
Type/Reference |
Presence |
Length (bits) |
Message Type (NOTE 1) |
Message Type 12.2.2.10 |
M |
8 |
Discovery Group ID |
Binary 12.2.2.54 |
M |
24 |
Discoverer Info |
Binary 12.2.2.50 |
M |
48 |
GMDS Composition |
Binary 12.2.2.55 |
M |
8 |
Target User Info |
Binary 12.2.2.52 |
C (NOTE 2) |
48 |
Target Group Info |
Binary 12.2.2.53 |
C (NOTE 2) |
24 |
Spare |
Binary 12.2.2.56 |
M |
56 or 80 (NOTE 3) |
MIC |
Binary 12.2.2.11 |
M |
32 |
UTC-based Counter LSB |
Binary 12.2.2.22 |
M |
8 |
NOTE 1: The Discovery Type is set to "Restricted discovery", the Content Type is set to "Group Member Discovery Solicitation" and the Discovery Model is set to "Model B". NOTE 2: Presence of the Target User Info and of Target Group Info is indicated by the GMDS Composition. NOTE 3: If the Target User Info is present, then the length of the Spare is 56 bits. If the Target Group Info is present, then the length of the Spare is 80 bits. |
Table 11.2.5.1.9: PC5_DISCOVERY message for Group Member Discovery Response
Information Element |
Type/Reference |
Presence |
Length (bits) |
Message Type (NOTE) |
Message Type 12.2.2.10 |
M |
8 |
Discovery Group ID |
Binary 12.2.2.54 |
M |
24 |
Discoveree Info |
Binary 12.2.2.50 |
M |
48 |
ProSe UE ID |
Binary 12.2.2.48 |
M |
24 |
Spare |
Binary 12.2.2.56 |
M |
88 |
MIC |
Binary 12.2.2.11 |
M |
32 |
UTC-based Counter LSB |
Binary 12.2.2.22 |
M |
8 |
NOTE: The Discovery Type is set to "Restricted discovery", the Content Type is set to "Group Member Discovery Announcement or Group Member Discovery Response" and the Discovery Model is set to "Model B". |
Table 11.2.5.1.10: PC5_DISCOVERY message for Relay Discovery Additional Information
Information Element |
Type/Reference |
Presence |
Length (bits) |
Message Type (NOTE 1) |
Message Type 12.2.2.10 |
M |
8 |
Relay Service Code |
Binary 12.2.2.51 |
M |
24 |
ProSe Relay UE ID |
Binary 12.2.2.49 |
M |
24 |
Announcer Info |
Binary 12.2.2.50 |
M |
48 |
RDAI Composition |
Binary 12.2.2.57 |
M |
8 |
ECGI |
Binary 12.2.2.58 |
C (NOTE 2) |
56 |
MBMS related information |
Binary 12.2.2.59 |
C (NOTE 2) |
72 |
Spare |
Binary 12.2.2.56 |
M |
8 or 24 (NOTE 3) |
MIC |
Binary 12.2.2.11 |
M |
32 |
UTC-based Counter LSB |
Binary 12.2.2.22 |
M |
8 |
NOTE 1: The Discovery Type is set to "Restricted discovery", the Content Type is set to "Relay discovery additional information" and the Discovery Model is set to "Model A". NOTE 2: Presence of the ECGI and MBMS related information is indicated by the RDAI Composition. NOTE 3: If the RDAI Composition indicates inclusion of the MBMS related information, it is 8 bits. If the RDAI Composition indicates inclusion of the ECGI, it is 24 bits. |
11.3 Messages transmitted over the PC3ch interface
11.3.1 General
This subclause defines XML schema and MIME type related to messages transmitted over the PC3ch interface.
11.3.2 application/3gpp-prose-pc3ch+xml
The MIME type is used to carry information related to message transmitted over the PC3ch interface. It shall be coded as an XML document compliant to the XML schema in subclause 11.3.3 containing one of the following messages:
– USAGE_INFORMATION_REPORT_LIST; or
– USAGE_INFORMATION_REPORT_LIST_RESPONSE.
Each of those messages is presented in the XML document as an XML element named after the corresponding message.
The XML document can contain elements and attributes defined in future releases of this document. Receiving entity ignores any element not defined by this version of the specification and any attribute not defined by this version of the specification.
11.3.3 XML Schema
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
xmlns="urn:3GPP:ns:ProSe:PC3ch:2014"
elementFormDefault="qualified"
targetNamespace="urn:3GPP:ns:ProSe:PC3ch:2014">
<xs:annotation>
<xs:documentation>
Syntax of messages transmitted over the PC3ch interface
</xs:documentation>
</xs:annotation>
<!– Types defined for parameters with complicate structure –>
<xs:complexType name="IMSI-info">
<xs:sequence>
<xs:element name="MCC" type="xs:integer"/>
<xs:element name="MNC" type="xs:integer"/>
<xs:element name="MSIN" type="xs:integer"/>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:simpleType name="IPAddress-type">
<xs:restriction base="xs:string"/>
</xs:simpleType>
<xs:simpleType name="Layer2Id-type">
<xs:restriction base="xs:hexBinary"/>
</xs:simpleType>
<xs:simpleType name="ECGI-type">
<xs:restriction base="xs:hexBinary"/>
</xs:simpleType>
<xs:simpleType name="AppSpecificInfo-type">
<xs:restriction base="xs:hexBinary"/>
</xs:simpleType>
<xs:simpleType name="RadioResourcesIndicator-type">
<xs:restriction base="xs:integer"/>
</xs:simpleType>
<xs:simpleType name="RadioFrequency-type">
<xs:restriction base="xs:hexBinary"/>
</xs:simpleType>
<!– XML attribute for any future extensions –>
<xs:complexType name="anyExtType">
<xs:sequence>
<xs:any namespace="##any" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="UsageInformationReportList-Info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="UE-identity" type="IMSI-info"/>
<xs:element name="usage-information-report" type="UsageInformationReport-Info"
minOccurs="1" maxOccurs="unbounded"/>
<xs:element name="app-specific-info" type="AppSpecificInfo-type" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="UsageInformationReport-Info">
<xs:sequence>
<xs:element name="coverage" type="Coverage-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="group" type="Group-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="radio-parameter-set" type="RadioParameterSet-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="sequence-number" type="xs:integer"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="Coverage-info">
<xs:sequence>
<xs:element name="location" type="Location-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="in-coverage" type="xs:boolean"/>
<xs:attribute name="timestamp" type="xs:dateTime" use="optional"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="Location-info">
<xs:sequence>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="ECGI" type="ECGI-type" use="optional"/>
<xs:attribute name="timestamp" type="xs:dateTime" use="optional"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="RadioParameterSet-info">
<xs:sequence>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="timestamp" type="xs:dateTime" use="required"/>
<xs:attribute name="params" type="xs:hexBinary"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="Group-info">
<xs:sequence>
<xs:element name="UE-source-IP-address" type="IPAddress-type"/>
<xs:element name="prose-UE-id" type="Layer2Id-type"/>
<xs:element name="transmitter" type="Transmitter-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="transmission" type="Transmission-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="reception" type="Reception-info" minOccurs="0" maxOccurs="unbounded"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="prose-layer2-group-ID" type="Layer2Id-type"/>
<xs:attribute name="prose-group-IP-multicast-address" type="IPAddress-type"/>
<xs:attribute name="first-transmission-timestamp" type="xs:dateTime" use="optional"/>
<xs:attribute name="first-reception-timestamp" type="xs:dateTime" use="optional"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="Transmitter-info">
<xs:sequence>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="source-IP-address" type="IPAddress-type"/>
<xs:attribute name="prose-UE-id" type="Layer2Id-type"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="Transmission-info">
<xs:sequence>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="in-coverage" type="xs:boolean"/>
<xs:attribute name="ECGI" type="ECGI-type" use="optional"/>
<xs:attribute name="amount" type="xs:integer"/>
<xs:attribute name="timestamp" type="xs:dateTime" use="optional"/>
<xs:attribute name="radio-resources-ind" type="RadioResourcesIndicator-type" use="optional"/>
<xs:attribute name="radio-frequency" type="RadioFrequency-type" use="optional"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="Reception-info">
<xs:sequence>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:attribute name="in-coverage" type="xs:boolean"/>
<xs:attribute name="ECGI" type="ECGI-type" use="optional"/>
<xs:attribute name="amount" type="xs:integer"/>
<xs:attribute name="timestamp" type="xs:dateTime" use="optional"/>
<xs:attribute name="radio-resources-ind" type="RadioResourcesIndicator-type" use="optional"/>
<xs:attribute name="radio-frequency" type="RadioFrequency-type" use="optional"/>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="UsageInformationReportListResponse-Info">
<xs:sequence>
<xs:element name="response-accept" type="UsageInformationReportListResponseAccept-Info" minOccurs="0"/>
<xs:element name="response-reject" type="UsageInformationReportListResponseReject-Info" minOccurs="0"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="UsageInformationReportListResponseAccept-Info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:complexType name="UsageInformationReportListResponseReject-Info">
<xs:sequence>
<xs:element name="transaction-ID" type="xs:integer"/>
<xs:element name="cause-value" type="xs:integer"/>
<xs:element name="anyExt" type="anyExtType" minOccurs="0"/>
<xs:any namespace="##other" processContents="lax" minOccurs="0" maxOccurs="unbounded"/>
</xs:sequence>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
<xs:element name="prose-pc3ch-message">
<xs:complexType>
<xs:choice>
<xs:element name="USAGE_INFORMATION_REPORT_LIST" type="UsageInformationReportList-Info"/>
<xs:element name="USAGE_INFORMATION_REPORT_LIST_RESPONSE" type="UsageInformationReportListResponse-Info"/>
<xs:element name="anyExt" type="anyExtType"/>
<xs:any namespace="##other" processContents="lax"/>
</xs:choice>
<xs:anyAttribute namespace="##any" processContents="lax"/>
</xs:complexType>
</xs:element>
</xs:schema>
11.3.4 Semantics
11.3.4.1 General
The <prose-pc3ch-message> element is the root element of this XML document.
The <prose-pc3ch-message> element contains one of the following:
a) <USAGE_INFORMATION_REPORT_LIST> element;
b) <USAGE_INFORMATION_REPORT_LIST_RESPONSE> element;
c) <anyExt> element containing elements defined in future releases; or
d) one or more elements from other namespace defined in future releases.
The <prose-pc3ch-message> element contains zero, one or more attributes defined in future releases.
11.3.4.2 Semantics of <USAGE_INFORMATION_REPORT_LIST>
The <USAGE_INFORMATION_REPORT_LIST> element contains:
a) a <transaction-ID> element containing the parameter defined in subclause 12.4.2.1;
b) a <UE-identity> element containing the parameter defined in subclause 12.4.2.2;
c) one or more <usage-information-report> elements;
d) zero, one or more <app-specific-info> element;
e) zero or one <anyExt> element containing elements defined in future releases;
f) zero, one or more elements from other namespaces defined in future releases; and
g) zero, one or more attributes defined in future releases.
The <usage-information-report> element carries one usage information report. The <usage-information-report> element contains:
a) mandatory "sequence-number" attribute containing the parameter defined in subclause 12.4.2.3;
b) zero, one or more <coverage> elements;
c) zero, one or more <group> element;
d) zero, one or more <radio-parameter-set> elements;
e) zero or one <anyExt> element containing elements defined in future releases;
f) zero, one or more elements from other namespaces defined in future releases; and
g) zero, one or more attributes defined in future releases.
The <coverage> element carries information whether the UE was in E-UTRAN coverage or out of E-UTRAN coverage. The <coverage> element contains:
a) mandatory "in-coverage" attribute containing the parameter defined in subclause 12.4.2.4;
b) optional "timestamp" attribute containing the parameter defined in subclause 12.4.2.8 indicating date and time when the information given in the element start being valid;
c) if the UE was in E-UTRAN coverage, zero, one or more <location> elements;
d) zero or one <anyExt> element containing elements defined in future releases;
e) zero, one or more elements from other namespaces defined in future releases; and
f) zero, one or more attributes defined in future releases.
The <location> element carries information about an E-UTRAN cell where the UE was camping on or which the UE used in the EMM-CONNECTED mode. The <location> element contains:
a) an optional "ECGI" attribute containing the parameter defined in subclause 12.4.2.5;
b) an optional "timestamp" attribute containing the parameter defined in subclause 12.4.2.8 indicating date and time when the information given in the element start being valid;
c) zero or one <anyExt> element containing elements defined in future releases;
d) zero, one or more elements from other namespaces defined in future releases; and
e) zero, one or more attributes defined in future releases.
The <radio-parameter-set> element carries information about the configured radio parameters for the ProSe direct communication applicable in the geographical area of the UE. The <radio-parameter-set> element contains:
a) a mandatory "params" attribute containing the parameter defined in subclause 12.4.2.6;
b) a mandatory "timestamp" attribute containing the parameter defined in subclause 12.4.2.8 indicating date and time when the information given in the element start being valid;
c) zero or one <anyExt> element containing elements defined in future releases;
d) zero, one or more elements from other namespaces defined in future releases; and
e) zero, one or more attributes defined in future releases.
The <group> element carries information about a ProSe group. The <group> element contains:
a) a mandatory "prose-layer2-group-ID" attribute containing the parameter defined in subclause 12.4.2.9;
b) a mandatory "prose-group-IP-multicast-address" attribute containing the parameter defined in subclause 12.4.2.10;
c) an optional "first-transmission-timestamp" attribute containing the parameter defined in subclause 12.4.2.8 indicating date and time of the first transmission to the ProSe Group IP multicast address in the collection period;
d) an optional "first-reception-timestamp" attribute containing the parameter defined in subclause 12.4.2.8 indicating date and time of the first reception from the ProSe Group IP multicast address in the collection period;
e) a <UE-source-IP-address> element containing the parameter defined in subclause 12.4.2.11, of the UE;
f) a <prose-UE-id> element containing the parameter defined in subclause 12.4.2.12, of the UE;
g) zero, one or more <transmitter> element;
h) zero, one or more <transmission> element;
i) zero, one or more <reception> element;
j) zero or one <anyExt> element containing elements defined in future releases;
k) zero, one or more elements from other namespaces defined in future releases; and
l) zero, one or more attributes defined in future releases.
The <transmitter> element carries information about a transmitter in a ProSe group. The <transmitter> element contains:
a) a mandatory "source-IP-address" attribute containing the parameter defined in subclause 12.4.2.11, of the transmitter;
b) a mandatory "prose-UE-id" attribute containing the parameter defined in subclause 12.4.2.12, of the transmitter;
c) zero or one <anyExt> element containing elements defined in future releases;
d) zero, one or more elements from other namespaces defined in future releases; and
e) zero, one or more attributes defined in future releases.
The <transmission> element carries information about a transmission in a ProSe group. The <transmission> element contains:
a) a mandatory "in-coverage" attribute containing the parameter defined in subclause 12.4.2.4;
b) if the UE was in E-UTRAN coverage when transmitting the data, an optional "ECGI" attribute containing the parameter defined in subclause 12.4.2.5, indicating E-UTRAN Cell Global Identification of the E-UTRAN cell where the UE was camping on or which the UE used in the EMM-CONNECTED mode when transmitting the data;
c) if the UE was in E-UTRAN coverage and the "ECGI" attribute is included:
1) a mandatory "amount" attribute containing the parameter defined in subclause 12.4.2.13 indicating the amount of octets transmitted to the ProSe group:
– when the UE was camping on a cell identified by the "ECGI" attribute when transmitting the data; or
– when the UE used in the EMM-CONNECTED mode a cell identified by the "ECGI" attribute when transmitting the data; and
2) an optional "timestamp" attribute containing the parameter defined in subclause 12.4.2.8 indicating date and time of the first transmission in the E-UTRAN cell;
d) if the UE was in E-UTRAN coverage and the "ECGI" attribute is not included:
1) a mandatory "amount" attribute containing the parameter defined in subclause 12.4.2.13 indicating the amount of octets transmitted to the ProSe group during the in E-UTRAN coverage period: and
2) an optional "timestamp" attribute containing the parameter defined in subclause 12.4.2.8 indicating date and time of the first transmission during the in E-UTRAN coverage period;
e) if the UE was out of E-UTRAN coverage:
1) a mandatory "amount" attribute containing the parameter defined in subclause 12.4.2.13 indicating the amount of octets transmitted to the ProSe group during the out of E-UTRAN coverage period; and
2) an optional "timestamp" attribute containing the parameter defined in subclause 12.4.2.8 indicating date and time of the first transmission during the out of E-UTRAN coverage period;
f) an optional "radio-resources-ind" attribute containing the parameter defined in subclause 12.4.2.14;
g) an optional "radio-frequency" attribute containing the parameter defined in subclause 12.4.2.15;
i) zero or one <anyExt> element containing elements defined in future releases;
j) zero, one or more elements from other namespaces defined in future releases; and
k) zero, one or more attributes defined in future releases.
The <reception> element carries information about a reception in a ProSe group. The <reception> element contains:
a) a mandatory "in-coverage" attribute containing the parameter defined in subclause 12.4.2.4 indicating whether the UE was in E-UTRAN coverage when receiving the data;
b) if the UE was in E-UTRAN coverage when receiving the data, an optional "ECGI" attribute containing the parameter defined in subclause 12.4.2.5 indicating E-UTRAN Cell Global Identification of the E-UTRAN cell where the UE was camping on or which the UE used in the EMM-CONNECTED mode when receiving the data;
c) if the UE was in E-UTRAN coverage and the "ECGI" attribute is included:
1) a mandatory "amount" attribute containing the parameter defined in subclause 12.4.2.13 indicating the amount of octets received from the ProSe group:
– when the UE was camping on a cell identified by the "ECGI" attribute when receiving the data; or
– when the UE used in the EMM-CONNECTED mode a cell identified by the "ECGI" attribute when receiving the data; and
2) an optional "timestamp" attribute containing the parameter defined in subclause 12.4.2.8 indicating date and time of the first reception in the E-UTRAN cell;
d) if the UE was in E-UTRAN coverage and the "ECGI" attribute is not included:
1) a mandatory "amount" attribute containing the parameter defined in subclause 12.4.2.13 indicating the amount of octets received from the ProSe group during the in E-UTRAN coverage period: and
2) an optional "timestamp" attribute containing the parameter defined in subclause 12.4.2.8 indicating date and time of the first reception during the in E-UTRAN coverage period;
e) if the UE was out of E-UTRAN coverage:
1) a mandatory "amount" attribute containing the parameter defined in subclause 12.4.2.13 indicating the amount of octets received from the ProSe group during the out of E-UTRAN coverage period; and
2) an optional "timestamp" attribute containing the parameter defined in subclause 12.4.2.8 indicating date and time of the first reception during the out of E-UTRAN coverage period;
f) an optional "radio-resources-ind" attribute containing the parameter defined in subclause 12.4.2.14;
g) an optional "radio-frequency" attribute containing the parameter defined in subclause 12.4.2.15;
h) zero or one <anyExt> element containing elements defined in future releases;
i) zero, one or more elements from other namespaces defined in future releases; and
j) zero, one or more attributes defined in future releases.
The <app-specific-info> element contains an application specific data received from upper layers during the collection period.
11.3.4.3 Semantics of <USAGE_INFORMATION_REPORT_LIST_RESPONSE>
The <USAGE_INFORMATION_REPORT_LIST_RESPONSE> element contains:
a) one of <response-accept> element and <response-reject> element;
b) zero or one <anyExt> element containing elements defined in future releases;
c) zero, one or more elements from other namespaces defined in future releases; and
d) zero, one or more attributes defined in future releases.
The <response-accept> element indicates that a related USAGE_INFORMATION_REPORT_LIST message was accepted. The <response-accept> element contains:
a) <transaction-ID> element containing the parameter defined in subclause 12.4.2.1 indicating the value of the transaction ID of the related USAGE_INFORMATION_REPORT_LIST message;
b) zero or one <anyExt> element containing elements defined in future releases;
c) zero, one or more elements from other namespaces defined in future releases; and
d) zero, one or more attributes defined in future releases.
The <response-reject> element indicates that a related USAGE_INFORMATION_REPORT_LIST message was rejected. The <response-reject> element contains:
a) <transaction-ID> element containing the parameter defined in subclause 12.4.2.1 indicating the value of the transaction ID of the related USAGE_INFORMATION_REPORT_LIST message;
b) <cause-value> element containing the parameter defined in subclause 12.4.2.7;
c) zero or one <anyExt> element containing elements defined in future releases;
d) zero, one or more elements from other namespaces defined in future releases; and
e) zero, one or more attributes defined in future releases.
11.4 PC5 Signalling messages
11.4.1 Overview
This clause defines the structure of the PC5 Signalling messages exchanged between two ProSe-enabled UEs over the PC5 interface. These are standard L3 messages as defined in 3GPP TS 24.007 [43].
Each definition given in the present clause includes:
a) a table listing the Information Elements (IE) present in the message and the order of their appearance in the message. All IEs that may be repeated are explicitly indicated (The V, LV and LV-E formatted IEs, which contain the imperative part of the message, occur before the T, TV, TLV and TLV-E formatted IEs which contain the non-imperative part of the message, see 3GPP TS 24.007 [43]). In a (maximal) sequence of consecutive IEs with half octet length, the first IE with half octet length occupies bits 1 to 4 of octet N, the second IE bits 5 to 8 of octet N, the third IE bits 1 to 4 of octet N+1 etc. Such a sequence always has an even number of elements.
For each information element the table indicates:
1. The Information Element Identifier (IEI), in hexadecimal notation, if the IE has format T, TV, TLV or TLV‑E. If the IEI has half octet length, it is specified by a notation representing the IEI as a hexadecimal digit followed by a "-" (example: B-).
NOTE: The same IEI can be used for different information element types in different messages of the same protocol.
2. The name of the information element (which is indicative of the semantics of the element). The name of the information element followed by "IE" or "information element" is used as reference to the information element within a message.
3. The name of the type of the information element (which indicates the coding of the value part of the IE), and generally, the referenced subclause of clause 12 of the present document describing the value part of the information element.
4. The presence requirement indication (M, C, or O) for the IE as defined in 3GPP TS 24.007 [43].
5. The format of the information element (T, V, TV, LV, TLV, LV-E or TLV-E) as defined in 3GPP TS 24.007 [43].
6. The length of the information element (or permissible range of lengths), in octets, in the message, where "?" means that the maximum length of the IE is only constrained by link layer protocol. This indication is non-normative.
b) subclauses specifying, where appropriate, conditions for IEs with presence requirement C or O in the relevant message which together with other conditions specified in the present document define when the information elements shall be included or not, what non-presence of such IEs means, and – for IEs with presence requirement C – the static conditions for presence or non-presence of the IEs or for both cases (see 3GPP TS 24.007 [43]).
11.4.2 DIRECT_COMMUNICATION_REQUEST
11.4.2.1 Message definition
This message is sent by a UE to another peer UE to establish a direct link. See table 11.4.2.1.1.
Message type: DIRECT_COMMUNICATION_REQUEST
Table 11.4.2.1.1: DIRECT_COMMUNICATION_REQUEST message content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
DIRECT_COMMUNICATION_REQUEST message identity |
PC5-SP Message Type 12.5.1.1. |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
|
User Info |
User Info 12.5.1.3 |
M |
LV |
3-253 |
|
IP Address Config |
IP Address Config 12.5.1.4 |
M |
V |
1 |
|
Maximum Inactivity Period |
Maximum Inactivity Period 12.5.1.9 |
M |
V |
4 |
|
Nonce_1 |
Nonce_1 12.5.1.30 |
M |
V |
16 |
|
UE Security Capabilities |
UE Security Capabilities 12.5.1.22 |
M |
V |
2 |
|
MSB of KD-sess ID |
MSB of KD-sess ID 12.5.1.25 |
M |
V |
1 |
|
17 |
KD ID |
KD ID 12.5.1.30 |
O |
TV |
5 |
25 |
Relay Service Code |
Relay Service Code 12.5.1.17 |
O |
TV |
4 |
22 |
Signature |
Signature 12.5.1.33 |
O |
TV |
130 |
3 |
Link Local IPv6 Address |
IPv6 Address 12.5.1.5 |
O |
TV |
17 |
11.4.3 DIRECT_COMMUNICATION_ACCEPT
11.4.3.1 Message definition
This message is sent by the UE to another peer UE to indicate that the corresponding direct link setup request has been accepted. See table 11.4.3.1.1.
.Message type: DIRECT_COMMUNICATION_ACCEPT
Table 11.4.3.1.1: DIRECT_COMMUNICATION_ACCEPT message content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
DIRECT_COMMUNICATION_ACCEPT message identity |
PC5-SP Message Type 12.5.1.1. |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
|
IP Address Config |
IP Address Config 12.5.1.4 |
M |
V |
1 |
|
3 |
Link Local IPv6 Address |
Link Local IPv6 Address 12.5.1.5 |
O |
TV |
17 |
11.4.3.2 Link Local IPv6 Address
The UE shall include this IE if the IP Address Config IE is set to "address allocation not supported".
11.4.4 DIRECT_COMMUNICATION_REJECT
11.4.4.1 Message definition
This message is sent by the UE to another peer UE to indicate that the corresponding direct link setup request has been rejected. See table 11.4.4.1.1.
.Message type: DIRECT_COMMUNICATION_REJECT
Table 11.4.4.1.1: DIRECT_COMMUNICATION_REJECT message content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
DIRECT_COMMUNICATION_REJECT message identity |
PC5-SP Message Type 12.5.1.1. |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
|
PC5 Signalling Cause Value |
PC5 Signalling Cause Value 12.5.1.7 |
M |
V |
1 |
11.4.5 DIRECT_COMMUNICATION_KEEPALIVE
11.4.5.1 Message definition
This message is sent by the UE to another peer UE to initiate a direct link keepalive procedure. See table 11.4.5.1.1.
.Message type: DIRECT_COMMUNICATION_KEEPALIVE
Table 11.4.5.1.1: DIRECT_COMMUNICATION_KEEPALIVE message content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
DIRECT_COMMUNICATION_KEEPALIVE message identity |
PC5-SP Message Type 12.5.1.1 |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
|
Keepalive Counter |
Keepalive Counter 12.5.1.6 |
M |
V |
4 |
|
7 |
Maximum Inactivity Period |
Maximum Inactivity Period 12.5.1.9 |
O |
TV |
5 |
11.4.6 DIRECT_COMMUNICATION_KEEPALIVE_ACK
11.4.6.1 Message definition
This message is sent by the UE to another peer UE to acknowledge and respond to the link keepalive request. See table 11.4.6.1.1.
Message type: DIRECT_COMMUNICATION_KEEPALIVE_ACK
Table 11.4.6.1.1: DIRECT_COMMUNICATION_KEEPALIVE_ACK message content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
DIRECT_COMMUNICATION_KEEPALIVE_ACK message identity |
PC5-SP Message Type 12.5.1.1 |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
|
Keepalive Counter |
Keepalive Counter 12.5.1.6 |
M |
V |
4 |
11.4.7 DIRECT_COMMUNICATION_RELEASE
11.4.7.1 Message definition
This message is sent by the UE to another peer UE to initiate the direct link release procedure. See table 11.4.7.1.1.
.Message type: DIRECT_COMMUNICATION_RELEASE
Table 11.4.7.1.1: DIRECT_COMMUNICATION_RELEASE message content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
DIRECT_COMMUNICATION_RELEASE message identity |
PC5-SP Message Type 12.5.1.1 |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
|
Release Reason |
Release Reason 12.5.1.8 |
M |
V |
1 |
11.4.8 DIRECT_COMMUNICATION_RELEASE_ACCEPT
11.4.8.1 Message definition
This message is sent by the UE to another peer UE to indicate that the link release request is accepted. See table 11.4.8.1.1.
.Message type: DIRECT_COMMUNICATION_RELEASE_ACCEPT
Table 11.4.8.1.1: DIRECT_COMMUNICATION_RELEASE_ACCEPT message content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
DIRECT_COMMUNICATION_RELEASE_ACCEPT message identity |
PC5-SP Message Type 12.5.1.1 |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
11.4.9 TMGI_MONITORING_REQUEST
11.4.9.1 Message definition
This message is sent by the remote UE to ProSe UE-to-network relay UE for TMGI monitoring request. See table 11.4.9.1.
Table 11.4.9.1.1: TMGI_MONITORING_REQUEST content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
TMGI_MONITORING_REQUEST identity |
Message Type 12.5.1.1 |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
|
TMGI |
Binary 12.5.1.10 |
M |
V |
6 |
|
MBMS SAI list |
Binary 12.5.1.11 |
M |
LV-E |
6-516 |
|
Requested ProSe Per-Packet Priority |
Binary 12.5.1.16 |
M |
V |
1 |
11.4.10 TMGI_MONITORING_RESPONSE
11.4.10.1 Message definition
This message is sent by the ProSe UE-to-network relay UE to the remote UE for TMGI monitoring response. See table 11.4.10.1.
Table 11.4.10.1.1: TMGI_MONITORING_RESPONSE content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
TMGI_MONITORING_RESPONSE identity |
Message Type 12.5.1.1 |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
|
ProSe Layer2 Group ID |
Binary 12.5.1.12 |
M |
V |
3 |
|
TMGI monitoring refresh timer T4104 |
Binary 12.5.1.13 |
M |
V |
2 |
|
SAI indicator |
Boolean 12.5.1.14 |
M |
V |
1 |
11.4.11 CELL_ID_ANNOUNCEMENT_REQUEST
11.4.11.1 Message definition
This message is sent by the remote UE to ProSe UE-to-network relay UE to initiate the cell ID announcement request procedure. See table 11.4.11.1.
Table 11.4.11.1.1: CELL_ID_ANNOUNCEMENT_REQUEST content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
CELL_ID_ANNOUNCEMENT_REQUEST identity |
Message Type 12.5.1.1 |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
11.4.12 CELL_ID_ANNOUNCEMENT_RESPONSE
11.4.12.1 Message definition
This message is sent by the ProSe UE-to-network relay UE to the remote UE to acknowledge and respond to the cell ID announcement request. See table 11.4.12.1.
Table 11.4.12.1.1: CELL_ID_ANNOUNCEMENT_RESPONSE content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
CELL_ID_ANNOUNCEMENT_RESPONSE identity |
Message Type 12.5.1.1 |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
|
ECGI announcement request refresh timer T4106 |
Binary 12.5.1.15 |
M |
V |
2 |
11.4.12A DIRECT_SECURITY_MODE_COMMAND
11.4.12A.1 Message definition
This message is sent by a commanding UE to a peer UE to establish the security for a direct link. See table 11.4.12A.1.1.
Message type: DIRECT_SECURITY_MODE_COMMAND
Table 11.4.12A.1.1: DIRECT_SECURITY_MODE_COMMAND message content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
DIRECT_SECURITY MODE COMMAND message identity |
PC5-SP Message Type 12.5.1.1. |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
|
UE Security Capabilities |
UE Security Capabilities 12.5.1.22 |
M |
V |
2 |
|
Nonce 2 |
Nonce 2 12.5.1.31 |
M |
V |
16 |
|
Chosen Algorithms |
Chosen Algorithms 12.5.1.23 |
M |
V |
1 |
|
LSB of KD-sess ID |
LSB of KD-sess 12.5.1.24 |
M |
V |
1 |
|
16 |
MSB of KD ID |
MSB of KD ID 12.5.1.27 |
O |
TV |
3 |
18 |
KD Freshness |
KD Freshness 12.5.1.30 |
O |
TV |
17 |
24 |
GPI |
GPI 12.5.1.18 |
O |
TLV |
3-n |
1 |
User Info |
User Info 12.5.1.3 |
O |
TLV |
3-253 |
22 |
Signature |
Signature 12.5.1.33 |
O |
TV |
130 |
23 |
Encrypted Payload |
Encrypted Payload 12.5.1.34 |
O |
TLV |
3-n |
11.4.13 DIRECT_SECURITY_MODE_COMPLETE
11.4.13.1 Message definition
This message is sent by a peer UE to a commanding UE to confirm the establishment of the security for a direct link. See table 11.4.13.1.
Message type: DIRECT_SECURITY_MODE_COMPLETE
Table 11.4.13.1: DIRECT_SECURITY_MODE_COMPLETE message content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
DIRECT_SECURITY MODE COMPLETE message identity |
PC5-SP Message Type 12.5.1.1. |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
|
15 |
LSB of KD ID |
LSB of KD ID 12.5.1.26 |
O |
TV |
3 |
11.4.14 DIRECT_SECURITY_MODE_REJECT
11.4.14.1 Message definition
This message is sent by a peer UE to a commanding UE to indicate a failure to establish the security. See table 11.4.14.1.
Message type: DIRECT_SECURITY_MODE_REJECT
Table 11.4.2.14.1: DIRECT_SECURITY_MODE_REJECT message content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
DIRECT_SECURITY MODE REJECT message identity |
PC5-SP Message Type 12.5.1.1. |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
|
PC5 Signalling Protocol Cause Value |
PC5 Signalling Protocol Cause Value 12.5.1.7 |
M |
V |
1 |
|
10 |
RAND |
RAND 12.5.1.21 |
O |
TV |
17 |
9 |
AUTS |
AUTS 12.5.1.20 |
O |
TV |
15 |
11.4.15 DIRECT_REKEYING_REQUEST
11.4.15.1 Message definition
This message is sent by a UE to the peer UE to refresh the security of an established direct link. See table 11.4.15.1.
Message type: DIRECT_REKEYING_REQUEST
Table 11.4.15.1: DIRECT_REKEYING_REQUEST message content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
DIRECT_REKEYING_REQUEST message identity |
PC5-SP Message Type 12.5.1.1 |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
|
UE Security Capabilities |
UE Security Capabilities 12.5.1.22 |
M |
V |
2 |
|
Nonce_1 |
Nonce_1 12.5.1.30 |
M |
V |
16 |
|
MSB of KD-sess ID |
MSB of KD-sess 12.5.1.25 |
M |
V |
1 |
|
21 |
Auth Flag |
Auth Flag 12.5.1.32 |
O |
TV |
2 |
8 |
PRUK ID |
PRUK ID 12.5.1.19 |
O |
TV |
9 |
11.4.16 DIRECT_REKEYING_RESPONSE
11.4.16.1 Message definition
This message is sent by a UE to the peer UE to complete refreshing the security of an established direct link. See table 11.4.16.1.1.
Message type: DIRECT_REKEYING_RESPONSE
Table 11.4.16.1: DIRECT_REKEYING_RESPONSE message content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
DIRECT_REKEYING_RESPONSE message identity |
PC5-SP Message Type 12.5.1.1. |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
11.4.17 DIRECT_REKEYING_TRIGGER
11.4.17.1 Message definition
This message is sent by a UE to the peer UE to trigger the peer UE to initiate a direct link rekeying procedure to refresh KD. See table 11.4.17.1.1.
Message type: DIRECT_REKEYING_TRIGGER
Table 11.4.17.1: DIRECT_REKEYING_TRIGGER message content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
DIRECT_REKEYING_TRIGGER message identity |
PC5-SP Message Type 12.5.1.1 |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
11.4.18 REMOTE_UE_INFO_REQUEST
11.4.18.1 Message definition
This message is sent by the ProSe UE-to-network relay UE to the remote UE to initiate the remote UE information request procedure. See table 11.4.18.1.1.
Table 11.4.18.1.1: REMOTE_UE_INFO_REQUEST content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
REMOTE_UE_INFO_REQUEST message identity |
Message Type 12.5.1.1 |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
|
Remote UE Information Type |
Remote UE Information Type 12.5.1.35 |
M |
V |
1 |
11.4.19 REMOTE_UE_INFO_RESPONSE
11.4.19.1 Message definition
This message is sent by the remote UE to the ProSe UE-to-network relay UE to respond to the remote UE information request. See table 11.4.19.1.1.
Table 11.4.19.1.1: REMOTE_UE_INFO_RESPONSE content
IEI |
Information Element |
Type/Reference |
Presence |
Format |
Length |
REMOTE_UE_INFO_RESPONSE message identity |
Message Type 12.5.1.1 |
M |
V |
1 |
|
Sequence Number |
Sequence Number 12.5.1.2 |
M |
V |
2 |
|
27 |
IMEI |
IMEI 12.5.1.36 |
O |
TV |
10 |
11.5 Non-IP data PDU format
The non-IP data PDU is coded according to figure 11.5.1 and table 11.5.1.
Bits |
||||||||
8 |
7 |
6 |
5 |
4 |
3 |
2 |
1 |
Octets |
Non-IP type |
1 |
|||||||
Non-IP payload |
2 |
|||||||
n |
Figure 11.5.1: Non-IP data PDU format
Table 11.5.1: Non-IP data PDU values
Octet 1 contains the non-IP type field which indicates the type of non-IP data included in the non-IP payload. |
Octets 2 to n contain the non-IP payload field containing the non-IP data. |