-- $Id: MAP-ExtensionDataTypes.asn 34814 2010-11-08 23:15:16Z etxrab $
-- MAP-ExtensionDataTypes.asn
--
-- Taken from 3GPP TS 29.002 V9.3.0 (2010-09)
--
-- 17.7.11 Extension data types
--

MAP-ExtensionDataTypes {
   itu-t identified-organization (4) etsi (0) mobileDomain (0)
   gsm-Network (1) modules (3) map-ExtensionDataTypes (21) version12 (12)}

DEFINITIONS

IMPLICIT TAGS

::=

BEGIN

EXPORTS

	PrivateExtension,
	ExtensionContainer,
	SLR-ArgExtensionContainer;


-- IOC for private MAP extensions


MAP-EXTENSION  ::= CLASS {
	&ExtensionType				OPTIONAL,
	&extensionId 	OBJECT IDENTIFIER }
	-- The length of the Object Identifier shall not exceed 16 octets and the
	-- number of components of the Object Identifier shall not exceed 16

-- data types

ExtensionContainer ::= SEQUENCE {
	privateExtensionList	[0]PrivateExtensionList	OPTIONAL, 
	pcs-Extensions	[1]PCS-Extensions	OPTIONAL,
	...}

SLR-ArgExtensionContainer ::= SEQUENCE {
	privateExtensionList	[0]PrivateExtensionList	OPTIONAL, 
	slr-Arg-PCS-Extensions	[1]SLR-Arg-PCS-Extensions	OPTIONAL,
	...}

PrivateExtensionList ::= SEQUENCE SIZE (1..maxNumOfPrivateExtensions) OF
				PrivateExtension

PrivateExtension ::= SEQUENCE {
	extId		MAP-EXTENSION.&extensionId
				({ExtensionSet}),
	extType		MAP-EXTENSION.&ExtensionType
				({ExtensionSet}{@extId})	OPTIONAL}

maxNumOfPrivateExtensions  INTEGER ::= 10

ExtensionSet		MAP-EXTENSION ::=
		{...
		 -- ExtensionSet is the set of all defined private extensions
	}
	-- Unsupported private extensions shall be discarded if received.

PCS-Extensions ::= SEQUENCE {
	...}

SLR-Arg-PCS-Extensions ::= SEQUENCE {
	...,
	na-ESRK-Request	[0]	NULL		OPTIONAL }

END
