pycrate/pycrate_asn1dir/3GPP_UTRAN_RNSAP_25423/RNSAP-Containers.asn

194 lines
5.5 KiB
Groff

-- **************************************************************
--
-- Container definitions
--
-- **************************************************************
RNSAP-Containers {
itu-t (0) identified-organization (4) etsi (0) mobileDomain (0)
umts-Access (20) modules (3) rnsap (1) version1 (1) rnsap-Containers (5) }
DEFINITIONS AUTOMATIC TAGS ::=
BEGIN
-- **************************************************************
--
-- IE parameter types from other modules.
--
-- **************************************************************
IMPORTS
maxPrivateIEs,
maxProtocolExtensions,
maxProtocolIEs,
Criticality,
Presence,
PrivateIE-ID,
ProtocolIE-ID
FROM RNSAP-CommonDataTypes;
-- **************************************************************
--
-- Class Definition for Protocol IEs
--
-- **************************************************************
RNSAP-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 IE Pairs
--
-- **************************************************************
RNSAP-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
--
-- **************************************************************
RNSAP-PROTOCOL-EXTENSION ::= CLASS {
&id ProtocolIE-ID UNIQUE,
&criticality Criticality,
&Extension,
&presence Presence
}
WITH SYNTAX {
ID &id
CRITICALITY &criticality
EXTENSION &Extension
PRESENCE &presence
}
-- **************************************************************
--
-- Class Definition for Private IEs
--
-- **************************************************************
RNSAP-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 {RNSAP-PROTOCOL-IES : IesSetParam} ::=
SEQUENCE (SIZE (0..maxProtocolIEs)) OF
ProtocolIE-Field {{IesSetParam}}
ProtocolIE-Single-Container {RNSAP-PROTOCOL-IES : IesSetParam} ::=
ProtocolIE-Field {{IesSetParam}}
ProtocolIE-Field {RNSAP-PROTOCOL-IES : IesSetParam} ::= SEQUENCE {
id RNSAP-PROTOCOL-IES.&id ({IesSetParam}),
criticality RNSAP-PROTOCOL-IES.&criticality ({IesSetParam}{@id}),
value RNSAP-PROTOCOL-IES.&Value ({IesSetParam}{@id})
}
-- **************************************************************
--
-- Container for Protocol IE Pairs
--
-- **************************************************************
ProtocolIE-ContainerPair {RNSAP-PROTOCOL-IES-PAIR : IesSetParam} ::=
SEQUENCE (SIZE (0..maxProtocolIEs)) OF
ProtocolIE-FieldPair {{IesSetParam}}
ProtocolIE-FieldPair {RNSAP-PROTOCOL-IES-PAIR : IesSetParam} ::= SEQUENCE {
id RNSAP-PROTOCOL-IES-PAIR.&id ({IesSetParam}),
firstCriticality RNSAP-PROTOCOL-IES-PAIR.&firstCriticality ({IesSetParam}{@id}),
firstValue RNSAP-PROTOCOL-IES-PAIR.&FirstValue ({IesSetParam}{@id}),
secondCriticality RNSAP-PROTOCOL-IES-PAIR.&secondCriticality ({IesSetParam}{@id}),
secondValue RNSAP-PROTOCOL-IES-PAIR.&SecondValue ({IesSetParam}{@id})
}
-- **************************************************************
--
-- Container Lists for Protocol IE Containers
--
-- **************************************************************
ProtocolIE-ContainerList {INTEGER : lowerBound, INTEGER : upperBound, RNSAP-PROTOCOL-IES : IesSetParam} ::=
SEQUENCE (SIZE (lowerBound..upperBound)) OF
ProtocolIE-Container {{IesSetParam}}
ProtocolIE-ContainerPairList {INTEGER : lowerBound, INTEGER : upperBound, RNSAP-PROTOCOL-IES-PAIR : IesSetParam} ::=
SEQUENCE (SIZE (lowerBound..upperBound)) OF
ProtocolIE-ContainerPair {{IesSetParam}}
-- **************************************************************
--
-- Container for Protocol Extensions
--
-- **************************************************************
ProtocolExtensionContainer {RNSAP-PROTOCOL-EXTENSION : ExtensionSetParam} ::=
SEQUENCE (SIZE (1..maxProtocolExtensions)) OF
ProtocolExtensionField {{ExtensionSetParam}}
ProtocolExtensionField {RNSAP-PROTOCOL-EXTENSION : ExtensionSetParam} ::= SEQUENCE {
id RNSAP-PROTOCOL-EXTENSION.&id ({ExtensionSetParam}),
criticality RNSAP-PROTOCOL-EXTENSION.&criticality ({ExtensionSetParam}{@id}),
extensionValue RNSAP-PROTOCOL-EXTENSION.&Extension ({ExtensionSetParam}{@id})
}
-- **************************************************************
--
-- Container for Private IEs
--
-- **************************************************************
PrivateIE-Container {RNSAP-PRIVATE-IES : IesSetParam} ::=
SEQUENCE (SIZE (1..maxPrivateIEs)) OF
PrivateIE-Field {{IesSetParam}}
PrivateIE-Field {RNSAP-PRIVATE-IES : IesSetParam} ::= SEQUENCE {
id RNSAP-PRIVATE-IES.&id ({IesSetParam}),
criticality RNSAP-PRIVATE-IES.&criticality ({IesSetParam}{@id}),
value RNSAP-PRIVATE-IES.&Value ({IesSetParam}{@id})
}
END