Seq DEFINITIONS IMPLICIT TAGS ::= BEGIN IMPORTS Set1 FROM SeqSetLib; Seq ::= SEQUENCE { bool BOOLEAN, boolCon [20] BOOLEAN, boolPri [PRIVATE 21] BOOLEAN, boolApp [APPLICATION 22] BOOLEAN, boolExpCon [30] EXPLICIT BOOLEAN, boolExpPri [PRIVATE 31] EXPLICIT BOOLEAN, boolExpApp [APPLICATION 32] EXPLICIT BOOLEAN } Seq1 ::= SEQUENCE { bool1 BOOLEAN, int1 INTEGER, seq1 SeqIn } Seq2 ::= SEQUENCE { seq2 SeqIn, bool2 BOOLEAN, int2 INTEGER } Seq3 ::= SEQUENCE { bool3 BOOLEAN, seq3 SeqIn, int3 INTEGER } Seq4 ::= SEQUENCE { seq41 SeqIn, seq42 SeqIn, seq43 SeqIn } SeqDef1 ::= SET { bool1 BOOLEAN DEFAULT TRUE, int1 INTEGER, seq1 SeqIn DEFAULT {} } SeqDef2 ::= SET { seq2 SeqIn DEFAULT {}, bool2 BOOLEAN, int2 INTEGER } SeqDef3 ::= SET { bool3 BOOLEAN DEFAULT TRUE, seq3 SeqIn DEFAULT {}, int3 INTEGER DEFAULT 17 } SeqOpt1 ::= SET { bool1 BOOLEAN OPTIONAL, int1 INTEGER, seq1 SeqIn OPTIONAL } SeqOpt2 ::= SET { seq2 SeqIn OPTIONAL, bool2 BOOLEAN, int2 INTEGER } SeqOpt3 ::= SET { bool3 BOOLEAN OPTIONAL, seq3 SeqIn OPTIONAL, int3 INTEGER OPTIONAL } SeqIn ::= SEQUENCE { boolIn BOOLEAN OPTIONAL, intIn INTEGER DEFAULT 12 } SeqS1 ::= SEQUENCE { boolS1 BOOLEAN, intS1 INTEGER, seqS1 SEQUENCE { boolIn BOOLEAN, intIn INTEGER } } SeqS2 ::= SEQUENCE { seqS2 SEQUENCE { boolIn BOOLEAN, intIn INTEGER }, boolS2 BOOLEAN, intS2 INTEGER } SeqS3 ::= SEQUENCE { boolS3 BOOLEAN, seqS3 SEQUENCE { boolIn BOOLEAN, intIn INTEGER }, intS3 INTEGER } SeqImp1 ::= SET { set Set1, bool BOOLEAN, int INTEGER } SeqImp2 ::= SET { bool BOOLEAN, set Set1, int INTEGER } SeqImp3 ::= SET { bool BOOLEAN, int INTEGER, set Set1 } END