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

Frame ::= SEQUENCE {
    ident	 FRAME-STRUCTURE.&id ({FrameTypes}),
    value	 FRAME-STRUCTURE.&Type ({FrameTypes}{@ident}),
    ...
}

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

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


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


primType FRAME-STRUCTURE ::= { PrimitiveMessage IDENTIFIED BY basicMessage }
-- Information Object Set has 1 entry:
--    [             &id][           &Type]
-- [1]     basicMessage  PrimitiveMessage 


complexType FRAME-STRUCTURE ::= { ComplexMessage IDENTIFIED BY 2 }
-- Information Object Set has 1 entry:
--    [           &id][         &Type]
-- [1]              2  ComplexMessage 


PrimitiveMessage ::= SEQUENCE { }

ComplexMessage ::= SEQUENCE { }

basicMessage INTEGER ::= 1

END
