-- Module ASN1DefinedTypesModuleNew (Q.825:06/1998)
-- See also ITU-T Q.825 (06/1998)
-- See also the index of all ASN.1 assignments needed in this document

ASN1DefinedTypesModuleNew {itu-t(0) recommendation(0) q(17) q825(825)
  informationModel(0) asn1Modules(2) aSN1DefinedTypesModuleNew(1)} DEFINITIONS
IMPLICIT TAGS ::=
BEGIN

-- EXPORTS everything
-- The following ASN.1 provides the means for extending records, record types, IN specific information
-- and record block information. The Management Extension type is redefined using the useful
-- information object class type TYPE-IDENTIFIER. The construct is equivalent to ITU-T Recommendation X.721:
-- Attribute -ASN1Module ManagementExtension type and does not use the ANY DEFINED BY construct 
-- which is not supported any more by ITU-T Recommendation  X.680.
MANAGEMENT-EXTENSION ::= TYPE-IDENTIFIER

AdditionalRecordType ::=
  INSTANCE OF MANAGEMENT-EXTENSION({AllowedAdditionalRecordTypes})

-- The AllowedAdditionalRecordTypes is the constraint that allows only certain types to be set as
-- AdditionalRecordType.
AllowedAdditionalRecordTypes MANAGEMENT-EXTENSION ::=
  {...} -- dynamically extensible information object set

-- The AdditionalRecordTypes type is to be used in the RecordContent type of 
-- ASN1DefinedTypesModule module.
BlockExtension ::= INSTANCE OF MANAGEMENT-EXTENSION({AllowedBlockExtensions})

-- The AllowedBlockExtensions is the constraint that allows only certain types to be set as BlockExtension.
AllowedBlockExtensions MANAGEMENT-EXTENSION ::=
  {...} -- dynamically extensible information object set

-- The BlockExtensions type is to be used in the BlockHeaderRecord type of 
-- ASN1DefinedTypesModule
-- module
RecordExtension ::= INSTANCE OF MANAGEMENT-EXTENSION({AllowedRecordExtensions})

-- The AllowedRecordExtensions is the constraint that allows only certain types to be set as
-- RecordExtension
AllowedRecordExtensions MANAGEMENT-EXTENSION ::=
  {...} -- dynamically extensible information object set

-- The RecordExtensions type is to be used in the CallRecord type of
-- ASN1DefinedTypesModule module
ServiceSpecificINInformation ::=
  INSTANCE OF MANAGEMENT-EXTENSION({AllowedServiceSpecificINInformations})

-- The AllowedServiceSpecificINInformations is the constraint that allows only certain types to be set as
-- ServiceSpecificINInformation.
AllowedServiceSpecificINInformations MANAGEMENT-EXTENSION ::=
  {...} -- dynamically extensible information object set

-- TheServiceSpecificINInformations type is to be used in the CallRecord type of
-- ASN1DefinedTypesModule module.
StandardAdditionalRecordType ::=
  INSTANCE OF MANAGEMENT-EXTENSION({AllowedStandardAdditionalRecordTypes})

-- The AllowedStandardAdditionalRecordTypes is the constraint that allows only certain types to be set as
-- StandardAdditionalRecordType.
AllowedStandardAdditionalRecordTypes MANAGEMENT-EXTENSION ::=
  {...} -- dynamically extensible information object set

-- TheStandardAdditionalRecordTypes type is to be used in the RecordContent type of
-- ASN1DefinedTypesModule module.
StandardExtension ::=
  INSTANCE OF MANAGEMENT-EXTENSION({AllowedStandardExtensions})

-- The AllowedStandardExtensions is the constraint that allows only certain types to be
-- set as StandardExtension.
AllowedStandardExtensions MANAGEMENT-EXTENSION ::=
  {...} -- dynamically extensible information object set

-- TheStandardExtensions type is to be used in the CallRecord type of
-- ASN1DefinedTypesModule module
-- Usually the constraint on the type to be used for extensions is not known and must be specified
-- at implementation time (in the Protocol Implementation Conformance Statement, PICS).
-- However, in the case of standard extensions the allowed types for the constraint may be already defined.
-- Example:
-- TypeA and TypeB types are to be used as a constraint to StandardAdditionalRecordTypes.
-- The AllowedStandardAdditionalRecordType will be then:
-- AllowedStandardAdditionalRecordTypes STANDARD-EXTENSION ::= {
--                      { TypeA IDENTIFIED BY objectIdentifierA } |
--                      { TypeB IDENTIFIED BY objectIdentifierB} }
-- where objectIdentifierA and objectIdentifierB are the OBJECT IDENTIFIER values associated
-- to TypeA and TypeB respectively.
END -- End of ASN1DefinedTypesModuleNew
-- Generated by Asnp, the ASN.1 pretty-printer of France Telecom R&D