diff options
Diffstat (limited to 'Tests/MODELS2020-CaseStudies/case.study.pledge.originalFiles/Constraints')
3 files changed, 1054 insertions, 0 deletions
diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.originalFiles/Constraints/CaseA_1.ocl b/Tests/MODELS2020-CaseStudies/case.study.pledge.originalFiles/Constraints/CaseA_1.ocl new file mode 100644 index 00000000..0dd083b5 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.originalFiles/Constraints/CaseA_1.ocl | |||
@@ -0,0 +1,281 @@ | |||
1 | import 'file:/Users/Aren Babikian/git/VIATRA-Attributes/original.PLEDGE.case.studies/model/CD_Case_A.uml' | ||
2 | --e.g., import 'file:/Users/User_X/CD_Case_A.uml' | ||
3 | |||
4 | package Taxation | ||
5 | |||
6 | |||
7 | context External_Allowance inv inv1: | ||
8 | let currentYear: Integer = 2018 in | ||
9 | let origin: Physical_Person = self.reciver in | ||
10 | let union:Legal_Union_Record=origin.getLegalUnionRecord(currentYear) in | ||
11 | let house: Household = if(not union.oclIsUndefined()) then union.household else invalid endif in | ||
12 | let children:Set(Dependent)= house.children->select(d:Dependent| d.allowances->select(ext| ext.reciver=origin)->size()>0) in | ||
13 | let eligible_children:Set(Dependent) = children->select( birth_year >=currentYear - 6) in | ||
14 | let is_disabled:Boolean = self.person.disability_type<>Disability_Types::NONE and self.person.disability_percentage>0.5 in | ||
15 | let age5:Integer = currentYear - self.person.birth_year in | ||
16 | let base:Real = if(age5>6 and eligible_children->size()<=1) then 185.60 else if(age5>6 and eligible_children->size()=2) then 220.36 else if(age5>6 and eligible_children->size()=2) then 267.59 else 361.83 endif endif endif in | ||
17 | |||
18 | if(age5<=6) then self.amount = 580 | ||
19 | else | ||
20 | if(age5>=6 and age5<=11)then | ||
21 | self.amount = ((base.toString().toReal() + 16.17).round()) | ||
22 | else | ||
23 | self.amount = base.round() | ||
24 | endif endif | ||
25 | |||
26 | context Tax_Card inv inv2: | ||
27 | let classe: Tax_Class_Category = self.income.taxPayer.getTaxClass(2018) in | ||
28 | let amount:Real = self.income.income_per_year() in | ||
29 | |||
30 | if(income.income_type.oclIsTypeOf(Employment_Income)) then | ||
31 | let a:Real = if(classe=Tax_Class_Category::One_A) then self.income.taxPayer.from_law.get_A_for_salary_class_1A(amount) else if(classe=Tax_Class_Category::Two) then self.income.taxPayer.from_law.get_A_for_salary_class_2(amount) else self.income.taxPayer.from_law.get_A_for_salary_class_1(amount) endif endif in | ||
32 | let b:Real = if(classe=Tax_Class_Category::One_A) then self.income.taxPayer.from_law.get_B_for_salary_class_1A(amount) else if(classe=Tax_Class_Category::Two) then self.income.taxPayer.from_law.get_B_for_salary_class_2(amount) else self.income.taxPayer.from_law.get_B_for_salary_class_1(amount) endif endif in | ||
33 | let res:Real = self.income.taxPayer.from_law.round_ten_cent(a * amount - b) in | ||
34 | let max:Real = if(classe=Tax_Class_Category::Two) then 25085 else 12585 endif in | ||
35 | |||
36 | if(amount<max) then | ||
37 | let final_res:Real= self.income.taxPayer.from_law.round_ten_cent(res*1.07) in | ||
38 | self.income.taxPayer.taxesDue = final_res.max(100000) | ||
39 | else | ||
40 | let adjustement:Real= if(classe=Tax_Class_Category::One_A) then 81.906 else if(classe=Tax_Class_Category::Two) then 165.74 else 82.87 endif endif in | ||
41 | let final_res:Real= self.income.taxPayer.from_law.round_ten_cent(res + (res*0.09-adjustement)) in | ||
42 | self.income.taxPayer.taxesDue = final_res.max(100000) | ||
43 | endif | ||
44 | |||
45 | else | ||
46 | if(income.income_type.oclIsTypeOf(Pensions_and_Annuities_Income)) then | ||
47 | let a:Real = if(classe=Tax_Class_Category::One_A) then self.income.taxPayer.from_law.get_A_for_pension_class_1A(amount) else if(classe=Tax_Class_Category::Two) then self.income.taxPayer.from_law.get_A_for_pension_class_2(amount) else self.income.taxPayer.from_law.get_A_for_pension_class_1(amount) endif endif in | ||
48 | let b:Real = if(classe=Tax_Class_Category::One_A) then self.income.taxPayer.from_law.get_B_for_pension_class_1A(amount) else if(classe=Tax_Class_Category::Two) then self.income.taxPayer.from_law.get_B_for_pension_class_2(amount) else self.income.taxPayer.from_law.get_B_for_pension_class_1(amount) endif endif in | ||
49 | let res:Real = self.income.taxPayer.from_law.round_ten_cent(a * amount - b) in | ||
50 | let max:Real = if(classe=Tax_Class_Category::Two) then 25065 else 12565 endif in | ||
51 | |||
52 | if(amount<max) then | ||
53 | let final_res:Real= self.income.taxPayer.from_law.round_ten_cent(res*1.07) in | ||
54 | self.income.taxPayer.taxesDue = final_res.max(100000) | ||
55 | else | ||
56 | let adjustement:Real= if(classe=Tax_Class_Category::One_A) then 81.906 else if(classe=Tax_Class_Category::Two) then 165.74 else 82.87 endif endif in | ||
57 | let final_res:Real= self.income.taxPayer.from_law.round_ten_cent(res + (res*0.09-adjustement)) in | ||
58 | self.income.taxPayer.taxesDue = final_res.max(100000) | ||
59 | endif | ||
60 | else | ||
61 | self.income.taxPayer.taxesDue = -1 | ||
62 | endif | ||
63 | endif | ||
64 | |||
65 | |||
66 | context Dependent inv inv3: | ||
67 | if((self.getAge(2018) <=21) or (self.continued_studies = true)) then | ||
68 | self.allowances->size()=1 | ||
69 | else | ||
70 | self.allowances->size()=0 | ||
71 | endif | ||
72 | |||
73 | context Income inv inv5: | ||
74 | if(not self.income_type.oclIsTypeOf(Employment_Income)) then | ||
75 | self.details->forAll(d|d.worked_days = 0) | ||
76 | else | ||
77 | self.details->forAll(d|d.worked_days >= 1 and d.worked_days<=25) | ||
78 | endif | ||
79 | |||
80 | context Tax_Payer inv inv6: | ||
81 | let val:Integer = self.getAge(2018) - 16 in | ||
82 | self.dependents->forAll( d:Dependent| d.getAge(2018) > val) | ||
83 | |||
84 | context Income inv inv7: | ||
85 | let val:Real =self.details->asOrderedSet()->first().distance in | ||
86 | self.details->forAll(d: Income_Detail|d.distance = val) | ||
87 | |||
88 | --context Income inv user_complete_details: | ||
89 | --self.details->forAll(d: Income_Detail|d.month = self.details->asOrderedSet()->indexOf(d)) | ||
90 | |||
91 | context Income inv inv8: | ||
92 | if(not self.income_type.oclIsTypeOf(Employment_Income)) then | ||
93 | self.details->forAll(d| d.distance = 0) | ||
94 | else | ||
95 | self.details->forAll(d| d.distance >= 0.0 and d.distance <= 100) | ||
96 | endif | ||
97 | |||
98 | --context Income inv inv9: | ||
99 | --if(self.income_type.oclIsTypeOf(Pensions_and_Annuities_Income)) then | ||
100 | --self.details->forAll(d| not d.is_contributing_pension) | ||
101 | --else | ||
102 | --self.details->forAll(d| d.is_contributing_pension) | ||
103 | --endif | ||
104 | |||
105 | context Income inv inv10: | ||
106 | let val:Real =self.details->asOrderedSet()->first().amount in | ||
107 | self.details->forAll(d: Income_Detail|d.amount = val) | ||
108 | |||
109 | |||
110 | |||
111 | context Expense inv inv11: | ||
112 | let max:Real = if((self.income.income_amount / 2)>50) then self.income.income_amount / 2 else 50 endif in | ||
113 | self.declared_amount >= 50 and self.declared_amount <= max | ||
114 | |||
115 | context Tax_Payer inv inv12: | ||
116 | self.addresses->exists( hab_add:Address | hab_add.oclIsTypeOf(Habitual_Address) = true and hab_add.country<>Country::ZZ) and | ||
117 | self.incomes->exists(inc | inc.oclIsTypeOf(Local_Income) = true) | ||
118 | implies | ||
119 | self.oclIsTypeOf(Non_Resident_Tax_Payer) | ||
120 | |||
121 | context Tax_Payer inv inv13: | ||
122 | self.addresses->exists( hab_add:Address | hab_add.oclIsTypeOf(Habitual_Address) = true and hab_add.country=Country::ZZ) | ||
123 | implies | ||
124 | self.oclIsTypeOf(Resident_Tax_Payer) | ||
125 | |||
126 | --context Tax_Payer inv inv14: | ||
127 | --self.dependents->size() >= 0 and self.dependents->size()<= 6 | ||
128 | |||
129 | context External_Allowance inv inv15: | ||
130 | let child:Dependent = self.person in | ||
131 | let h:Household = Household.allInstances()->select(children->includes(child))->asOrderedSet()->first() in | ||
132 | let t1:Set(Physical_Person) = Set{h.parents.individual_A,h.parents.individual_B}->select(oclIsKindOf(Tax_Payer)) in | ||
133 | if(t1->size()=1) then | ||
134 | self.reciver = t1->asOrderedSet()->first() | ||
135 | else | ||
136 | self.reciver = t1->asOrderedSet()->at(2) or self.reciver = t1->asOrderedSet()->at(1) | ||
137 | endif | ||
138 | |||
139 | context Tax_Card inv inv16: | ||
140 | if(self.income.taxPayer.incomes->size()=1) then | ||
141 | self.tax_card_type=Tax_Card_Type::Principal | ||
142 | else | ||
143 | let all_incomes:OrderedSet(Income)=self.income.taxPayer.incomes->select(inc:Income| inc.income_amount= self.income.taxPayer.incomes.income_amount->max())->asOrderedSet() in | ||
144 | let bigest_income:Income= all_incomes->first() in | ||
145 | if(bigest_income=self.income) then | ||
146 | self.tax_card_type=Tax_Card_Type::Principal | ||
147 | else | ||
148 | self.tax_card_type=Tax_Card_Type::Additional | ||
149 | endif | ||
150 | endif | ||
151 | |||
152 | |||
153 | context Legal_Union_Record inv inv17: | ||
154 | self.start_year <=2018 and self.start_year >=1950 | ||
155 | |||
156 | |||
157 | --context Household inv inv18: | ||
158 | --not self.parents.oclIsUndefined() | ||
159 | |||
160 | --context Legal_Union_Record inv inv19: | ||
161 | --not self.household.oclIsUndefined() | ||
162 | |||
163 | context Legal_Union_Record inv inv20: | ||
164 | self.individual_B <> self.individual_A | ||
165 | and | ||
166 | not self.individual_A.oclIsUndefined() | ||
167 | and | ||
168 | not self.individual_B.oclIsUndefined() | ||
169 | |||
170 | --context Legal_Union_Record inv inv21: | ||
171 | --self.properties->size() >= 1 | ||
172 | |||
173 | --context Tax_Payer inv inv22: | ||
174 | --self.incomes->size() >= 1 | ||
175 | |||
176 | --context Tax_Payer inv inv23: | ||
177 | --not self.from_law.oclIsUndefined() | ||
178 | |||
179 | --context Tax_Payer inv inv24: | ||
180 | --not self.from_agent.oclIsUndefined() | ||
181 | |||
182 | --context Income inv inv25: | ||
183 | --not self.income_type.oclIsUndefined() | ||
184 | |||
185 | --context Income inv inv26: | ||
186 | --self.details->size() = 12 | ||
187 | |||
188 | |||
189 | --context Tax_Payer inv inv27: | ||
190 | --not self.from_agent.oclIsUndefined() | ||
191 | |||
192 | |||
193 | --context Tax_Payer inv inv28: | ||
194 | --not self.from_law.oclIsUndefined() | ||
195 | |||
196 | --context Legal_Union_Record inv inv29: | ||
197 | --self.properties->size()=1 | ||
198 | |||
199 | --context Tax_Payer inv inv30: | ||
200 | --self.AEP_deduction = 0 | ||
201 | |||
202 | --context Physical_Person inv inv31: | ||
203 | --self.last_start_year_widower = -1 | ||
204 | |||
205 | --context Physical_Person inv inv32: | ||
206 | --self.name = 'Not important' | ||
207 | |||
208 | context Physical_Person inv inv33: | ||
209 | self.getAge(2018) >= 0 and self.getAge(2018) <= 100 | ||
210 | |||
211 | context Physical_Person inv inv34: | ||
212 | self.birth_month >= 1 and self.birth_month <= 12 | ||
213 | |||
214 | context Physical_Person inv inv35: | ||
215 | self.birth_day >= 1 and self.birth_day <= 28 | ||
216 | |||
217 | --context FromAgent inv inv36: | ||
218 | --self.taxation_year = 2018 | ||
219 | |||
220 | --context Income inv inv37: | ||
221 | --self.year = 2018 | ||
222 | |||
223 | --context Income inv inv38: | ||
224 | --self.start_year = 2018 | ||
225 | |||
226 | --context Tax_Card inv inv39: | ||
227 | --self.deduction_FD_yearly = 0 | ||
228 | |||
229 | --context Tax_Card inv inv40: | ||
230 | --self.credit_CIS_yearly = 0 | ||
231 | |||
232 | --context Tax_Card inv inv40: | ||
233 | --self.credit_CIS_monthly = 0 | ||
234 | |||
235 | --context Tax_Card inv inv41: | ||
236 | --self.credit_CIP_yearly = 0 | ||
237 | |||
238 | --context Tax_Card inv inv42: | ||
239 | --self.credit_CIP_monthly = 0 | ||
240 | |||
241 | --context Tax_Card inv inv43: | ||
242 | --self.deduction_CE_invalidity_yearly = 0 | ||
243 | |||
244 | --context Tax_Card inv inv44: | ||
245 | --self.deduction_DS_Debt_yearly = 0 | ||
246 | |||
247 | |||
248 | --context Expense inv inv45: | ||
249 | --self.year_expense_was_incurred_in = 2018 | ||
250 | |||
251 | --context Tax_Property inv inv46: | ||
252 | --self.taxed_jointly = true | ||
253 | |||
254 | context Legal_Union_Record inv inv47: | ||
255 | (self.separation_cause=Separation_Causes::NONE and self.end_year = -1) | ||
256 | or(self.end_year>self.start_year) | ||
257 | |||
258 | |||
259 | context Physical_Person inv inv48: | ||
260 | (self.disability_type = Disability_Types::NONE and self.disability_percentage = 0) or | ||
261 | (self.disability_type <> Disability_Types::NONE and self.disability_percentage > 0 and self.disability_percentage <= 1) | ||
262 | |||
263 | context Legal_Union_Record inv inv49: | ||
264 | self.individual_A.oclIsKindOf(Tax_Payer) and | ||
265 | self.individual_B.oclIsKindOf(Physical_Person) and | ||
266 | not self.individual_B.oclIsTypeOf(Dependent) and | ||
267 | self.individual_A <> self.individual_B | ||
268 | |||
269 | --context Income inv inv50: | ||
270 | --not self.income_type.oclIsUndefined() | ||
271 | |||
272 | --context Income inv inv51: | ||
273 | --not self.taxPayer.oclIsUndefined() | ||
274 | |||
275 | --context Tax_Card inv inv52: | ||
276 | --not self.income.oclIsUndefined() | ||
277 | |||
278 | --context Legal_Union_Record inv inv53: | ||
279 | --not self.household.oclIsUndefined() | ||
280 | |||
281 | endpackage \ No newline at end of file | ||
diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.originalFiles/Constraints/CaseB_1.ocl b/Tests/MODELS2020-CaseStudies/case.study.pledge.originalFiles/Constraints/CaseB_1.ocl new file mode 100644 index 00000000..e81c675f --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.originalFiles/Constraints/CaseB_1.ocl | |||
@@ -0,0 +1,144 @@ | |||
1 | import 'file:/Users/Aren Babikian/git/VIATRA-Attributes/original.PLEDGE.case.studies/model/CD_Case_B.uml' | ||
2 | --e.g., import 'file:/Users/User_X/CD_Case_B.uml' | ||
3 | |||
4 | package DomainModel | ||
5 | |||
6 | context BodySenseSystem inv: Set{self.itsTimer}->size()>=1 | ||
7 | |||
8 | context BodySenseSystem inv: Set{self.itsNVM}->size()>=1 | ||
9 | |||
10 | context BodySenseSystem inv: Set{self.itsWatchdog}->size()>=1 | ||
11 | |||
12 | context BodySenseSystem inv: Set{self.itsTemperatureSensor}->size()>=1 | ||
13 | |||
14 | context BodySenseSystem inv: Set{self.itsPreviousOccupancyStatus}->size()>=1 | ||
15 | |||
16 | context BodySenseSystem inv: Set{self.itsALU}->size()>=1 | ||
17 | |||
18 | context BodySenseSystem inv: Set{self.itsOccupancyStatus}->size()>=1 | ||
19 | |||
20 | context BodySenseSystem inv: Set{self.itsBodySenseElectronics}->size()>=1 | ||
21 | |||
22 | context BodySenseSystem inv: Set{self.itsROM}->size()>=1 | ||
23 | |||
24 | context BodySenseSystem inv: Set{self.itsMeasurementValue}->size()>=1 | ||
25 | |||
26 | context BodySenseSystem inv: Set{self.itsRAM}->size()>=1 | ||
27 | |||
28 | context BodySenseSystem inv: Set{self.itsIgnitionResetButton}->size()>=1 | ||
29 | |||
30 | context BodySenseSystem inv: Set{self.itsSFR}->size()>=1 | ||
31 | |||
32 | context BodySenseSystem inv: Set{self.itsBodySenseSensor}->size()>=1 | ||
33 | |||
34 | context BodySenseSystem inv: Set{self.itsVoltageSensor}->size()>=1 | ||
35 | |||
36 | context BodySenseSystem inv: Set{self.itsDefaultCalibrationData}->size()>=1 | ||
37 | |||
38 | context BodySenseSystem inv: Set{self.itsAirbagControlUnit}->size()>=1 | ||
39 | |||
40 | context BodySenseSystem inv: BodySenseSystem.allInstances()->forAll(b|b.itsOccupancyStatus.OccupantClassForAirbagControl = OccupantClassAirbag::Init) | ||
41 | |||
42 | context BodySenseSystem inv: BodySenseSystem.allInstances()->forAll(b|b.itsOccupancyStatus.OccupantClassForSeatBeltReminder = OccupantClassSbr::Init) | ||
43 | |||
44 | context BodySenseSystem inv: BodySenseSystem.allInstances()->forAll(b|b.discardFlag = true) | ||
45 | |||
46 | context NVM inv: Set{self.itsCalibrationData}->size()>=1 | ||
47 | |||
48 | context Thermistor inv: Set{self.itsTemperatureSensor}->size()>=1 | ||
49 | |||
50 | context OccupancyStatus inv: Set{self.itsAirbagControlUnit}->size()>=1 | ||
51 | |||
52 | context AirbagControlUnit inv: Set{self.itsOccupancyStatus}->size()>=1 | ||
53 | |||
54 | context TemperatureSensor inv: self.itsThermistor->size() = 2 | ||
55 | |||
56 | context RAM inv RAMIsValid: RAM.allInstances()->forAll(r|r.isValid = true) | ||
57 | |||
58 | context SFR inv SFRIsValid: SFR.allInstances()->forAll(s|s.isValid = true) | ||
59 | |||
60 | context ALU inv ALUIsValid: ALU.allInstances()->forAll(a|a.isValid = true) | ||
61 | |||
62 | context ROM inv ROMIsValid: ROM.allInstances()->forAll(r|r.isValid = true) | ||
63 | |||
64 | context Error inv e1: Error.allInstances()->select(e|e.oclIsTypeOf(SeatHeaterCircuitIntegrityError))->forAll(e| e.qualificationCounter = 0) | ||
65 | |||
66 | context Error inv e2: Error.allInstances()->select(e|(not e.oclIsKindOf(CommunicationError)) and (not e.oclIsKindOf(VoltageError)))->forAll(r| r.isQualified = false) | ||
67 | |||
68 | context Error inv e6: Error.allInstances()->select(e|e.oclIsKindOf(VoltageError))->forAll(v|v.isQualified = true) | ||
69 | |||
70 | context Error inv e7: Error.allInstances()->select(e|e.oclIsKindOf(VoltageError))->forAll(v|v.isDetected = false) | ||
71 | |||
72 | context Error inv e8: Error.allInstances()->select(e|e.oclIsTypeOf(TemperatureRangeLimitError))->forAll(e|e.isDetected = true) | ||
73 | |||
74 | context Error inv e9: Error.allInstances()->select(e|e.oclIsTypeOf(NVMAccessError))->forAll(e|e.isDetected = true) | ||
75 | |||
76 | context Error inv e10: Error.allInstances()->select(e|e.oclIsTypeOf(VoltageHighError))->forAll(e|e.isDetected = true) | ||
77 | |||
78 | context Error inv e11: Error.allInstances()->select(e|e.oclIsTypeOf(DiscardError))->forAll(e|e.isDetected = true) | ||
79 | |||
80 | context Error inv e12: Error.allInstances()->select(e|e.oclIsTypeOf(MeasurementRangeError))->forAll(e|e.isDetected = true) | ||
81 | |||
82 | context Error inv e13: Error.allInstances()->select(e|e.oclIsTypeOf(CableShieldIntegrityError))->forAll(e|e.isDetected = true) | ||
83 | |||
84 | context Error inv e14: Error.allInstances()->select(e|e.oclIsTypeOf(CalibrationNotLearnedError))->forAll(e|e.isDetected = true) | ||
85 | |||
86 | context Error inv e15: Error.allInstances()->select(e|e.oclIsTypeOf(BuildCheckFailedError))->forAll(e|e.isDetected = true) | ||
87 | |||
88 | context Error inv e16: Error.allInstances()->select(e|e.oclIsTypeOf(SFRError))->forAll(e|e.isDetected = true) | ||
89 | |||
90 | context Error inv e17: Error.allInstances()->select(e|e.oclIsTypeOf(MeasurementSensePathError))->forAll(e|e.isDetected = true) | ||
91 | |||
92 | context Error inv e18: Error.allInstances()->select(e|e.oclIsTypeOf(ROMError))->forAll(e|e.isDetected = true) | ||
93 | |||
94 | context Error inv e19: Error.allInstances()->select(e|e.oclIsTypeOf(BuildCheckNotRunError))->forAll(e|e.isDetected = true) | ||
95 | |||
96 | context Error inv e20: Error.allInstances()->select(e|e.oclIsTypeOf(SeatFrameConnectionError))->forAll(e|e.isDetected = true) | ||
97 | |||
98 | context Error inv e21: Error.allInstances()->select(e|e.oclIsTypeOf(TemperatureSensorError))->forAll(e|e.isDetected = true) | ||
99 | |||
100 | context Error inv e22: Error.allInstances()->select(e|e.oclIsTypeOf(TemperatureRangeError))->forAll(e|e.isDetected = true) | ||
101 | |||
102 | context Error inv e23: Error.allInstances()->select(e|e.oclIsTypeOf(NVMCRCError))->forAll(e|e.isDetected = true) | ||
103 | |||
104 | context Error inv e24: Error.allInstances()->select(e|e.oclIsTypeOf(WatchdogError))->forAll(e|e.isDetected = true) | ||
105 | |||
106 | context Error inv e25: Error.allInstances()->select(e|e.oclIsTypeOf(VoltageLowError))->forAll(e|e.isDetected = true) | ||
107 | |||
108 | context Error inv e26: Error.allInstances()->select(e|e.oclIsTypeOf(SeatHeaterCircuitIntegrityError))->forAll(e|e.isDetected = true) | ||
109 | |||
110 | context Error inv e27: Error.allInstances()->select(e|e.oclIsTypeOf(ShortSenseUbatGndError))->forAll(e|e.isDetected = true) | ||
111 | |||
112 | context Error inv e28: Error.allInstances()->select(e|e.oclIsTypeOf(InternalMeasurementPathError))->forAll(e|e.isDetected = true) | ||
113 | |||
114 | context Error inv e29: Error.allInstances()->select(e|e.oclIsTypeOf(RAMError))->forAll(e|e.isDetected = true) | ||
115 | |||
116 | context Error inv e30: Error.allInstances()->select(e|e.oclIsTypeOf(ALUError))->forAll(e|e.isDetected = true) | ||
117 | |||
118 | context Error inv e31: Error.allInstances()->select(e|e.oclIsTypeOf(CalibrationDataError))->forAll(e|e.isDetected = true) | ||
119 | |||
120 | context Error inv e32: Error.allInstances()->select(e|e.oclIsTypeOf(MeasurementRangeError))->forAll(e|e.isDetected = true) | ||
121 | |||
122 | context Error inv e33: Error.allInstances()->select(e|e.oclIsTypeOf(VoltageHighError))->forAll(e|e.isDetected = false) | ||
123 | |||
124 | context Error inv e34: Error.allInstances()->select(e|e.oclIsTypeOf(VoltageLowError))->forAll(e|e.isDetected = false) | ||
125 | |||
126 | context Error inv e35: Error.allInstances()->select(e|e.oclIsKindOf(InternalMeasurementDeviceError))->forAll(e|e.isDetected = false) | ||
127 | |||
128 | context Error inv e36: Error.allInstances()->select(e|e.oclIsKindOf(ExternalMeasurementDeviceError))->forAll(e|e.isDetected = false) | ||
129 | |||
130 | context Error inv e37: Error.allInstances()->select(e|e.oclIsKindOf(TemperatureError))->forAll(e|e.isDetected = false) | ||
131 | |||
132 | context Error inv e38: Error.allInstances()->select(e|e.oclIsTypeOf(RAMError) or e.oclIsTypeOf(SFRError) or e.oclIsTypeOf(ALUError) or e.oclIsTypeOf(ROMError))->forAll(e|e.isDetected = false) | ||
133 | |||
134 | context Error inv e39: Error.allInstances()->select(e|e.oclIsTypeOf(SeatHeaterCircuitIntegrityError))->forAll(e|e.isQualified = true) | ||
135 | |||
136 | context Error inv e40: Error.allInstances()->select(e|e.oclIsTypeOf(DiscardError))->forAll(e|e.isQualified = true) | ||
137 | |||
138 | context Error inv e41: Error.allInstances()->select(e|e.oclIsTypeOf(VoltageLowError))->forAll(e|e.isQualified = true) | ||
139 | |||
140 | context Error inv e43: Error.allInstances()->select(e|e.oclIsTypeOf(VoltageHighError))->forAll(e|e.isQualified = true) | ||
141 | |||
142 | |||
143 | |||
144 | endpackage \ No newline at end of file | ||
diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.originalFiles/Constraints/CaseC_1.ocl_ b/Tests/MODELS2020-CaseStudies/case.study.pledge.originalFiles/Constraints/CaseC_1.ocl_ new file mode 100644 index 00000000..1bfe720b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.originalFiles/Constraints/CaseC_1.ocl_ | |||
@@ -0,0 +1,629 @@ | |||
1 | import 'file:/Users/Aren Babikian/git/VIATRA-Attributes/original.PLEDGE.case.studies/model/CD_Case_C.uml' | ||
2 | --e.g., import 'file:/Users/User_X/CD_Case_C.uml' | ||
3 | |||
4 | package inputData | ||
5 | |||
6 | |||
7 | context Vcdu inv invextracted108: | ||
8 | let transmissionData : TransmissionData = self.cadu.channelData.transmissionData in | ||
9 | let rtStpsConfig : XsveRtStps = transmissionData.configuration.rtStpsConfig.xsveRtStps | ||
10 | in self.vcduHeader.virtualChannelId.value.intValue = rtStpsConfig.idleVcid.value.intValue | ||
11 | |||
12 | context Vcdu inv invGenMult1: | ||
13 | not self.mpduPacketZone.oclIsUndefined() | ||
14 | |||
15 | context Vcdu inv invGenMult2: | ||
16 | not self.vcduHeader.oclIsUndefined() | ||
17 | |||
18 | context Vcdu inv invGenMult3: | ||
19 | not self.cadu.oclIsUndefined() | ||
20 | |||
21 | context Vcdu inv invGenMult4: | ||
22 | not self.mpduHeader.oclIsUndefined() | ||
23 | |||
24 | |||
25 | context MpduIdlePacketZone inv invGenMult6: | ||
26 | not self.value.oclIsUndefined() | ||
27 | |||
28 | context MpduActivePacketZone inv invGenMult7: | ||
29 | self.isp->size() >= 1 | ||
30 | |||
31 | context MpduActivePacketZone inv invGenMult8: | ||
32 | not self.value.oclIsUndefined() | ||
33 | |||
34 | context Isp inv invGenMult9: | ||
35 | not self.packetDataField.oclIsUndefined() | ||
36 | |||
37 | context Isp inv invGenMult10: | ||
38 | self.mpduActivePacketZone->size() >= 1 | ||
39 | |||
40 | context Isp inv invGenMult11: | ||
41 | not self.channelDataPerVcid.oclIsUndefined() | ||
42 | |||
43 | context PacketPrimaryHeader inv invGenMult12: | ||
44 | not self.versionNumber.oclIsUndefined() | ||
45 | |||
46 | context PacketPrimaryHeader inv invGenMult13: | ||
47 | not self.type.oclIsUndefined() | ||
48 | |||
49 | context PacketPrimaryHeader inv invGenMult14: | ||
50 | not self.shf.oclIsUndefined() | ||
51 | |||
52 | context PacketPrimaryHeader inv invGenMult15: | ||
53 | not self.apidPid.oclIsUndefined() | ||
54 | |||
55 | context PacketPrimaryHeader inv invGenMult16: | ||
56 | not self.apidPcat.oclIsUndefined() | ||
57 | |||
58 | context PacketPrimaryHeader inv invGenMult17: | ||
59 | not self.sequenceFlags.oclIsUndefined() | ||
60 | |||
61 | context PacketPrimaryHeader inv invGenMult18: | ||
62 | not self.sequenceCount.oclIsUndefined() | ||
63 | |||
64 | context PacketPrimaryHeader inv invGenMult19: | ||
65 | not self.dataLength.oclIsUndefined() | ||
66 | |||
67 | context PacketPrimaryHeader inv invGenMult20: | ||
68 | not self.isp.oclIsUndefined() | ||
69 | |||
70 | context PacketDataField inv invGenMult21: | ||
71 | not self.isp.oclIsUndefined() | ||
72 | |||
73 | context IdlePacketDataField inv invGenMult22: | ||
74 | not self.idleDataArray.oclIsUndefined() | ||
75 | |||
76 | context ActivePacketDataField inv invGenMult23: | ||
77 | not self.packetData.oclIsUndefined() | ||
78 | |||
79 | context ActivePacketDataField inv invGenMult24: | ||
80 | not self.packetErrorControl.oclIsUndefined() | ||
81 | |||
82 | context PacketSecondaryHeader inv invGenMult25: | ||
83 | not self.activePacketDataField.oclIsUndefined() | ||
84 | |||
85 | context TmGpsrS1DataFieldHeader inv invGenMult26: | ||
86 | not self.fillerA.oclIsUndefined() | ||
87 | |||
88 | context TmGpsrS1DataFieldHeader inv invGenMult27: | ||
89 | not self.version.oclIsUndefined() | ||
90 | |||
91 | context TmGpsrS1DataFieldHeader inv invGenMult28: | ||
92 | not self.fillerB.oclIsUndefined() | ||
93 | |||
94 | context TmGpsrS1DataFieldHeader inv invGenMult29: | ||
95 | not self.type.oclIsUndefined() | ||
96 | |||
97 | context TmGpsrS1DataFieldHeader inv invGenMult30: | ||
98 | not self.subtype.oclIsUndefined() | ||
99 | |||
100 | context TmGpsrS1DataFieldHeader inv invGenMult31: | ||
101 | not self.destinationId.oclIsUndefined() | ||
102 | |||
103 | context TmGpsrS1DataFieldHeader inv invGenMult32: | ||
104 | not self.tfUndefinedA.oclIsUndefined() | ||
105 | |||
106 | context TmGpsrS1DataFieldHeader inv invGenMult33: | ||
107 | not self.tfSeconds.oclIsUndefined() | ||
108 | |||
109 | context TmGpsrS1DataFieldHeader inv invGenMult34: | ||
110 | not self.tfSubSeconds.oclIsUndefined() | ||
111 | |||
112 | context TmGpsrS1DataFieldHeader inv invGenMult35: | ||
113 | not self.tfUndefinedB.oclIsUndefined() | ||
114 | |||
115 | context SarS1DataFieldHeader inv invGenMult36: | ||
116 | not self.tcCoarseTime.oclIsUndefined() | ||
117 | |||
118 | context SarS1DataFieldHeader inv invGenMult37: | ||
119 | not self.tcFineTime.oclIsUndefined() | ||
120 | |||
121 | context SarS1DataFieldHeader inv invGenMult38: | ||
122 | not self.ancillaryData.oclIsUndefined() | ||
123 | |||
124 | context MsiS2DataFieldHeader inv invGenMult39: | ||
125 | not self.startTimeCoarse.oclIsUndefined() | ||
126 | |||
127 | context MsiS2DataFieldHeader inv invGenMult40: | ||
128 | not self.startTimeFine.oclIsUndefined() | ||
129 | |||
130 | context MsiS2DataFieldHeader inv invGenMult41: | ||
131 | not self.timeCorrectionValue.oclIsUndefined() | ||
132 | |||
133 | context MsiS2DataFieldHeader inv invGenMult42: | ||
134 | not self.syncStatusValidity.oclIsUndefined() | ||
135 | |||
136 | context MsiS2DataFieldHeader inv invGenMult43: | ||
137 | not self.syncStatusFlag.oclIsUndefined() | ||
138 | |||
139 | context MsiS2DataFieldHeader inv invGenMult44: | ||
140 | not self.systemOperationMode.oclIsUndefined() | ||
141 | |||
142 | context MsiS2DataFieldHeader inv invGenMult45: | ||
143 | not self.compressionStatus.oclIsUndefined() | ||
144 | |||
145 | context TmGpsrS2DataFieldHeader inv invGenMult46: | ||
146 | not self.fillerA.oclIsUndefined() | ||
147 | |||
148 | context TmGpsrS2DataFieldHeader inv invGenMult47: | ||
149 | not self.version.oclIsUndefined() | ||
150 | |||
151 | context TmGpsrS2DataFieldHeader inv invGenMult48: | ||
152 | not self.fillerB.oclIsUndefined() | ||
153 | |||
154 | context TmGpsrS2DataFieldHeader inv invGenMult49: | ||
155 | not self.type.oclIsUndefined() | ||
156 | |||
157 | context TmGpsrS2DataFieldHeader inv invGenMult50: | ||
158 | not self.subtype.oclIsUndefined() | ||
159 | |||
160 | context TmGpsrS2DataFieldHeader inv invGenMult51: | ||
161 | not self.destinationId.oclIsUndefined() | ||
162 | |||
163 | context TmGpsrS2DataFieldHeader inv invGenMult52: | ||
164 | not self.tfSeconds.oclIsUndefined() | ||
165 | |||
166 | context TmGpsrS2DataFieldHeader inv invGenMult53: | ||
167 | not self.tfSubSeconds.oclIsUndefined() | ||
168 | |||
169 | context TmGpsrS2DataFieldHeader inv invGenMult54: | ||
170 | not self.tfUndefinedA.oclIsUndefined() | ||
171 | |||
172 | context TmStrS2DataFieldHeader inv invGenMult55: | ||
173 | not self.fillerA.oclIsUndefined() | ||
174 | |||
175 | context TmStrS2DataFieldHeader inv invGenMult56: | ||
176 | not self.version.oclIsUndefined() | ||
177 | |||
178 | context TmStrS2DataFieldHeader inv invGenMult57: | ||
179 | not self.fillerB.oclIsUndefined() | ||
180 | |||
181 | context TmStrS2DataFieldHeader inv invGenMult58: | ||
182 | not self.type.oclIsUndefined() | ||
183 | |||
184 | context TmStrS2DataFieldHeader inv invGenMult59: | ||
185 | not self.subtype.oclIsUndefined() | ||
186 | |||
187 | context TmStrS2DataFieldHeader inv invGenMult60: | ||
188 | not self.destinationId.oclIsUndefined() | ||
189 | |||
190 | context TmStrS2DataFieldHeader inv invGenMult61: | ||
191 | not self.tfSeconds.oclIsUndefined() | ||
192 | |||
193 | context TmStrS2DataFieldHeader inv invGenMult62: | ||
194 | not self.tfSubSeconds.oclIsUndefined() | ||
195 | |||
196 | context TmStrS2DataFieldHeader inv invGenMult63: | ||
197 | not self.syncA.oclIsUndefined() | ||
198 | |||
199 | context TmStrS2DataFieldHeader inv invGenMult64: | ||
200 | not self.syncB.oclIsUndefined() | ||
201 | |||
202 | context TmCswS2DataFieldHeader inv invGenMult65: | ||
203 | not self.fillerA.oclIsUndefined() | ||
204 | |||
205 | context TmCswS2DataFieldHeader inv invGenMult66: | ||
206 | not self.version.oclIsUndefined() | ||
207 | |||
208 | context TmCswS2DataFieldHeader inv invGenMult67: | ||
209 | not self.fillerB.oclIsUndefined() | ||
210 | |||
211 | context TmCswS2DataFieldHeader inv invGenMult68: | ||
212 | not self.type.oclIsUndefined() | ||
213 | |||
214 | context TmCswS2DataFieldHeader inv invGenMult69: | ||
215 | not self.subtype.oclIsUndefined() | ||
216 | |||
217 | context TmCswS2DataFieldHeader inv invGenMult70: | ||
218 | not self.destinationId.oclIsUndefined() | ||
219 | |||
220 | context TmCswS2DataFieldHeader inv invGenMult71: | ||
221 | not self.tfSeconds.oclIsUndefined() | ||
222 | |||
223 | context TmCswS2DataFieldHeader inv invGenMult72: | ||
224 | not self.tfSubSeconds.oclIsUndefined() | ||
225 | |||
226 | context TmCswS2DataFieldHeader inv invGenMult73: | ||
227 | not self.syncA.oclIsUndefined() | ||
228 | |||
229 | context TmCswS2DataFieldHeader inv invGenMult74: | ||
230 | not self.syncB.oclIsUndefined() | ||
231 | |||
232 | context OlciS3DataFieldHeader inv invGenMult75: | ||
233 | not self.fillerA.oclIsUndefined() | ||
234 | |||
235 | context OlciS3DataFieldHeader inv invGenMult76: | ||
236 | not self.version.oclIsUndefined() | ||
237 | |||
238 | context OlciS3DataFieldHeader inv invGenMult77: | ||
239 | not self.fillerB.oclIsUndefined() | ||
240 | |||
241 | context OlciS3DataFieldHeader inv invGenMult78: | ||
242 | not self.type.oclIsUndefined() | ||
243 | |||
244 | context OlciS3DataFieldHeader inv invGenMult79: | ||
245 | not self.subtype.oclIsUndefined() | ||
246 | |||
247 | context OlciS3DataFieldHeader inv invGenMult80: | ||
248 | not self.destinationId.oclIsUndefined() | ||
249 | |||
250 | context OlciS3DataFieldHeader inv invGenMult81: | ||
251 | not self.tfScienceTimeMsp.oclIsUndefined() | ||
252 | |||
253 | context OlciS3DataFieldHeader inv invGenMult82: | ||
254 | not self.tfScienceTimeLsp.oclIsUndefined() | ||
255 | |||
256 | context OlciS3DataFieldHeader inv invGenMult83: | ||
257 | not self.tfStat.oclIsUndefined() | ||
258 | |||
259 | context SlstrS3DataFieldHeader inv invGenMult84: | ||
260 | not self.fillerA.oclIsUndefined() | ||
261 | |||
262 | context SlstrS3DataFieldHeader inv invGenMult85: | ||
263 | not self.version.oclIsUndefined() | ||
264 | |||
265 | context SlstrS3DataFieldHeader inv invGenMult86: | ||
266 | not self.fillerB.oclIsUndefined() | ||
267 | |||
268 | context SlstrS3DataFieldHeader inv invGenMult87: | ||
269 | not self.type.oclIsUndefined() | ||
270 | |||
271 | context SlstrS3DataFieldHeader inv invGenMult88: | ||
272 | not self.subtype.oclIsUndefined() | ||
273 | |||
274 | context SlstrS3DataFieldHeader inv invGenMult89: | ||
275 | not self.destinationId.oclIsUndefined() | ||
276 | |||
277 | context SlstrS3DataFieldHeader inv invGenMult90: | ||
278 | not self.tfTime.oclIsUndefined() | ||
279 | |||
280 | context SlstrS3DataFieldHeader inv invGenMult91: | ||
281 | not self.tfStat.oclIsUndefined() | ||
282 | |||
283 | context DorisS3DateFieldHeader inv invGenMult92: | ||
284 | not self.fillerA.oclIsUndefined() | ||
285 | |||
286 | context DorisS3DateFieldHeader inv invGenMult93: | ||
287 | not self.version.oclIsUndefined() | ||
288 | |||
289 | context DorisS3DateFieldHeader inv invGenMult94: | ||
290 | not self.fillerB.oclIsUndefined() | ||
291 | |||
292 | context DorisS3DateFieldHeader inv invGenMult95: | ||
293 | not self.type.oclIsUndefined() | ||
294 | |||
295 | context DorisS3DateFieldHeader inv invGenMult96: | ||
296 | not self.subtype.oclIsUndefined() | ||
297 | |||
298 | context DorisS3DateFieldHeader inv invGenMult97: | ||
299 | not self.destinationId.oclIsUndefined() | ||
300 | |||
301 | context DorisS3DateFieldHeader inv invGenMult98: | ||
302 | not self.tfTime.oclIsUndefined() | ||
303 | |||
304 | context DorisS3DateFieldHeader inv invGenMult99: | ||
305 | not self.spare.oclIsUndefined() | ||
306 | |||
307 | context TmNavattS3DataFieldHeader inv invGenMult100: | ||
308 | not self.fillerA.oclIsUndefined() | ||
309 | |||
310 | context TmNavattS3DataFieldHeader inv invGenMult101: | ||
311 | not self.version.oclIsUndefined() | ||
312 | |||
313 | context TmNavattS3DataFieldHeader inv invGenMult102: | ||
314 | not self.fillerB.oclIsUndefined() | ||
315 | |||
316 | context TmNavattS3DataFieldHeader inv invGenMult103: | ||
317 | not self.type.oclIsUndefined() | ||
318 | |||
319 | context TmNavattS3DataFieldHeader inv invGenMult104: | ||
320 | not self.subtype.oclIsUndefined() | ||
321 | |||
322 | context TmNavattS3DataFieldHeader inv invGenMult105: | ||
323 | not self.destinationId.oclIsUndefined() | ||
324 | |||
325 | context TmNavattS3DataFieldHeader inv invGenMult106: | ||
326 | not self.tfCoarse.oclIsUndefined() | ||
327 | |||
328 | context TmNavattS3DataFieldHeader inv invGenMult107: | ||
329 | not self.tfFine.oclIsUndefined() | ||
330 | |||
331 | context TmNavattS3DataFieldHeader inv invGenMult108: | ||
332 | not self.tfStat.oclIsUndefined() | ||
333 | |||
334 | context MwrS3DataFieldHeader inv invGenMult109: | ||
335 | not self.fillerA.oclIsUndefined() | ||
336 | |||
337 | context MwrS3DataFieldHeader inv invGenMult110: | ||
338 | not self.version.oclIsUndefined() | ||
339 | |||
340 | context MwrS3DataFieldHeader inv invGenMult111: | ||
341 | not self.fillerB.oclIsUndefined() | ||
342 | |||
343 | context MwrS3DataFieldHeader inv invGenMult112: | ||
344 | not self.type.oclIsUndefined() | ||
345 | |||
346 | context MwrS3DataFieldHeader inv invGenMult113: | ||
347 | not self.subtype.oclIsUndefined() | ||
348 | |||
349 | context MwrS3DataFieldHeader inv invGenMult114: | ||
350 | not self.destinationId.oclIsUndefined() | ||
351 | |||
352 | context MwrS3DataFieldHeader inv invGenMult115: | ||
353 | not self.tfOverSecond.oclIsUndefined() | ||
354 | |||
355 | context MwrS3DataFieldHeader inv invGenMult116: | ||
356 | not self.tfSubSecond.oclIsUndefined() | ||
357 | |||
358 | context MwrS3DataFieldHeader inv invGenMult117: | ||
359 | not self.tfStat.oclIsUndefined() | ||
360 | |||
361 | context SralS3DataFieldHeader inv invGenMult118: | ||
362 | not self.fillerA.oclIsUndefined() | ||
363 | |||
364 | context SralS3DataFieldHeader inv invGenMult119: | ||
365 | not self.version.oclIsUndefined() | ||
366 | |||
367 | context SralS3DataFieldHeader inv invGenMult120: | ||
368 | not self.fillerB.oclIsUndefined() | ||
369 | |||
370 | context SralS3DataFieldHeader inv invGenMult121: | ||
371 | not self.type.oclIsUndefined() | ||
372 | |||
373 | context SralS3DataFieldHeader inv invGenMult122: | ||
374 | not self.subtype.oclIsUndefined() | ||
375 | |||
376 | context SralS3DataFieldHeader inv invGenMult123: | ||
377 | not self.destinationId.oclIsUndefined() | ||
378 | |||
379 | context SralS3DataFieldHeader inv invGenMult124: | ||
380 | not self.tfCoarse.oclIsUndefined() | ||
381 | |||
382 | context SralS3DataFieldHeader inv invGenMult125: | ||
383 | not self.tfFine.oclIsUndefined() | ||
384 | |||
385 | context SralS3DataFieldHeader inv invGenMult126: | ||
386 | not self.tfStat.oclIsUndefined() | ||
387 | |||
388 | context TmGpsrS3DataFieldHeader inv invGenMult127: | ||
389 | not self.fillerA.oclIsUndefined() | ||
390 | |||
391 | context TmGpsrS3DataFieldHeader inv invGenMult128: | ||
392 | not self.version.oclIsUndefined() | ||
393 | |||
394 | context TmGpsrS3DataFieldHeader inv invGenMult129: | ||
395 | not self.fillerB.oclIsUndefined() | ||
396 | |||
397 | context TmGpsrS3DataFieldHeader inv invGenMult130: | ||
398 | not self.type.oclIsUndefined() | ||
399 | |||
400 | context TmGpsrS3DataFieldHeader inv invGenMult131: | ||
401 | not self.subtype.oclIsUndefined() | ||
402 | |||
403 | context TmGpsrS3DataFieldHeader inv invGenMult132: | ||
404 | not self.destinationId.oclIsUndefined() | ||
405 | |||
406 | context TmGpsrS3DataFieldHeader inv invGenMult133: | ||
407 | not self.tfSeconds.oclIsUndefined() | ||
408 | |||
409 | context TmGpsrS3DataFieldHeader inv invGenMult134: | ||
410 | not self.tfSubSeconds.oclIsUndefined() | ||
411 | |||
412 | context TmGpsrS3DataFieldHeader inv invGenMult135: | ||
413 | not self.tfBlank.oclIsUndefined() | ||
414 | |||
415 | context PacketData inv invGenMult136: | ||
416 | not self.dataArray.oclIsUndefined() | ||
417 | |||
418 | context PacketData inv invGenMult137: | ||
419 | not self.activePacketDataField.oclIsUndefined() | ||
420 | |||
421 | context PacketErrorControl inv invGenMult138: | ||
422 | not self.actualValue.oclIsUndefined() | ||
423 | |||
424 | context PacketErrorControl inv invGenMult139: | ||
425 | not self.calculatedValue.oclIsUndefined() | ||
426 | |||
427 | context PacketErrorControl inv invGenMult140: | ||
428 | not self.activePacketDataField.oclIsUndefined() | ||
429 | |||
430 | context FragmentPacketDataField inv invGenMult141: | ||
431 | not self.dataArray.oclIsUndefined() | ||
432 | |||
433 | context ChannelDataPerVcid inv invGenMult142: | ||
434 | not self.virtualChannelId.oclIsUndefined() | ||
435 | |||
436 | context ChannelDataPerVcid inv invGenMult143: | ||
437 | self.channelData->size() >= 1 | ||
438 | |||
439 | context ChannelDataPerVcid inv invGenMult144: | ||
440 | self.isp->size() >= 1 | ||
441 | |||
442 | context ChannelData inv invGenMult145: | ||
443 | not self.transmissionData.oclIsUndefined() | ||
444 | |||
445 | context ChannelData inv invGenMult146: | ||
446 | not self.channelDataPerVcid.oclIsUndefined() | ||
447 | |||
448 | context Cadu inv invGenMult147: | ||
449 | not self.sync.oclIsUndefined() | ||
450 | |||
451 | context Cadu inv invGenMult148: | ||
452 | not self.reedSolomonCoding.oclIsUndefined() | ||
453 | |||
454 | |||
455 | context Cadu inv invGenMult150: | ||
456 | not self.channelData.oclIsUndefined() | ||
457 | |||
458 | context Sync inv invGenMult151: | ||
459 | not self.value.oclIsUndefined() | ||
460 | |||
461 | context Sync inv invGenMult152: | ||
462 | not self.cadu.oclIsUndefined() | ||
463 | |||
464 | context ReedSolomonCoding inv invGenMult153: | ||
465 | not self.rsActualCheckSymbols.oclIsUndefined() | ||
466 | |||
467 | context ReedSolomonCoding inv invGenMult154: | ||
468 | not self.rsCalculatedCheckSymbols.oclIsUndefined() | ||
469 | |||
470 | context ReedSolomonCoding inv invGenMult155: | ||
471 | not self.cadu.oclIsUndefined() | ||
472 | |||
473 | context ExtendedCaduInfo inv invGenMult156: | ||
474 | not self.value.oclIsUndefined() | ||
475 | |||
476 | context ExtendedCaduInfo inv invGenMult157: | ||
477 | not self.cadu.oclIsUndefined() | ||
478 | |||
479 | context TransmissionData inv invGenMult158: | ||
480 | not self.configuration.oclIsUndefined() | ||
481 | |||
482 | context Configuration inv invGenMult159: | ||
483 | not self.transmission.oclIsUndefined() | ||
484 | |||
485 | context Configuration inv invGenMult160: | ||
486 | not self.maxCounterPerApidSuffixConfig.oclIsUndefined() | ||
487 | |||
488 | context Configuration inv invGenMult161: | ||
489 | not self.validApidsConfig.oclIsUndefined() | ||
490 | |||
491 | context Configuration inv invGenMult162: | ||
492 | not self.rtStpsConfig.oclIsUndefined() | ||
493 | |||
494 | context MaxCounterPerApidSuffixConfig inv invGenMult163: | ||
495 | self.apidSuffixAndMaxCounter->size() >= 1 | ||
496 | |||
497 | context MaxCounterPerApidSuffixConfig inv invGenMult164: | ||
498 | not self.configuration.oclIsUndefined() | ||
499 | |||
500 | context ApidSuffixAndMaxCounter inv invGenMult165: | ||
501 | not self.apidSuffix.oclIsUndefined() | ||
502 | |||
503 | context ApidSuffixAndMaxCounter inv invGenMult166: | ||
504 | not self.maxCounterPerApidSuffixConfig.oclIsUndefined() | ||
505 | |||
506 | context ValidApidsConfig inv invGenMult167: | ||
507 | not self.configuration.oclIsUndefined() | ||
508 | |||
509 | context ValidApidsConfig inv invGenMult168: | ||
510 | self.ispInfo->size() >= 1 | ||
511 | |||
512 | context IspInfo inv invGenMult169: | ||
513 | not self.validApidsConfig.oclIsUndefined() | ||
514 | |||
515 | context RtStpsConfig inv invGenMult170: | ||
516 | not self.configuration.oclIsUndefined() | ||
517 | |||
518 | context RtStpsConfig inv invGenMult171: | ||
519 | not self.xsveRtStps.oclIsUndefined() | ||
520 | |||
521 | context XsveRtStps inv invGenMult172: | ||
522 | not self.frameLength.oclIsUndefined() | ||
523 | |||
524 | context XsveRtStps inv invGenMult173: | ||
525 | not self.rsCorrectSize.oclIsUndefined() | ||
526 | |||
527 | context XsveRtStps inv invGenMult174: | ||
528 | not self.idleVcid.oclIsUndefined() | ||
529 | |||
530 | context XsveRtStps inv invGenMult175: | ||
531 | not self.idleApid.oclIsUndefined() | ||
532 | |||
533 | context XsveRtStps inv invGenMult176: | ||
534 | not self.vcdusConfig.oclIsUndefined() | ||
535 | |||
536 | context XsveRtStps inv invGenMult177: | ||
537 | not self.rtStpsConfig.oclIsUndefined() | ||
538 | |||
539 | context VcdusConfig inv invGenMult178: | ||
540 | not self.xsveRtStps.oclIsUndefined() | ||
541 | |||
542 | context VcdusConfig inv invGenMult179: | ||
543 | self.vcduConfig->size() >= 1 | ||
544 | |||
545 | context VcduConfig inv invGenMult180: | ||
546 | not self.vcdusConfig.oclIsUndefined() | ||
547 | |||
548 | context VcduConfig inv invGenMult181: | ||
549 | not self.vcid.oclIsUndefined() | ||
550 | |||
551 | context VcduConfig inv invGenMult182: | ||
552 | not self.minPacketSize.oclIsUndefined() | ||
553 | |||
554 | context VcduConfig inv invGenMult183: | ||
555 | not self.maxPacketSize.oclIsUndefined() | ||
556 | |||
557 | context VcduConfig inv invGenMult184: | ||
558 | not self.ispsConfig.oclIsUndefined() | ||
559 | |||
560 | context IspsConfig inv invGenMult185: | ||
561 | not self.vcduConfig.oclIsUndefined() | ||
562 | |||
563 | context IspsConfig inv invGenMult186: | ||
564 | self.ispConfig->size() >= 1 | ||
565 | |||
566 | context IspConfig inv invGenMult187: | ||
567 | not self.ispsConfig.oclIsUndefined() | ||
568 | |||
569 | context IspConfig inv invGenMult188: | ||
570 | not self.apid.oclIsUndefined() | ||
571 | |||
572 | context VcduHeader inv invGenMult189: | ||
573 | not self.mcidTfVersionNumber.oclIsUndefined() | ||
574 | |||
575 | context VcduHeader inv invGenMult190: | ||
576 | not self.mcidSpacecraftId.oclIsUndefined() | ||
577 | |||
578 | context VcduHeader inv invGenMult191: | ||
579 | not self.virtualChannelId.oclIsUndefined() | ||
580 | |||
581 | context VcduHeader inv invGenMult192: | ||
582 | not self.virtualChannelFrameCount.oclIsUndefined() | ||
583 | |||
584 | context VcduHeader inv invGenMult193: | ||
585 | not self.signFieldReplayFlag.oclIsUndefined() | ||
586 | |||
587 | context VcduHeader inv invGenMult194: | ||
588 | not self.signFieldRsvdSpare.oclIsUndefined() | ||
589 | |||
590 | context VcduHeader inv invGenMult195: | ||
591 | not self.frameHeaderErrorControl.oclIsUndefined() | ||
592 | |||
593 | context MpduIdleHeader inv invGenMult198: | ||
594 | not self.value.oclIsUndefined() | ||
595 | |||
596 | context MpduActiveHeader inv invGenMult199: | ||
597 | not self.rsvdSpare.oclIsUndefined() | ||
598 | |||
599 | context MpduActiveHeader inv invGenMult200: | ||
600 | not self.firstHeaderPointer.oclIsUndefined() | ||
601 | |||
602 | context ByteSequence inv invGenMult201: | ||
603 | self.byte->size()>=1 | ||
604 | |||
605 | context Vcid inv invGenMult202: | ||
606 | not self.value.oclIsUndefined() | ||
607 | |||
608 | context ApidPcat inv invGenMult203: | ||
609 | not self.value.oclIsUndefined() | ||
610 | |||
611 | context Apid inv invGenMult204: | ||
612 | not self.value.oclIsUndefined() | ||
613 | |||
614 | context Apid inv invGenMult205: | ||
615 | not self.apidPid.oclIsUndefined() | ||
616 | |||
617 | context Apid inv invGenMult206: | ||
618 | not self.apidPcat.oclIsUndefined() | ||
619 | |||
620 | context ApidPid inv invGenMult207: | ||
621 | not self.value.oclIsUndefined() | ||
622 | |||
623 | context ChannelData inv invextracted1: | ||
624 | self.cadu->size() > 0 | ||
625 | |||
626 | |||
627 | |||
628 | |||
629 | endpackage \ No newline at end of file | ||