1Set DEFINITIONS IMPLICIT TAGS ::= 2 3BEGIN 4 5IMPORTS Seq1 FROM SeqSetLib; 6 7Set ::= SET 8{ 9 bool BOOLEAN, 10 boolCon [20] BOOLEAN, 11 boolPri [PRIVATE 21] BOOLEAN, 12 boolApp [APPLICATION 22] BOOLEAN, 13 boolExpCon [30] EXPLICIT BOOLEAN, 14 boolExpPri [PRIVATE 31] EXPLICIT BOOLEAN, 15 boolExpApp [APPLICATION 32] EXPLICIT BOOLEAN 16} 17 18Set1 ::= SET 19{ 20 bool1 BOOLEAN, 21 int1 INTEGER, 22 set1 SetIn 23} 24 25Set2 ::= SET 26{ 27 set2 SetIn, 28 bool2 BOOLEAN, 29 int2 INTEGER 30} 31 32Set3 ::= SET 33{ 34 bool3 BOOLEAN, 35 set3 SetIn, 36 int3 INTEGER 37} 38 39SetDef1 ::= SET 40{ 41 bool1 BOOLEAN DEFAULT TRUE, 42 int1 INTEGER, 43 set1 SetIn DEFAULT {} 44} 45 46SetDef2 ::= SET 47{ 48 set2 SetIn DEFAULT {}, 49 bool2 BOOLEAN, 50 int2 INTEGER 51} 52 53SetDef3 ::= SET 54{ 55 bool3 BOOLEAN DEFAULT TRUE, 56 set3 SetIn DEFAULT {}, 57 int3 INTEGER DEFAULT 17 58} 59 60SetOpt1 ::= SET 61{ 62 bool1 BOOLEAN OPTIONAL, 63 int1 INTEGER, 64 set1 SetIn OPTIONAL 65} 66 67SetOpt2 ::= SET 68{ 69 set2 SetIn OPTIONAL, 70 bool2 BOOLEAN, 71 int2 INTEGER 72} 73 74SetOpt3 ::= SET 75{ 76 bool3 BOOLEAN OPTIONAL, 77 set3 SetIn OPTIONAL, 78 int3 INTEGER OPTIONAL 79} 80 81SetIn ::= SET 82{ 83 boolIn BOOLEAN OPTIONAL, 84 intIn INTEGER OPTIONAL 85} 86 87 88SetS1 ::= SET 89{ 90 boolS1 BOOLEAN, 91 intS1 INTEGER, 92 setS1 SET { boolIn BOOLEAN, 93 intIn INTEGER } 94} 95 96SetS2 ::= SET 97{ 98 setS2 SET { boolIn BOOLEAN, 99 intIn INTEGER }, 100 boolS2 BOOLEAN, 101 intS2 INTEGER 102 103} 104 105SetS3 ::= SET 106{ 107 boolS3 BOOLEAN, 108 setS3 SET { boolIn BOOLEAN, 109 intIn INTEGER }, 110 intS3 INTEGER 111 112} 113 114 115SetImp1 ::= SET 116{ 117 seq Seq1, 118 bool BOOLEAN, 119 int INTEGER 120} 121 122 123SetImp2 ::= SET 124{ 125 bool BOOLEAN, 126 seq Seq1, 127 int INTEGER 128} 129 130 131SetImp3 ::= SET 132{ 133 bool BOOLEAN, 134 int INTEGER, 135 seq Seq1 136} 137 138 139 140 141END 142