| -- 3GPP TS 36.413 V15.5.0 (2019-03) |
| -- 9.3.7 Container Definitions |
| -- ************************************************************** |
| -- |
| -- Container definitions |
| -- |
| -- ************************************************************** |
| |
| S1AP-Containers { |
| itu-t (0) identified-organization (4) etsi (0) mobileDomain (0) |
| eps-Access (21) modules (3) s1ap (1) version1 (1) s1ap-Containers (5) } |
| |
| DEFINITIONS AUTOMATIC TAGS ::= |
| |
| BEGIN |
| |
| -- ************************************************************** |
| -- |
| -- IE parameter types from other modules. |
| -- |
| -- ************************************************************** |
| |
| IMPORTS |
| Criticality, |
| Presence, |
| PrivateIE-ID, |
| ProtocolExtensionID, |
| ProtocolIE-ID |
| FROM S1AP-CommonDataTypes |
| |
| maxPrivateIEs, |
| maxProtocolExtensions, |
| maxProtocolIEs |
| FROM S1AP-Constants; |
| |
| -- ************************************************************** |
| -- |
| -- Class Definition for Protocol IEs |
| -- |
| -- ************************************************************** |
| |
| S1AP-PROTOCOL-IES ::= CLASS { |
| &id ProtocolIE-ID UNIQUE, |
| &criticality Criticality, |
| &Value, |
| &presence Presence |
| } |
| WITH SYNTAX { |
| ID &id |
| CRITICALITY &criticality |
| TYPE &Value |
| PRESENCE &presence |
| } |
| |
| -- ************************************************************** |
| -- |
| -- Class Definition for Protocol IEs |
| -- |
| -- ************************************************************** |
| |
| S1AP-PROTOCOL-IES-PAIR ::= CLASS { |
| &id ProtocolIE-ID UNIQUE, |
| &firstCriticality Criticality, |
| &FirstValue, |
| &secondCriticality Criticality, |
| &SecondValue, |
| &presence Presence |
| } |
| WITH SYNTAX { |
| ID &id |
| FIRST CRITICALITY &firstCriticality |
| FIRST TYPE &FirstValue |
| SECOND CRITICALITY &secondCriticality |
| SECOND TYPE &SecondValue |
| PRESENCE &presence |
| } |
| |
| -- ************************************************************** |
| -- |
| -- Class Definition for Protocol Extensions |
| -- |
| -- ************************************************************** |
| |
| S1AP-PROTOCOL-EXTENSION ::= CLASS { |
| &id ProtocolExtensionID UNIQUE, |
| &criticality Criticality, |
| &Extension, |
| &presence Presence |
| } |
| WITH SYNTAX { |
| ID &id |
| CRITICALITY &criticality |
| EXTENSION &Extension |
| PRESENCE &presence |
| } |
| |
| -- ************************************************************** |
| -- |
| -- Class Definition for Private IEs |
| -- |
| -- ************************************************************** |
| |
| S1AP-PRIVATE-IES ::= CLASS { |
| &id PrivateIE-ID, |
| &criticality Criticality, |
| &Value, |
| &presence Presence |
| } |
| WITH SYNTAX { |
| ID &id |
| CRITICALITY &criticality |
| TYPE &Value |
| PRESENCE &presence |
| } |
| |
| -- ************************************************************** |
| -- |
| -- Container for Protocol IEs |
| -- |
| -- ************************************************************** |
| |
| ProtocolIE-Container {S1AP-PROTOCOL-IES : IEsSetParam} ::= |
| SEQUENCE (SIZE (0..maxProtocolIEs)) OF |
| ProtocolIE-Field {{IEsSetParam}} |
| |
| ProtocolIE-SingleContainer {S1AP-PROTOCOL-IES : IEsSetParam} ::= |
| ProtocolIE-Field {{IEsSetParam}} |
| |
| ProtocolIE-Field {S1AP-PROTOCOL-IES : IEsSetParam} ::= SEQUENCE { |
| id S1AP-PROTOCOL-IES.&id ({IEsSetParam}), |
| criticality S1AP-PROTOCOL-IES.&criticality ({IEsSetParam}{@id}), |
| value S1AP-PROTOCOL-IES.&Value ({IEsSetParam}{@id}) |
| } |
| |
| -- ************************************************************** |
| -- |
| -- Container for Protocol IE Pairs |
| -- |
| -- ************************************************************** |
| |
| ProtocolIE-ContainerPair {S1AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= |
| SEQUENCE (SIZE (0..maxProtocolIEs)) OF |
| ProtocolIE-FieldPair {{IEsSetParam}} |
| |
| ProtocolIE-FieldPair {S1AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= SEQUENCE { |
| id S1AP-PROTOCOL-IES-PAIR.&id ({IEsSetParam}), |
| firstCriticality S1AP-PROTOCOL-IES-PAIR.&firstCriticality ({IEsSetParam}{@id}), |
| firstValue S1AP-PROTOCOL-IES-PAIR.&FirstValue ({IEsSetParam}{@id}), |
| secondCriticality S1AP-PROTOCOL-IES-PAIR.&secondCriticality ({IEsSetParam}{@id}), |
| secondValue S1AP-PROTOCOL-IES-PAIR.&SecondValue ({IEsSetParam}{@id}) |
| } |
| |
| -- ************************************************************** |
| -- |
| -- Container Lists for Protocol IE Containers |
| -- |
| -- ************************************************************** |
| |
| ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, S1AP-PROTOCOL-IES : IEsSetParam} ::= |
| SEQUENCE (SIZE (lowerBound..upperBound)) OF |
| ProtocolIE-SingleContainer {{IEsSetParam}} |
| |
| ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, S1AP-PROTOCOL-IES-PAIR : IEsSetParam} ::= |
| SEQUENCE (SIZE (lowerBound..upperBound)) OF |
| ProtocolIE-ContainerPair {{IEsSetParam}} |
| |
| -- ************************************************************** |
| -- |
| -- Container for Protocol Extensions |
| -- |
| -- ************************************************************** |
| |
| ProtocolExtensionContainer {S1AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= |
| SEQUENCE (SIZE (1..maxProtocolExtensions)) OF |
| ProtocolExtensionField {{ExtensionSetParam}} |
| |
| ProtocolExtensionField {S1AP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENCE { |
| id S1AP-PROTOCOL-EXTENSION.&id ({ExtensionSetParam}), |
| criticality S1AP-PROTOCOL-EXTENSION.&criticality ({ExtensionSetParam}{@id}), |
| extensionValue S1AP-PROTOCOL-EXTENSION.&Extension ({ExtensionSetParam}{@id}) |
| } |
| |
| -- ************************************************************** |
| -- |
| -- Container for Private IEs |
| -- |
| -- ************************************************************** |
| |
| PrivateIE-Container {S1AP-PRIVATE-IES : IEsSetParam } ::= |
| SEQUENCE (SIZE (1.. maxPrivateIEs)) OF |
| PrivateIE-Field {{IEsSetParam}} |
| |
| PrivateIE-Field {S1AP-PRIVATE-IES : IEsSetParam} ::= SEQUENCE { |
| id S1AP-PRIVATE-IES.&id ({IEsSetParam}), |
| criticality S1AP-PRIVATE-IES.&criticality ({IEsSetParam}{@id}), |
| value S1AP-PRIVATE-IES.&Value ({IEsSetParam}{@id}) |
| } |
| |
| END |