e71a35e66fd02025f42490840be23963dd141a0d
[com/asn1c.git] / tests / tests-asn1c-compiler / 139-component-relation-OK.asn1
1 
2 -- OK: Everything is fine
3
4 -- iso.org.dod.internet.private.enterprise (1.3.6.1.4.1)
5 -- .spelio.software.asn1c.test (9363.1.5.1)
6 -- .139
7
8 ModuleComponentRelationConstraint
9         { iso org(3) dod(6) internet (1) private(4) enterprise(1)
10                 spelio(9363) software(1) asn1c(5) test(1) 139 }
11         DEFINITIONS ::=
12 BEGIN
13
14     Frame ::= SEQUENCE {
15         ident   FRAME-STRUCTURE.&id({FrameTypes}),
16         value   FRAME-STRUCTURE.&Type({FrameTypes}{@.ident}),
17         ...
18     }
19
20     FRAME-STRUCTURE ::= CLASS {
21         &id    INTEGER UNIQUE,
22         &Type
23     } WITH SYNTAX {&Type IDENTIFIED BY &id}
24
25     FrameTypes FRAME-STRUCTURE ::= {
26         { PrimitiveMessage IDENTIFIED BY basicMessage } |
27         { ComplexMessage IDENTIFIED BY 2 },
28         ...
29     }
30
31     PrimitiveMessage ::= SEQUENCE {}
32     ComplexMessage ::= SEQUENCE {}
33
34     basicMessage INTEGER ::= 1
35
36 END