ModuleComponentRelationConstraint { iso org(3) dod(6) internet(1) private(4)
	enterprise(1) spelio(9363) software(1) asn1c(5) test(1) 141 }
DEFINITIONS AUTOMATIC TAGS ::=
BEGIN

Frame ::= SEQUENCE {
    ident	 [0] IMPLICIT FRAME-STRUCTURE.&id ({FrameTypes}),
    value	 [1] EXPLICIT FRAME-STRUCTURE.&Type ({FrameTypes}{@.ident}),
    ...
}

FRAME-STRUCTURE ::= CLASS {
    &id	 ConstrainedInteger UNIQUE,
    &Type	 ANY
} WITH SYNTAX {&Type IDENTIFIED BY &id}

-- Information Object Set has 2 entries:
--    [             &id][           &Type]
-- [1]      primMessage  PrimitiveMessage 
-- [2]      cplxMessage    ComplexMessage 


ConstrainedInteger ::= INTEGER (0..32767)

FrameTypes FRAME-STRUCTURE ::= {{ PrimitiveMessage IDENTIFIED BY primMessage } | { ComplexMessage IDENTIFIED BY cplxMessage },...}
-- Information Object Set has 2 entries:
--    [             &id][           &Type]
-- [1]      primMessage  PrimitiveMessage 
-- [2]      cplxMessage    ComplexMessage 
-- [ ] ...


PrimitiveMessage ::= SEQUENCE { }

ComplexMessage ::= SEQUENCE { }

primMessage INTEGER ::= 1

cplxMessage INTEGER ::= 2

END
