From c0a758eedd457a5d8eb9f1a6c17fc24143aabb3e Mon Sep 17 00:00:00 2001 From: ArenBabikian Date: Sun, 26 Apr 2020 18:23:13 -0400 Subject: Add PLEDGE case study files --- .../src/Taxation/Address.java | 159 + .../Taxation/Agriculture_and_Forestry_Income.java | 17 + .../src/Taxation/CE_Type.java | 232 + .../case.study.pledge.model/src/Taxation/CIM.java | 17 + .../case.study.pledge.model/src/Taxation/CIP.java | 17 + .../case.study.pledge.model/src/Taxation/CIS.java | 17 + .../Taxation/Capital_and_Investments_Income.java | 17 + .../Category_of_Health_and_Pension_Insurances.java | 232 + .../Taxation/Category_of_Permanent_Expense.java | 209 + .../Category_of_Private_Insurance_and_Plan.java | 278 + .../src/Taxation/Constants.java | 619 ++ .../src/Taxation/Country.java | 301 + .../case.study.pledge.model/src/Taxation/DS.java | 69 + .../src/Taxation/DS_for_Donation.java | 17 + .../DS_for_Health_and_Pension_Insurance.java | 48 + .../src/Taxation/DS_for_Interest_Expense.java | 17 + .../src/Taxation/DS_for_Loss_Carryforward.java | 17 + .../src/Taxation/DS_for_Permanent_Expense.java | 48 + .../DS_for_Private_Insurance_and_Plan.java | 117 + .../src/Taxation/Dependent.java | 188 + .../src/Taxation/Dependent_Type.java | 278 + .../src/Taxation/Disability_Types.java | 347 + .../src/Taxation/Donation.java | 92 + .../src/Taxation/Employment_Income.java | 17 + .../src/Taxation/Expense.java | 196 + .../src/Taxation/Expense_Purpose.java | 301 + .../src/Taxation/External_Allowance.java | 189 + .../src/Taxation/Extraordinary_Expense_CE.java | 71 + .../case.study.pledge.model/src/Taxation/FD.java | 68 + .../case.study.pledge.model/src/Taxation/FO.java | 48 + .../src/Taxation/Fiscal_Address.java | 17 + .../src/Taxation/Foreign_Income.java | 17 + .../src/Taxation/FromAgent.java | 144 + .../src/Taxation/FromLaw.java | 71 + .../src/Taxation/Grantor.java | 301 + .../src/Taxation/Habitual_Address.java | 17 + .../src/Taxation/Health_and_Pension_Insurance.java | 72 + .../src/Taxation/Household.java | 86 + .../src/Taxation/Income.java | 271 + .../src/Taxation/Income_Detail.java | 186 + .../src/Taxation/Income_Tax.java | 115 + .../src/Taxation/Income_Tax_Credit.java | 215 + .../src/Taxation/Income_Type.java | 95 + .../src/Taxation/Interest_Expense.java | 17 + .../src/Taxation/Job_Activity.java | 232 + .../src/Taxation/Legal_Union_Record.java | 221 + .../src/Taxation/Legal_Union_Types.java | 232 + .../src/Taxation/Local_Income.java | 17 + .../src/Taxation/Loss_Carryforward.java | 116 + .../src/Taxation/Marriage_Record.java | 17 + .../src/Taxation/Miscellaneous_Expense_FO.java | 17 + .../src/Taxation/Non_Resident_Tax_Payer.java | 46 + .../src/Taxation/Partnership_Record.java | 17 + .../Taxation/Pensions_and_Annuities_Income.java | 46 + .../src/Taxation/Permanent_Expense.java | 72 + .../src/Taxation/Physical_Person.java | 278 + .../src/Taxation/Private_Insurance_and_Plan.java | 94 + .../src/Taxation/Professional_Expense.java | 17 + .../Taxation/Professional_Expenses_Deduction.java | 18 + .../src/Taxation/Rentals_and_Leases_Income.java | 46 + .../src/Taxation/Resident_Tax_Payer.java | 18 + .../src/Taxation/Separation_Causes.java | 255 + .../src/Taxation/Special_Expense_DS.java | 17 + .../src/Taxation/Spousal_Expense_AC.java | 17 + .../src/Taxation/Tax_Card.java | 885 ++ .../src/Taxation/Tax_Card_Type.java | 209 + .../src/Taxation/Tax_Case.java | 18 + .../src/Taxation/Tax_Class_Category.java | 232 + .../src/Taxation/Tax_Office.java | 255 + .../src/Taxation/Tax_Payer.java | 127 + .../src/Taxation/Tax_Property.java | 94 + .../src/Taxation/TaxationFactory.java | 501 + .../src/Taxation/TaxationPackage.java | 10961 +++++++++++++++++++ .../case.study.pledge.model/src/Taxation/Town.java | 278 + .../src/Taxation/Trade_and_Business_Income.java | 17 + .../src/Taxation/Travel_Expense_FD.java | 17 + .../src/Taxation/Type_of_Rate.java | 209 + .../src/Taxation/impl/AddressImpl.java | 465 + .../impl/Agriculture_and_Forestry_IncomeImpl.java | 37 + .../src/Taxation/impl/CIMImpl.java | 37 + .../src/Taxation/impl/CIPImpl.java | 37 + .../src/Taxation/impl/CISImpl.java | 37 + .../impl/Capital_and_Investments_IncomeImpl.java | 37 + .../src/Taxation/impl/ConstantsImpl.java | 1509 +++ .../src/Taxation/impl/DSImpl.java | 221 + .../src/Taxation/impl/DS_for_DonationImpl.java | 37 + .../DS_for_Health_and_Pension_InsuranceImpl.java | 165 + .../Taxation/impl/DS_for_Interest_ExpenseImpl.java | 37 + .../impl/DS_for_Loss_CarryforwardImpl.java | 37 + .../impl/DS_for_Permanent_ExpenseImpl.java | 165 + .../DS_for_Private_Insurance_and_PlanImpl.java | 333 + .../src/Taxation/impl/DependentImpl.java | 598 + .../src/Taxation/impl/DonationImpl.java | 276 + .../src/Taxation/impl/Employment_IncomeImpl.java | 37 + .../src/Taxation/impl/ExpenseImpl.java | 653 ++ .../src/Taxation/impl/External_AllowanceImpl.java | 555 + .../impl/Extraordinary_Expense_CEImpl.java | 221 + .../src/Taxation/impl/FDImpl.java | 220 + .../src/Taxation/impl/FOImpl.java | 165 + .../src/Taxation/impl/Fiscal_AddressImpl.java | 37 + .../src/Taxation/impl/Foreign_IncomeImpl.java | 37 + .../src/Taxation/impl/FromAgentImpl.java | 505 + .../src/Taxation/impl/FromLawImpl.java | 268 + .../src/Taxation/impl/Habitual_AddressImpl.java | 37 + .../impl/Health_and_Pension_InsuranceImpl.java | 221 + .../src/Taxation/impl/HouseholdImpl.java | 313 + .../src/Taxation/impl/IncomeImpl.java | 782 ++ .../src/Taxation/impl/Income_DetailImpl.java | 547 + .../src/Taxation/impl/Income_TaxImpl.java | 340 + .../src/Taxation/impl/Income_Tax_CreditImpl.java | 625 ++ .../src/Taxation/impl/Income_TypeImpl.java | 324 + .../src/Taxation/impl/Interest_ExpenseImpl.java | 37 + .../src/Taxation/impl/Legal_Union_RecordImpl.java | 647 ++ .../src/Taxation/impl/Local_IncomeImpl.java | 37 + .../src/Taxation/impl/Loss_CarryforwardImpl.java | 332 + .../src/Taxation/impl/Marriage_RecordImpl.java | 37 + .../impl/Miscellaneous_Expense_FOImpl.java | 37 + .../Taxation/impl/Non_Resident_Tax_PayerImpl.java | 164 + .../src/Taxation/impl/Partnership_RecordImpl.java | 37 + .../impl/Pensions_and_Annuities_IncomeImpl.java | 164 + .../src/Taxation/impl/Permanent_ExpenseImpl.java | 221 + .../src/Taxation/impl/Physical_PersonImpl.java | 766 ++ .../impl/Private_Insurance_and_PlanImpl.java | 276 + .../Taxation/impl/Professional_ExpenseImpl.java | 37 + .../impl/Professional_Expenses_DeductionImpl.java | 39 + .../impl/Rentals_and_Leases_IncomeImpl.java | 164 + .../src/Taxation/impl/Resident_Tax_PayerImpl.java | 36 + .../src/Taxation/impl/Special_Expense_DSImpl.java | 37 + .../src/Taxation/impl/Spousal_Expense_ACImpl.java | 37 + .../src/Taxation/impl/Tax_CardImpl.java | 2263 ++++ .../src/Taxation/impl/Tax_PayerImpl.java | 425 + .../src/Taxation/impl/Tax_PropertyImpl.java | 323 + .../src/Taxation/impl/Taxation.ecore | 1257 +++ .../src/Taxation/impl/TaxationFactoryImpl.java | 1144 ++ .../src/Taxation/impl/TaxationPackageImpl.java | 4271 ++++++++ .../impl/Trade_and_Business_IncomeImpl.java | 37 + .../src/Taxation/impl/Travel_Expense_FDImpl.java | 37 + .../src/Taxation/util/TaxationAdapterFactory.java | 1146 ++ .../src/Taxation/util/TaxationSwitch.java | 1360 +++ 139 files changed, 46746 insertions(+) create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Address.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Agriculture_and_Forestry_Income.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/CE_Type.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/CIM.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/CIP.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/CIS.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Capital_and_Investments_Income.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Category_of_Health_and_Pension_Insurances.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Category_of_Permanent_Expense.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Category_of_Private_Insurance_and_Plan.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Constants.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Country.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Donation.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Health_and_Pension_Insurance.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Interest_Expense.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Loss_Carryforward.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Permanent_Expense.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Private_Insurance_and_Plan.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Dependent.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Dependent_Type.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Disability_Types.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Donation.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Employment_Income.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Expense.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Expense_Purpose.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/External_Allowance.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Extraordinary_Expense_CE.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FD.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FO.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Fiscal_Address.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Foreign_Income.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FromAgent.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FromLaw.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Grantor.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Habitual_Address.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Health_and_Pension_Insurance.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Household.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Detail.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Tax.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Tax_Credit.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Type.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Interest_Expense.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Job_Activity.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Legal_Union_Record.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Legal_Union_Types.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Local_Income.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Loss_Carryforward.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Marriage_Record.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Miscellaneous_Expense_FO.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Non_Resident_Tax_Payer.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Partnership_Record.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Pensions_and_Annuities_Income.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Permanent_Expense.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Physical_Person.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Private_Insurance_and_Plan.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Professional_Expense.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Professional_Expenses_Deduction.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Rentals_and_Leases_Income.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Resident_Tax_Payer.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Separation_Causes.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Special_Expense_DS.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Spousal_Expense_AC.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card_Type.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Case.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Class_Category.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Office.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Payer.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Property.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/TaxationFactory.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/TaxationPackage.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Town.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Trade_and_Business_Income.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Travel_Expense_FD.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Type_of_Rate.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/AddressImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Agriculture_and_Forestry_IncomeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/CIMImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/CIPImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/CISImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Capital_and_Investments_IncomeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/ConstantsImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DSImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_DonationImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Health_and_Pension_InsuranceImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Interest_ExpenseImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Loss_CarryforwardImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Permanent_ExpenseImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Private_Insurance_and_PlanImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DependentImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DonationImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Employment_IncomeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/ExpenseImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/External_AllowanceImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Extraordinary_Expense_CEImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FDImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FOImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Fiscal_AddressImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Foreign_IncomeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FromAgentImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FromLawImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Habitual_AddressImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Health_and_Pension_InsuranceImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/HouseholdImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/IncomeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_DetailImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_TaxImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_Tax_CreditImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_TypeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Interest_ExpenseImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Legal_Union_RecordImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Local_IncomeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Loss_CarryforwardImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Marriage_RecordImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Miscellaneous_Expense_FOImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Non_Resident_Tax_PayerImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Partnership_RecordImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Pensions_and_Annuities_IncomeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Permanent_ExpenseImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Physical_PersonImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Private_Insurance_and_PlanImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Professional_ExpenseImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Professional_Expenses_DeductionImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Rentals_and_Leases_IncomeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Resident_Tax_PayerImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Special_Expense_DSImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Spousal_Expense_ACImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_CardImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_PayerImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_PropertyImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Taxation.ecore create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationFactoryImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationPackageImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Trade_and_Business_IncomeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Travel_Expense_FDImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/util/TaxationAdapterFactory.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/util/TaxationSwitch.java (limited to 'Tests/MODELS2020-CaseStudies/case.study.pledge.model/src') diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Address.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Address.java new file mode 100644 index 00000000..2994ae14 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Address.java @@ -0,0 +1,159 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Address'. + * + * + *

+ * The following features are supported: + *

+ * + * + * @see Taxation.TaxationPackage#getAddress() + * @model + * @generated + */ +public interface Address extends EObject { + /** + * Returns the value of the 'Country' attribute. + * The default value is "ZZ". + * The literals are from the enumeration {@link Taxation.Country}. + * + * + * @return the value of the 'Country' attribute. + * @see Taxation.Country + * @see #setCountry(Country) + * @see Taxation.TaxationPackage#getAddress_Country() + * @model default="ZZ" required="true" + * @generated + */ + Country getCountry(); + + /** + * Sets the value of the '{@link Taxation.Address#getCountry Country}' attribute. + * + * + * @param value the new value of the 'Country' attribute. + * @see Taxation.Country + * @see #getCountry() + * @generated + */ + void setCountry(Country value); + + /** + * Returns the value of the 'Street' attribute. + * + * + * @return the value of the 'Street' attribute. + * @see #setStreet(String) + * @see Taxation.TaxationPackage#getAddress_Street() + * @model required="true" + * @generated + */ + String getStreet(); + + /** + * Sets the value of the '{@link Taxation.Address#getStreet Street}' attribute. + * + * + * @param value the new value of the 'Street' attribute. + * @see #getStreet() + * @generated + */ + void setStreet(String value); + + /** + * Returns the value of the 'Zip Code' attribute. + * + * + * @return the value of the 'Zip Code' attribute. + * @see #setZipCode(String) + * @see Taxation.TaxationPackage#getAddress_ZipCode() + * @model required="true" + * @generated + */ + String getZipCode(); + + /** + * Sets the value of the '{@link Taxation.Address#getZipCode Zip Code}' attribute. + * + * + * @param value the new value of the 'Zip Code' attribute. + * @see #getZipCode() + * @generated + */ + void setZipCode(String value); + + /** + * Returns the value of the 'City' attribute. + * + * + * @return the value of the 'City' attribute. + * @see #setCity(String) + * @see Taxation.TaxationPackage#getAddress_City() + * @model required="true" + * @generated + */ + String getCity(); + + /** + * Sets the value of the '{@link Taxation.Address#getCity City}' attribute. + * + * + * @param value the new value of the 'City' attribute. + * @see #getCity() + * @generated + */ + void setCity(String value); + + /** + * Returns the value of the 'Id2' attribute. + * + * + * @return the value of the 'Id2' attribute. + * @see #setId2(String) + * @see Taxation.TaxationPackage#getAddress_Id2() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId2(); + + /** + * Sets the value of the '{@link Taxation.Address#getId2 Id2}' attribute. + * + * + * @param value the new value of the 'Id2' attribute. + * @see #getId2() + * @generated + */ + void setId2(String value); + + /** + * Returns the value of the 'Tax Payer' reference list. + * The list contents are of type {@link Taxation.Physical_Person}. + * It is bidirectional and its opposite is '{@link Taxation.Physical_Person#getAddresses Addresses}'. + * + * + * @return the value of the 'Tax Payer' reference list. + * @see Taxation.TaxationPackage#getAddress_TaxPayer() + * @see Taxation.Physical_Person#getAddresses + * @model opposite="addresses" ordered="false" + * @generated + */ + EList getTaxPayer(); + +} // Address diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Agriculture_and_Forestry_Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Agriculture_and_Forestry_Income.java new file mode 100644 index 00000000..fac879d1 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Agriculture_and_Forestry_Income.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Agriculture and Forestry Income'. + * + * + * + * @see Taxation.TaxationPackage#getAgriculture_and_Forestry_Income() + * @model + * @generated + */ +public interface Agriculture_and_Forestry_Income extends Income_Type { +} // Agriculture_and_Forestry_Income diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/CE_Type.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/CE_Type.java new file mode 100644 index 00000000..3be2941d --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/CE_Type.java @@ -0,0 +1,232 @@ +/** + */ +package Taxation; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'CE Type', + * and utility methods for working with them. + * + * @see Taxation.TaxationPackage#getCE_Type() + * @model + * @generated + */ +public enum CE_Type implements Enumerator { + /** + * The 'INALIDITY AND INFIRMITY' literal object. + * + * + * @see #INALIDITY_AND_INFIRMITY_VALUE + * @generated + * @ordered + */ + INALIDITY_AND_INFIRMITY(0, "INALIDITY_AND_INFIRMITY", "INALIDITY_AND_INFIRMITY"), + + /** + * The 'DEPENDENCE AND CARE EXCLUDING CHLIDREN NOT PART OF HOUSEHOLD' literal object. + * + * + * @see #DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD_VALUE + * @generated + * @ordered + */ + DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD(1, "DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD", "DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD"), + + /** + * The 'CARE FOR CHILDREN NOT BEING PART OF HOUSEHOLD' literal object. + * + * + * @see #CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD_VALUE + * @generated + * @ordered + */ + CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD(2, "CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD", "CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD"); + + /** + * The 'INALIDITY AND INFIRMITY' literal value. + * + * + * @see #INALIDITY_AND_INFIRMITY + * @model + * @generated + * @ordered + */ + public static final int INALIDITY_AND_INFIRMITY_VALUE = 0; + + /** + * The 'DEPENDENCE AND CARE EXCLUDING CHLIDREN NOT PART OF HOUSEHOLD' literal value. + * + * + * @see #DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD + * @model + * @generated + * @ordered + */ + public static final int DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD_VALUE = 1; + + /** + * The 'CARE FOR CHILDREN NOT BEING PART OF HOUSEHOLD' literal value. + * + * + * @see #CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD + * @model + * @generated + * @ordered + */ + public static final int CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD_VALUE = 2; + + /** + * An array of all the 'CE Type' enumerators. + * + * + * @generated + */ + private static final CE_Type[] VALUES_ARRAY = + new CE_Type[] { + INALIDITY_AND_INFIRMITY, + DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD, + CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD, + }; + + /** + * A public read-only list of all the 'CE Type' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'CE Type' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static CE_Type get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + CE_Type result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'CE Type' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static CE_Type getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + CE_Type result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'CE Type' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static CE_Type get(int value) { + switch (value) { + case INALIDITY_AND_INFIRMITY_VALUE: return INALIDITY_AND_INFIRMITY; + case DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD_VALUE: return DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD; + case CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD_VALUE: return CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private CE_Type(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //CE_Type diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/CIM.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/CIM.java new file mode 100644 index 00000000..10246bdf --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/CIM.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'CIM'. + * + * + * + * @see Taxation.TaxationPackage#getCIM() + * @model + * @generated + */ +public interface CIM extends Income_Tax_Credit { +} // CIM diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/CIP.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/CIP.java new file mode 100644 index 00000000..c8d4ab42 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/CIP.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'CIP'. + * + * + * + * @see Taxation.TaxationPackage#getCIP() + * @model + * @generated + */ +public interface CIP extends Income_Tax_Credit { +} // CIP diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/CIS.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/CIS.java new file mode 100644 index 00000000..ae688220 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/CIS.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'CIS'. + * + * + * + * @see Taxation.TaxationPackage#getCIS() + * @model + * @generated + */ +public interface CIS extends Income_Tax_Credit { +} // CIS diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Capital_and_Investments_Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Capital_and_Investments_Income.java new file mode 100644 index 00000000..833366f4 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Capital_and_Investments_Income.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Capital and Investments Income'. + * + * + * + * @see Taxation.TaxationPackage#getCapital_and_Investments_Income() + * @model + * @generated + */ +public interface Capital_and_Investments_Income extends Income_Type { +} // Capital_and_Investments_Income diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Category_of_Health_and_Pension_Insurances.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Category_of_Health_and_Pension_Insurances.java new file mode 100644 index 00000000..5cc3e13d --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Category_of_Health_and_Pension_Insurances.java @@ -0,0 +1,232 @@ +/** + */ +package Taxation; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Category of Health and Pension Insurances', + * and utility methods for working with them. + * + * @see Taxation.TaxationPackage#getCategory_of_Health_and_Pension_Insurances() + * @model + * @generated + */ +public enum Category_of_Health_and_Pension_Insurances implements Enumerator { + /** + * The 'MANDATORY HEALTH AND PENSION INSURANCE' literal object. + * + * + * @see #MANDATORY_HEALTH_AND_PENSION_INSURANCE_VALUE + * @generated + * @ordered + */ + MANDATORY_HEALTH_AND_PENSION_INSURANCE(0, "MANDATORY_HEALTH_AND_PENSION_INSURANCE", "MANDATORY_HEALTH_AND_PENSION_INSURANCE"), + + /** + * The 'ADDITIONAL EMPLOYERS PENSION INSURANCE' literal object. + * + * + * @see #ADDITIONAL_EMPLOYERS_PENSION_INSURANCE_VALUE + * @generated + * @ordered + */ + ADDITIONAL_EMPLOYERS_PENSION_INSURANCE(1, "ADDITIONAL_EMPLOYERS_PENSION_INSURANCE", "ADDITIONAL_EMPLOYERS_PENSION_INSURANCE"), + + /** + * The 'CONTINUED HEALTH AND PENSION INSURANCE' literal object. + * + * + * @see #CONTINUED_HEALTH_AND_PENSION_INSURANCE_VALUE + * @generated + * @ordered + */ + CONTINUED_HEALTH_AND_PENSION_INSURANCE(2, "CONTINUED_HEALTH_AND_PENSION_INSURANCE", "CONTINUED_HEALTH_AND_PENSION_INSURANCE"); + + /** + * The 'MANDATORY HEALTH AND PENSION INSURANCE' literal value. + * + * + * @see #MANDATORY_HEALTH_AND_PENSION_INSURANCE + * @model + * @generated + * @ordered + */ + public static final int MANDATORY_HEALTH_AND_PENSION_INSURANCE_VALUE = 0; + + /** + * The 'ADDITIONAL EMPLOYERS PENSION INSURANCE' literal value. + * + * + * @see #ADDITIONAL_EMPLOYERS_PENSION_INSURANCE + * @model + * @generated + * @ordered + */ + public static final int ADDITIONAL_EMPLOYERS_PENSION_INSURANCE_VALUE = 1; + + /** + * The 'CONTINUED HEALTH AND PENSION INSURANCE' literal value. + * + * + * @see #CONTINUED_HEALTH_AND_PENSION_INSURANCE + * @model + * @generated + * @ordered + */ + public static final int CONTINUED_HEALTH_AND_PENSION_INSURANCE_VALUE = 2; + + /** + * An array of all the 'Category of Health and Pension Insurances' enumerators. + * + * + * @generated + */ + private static final Category_of_Health_and_Pension_Insurances[] VALUES_ARRAY = + new Category_of_Health_and_Pension_Insurances[] { + MANDATORY_HEALTH_AND_PENSION_INSURANCE, + ADDITIONAL_EMPLOYERS_PENSION_INSURANCE, + CONTINUED_HEALTH_AND_PENSION_INSURANCE, + }; + + /** + * A public read-only list of all the 'Category of Health and Pension Insurances' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Category of Health and Pension Insurances' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Category_of_Health_and_Pension_Insurances get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Category_of_Health_and_Pension_Insurances result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Category of Health and Pension Insurances' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Category_of_Health_and_Pension_Insurances getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Category_of_Health_and_Pension_Insurances result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Category of Health and Pension Insurances' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Category_of_Health_and_Pension_Insurances get(int value) { + switch (value) { + case MANDATORY_HEALTH_AND_PENSION_INSURANCE_VALUE: return MANDATORY_HEALTH_AND_PENSION_INSURANCE; + case ADDITIONAL_EMPLOYERS_PENSION_INSURANCE_VALUE: return ADDITIONAL_EMPLOYERS_PENSION_INSURANCE; + case CONTINUED_HEALTH_AND_PENSION_INSURANCE_VALUE: return CONTINUED_HEALTH_AND_PENSION_INSURANCE; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Category_of_Health_and_Pension_Insurances(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Category_of_Health_and_Pension_Insurances diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Category_of_Permanent_Expense.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Category_of_Permanent_Expense.java new file mode 100644 index 00000000..83d75af2 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Category_of_Permanent_Expense.java @@ -0,0 +1,209 @@ +/** + */ +package Taxation; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Category of Permanent Expense', + * and utility methods for working with them. + * + * @see Taxation.TaxationPackage#getCategory_of_Permanent_Expense() + * @model + * @generated + */ +public enum Category_of_Permanent_Expense implements Enumerator { + /** + * The 'MISCELLANEOUS DEBT' literal object. + * + * + * @see #MISCELLANEOUS_DEBT_VALUE + * @generated + * @ordered + */ + MISCELLANEOUS_DEBT(0, "MISCELLANEOUS_DEBT", "MISCELLANEOUS_DEBT"), + + /** + * The 'ALIMONY' literal object. + * + * + * @see #ALIMONY_VALUE + * @generated + * @ordered + */ + ALIMONY(1, "ALIMONY", "ALIMONY"); + + /** + * The 'MISCELLANEOUS DEBT' literal value. + * + * + * @see #MISCELLANEOUS_DEBT + * @model + * @generated + * @ordered + */ + public static final int MISCELLANEOUS_DEBT_VALUE = 0; + + /** + * The 'ALIMONY' literal value. + * + * + * @see #ALIMONY + * @model + * @generated + * @ordered + */ + public static final int ALIMONY_VALUE = 1; + + /** + * An array of all the 'Category of Permanent Expense' enumerators. + * + * + * @generated + */ + private static final Category_of_Permanent_Expense[] VALUES_ARRAY = + new Category_of_Permanent_Expense[] { + MISCELLANEOUS_DEBT, + ALIMONY, + }; + + /** + * A public read-only list of all the 'Category of Permanent Expense' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Category of Permanent Expense' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Category_of_Permanent_Expense get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Category_of_Permanent_Expense result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Category of Permanent Expense' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Category_of_Permanent_Expense getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Category_of_Permanent_Expense result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Category of Permanent Expense' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Category_of_Permanent_Expense get(int value) { + switch (value) { + case MISCELLANEOUS_DEBT_VALUE: return MISCELLANEOUS_DEBT; + case ALIMONY_VALUE: return ALIMONY; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Category_of_Permanent_Expense(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Category_of_Permanent_Expense diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Category_of_Private_Insurance_and_Plan.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Category_of_Private_Insurance_and_Plan.java new file mode 100644 index 00000000..bf4c3c3b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Category_of_Private_Insurance_and_Plan.java @@ -0,0 +1,278 @@ +/** + */ +package Taxation; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Category of Private Insurance and Plan', + * and utility methods for working with them. + * + * @see Taxation.TaxationPackage#getCategory_of_Private_Insurance_and_Plan() + * @model + * @generated + */ +public enum Category_of_Private_Insurance_and_Plan implements Enumerator { + /** + * The 'PRIVATE INSURANCE' literal object. + * + * + * @see #PRIVATE_INSURANCE_VALUE + * @generated + * @ordered + */ + PRIVATE_INSURANCE(0, "PRIVATE_INSURANCE", "PRIVATE_INSURANCE"), + + /** + * The 'PRIVATE LIFE INSURANCE' literal object. + * + * + * @see #PRIVATE_LIFE_INSURANCE_VALUE + * @generated + * @ordered + */ + PRIVATE_LIFE_INSURANCE(1, "PRIVATE_LIFE_INSURANCE", "PRIVATE_LIFE_INSURANCE"), + + /** + * The 'COMPANY MEMBERS PRIVATE INSURANCE' literal object. + * + * + * @see #COMPANY_MEMBERS_PRIVATE_INSURANCE_VALUE + * @generated + * @ordered + */ + COMPANY_MEMBERS_PRIVATE_INSURANCE(2, "COMPANY_MEMBERS_PRIVATE_INSURANCE", "COMPANY_MEMBERS_PRIVATE_INSURANCE"), + + /** + * The 'HOUSING SAVING PLAN' literal object. + * + * + * @see #HOUSING_SAVING_PLAN_VALUE + * @generated + * @ordered + */ + HOUSING_SAVING_PLAN(3, "HOUSING_SAVING_PLAN", "HOUSING_SAVING_PLAN"), + + /** + * The 'OLD AGE PENSION PLAN' literal object. + * + * + * @see #OLD_AGE_PENSION_PLAN_VALUE + * @generated + * @ordered + */ + OLD_AGE_PENSION_PLAN(4, "OLD_AGE_PENSION_PLAN", "OLD_AGE_PENSION_PLAN"); + + /** + * The 'PRIVATE INSURANCE' literal value. + * + * + * @see #PRIVATE_INSURANCE + * @model + * @generated + * @ordered + */ + public static final int PRIVATE_INSURANCE_VALUE = 0; + + /** + * The 'PRIVATE LIFE INSURANCE' literal value. + * + * + * @see #PRIVATE_LIFE_INSURANCE + * @model + * @generated + * @ordered + */ + public static final int PRIVATE_LIFE_INSURANCE_VALUE = 1; + + /** + * The 'COMPANY MEMBERS PRIVATE INSURANCE' literal value. + * + * + * @see #COMPANY_MEMBERS_PRIVATE_INSURANCE + * @model + * @generated + * @ordered + */ + public static final int COMPANY_MEMBERS_PRIVATE_INSURANCE_VALUE = 2; + + /** + * The 'HOUSING SAVING PLAN' literal value. + * + * + * @see #HOUSING_SAVING_PLAN + * @model + * @generated + * @ordered + */ + public static final int HOUSING_SAVING_PLAN_VALUE = 3; + + /** + * The 'OLD AGE PENSION PLAN' literal value. + * + * + * @see #OLD_AGE_PENSION_PLAN + * @model + * @generated + * @ordered + */ + public static final int OLD_AGE_PENSION_PLAN_VALUE = 4; + + /** + * An array of all the 'Category of Private Insurance and Plan' enumerators. + * + * + * @generated + */ + private static final Category_of_Private_Insurance_and_Plan[] VALUES_ARRAY = + new Category_of_Private_Insurance_and_Plan[] { + PRIVATE_INSURANCE, + PRIVATE_LIFE_INSURANCE, + COMPANY_MEMBERS_PRIVATE_INSURANCE, + HOUSING_SAVING_PLAN, + OLD_AGE_PENSION_PLAN, + }; + + /** + * A public read-only list of all the 'Category of Private Insurance and Plan' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Category of Private Insurance and Plan' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Category_of_Private_Insurance_and_Plan get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Category_of_Private_Insurance_and_Plan result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Category of Private Insurance and Plan' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Category_of_Private_Insurance_and_Plan getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Category_of_Private_Insurance_and_Plan result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Category of Private Insurance and Plan' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Category_of_Private_Insurance_and_Plan get(int value) { + switch (value) { + case PRIVATE_INSURANCE_VALUE: return PRIVATE_INSURANCE; + case PRIVATE_LIFE_INSURANCE_VALUE: return PRIVATE_LIFE_INSURANCE; + case COMPANY_MEMBERS_PRIVATE_INSURANCE_VALUE: return COMPANY_MEMBERS_PRIVATE_INSURANCE; + case HOUSING_SAVING_PLAN_VALUE: return HOUSING_SAVING_PLAN; + case OLD_AGE_PENSION_PLAN_VALUE: return OLD_AGE_PENSION_PLAN; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Category_of_Private_Insurance_and_Plan(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Category_of_Private_Insurance_and_Plan diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Constants.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Constants.java new file mode 100644 index 00000000..b21f94f1 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Constants.java @@ -0,0 +1,619 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Constants'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Constants#getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD}
  • + *
  • {@link Taxation.Constants#getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE}
  • + *
  • {@link Taxation.Constants#getMINIMUM_SALARY MINIMUM SALARY}
  • + *
  • {@link Taxation.Constants#getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION}
  • + *
  • {@link Taxation.Constants#getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS}
  • + *
  • {@link Taxation.Constants#getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS}
  • + *
  • {@link Taxation.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC}
  • + *
  • {@link Taxation.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE}
  • + *
  • {@link Taxation.Constants#getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}
  • + *
  • {@link Taxation.Constants#getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION}
  • + *
  • {@link Taxation.Constants#getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}
  • + *
  • {@link Taxation.Constants#getFLAT_RATE_CIM_DAILY FLAT RATE CIM DAILY}
  • + *
  • {@link Taxation.Constants#getFLAT_RATE_CIM_MONTHLY FLAT RATE CIM MONTHLY}
  • + *
  • {@link Taxation.Constants#getFLAT_RATE_CIM_YEARLY FLAT RATE CIM YEARLY}
  • + *
  • {@link Taxation.Constants#getFLAT_RATE_CIP_DAILY FLAT RATE CIP DAILY}
  • + *
  • {@link Taxation.Constants#getFLAT_RATE_CIP_MONTHLY FLAT RATE CIP MONTHLY}
  • + *
  • {@link Taxation.Constants#getFLAT_RATE_CIP_YEARLY FLAT RATE CIP YEARLY}
  • + *
  • {@link Taxation.Constants#getFLAT_RATE_CIS_DAILY FLAT RATE CIS DAILY}
  • + *
  • {@link Taxation.Constants#getFLAT_RATE_CIS_MONTHLY FLAT RATE CIS MONTHLY}
  • + *
  • {@link Taxation.Constants#getFLAT_RATE_CIS_YEARLY FLAT RATE CIS YEARLY}
  • + *
  • {@link Taxation.Constants#getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT FLAT RATE FOR TRAVEL EXPENSE PER UNIT}
  • + *
  • {@link Taxation.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS MAXIMUM DEDUCTIBLE AMOUNT FOR DS}
  • + *
  • {@link Taxation.Constants#getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE FLAT RATE FOR MISCELLANEOUS EXPENSE}
  • + *
  • {@link Taxation.Constants#getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE}
  • + *
  • {@link Taxation.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE}
  • + *
+ * + * @see Taxation.TaxationPackage#getConstants() + * @model abstract="true" + * @generated + */ +public interface Constants extends EObject { + /** + * Returns the value of the 'MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD' attribute. + * The default value is "3480.0". + * + * + * @return the value of the 'MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD' attribute. + * @see #setMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD(double) + * @see Taxation.TaxationPackage#getConstants_MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD() + * @model default="3480.0" required="true" + * @generated + */ + double getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD(); + + /** + * Sets the value of the '{@link Taxation.Constants#getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD}' attribute. + * + * + * @param value the new value of the 'MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD' attribute. + * @see #getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD() + * @generated + */ + void setMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD(double value); + + /** + * Returns the value of the 'MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE' attribute. + * The default value is "3600.0". + * + * + * @return the value of the 'MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE' attribute. + * @see #setMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE(double) + * @see Taxation.TaxationPackage#getConstants_MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE() + * @model default="3600.0" required="true" + * @generated + */ + double getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE(); + + /** + * Sets the value of the '{@link Taxation.Constants#getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE}' attribute. + * + * + * @param value the new value of the 'MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE' attribute. + * @see #getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE() + * @generated + */ + void setMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE(double value); + + /** + * Returns the value of the 'MINIMUM SALARY' attribute. + * The default value is "1500.0". + * + * + * @return the value of the 'MINIMUM SALARY' attribute. + * @see #setMINIMUM_SALARY(double) + * @see Taxation.TaxationPackage#getConstants_MINIMUM_SALARY() + * @model default="1500.0" required="true" + * @generated + */ + double getMINIMUM_SALARY(); + + /** + * Sets the value of the '{@link Taxation.Constants#getMINIMUM_SALARY MINIMUM SALARY}' attribute. + * + * + * @param value the new value of the 'MINIMUM SALARY' attribute. + * @see #getMINIMUM_SALARY() + * @generated + */ + void setMINIMUM_SALARY(double value); + + /** + * Returns the value of the 'FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION' attribute. + * The default value is "4500.0". + * + * + * @return the value of the 'FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION' attribute. + * @see #setFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION(double) + * @see Taxation.TaxationPackage#getConstants_FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION() + * @model default="4500.0" required="true" + * @generated + */ + double getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION(); + + /** + * Sets the value of the '{@link Taxation.Constants#getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION}' attribute. + * + * + * @param value the new value of the 'FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION' attribute. + * @see #getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION() + * @generated + */ + void setFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION(double value); + + /** + * Returns the value of the 'MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS' attribute. + * The default value is "20.0". + * + * + * @return the value of the 'MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS' attribute. + * @see #setMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS(double) + * @see Taxation.TaxationPackage#getConstants_MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS() + * @model default="20.0" required="true" + * @generated + */ + double getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS(); + + /** + * Sets the value of the '{@link Taxation.Constants#getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS}' attribute. + * + * + * @param value the new value of the 'MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS' attribute. + * @see #getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS() + * @generated + */ + void setMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS(double value); + + /** + * Returns the value of the 'MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS' attribute. + * The default value is "120.0". + * + * + * @return the value of the 'MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS' attribute. + * @see #setMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS(double) + * @see Taxation.TaxationPackage#getConstants_MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS() + * @model default="120.0" required="true" + * @generated + */ + double getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS(); + + /** + * Sets the value of the '{@link Taxation.Constants#getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS}' attribute. + * + * + * @param value the new value of the 'MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS' attribute. + * @see #getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS() + * @generated + */ + void setMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS(double value); + + /** + * Returns the value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC' attribute. + * @see #setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC(double) + * @see Taxation.TaxationPackage#getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC() + * @model default="0.0" required="true" + * @generated + */ + double getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC(); + + /** + * Sets the value of the '{@link Taxation.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC}' attribute. + * + * + * @param value the new value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC' attribute. + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC() + * @generated + */ + void setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC(double value); + + /** + * Returns the value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE' attribute. + * The default value is "24000.0". + * + * + * @return the value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE' attribute. + * @see #setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE(double) + * @see Taxation.TaxationPackage#getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE() + * @model default="24000.0" required="true" + * @generated + */ + double getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE(); + + /** + * Sets the value of the '{@link Taxation.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE}' attribute. + * + * + * @param value the new value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE' attribute. + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE() + * @generated + */ + void setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE(double value); + + /** + * Returns the value of the 'MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * The default value is "99.0". + * + * + * @return the value of the 'MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * @see #setMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(double) + * @see Taxation.TaxationPackage#getConstants_MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @model default="99.0" required="true" + * @generated + */ + double getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + + /** + * Sets the value of the '{@link Taxation.Constants#getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}' attribute. + * + * + * @param value the new value of the 'MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * @see #getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @generated + */ + void setMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(double value); + + /** + * Returns the value of the 'MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * The default value is "30.0". + * + * + * @return the value of the 'MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * @see #setMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(double) + * @see Taxation.TaxationPackage#getConstants_MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @model default="30.0" required="true" + * @generated + */ + double getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + + /** + * Sets the value of the '{@link Taxation.Constants#getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION}' attribute. + * + * + * @param value the new value of the 'MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * @see #getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @generated + */ + void setMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(double value); + + /** + * Returns the value of the 'MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * The default value is "4.0". + * + * + * @return the value of the 'MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * @see #setMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(double) + * @see Taxation.TaxationPackage#getConstants_MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @model default="4.0" required="true" + * @generated + */ + double getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + + /** + * Sets the value of the '{@link Taxation.Constants#getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}' attribute. + * + * + * @param value the new value of the 'MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * @see #getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @generated + */ + void setMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(double value); + + /** + * Returns the value of the 'FLAT RATE CIM DAILY' attribute. + * The default value is "2.0". + * + * + * @return the value of the 'FLAT RATE CIM DAILY' attribute. + * @see #setFLAT_RATE_CIM_DAILY(double) + * @see Taxation.TaxationPackage#getConstants_FLAT_RATE_CIM_DAILY() + * @model default="2.0" required="true" + * @generated + */ + double getFLAT_RATE_CIM_DAILY(); + + /** + * Sets the value of the '{@link Taxation.Constants#getFLAT_RATE_CIM_DAILY FLAT RATE CIM DAILY}' attribute. + * + * + * @param value the new value of the 'FLAT RATE CIM DAILY' attribute. + * @see #getFLAT_RATE_CIM_DAILY() + * @generated + */ + void setFLAT_RATE_CIM_DAILY(double value); + + /** + * Returns the value of the 'FLAT RATE CIM MONTHLY' attribute. + * The default value is "62.0". + * + * + * @return the value of the 'FLAT RATE CIM MONTHLY' attribute. + * @see #setFLAT_RATE_CIM_MONTHLY(double) + * @see Taxation.TaxationPackage#getConstants_FLAT_RATE_CIM_MONTHLY() + * @model default="62.0" required="true" + * @generated + */ + double getFLAT_RATE_CIM_MONTHLY(); + + /** + * Sets the value of the '{@link Taxation.Constants#getFLAT_RATE_CIM_MONTHLY FLAT RATE CIM MONTHLY}' attribute. + * + * + * @param value the new value of the 'FLAT RATE CIM MONTHLY' attribute. + * @see #getFLAT_RATE_CIM_MONTHLY() + * @generated + */ + void setFLAT_RATE_CIM_MONTHLY(double value); + + /** + * Returns the value of the 'FLAT RATE CIM YEARLY' attribute. + * The default value is "750.0". + * + * + * @return the value of the 'FLAT RATE CIM YEARLY' attribute. + * @see #setFLAT_RATE_CIM_YEARLY(double) + * @see Taxation.TaxationPackage#getConstants_FLAT_RATE_CIM_YEARLY() + * @model default="750.0" required="true" + * @generated + */ + double getFLAT_RATE_CIM_YEARLY(); + + /** + * Sets the value of the '{@link Taxation.Constants#getFLAT_RATE_CIM_YEARLY FLAT RATE CIM YEARLY}' attribute. + * + * + * @param value the new value of the 'FLAT RATE CIM YEARLY' attribute. + * @see #getFLAT_RATE_CIM_YEARLY() + * @generated + */ + void setFLAT_RATE_CIM_YEARLY(double value); + + /** + * Returns the value of the 'FLAT RATE CIP DAILY' attribute. + * The default value is "1.0". + * + * + * @return the value of the 'FLAT RATE CIP DAILY' attribute. + * @see #setFLAT_RATE_CIP_DAILY(double) + * @see Taxation.TaxationPackage#getConstants_FLAT_RATE_CIP_DAILY() + * @model default="1.0" required="true" + * @generated + */ + double getFLAT_RATE_CIP_DAILY(); + + /** + * Sets the value of the '{@link Taxation.Constants#getFLAT_RATE_CIP_DAILY FLAT RATE CIP DAILY}' attribute. + * + * + * @param value the new value of the 'FLAT RATE CIP DAILY' attribute. + * @see #getFLAT_RATE_CIP_DAILY() + * @generated + */ + void setFLAT_RATE_CIP_DAILY(double value); + + /** + * Returns the value of the 'FLAT RATE CIP MONTHLY' attribute. + * The default value is "25.0". + * + * + * @return the value of the 'FLAT RATE CIP MONTHLY' attribute. + * @see #setFLAT_RATE_CIP_MONTHLY(double) + * @see Taxation.TaxationPackage#getConstants_FLAT_RATE_CIP_MONTHLY() + * @model default="25.0" required="true" + * @generated + */ + double getFLAT_RATE_CIP_MONTHLY(); + + /** + * Sets the value of the '{@link Taxation.Constants#getFLAT_RATE_CIP_MONTHLY FLAT RATE CIP MONTHLY}' attribute. + * + * + * @param value the new value of the 'FLAT RATE CIP MONTHLY' attribute. + * @see #getFLAT_RATE_CIP_MONTHLY() + * @generated + */ + void setFLAT_RATE_CIP_MONTHLY(double value); + + /** + * Returns the value of the 'FLAT RATE CIP YEARLY' attribute. + * The default value is "30.0". + * + * + * @return the value of the 'FLAT RATE CIP YEARLY' attribute. + * @see #setFLAT_RATE_CIP_YEARLY(double) + * @see Taxation.TaxationPackage#getConstants_FLAT_RATE_CIP_YEARLY() + * @model default="30.0" required="true" + * @generated + */ + double getFLAT_RATE_CIP_YEARLY(); + + /** + * Sets the value of the '{@link Taxation.Constants#getFLAT_RATE_CIP_YEARLY FLAT RATE CIP YEARLY}' attribute. + * + * + * @param value the new value of the 'FLAT RATE CIP YEARLY' attribute. + * @see #getFLAT_RATE_CIP_YEARLY() + * @generated + */ + void setFLAT_RATE_CIP_YEARLY(double value); + + /** + * Returns the value of the 'FLAT RATE CIS DAILY' attribute. + * The default value is "1.0". + * + * + * @return the value of the 'FLAT RATE CIS DAILY' attribute. + * @see #setFLAT_RATE_CIS_DAILY(double) + * @see Taxation.TaxationPackage#getConstants_FLAT_RATE_CIS_DAILY() + * @model default="1.0" required="true" + * @generated + */ + double getFLAT_RATE_CIS_DAILY(); + + /** + * Sets the value of the '{@link Taxation.Constants#getFLAT_RATE_CIS_DAILY FLAT RATE CIS DAILY}' attribute. + * + * + * @param value the new value of the 'FLAT RATE CIS DAILY' attribute. + * @see #getFLAT_RATE_CIS_DAILY() + * @generated + */ + void setFLAT_RATE_CIS_DAILY(double value); + + /** + * Returns the value of the 'FLAT RATE CIS MONTHLY' attribute. + * The default value is "25.0". + * + * + * @return the value of the 'FLAT RATE CIS MONTHLY' attribute. + * @see #setFLAT_RATE_CIS_MONTHLY(double) + * @see Taxation.TaxationPackage#getConstants_FLAT_RATE_CIS_MONTHLY() + * @model default="25.0" required="true" + * @generated + */ + double getFLAT_RATE_CIS_MONTHLY(); + + /** + * Sets the value of the '{@link Taxation.Constants#getFLAT_RATE_CIS_MONTHLY FLAT RATE CIS MONTHLY}' attribute. + * + * + * @param value the new value of the 'FLAT RATE CIS MONTHLY' attribute. + * @see #getFLAT_RATE_CIS_MONTHLY() + * @generated + */ + void setFLAT_RATE_CIS_MONTHLY(double value); + + /** + * Returns the value of the 'FLAT RATE CIS YEARLY' attribute. + * The default value is "300.0". + * + * + * @return the value of the 'FLAT RATE CIS YEARLY' attribute. + * @see #setFLAT_RATE_CIS_YEARLY(double) + * @see Taxation.TaxationPackage#getConstants_FLAT_RATE_CIS_YEARLY() + * @model default="300.0" required="true" + * @generated + */ + double getFLAT_RATE_CIS_YEARLY(); + + /** + * Sets the value of the '{@link Taxation.Constants#getFLAT_RATE_CIS_YEARLY FLAT RATE CIS YEARLY}' attribute. + * + * + * @param value the new value of the 'FLAT RATE CIS YEARLY' attribute. + * @see #getFLAT_RATE_CIS_YEARLY() + * @generated + */ + void setFLAT_RATE_CIS_YEARLY(double value); + + /** + * Returns the value of the 'FLAT RATE FOR TRAVEL EXPENSE PER UNIT' attribute. + * The default value is "99.0". + * + * + * @return the value of the 'FLAT RATE FOR TRAVEL EXPENSE PER UNIT' attribute. + * @see #setFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT(double) + * @see Taxation.TaxationPackage#getConstants_FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT() + * @model default="99.0" required="true" + * @generated + */ + double getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT(); + + /** + * Sets the value of the '{@link Taxation.Constants#getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT FLAT RATE FOR TRAVEL EXPENSE PER UNIT}' attribute. + * + * + * @param value the new value of the 'FLAT RATE FOR TRAVEL EXPENSE PER UNIT' attribute. + * @see #getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT() + * @generated + */ + void setFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT(double value); + + /** + * Returns the value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR DS' attribute. + * + * + * @return the value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR DS' attribute. + * @see #setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS(double) + * @see Taxation.TaxationPackage#getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS() + * @model required="true" + * @generated + */ + double getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS(); + + /** + * Sets the value of the '{@link Taxation.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS MAXIMUM DEDUCTIBLE AMOUNT FOR DS}' attribute. + * + * + * @param value the new value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR DS' attribute. + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS() + * @generated + */ + void setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS(double value); + + /** + * Returns the value of the 'FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute. + * + * + * @return the value of the 'FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute. + * @see #setFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(double) + * @see Taxation.TaxationPackage#getConstants_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @model required="true" + * @generated + */ + double getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(); + + /** + * Sets the value of the '{@link Taxation.Constants#getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE FLAT RATE FOR MISCELLANEOUS EXPENSE}' attribute. + * + * + * @param value the new value of the 'FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute. + * @see #getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @generated + */ + void setFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(double value); + + /** + * Returns the value of the 'DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute. + * + * + * @return the value of the 'DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute. + * @see #setDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(double) + * @see Taxation.TaxationPackage#getConstants_DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @model required="true" + * @generated + */ + double getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(); + + /** + * Sets the value of the '{@link Taxation.Constants#getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE}' attribute. + * + * + * @param value the new value of the 'DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute. + * @see #getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @generated + */ + void setDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(double value); + + /** + * Returns the value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE' attribute. + * + * + * @return the value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE' attribute. + * @see #setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE(double) + * @see Taxation.TaxationPackage#getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE() + * @model required="true" + * @generated + */ + double getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE(); + + /** + * Sets the value of the '{@link Taxation.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE}' attribute. + * + * + * @param value the new value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE' attribute. + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE() + * @generated + */ + void setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE(double value); + +} // Constants diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Country.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Country.java new file mode 100644 index 00000000..def7923f --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Country.java @@ -0,0 +1,301 @@ +/** + */ +package Taxation; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Country', + * and utility methods for working with them. + * + * @see Taxation.TaxationPackage#getCountry() + * @model + * @generated + */ +public enum Country implements Enumerator { + /** + * The 'ZZ' literal object. + * + * + * @see #ZZ_VALUE + * @generated + * @ordered + */ + ZZ(0, "ZZ", "ZZ"), + + /** + * The 'FF' literal object. + * + * + * @see #FF_VALUE + * @generated + * @ordered + */ + FF(1, "FF", "FF"), + + /** + * The 'BB' literal object. + * + * + * @see #BB_VALUE + * @generated + * @ordered + */ + BB(2, "BB", "BB"), + + /** + * The 'DD' literal object. + * + * + * @see #DD_VALUE + * @generated + * @ordered + */ + DD(3, "DD", "DD"), + + /** + * The 'NN' literal object. + * + * + * @see #NN_VALUE + * @generated + * @ordered + */ + NN(4, "NN", "NN"), + + /** + * The 'OTHER' literal object. + * + * + * @see #OTHER_VALUE + * @generated + * @ordered + */ + OTHER(5, "OTHER", "OTHER"); + + /** + * The 'ZZ' literal value. + * + * + * @see #ZZ + * @model + * @generated + * @ordered + */ + public static final int ZZ_VALUE = 0; + + /** + * The 'FF' literal value. + * + * + * @see #FF + * @model + * @generated + * @ordered + */ + public static final int FF_VALUE = 1; + + /** + * The 'BB' literal value. + * + * + * @see #BB + * @model + * @generated + * @ordered + */ + public static final int BB_VALUE = 2; + + /** + * The 'DD' literal value. + * + * + * @see #DD + * @model + * @generated + * @ordered + */ + public static final int DD_VALUE = 3; + + /** + * The 'NN' literal value. + * + * + * @see #NN + * @model + * @generated + * @ordered + */ + public static final int NN_VALUE = 4; + + /** + * The 'OTHER' literal value. + * + * + * @see #OTHER + * @model + * @generated + * @ordered + */ + public static final int OTHER_VALUE = 5; + + /** + * An array of all the 'Country' enumerators. + * + * + * @generated + */ + private static final Country[] VALUES_ARRAY = + new Country[] { + ZZ, + FF, + BB, + DD, + NN, + OTHER, + }; + + /** + * A public read-only list of all the 'Country' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Country' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Country get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Country result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Country' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Country getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Country result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Country' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Country get(int value) { + switch (value) { + case ZZ_VALUE: return ZZ; + case FF_VALUE: return FF; + case BB_VALUE: return BB; + case DD_VALUE: return DD; + case NN_VALUE: return NN; + case OTHER_VALUE: return OTHER; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Country(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Country diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS.java new file mode 100644 index 00000000..2c80c6eb --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS.java @@ -0,0 +1,69 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'DS'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.DS#getMaximum_deductible_amount Maximum deductible amount}
  • + *
  • {@link Taxation.DS#getId3 Id3}
  • + *
+ * + * @see Taxation.TaxationPackage#getDS() + * @model + * @generated + */ +public interface DS extends EObject { + /** + * Returns the value of the 'Maximum deductible amount' attribute. + * + * + * @return the value of the 'Maximum deductible amount' attribute. + * @see #setMaximum_deductible_amount(double) + * @see Taxation.TaxationPackage#getDS_Maximum_deductible_amount() + * @model required="true" + * @generated + */ + double getMaximum_deductible_amount(); + + /** + * Sets the value of the '{@link Taxation.DS#getMaximum_deductible_amount Maximum deductible amount}' attribute. + * + * + * @param value the new value of the 'Maximum deductible amount' attribute. + * @see #getMaximum_deductible_amount() + * @generated + */ + void setMaximum_deductible_amount(double value); + + /** + * Returns the value of the 'Id3' attribute. + * + * + * @return the value of the 'Id3' attribute. + * @see #setId3(String) + * @see Taxation.TaxationPackage#getDS_Id3() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId3(); + + /** + * Sets the value of the '{@link Taxation.DS#getId3 Id3}' attribute. + * + * + * @param value the new value of the 'Id3' attribute. + * @see #getId3() + * @generated + */ + void setId3(String value); + +} // DS diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Donation.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Donation.java new file mode 100644 index 00000000..b33315e5 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Donation.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'DS for Donation'. + * + * + * + * @see Taxation.TaxationPackage#getDS_for_Donation() + * @model + * @generated + */ +public interface DS_for_Donation extends DS { +} // DS_for_Donation diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Health_and_Pension_Insurance.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Health_and_Pension_Insurance.java new file mode 100644 index 00000000..75c8588c --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Health_and_Pension_Insurance.java @@ -0,0 +1,48 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'DS for Health and Pension Insurance'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.DS_for_Health_and_Pension_Insurance#getInsurance_category Insurance category}
  • + *
+ * + * @see Taxation.TaxationPackage#getDS_for_Health_and_Pension_Insurance() + * @model + * @generated + */ +public interface DS_for_Health_and_Pension_Insurance extends DS { + /** + * Returns the value of the 'Insurance category' attribute. + * The literals are from the enumeration {@link Taxation.Category_of_Health_and_Pension_Insurances}. + * + * + * @return the value of the 'Insurance category' attribute. + * @see Taxation.Category_of_Health_and_Pension_Insurances + * @see #setInsurance_category(Category_of_Health_and_Pension_Insurances) + * @see Taxation.TaxationPackage#getDS_for_Health_and_Pension_Insurance_Insurance_category() + * @model required="true" + * @generated + */ + Category_of_Health_and_Pension_Insurances getInsurance_category(); + + /** + * Sets the value of the '{@link Taxation.DS_for_Health_and_Pension_Insurance#getInsurance_category Insurance category}' attribute. + * + * + * @param value the new value of the 'Insurance category' attribute. + * @see Taxation.Category_of_Health_and_Pension_Insurances + * @see #getInsurance_category() + * @generated + */ + void setInsurance_category(Category_of_Health_and_Pension_Insurances value); + +} // DS_for_Health_and_Pension_Insurance diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Interest_Expense.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Interest_Expense.java new file mode 100644 index 00000000..bed2eab8 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Interest_Expense.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'DS for Interest Expense'. + * + * + * + * @see Taxation.TaxationPackage#getDS_for_Interest_Expense() + * @model + * @generated + */ +public interface DS_for_Interest_Expense extends DS { +} // DS_for_Interest_Expense diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Loss_Carryforward.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Loss_Carryforward.java new file mode 100644 index 00000000..d39c4d7f --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Loss_Carryforward.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'DS for Loss Carryforward'. + * + * + * + * @see Taxation.TaxationPackage#getDS_for_Loss_Carryforward() + * @model + * @generated + */ +public interface DS_for_Loss_Carryforward extends DS { +} // DS_for_Loss_Carryforward diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Permanent_Expense.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Permanent_Expense.java new file mode 100644 index 00000000..afc9441b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Permanent_Expense.java @@ -0,0 +1,48 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'DS for Permanent Expense'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.DS_for_Permanent_Expense#getPermanent_expense_category Permanent expense category}
  • + *
+ * + * @see Taxation.TaxationPackage#getDS_for_Permanent_Expense() + * @model + * @generated + */ +public interface DS_for_Permanent_Expense extends DS { + /** + * Returns the value of the 'Permanent expense category' attribute. + * The literals are from the enumeration {@link Taxation.Category_of_Permanent_Expense}. + * + * + * @return the value of the 'Permanent expense category' attribute. + * @see Taxation.Category_of_Permanent_Expense + * @see #setPermanent_expense_category(Category_of_Permanent_Expense) + * @see Taxation.TaxationPackage#getDS_for_Permanent_Expense_Permanent_expense_category() + * @model required="true" + * @generated + */ + Category_of_Permanent_Expense getPermanent_expense_category(); + + /** + * Sets the value of the '{@link Taxation.DS_for_Permanent_Expense#getPermanent_expense_category Permanent expense category}' attribute. + * + * + * @param value the new value of the 'Permanent expense category' attribute. + * @see Taxation.Category_of_Permanent_Expense + * @see #getPermanent_expense_category() + * @generated + */ + void setPermanent_expense_category(Category_of_Permanent_Expense value); + +} // DS_for_Permanent_Expense diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Private_Insurance_and_Plan.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Private_Insurance_and_Plan.java new file mode 100644 index 00000000..c72def81 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Private_Insurance_and_Plan.java @@ -0,0 +1,117 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'DS for Private Insurance and Plan'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.DS_for_Private_Insurance_and_Plan#getPrivate_insurance_and_plan_category Private insurance and plan category}
  • + *
  • {@link Taxation.DS_for_Private_Insurance_and_Plan#getIncrease_for_life_insurance Increase for life insurance}
  • + *
  • {@link Taxation.DS_for_Private_Insurance_and_Plan#getMaximum_deductible_amount_for_private_insurance Maximum deductible amount for private insurance}
  • + *
  • {@link Taxation.DS_for_Private_Insurance_and_Plan#getMaximum_deductible_amount_for_old_age_pension_plan Maximum deductible amount for old age pension plan}
  • + *
+ * + * @see Taxation.TaxationPackage#getDS_for_Private_Insurance_and_Plan() + * @model + * @generated + */ +public interface DS_for_Private_Insurance_and_Plan extends DS { + /** + * Returns the value of the 'Private insurance and plan category' attribute. + * The literals are from the enumeration {@link Taxation.Category_of_Private_Insurance_and_Plan}. + * + * + * @return the value of the 'Private insurance and plan category' attribute. + * @see Taxation.Category_of_Private_Insurance_and_Plan + * @see #setPrivate_insurance_and_plan_category(Category_of_Private_Insurance_and_Plan) + * @see Taxation.TaxationPackage#getDS_for_Private_Insurance_and_Plan_Private_insurance_and_plan_category() + * @model required="true" + * @generated + */ + Category_of_Private_Insurance_and_Plan getPrivate_insurance_and_plan_category(); + + /** + * Sets the value of the '{@link Taxation.DS_for_Private_Insurance_and_Plan#getPrivate_insurance_and_plan_category Private insurance and plan category}' attribute. + * + * + * @param value the new value of the 'Private insurance and plan category' attribute. + * @see Taxation.Category_of_Private_Insurance_and_Plan + * @see #getPrivate_insurance_and_plan_category() + * @generated + */ + void setPrivate_insurance_and_plan_category(Category_of_Private_Insurance_and_Plan value); + + /** + * Returns the value of the 'Increase for life insurance' attribute. + * + * + * @return the value of the 'Increase for life insurance' attribute. + * @see #setIncrease_for_life_insurance(double) + * @see Taxation.TaxationPackage#getDS_for_Private_Insurance_and_Plan_Increase_for_life_insurance() + * @model required="true" derived="true" + * @generated + */ + double getIncrease_for_life_insurance(); + + /** + * Sets the value of the '{@link Taxation.DS_for_Private_Insurance_and_Plan#getIncrease_for_life_insurance Increase for life insurance}' attribute. + * + * + * @param value the new value of the 'Increase for life insurance' attribute. + * @see #getIncrease_for_life_insurance() + * @generated + */ + void setIncrease_for_life_insurance(double value); + + /** + * Returns the value of the 'Maximum deductible amount for private insurance' attribute. + * + * + * @return the value of the 'Maximum deductible amount for private insurance' attribute. + * @see #setMaximum_deductible_amount_for_private_insurance(double) + * @see Taxation.TaxationPackage#getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_private_insurance() + * @model required="true" derived="true" + * @generated + */ + double getMaximum_deductible_amount_for_private_insurance(); + + /** + * Sets the value of the '{@link Taxation.DS_for_Private_Insurance_and_Plan#getMaximum_deductible_amount_for_private_insurance Maximum deductible amount for private insurance}' attribute. + * + * + * @param value the new value of the 'Maximum deductible amount for private insurance' attribute. + * @see #getMaximum_deductible_amount_for_private_insurance() + * @generated + */ + void setMaximum_deductible_amount_for_private_insurance(double value); + + /** + * Returns the value of the 'Maximum deductible amount for old age pension plan' attribute. + * + * + * @return the value of the 'Maximum deductible amount for old age pension plan' attribute. + * @see #setMaximum_deductible_amount_for_old_age_pension_plan(double) + * @see Taxation.TaxationPackage#getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_old_age_pension_plan() + * @model required="true" derived="true" + * @generated + */ + double getMaximum_deductible_amount_for_old_age_pension_plan(); + + /** + * Sets the value of the '{@link Taxation.DS_for_Private_Insurance_and_Plan#getMaximum_deductible_amount_for_old_age_pension_plan Maximum deductible amount for old age pension plan}' attribute. + * + * + * @param value the new value of the 'Maximum deductible amount for old age pension plan' attribute. + * @see #getMaximum_deductible_amount_for_old_age_pension_plan() + * @generated + */ + void setMaximum_deductible_amount_for_old_age_pension_plan(double value); + +} // DS_for_Private_Insurance_and_Plan diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Dependent.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Dependent.java new file mode 100644 index 00000000..f21e9d9a --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Dependent.java @@ -0,0 +1,188 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'Dependent'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Dependent#getDependent_type Dependent type}
  • + *
  • {@link Taxation.Dependent#getResponsible_person Responsible person}
  • + *
  • {@link Taxation.Dependent#isContinued_studies Continued studies}
  • + *
  • {@link Taxation.Dependent#getAllowances Allowances}
  • + *
  • {@link Taxation.Dependent#getHousehold Household}
  • + *
  • {@link Taxation.Dependent#getFrom_agent From agent}
  • + *
  • {@link Taxation.Dependent#getExpense Expense}
  • + *
+ * + * @see Taxation.TaxationPackage#getDependent() + * @model + * @generated + */ +public interface Dependent extends Physical_Person { + /** + * Returns the value of the 'Dependent type' attribute. + * The literals are from the enumeration {@link Taxation.Dependent_Type}. + * + * + * @return the value of the 'Dependent type' attribute. + * @see Taxation.Dependent_Type + * @see #setDependent_type(Dependent_Type) + * @see Taxation.TaxationPackage#getDependent_Dependent_type() + * @model required="true" + * @generated + */ + Dependent_Type getDependent_type(); + + /** + * Sets the value of the '{@link Taxation.Dependent#getDependent_type Dependent type}' attribute. + * + * + * @param value the new value of the 'Dependent type' attribute. + * @see Taxation.Dependent_Type + * @see #getDependent_type() + * @generated + */ + void setDependent_type(Dependent_Type value); + + /** + * Returns the value of the 'Responsible person' container reference. + * It is bidirectional and its opposite is '{@link Taxation.Tax_Payer#getDependents Dependents}'. + * + * + * @return the value of the 'Responsible person' container reference. + * @see #setResponsible_person(Tax_Payer) + * @see Taxation.TaxationPackage#getDependent_Responsible_person() + * @see Taxation.Tax_Payer#getDependents + * @model opposite="dependents" transient="false" + * @generated + */ + Tax_Payer getResponsible_person(); + + /** + * Sets the value of the '{@link Taxation.Dependent#getResponsible_person Responsible person}' container reference. + * + * + * @param value the new value of the 'Responsible person' container reference. + * @see #getResponsible_person() + * @generated + */ + void setResponsible_person(Tax_Payer value); + + /** + * Returns the value of the 'Continued studies' attribute. + * The default value is "false". + * + * + * @return the value of the 'Continued studies' attribute. + * @see #setContinued_studies(boolean) + * @see Taxation.TaxationPackage#getDependent_Continued_studies() + * @model default="false" required="true" + * @generated + */ + boolean isContinued_studies(); + + /** + * Sets the value of the '{@link Taxation.Dependent#isContinued_studies Continued studies}' attribute. + * + * + * @param value the new value of the 'Continued studies' attribute. + * @see #isContinued_studies() + * @generated + */ + void setContinued_studies(boolean value); + + /** + * Returns the value of the 'Allowances' containment reference. + * It is bidirectional and its opposite is '{@link Taxation.External_Allowance#getPerson Person}'. + * + * + * @return the value of the 'Allowances' containment reference. + * @see #setAllowances(External_Allowance) + * @see Taxation.TaxationPackage#getDependent_Allowances() + * @see Taxation.External_Allowance#getPerson + * @model opposite="person" containment="true" ordered="false" + * @generated + */ + External_Allowance getAllowances(); + + /** + * Sets the value of the '{@link Taxation.Dependent#getAllowances Allowances}' containment reference. + * + * + * @param value the new value of the 'Allowances' containment reference. + * @see #getAllowances() + * @generated + */ + void setAllowances(External_Allowance value); + + /** + * Returns the value of the 'Household' container reference. + * It is bidirectional and its opposite is '{@link Taxation.Household#getChildren Children}'. + * + * + * @return the value of the 'Household' container reference. + * @see #setHousehold(Household) + * @see Taxation.TaxationPackage#getDependent_Household() + * @see Taxation.Household#getChildren + * @model opposite="children" transient="false" ordered="false" + * @generated + */ + Household getHousehold(); + + /** + * Sets the value of the '{@link Taxation.Dependent#getHousehold Household}' container reference. + * + * + * @param value the new value of the 'Household' container reference. + * @see #getHousehold() + * @generated + */ + void setHousehold(Household value); + + /** + * Returns the value of the 'From agent' reference. + * It is bidirectional and its opposite is '{@link Taxation.FromAgent#getDependent Dependent}'. + * + * + * @return the value of the 'From agent' reference. + * @see #setFrom_agent(FromAgent) + * @see Taxation.TaxationPackage#getDependent_From_agent() + * @see Taxation.FromAgent#getDependent + * @model opposite="dependent" ordered="false" + * @generated + */ + FromAgent getFrom_agent(); + + /** + * Sets the value of the '{@link Taxation.Dependent#getFrom_agent From agent}' reference. + * + * + * @param value the new value of the 'From agent' reference. + * @see #getFrom_agent() + * @generated + */ + void setFrom_agent(FromAgent value); + + /** + * Returns the value of the 'Expense' reference list. + * The list contents are of type {@link Taxation.Expense}. + * It is bidirectional and its opposite is '{@link Taxation.Expense#getDependent Dependent}'. + * + * + * @return the value of the 'Expense' reference list. + * @see Taxation.TaxationPackage#getDependent_Expense() + * @see Taxation.Expense#getDependent + * @model opposite="dependent" ordered="false" + * @generated + */ + EList getExpense(); + +} // Dependent diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Dependent_Type.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Dependent_Type.java new file mode 100644 index 00000000..40232e82 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Dependent_Type.java @@ -0,0 +1,278 @@ +/** + */ +package Taxation; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Dependent Type', + * and utility methods for working with them. + * + * @see Taxation.TaxationPackage#getDependent_Type() + * @model + * @generated + */ +public enum Dependent_Type implements Enumerator { + /** + * The 'CHILD' literal object. + * + * + * @see #CHILD_VALUE + * @generated + * @ordered + */ + CHILD(0, "CHILD", "CHILD"), + + /** + * The 'SPOUSE' literal object. + * + * + * @see #SPOUSE_VALUE + * @generated + * @ordered + */ + SPOUSE(1, "SPOUSE", "SPOUSE"), + + /** + * The 'RELATIVE' literal object. + * + * + * @see #RELATIVE_VALUE + * @generated + * @ordered + */ + RELATIVE(2, "RELATIVE", "RELATIVE"), + + /** + * The 'OTHER FAMILY MEMBER' literal object. + * + * + * @see #OTHER_FAMILY_MEMBER_VALUE + * @generated + * @ordered + */ + OTHER_FAMILY_MEMBER(3, "OTHER_FAMILY_MEMBER", "OTHER_FAMILY_MEMBER"), + + /** + * The 'NOT OWN CHILD' literal object. + * + * + * @see #NOT_OWN_CHILD_VALUE + * @generated + * @ordered + */ + NOT_OWN_CHILD(4, "NOT_OWN_CHILD", "NOT_OWN_CHILD"); + + /** + * The 'CHILD' literal value. + * + * + * @see #CHILD + * @model + * @generated + * @ordered + */ + public static final int CHILD_VALUE = 0; + + /** + * The 'SPOUSE' literal value. + * + * + * @see #SPOUSE + * @model + * @generated + * @ordered + */ + public static final int SPOUSE_VALUE = 1; + + /** + * The 'RELATIVE' literal value. + * + * + * @see #RELATIVE + * @model + * @generated + * @ordered + */ + public static final int RELATIVE_VALUE = 2; + + /** + * The 'OTHER FAMILY MEMBER' literal value. + * + * + * @see #OTHER_FAMILY_MEMBER + * @model + * @generated + * @ordered + */ + public static final int OTHER_FAMILY_MEMBER_VALUE = 3; + + /** + * The 'NOT OWN CHILD' literal value. + * + * + * @see #NOT_OWN_CHILD + * @model + * @generated + * @ordered + */ + public static final int NOT_OWN_CHILD_VALUE = 4; + + /** + * An array of all the 'Dependent Type' enumerators. + * + * + * @generated + */ + private static final Dependent_Type[] VALUES_ARRAY = + new Dependent_Type[] { + CHILD, + SPOUSE, + RELATIVE, + OTHER_FAMILY_MEMBER, + NOT_OWN_CHILD, + }; + + /** + * A public read-only list of all the 'Dependent Type' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Dependent Type' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Dependent_Type get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Dependent_Type result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Dependent Type' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Dependent_Type getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Dependent_Type result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Dependent Type' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Dependent_Type get(int value) { + switch (value) { + case CHILD_VALUE: return CHILD; + case SPOUSE_VALUE: return SPOUSE; + case RELATIVE_VALUE: return RELATIVE; + case OTHER_FAMILY_MEMBER_VALUE: return OTHER_FAMILY_MEMBER; + case NOT_OWN_CHILD_VALUE: return NOT_OWN_CHILD; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Dependent_Type(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Dependent_Type diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Disability_Types.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Disability_Types.java new file mode 100644 index 00000000..fc7fd273 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Disability_Types.java @@ -0,0 +1,347 @@ +/** + */ +package Taxation; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Disability Types', + * and utility methods for working with them. + * + * @see Taxation.TaxationPackage#getDisability_Types() + * @model + * @generated + */ +public enum Disability_Types implements Enumerator { + /** + * The 'Beug' literal object. + * + * + * @see #BEUG_VALUE + * @generated + * @ordered + */ + BEUG(0, "beug", "beug"), + + /** + * The 'NONE' literal object. + * + * + * @see #NONE_VALUE + * @generated + * @ordered + */ + NONE(1, "NONE", "NONE"), + + /** + * The 'A' literal object. + * + * + * @see #A_VALUE + * @generated + * @ordered + */ + A(2, "A", "A"), + + /** + * The 'B' literal object. + * + * + * @see #B_VALUE + * @generated + * @ordered + */ + B(3, "B", "B"), + + /** + * The 'C' literal object. + * + * + * @see #C_VALUE + * @generated + * @ordered + */ + C(4, "C", "C"), + + /** + * The 'D' literal object. + * + * + * @see #D_VALUE + * @generated + * @ordered + */ + D(5, "D", "D"), + + /** + * The 'E' literal object. + * + * + * @see #E_VALUE + * @generated + * @ordered + */ + E(6, "E", "E"), + + /** + * The 'OTHER' literal object. + * + * + * @see #OTHER_VALUE + * @generated + * @ordered + */ + OTHER(7, "OTHER", "OTHER"); + + /** + * The 'Beug' literal value. + * + * + * @see #BEUG + * @model name="beug" + * @generated + * @ordered + */ + public static final int BEUG_VALUE = 0; + + /** + * The 'NONE' literal value. + * + * + * @see #NONE + * @model + * @generated + * @ordered + */ + public static final int NONE_VALUE = 1; + + /** + * The 'A' literal value. + * + * + * @see #A + * @model + * @generated + * @ordered + */ + public static final int A_VALUE = 2; + + /** + * The 'B' literal value. + * + * + * @see #B + * @model + * @generated + * @ordered + */ + public static final int B_VALUE = 3; + + /** + * The 'C' literal value. + * + * + * @see #C + * @model + * @generated + * @ordered + */ + public static final int C_VALUE = 4; + + /** + * The 'D' literal value. + * + * + * @see #D + * @model + * @generated + * @ordered + */ + public static final int D_VALUE = 5; + + /** + * The 'E' literal value. + * + * + * @see #E + * @model + * @generated + * @ordered + */ + public static final int E_VALUE = 6; + + /** + * The 'OTHER' literal value. + * + * + * @see #OTHER + * @model + * @generated + * @ordered + */ + public static final int OTHER_VALUE = 7; + + /** + * An array of all the 'Disability Types' enumerators. + * + * + * @generated + */ + private static final Disability_Types[] VALUES_ARRAY = + new Disability_Types[] { + BEUG, + NONE, + A, + B, + C, + D, + E, + OTHER, + }; + + /** + * A public read-only list of all the 'Disability Types' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Disability Types' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Disability_Types get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Disability_Types result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Disability Types' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Disability_Types getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Disability_Types result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Disability Types' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Disability_Types get(int value) { + switch (value) { + case BEUG_VALUE: return BEUG; + case NONE_VALUE: return NONE; + case A_VALUE: return A; + case B_VALUE: return B; + case C_VALUE: return C; + case D_VALUE: return D; + case E_VALUE: return E; + case OTHER_VALUE: return OTHER; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Disability_Types(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Disability_Types diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Donation.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Donation.java new file mode 100644 index 00000000..343238d9 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Donation.java @@ -0,0 +1,92 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Donation'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Donation#getBeneficiary1 Beneficiary1}
  • + *
  • {@link Taxation.Donation#isIs_beneficiary_eligible Is beneficiary eligible}
  • + *
  • {@link Taxation.Donation#isIs_donation_reported Is donation reported}
  • + *
+ * + * @see Taxation.TaxationPackage#getDonation() + * @model + * @generated + */ +public interface Donation extends Special_Expense_DS { + /** + * Returns the value of the 'Beneficiary1' attribute. + * + * + * @return the value of the 'Beneficiary1' attribute. + * @see #setBeneficiary1(String) + * @see Taxation.TaxationPackage#getDonation_Beneficiary1() + * @model required="true" + * @generated + */ + String getBeneficiary1(); + + /** + * Sets the value of the '{@link Taxation.Donation#getBeneficiary1 Beneficiary1}' attribute. + * + * + * @param value the new value of the 'Beneficiary1' attribute. + * @see #getBeneficiary1() + * @generated + */ + void setBeneficiary1(String value); + + /** + * Returns the value of the 'Is beneficiary eligible' attribute. + * The default value is "false". + * + * + * @return the value of the 'Is beneficiary eligible' attribute. + * @see #setIs_beneficiary_eligible(boolean) + * @see Taxation.TaxationPackage#getDonation_Is_beneficiary_eligible() + * @model default="false" required="true" derived="true" + * @generated + */ + boolean isIs_beneficiary_eligible(); + + /** + * Sets the value of the '{@link Taxation.Donation#isIs_beneficiary_eligible Is beneficiary eligible}' attribute. + * + * + * @param value the new value of the 'Is beneficiary eligible' attribute. + * @see #isIs_beneficiary_eligible() + * @generated + */ + void setIs_beneficiary_eligible(boolean value); + + /** + * Returns the value of the 'Is donation reported' attribute. + * + * + * @return the value of the 'Is donation reported' attribute. + * @see #setIs_donation_reported(boolean) + * @see Taxation.TaxationPackage#getDonation_Is_donation_reported() + * @model required="true" + * @generated + */ + boolean isIs_donation_reported(); + + /** + * Sets the value of the '{@link Taxation.Donation#isIs_donation_reported Is donation reported}' attribute. + * + * + * @param value the new value of the 'Is donation reported' attribute. + * @see #isIs_donation_reported() + * @generated + */ + void setIs_donation_reported(boolean value); + +} // Donation diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Employment_Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Employment_Income.java new file mode 100644 index 00000000..4ab85ac1 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Employment_Income.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Employment Income'. + * + * + * + * @see Taxation.TaxationPackage#getEmployment_Income() + * @model + * @generated + */ +public interface Employment_Income extends Income_Type { +} // Employment_Income diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Expense.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Expense.java new file mode 100644 index 00000000..8d650d83 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Expense.java @@ -0,0 +1,196 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Expense'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Expense#getDeclared_amount Declared amount}
  • + *
  • {@link Taxation.Expense#getExpense_purpose Expense purpose}
  • + *
  • {@link Taxation.Expense#getDependent Dependent}
  • + *
  • {@link Taxation.Expense#getFrom_agent From agent}
  • + *
  • {@link Taxation.Expense#getIncome Income}
  • + *
  • {@link Taxation.Expense#getId4 Id4}
  • + *
  • {@link Taxation.Expense#getBeneficiary Beneficiary}
  • + *
+ * + * @see Taxation.TaxationPackage#getExpense() + * @model + * @generated + */ +public interface Expense extends EObject { + /** + * Returns the value of the 'Declared amount' attribute. + * + * + * @return the value of the 'Declared amount' attribute. + * @see #setDeclared_amount(double) + * @see Taxation.TaxationPackage#getExpense_Declared_amount() + * @model required="true" + * @generated + */ + double getDeclared_amount(); + + /** + * Sets the value of the '{@link Taxation.Expense#getDeclared_amount Declared amount}' attribute. + * + * + * @param value the new value of the 'Declared amount' attribute. + * @see #getDeclared_amount() + * @generated + */ + void setDeclared_amount(double value); + + /** + * Returns the value of the 'Expense purpose' attribute. + * The default value is "OTHER". + * The literals are from the enumeration {@link Taxation.Expense_Purpose}. + * + * + * @return the value of the 'Expense purpose' attribute. + * @see Taxation.Expense_Purpose + * @see #setExpense_purpose(Expense_Purpose) + * @see Taxation.TaxationPackage#getExpense_Expense_purpose() + * @model default="OTHER" required="true" + * @generated + */ + Expense_Purpose getExpense_purpose(); + + /** + * Sets the value of the '{@link Taxation.Expense#getExpense_purpose Expense purpose}' attribute. + * + * + * @param value the new value of the 'Expense purpose' attribute. + * @see Taxation.Expense_Purpose + * @see #getExpense_purpose() + * @generated + */ + void setExpense_purpose(Expense_Purpose value); + + /** + * Returns the value of the 'Dependent' reference. + * It is bidirectional and its opposite is '{@link Taxation.Dependent#getExpense Expense}'. + * + * + * @return the value of the 'Dependent' reference. + * @see #setDependent(Dependent) + * @see Taxation.TaxationPackage#getExpense_Dependent() + * @see Taxation.Dependent#getExpense + * @model opposite="expense" + * @generated + */ + Dependent getDependent(); + + /** + * Sets the value of the '{@link Taxation.Expense#getDependent Dependent}' reference. + * + * + * @param value the new value of the 'Dependent' reference. + * @see #getDependent() + * @generated + */ + void setDependent(Dependent value); + + /** + * Returns the value of the 'From agent' reference. + * It is bidirectional and its opposite is '{@link Taxation.FromAgent#getExpense Expense}'. + * + * + * @return the value of the 'From agent' reference. + * @see #setFrom_agent(FromAgent) + * @see Taxation.TaxationPackage#getExpense_From_agent() + * @see Taxation.FromAgent#getExpense + * @model opposite="expense" ordered="false" + * @generated + */ + FromAgent getFrom_agent(); + + /** + * Sets the value of the '{@link Taxation.Expense#getFrom_agent From agent}' reference. + * + * + * @param value the new value of the 'From agent' reference. + * @see #getFrom_agent() + * @generated + */ + void setFrom_agent(FromAgent value); + + /** + * Returns the value of the 'Income' container reference. + * It is bidirectional and its opposite is '{@link Taxation.Income#getExpenses Expenses}'. + * + * + * @return the value of the 'Income' container reference. + * @see #setIncome(Income) + * @see Taxation.TaxationPackage#getExpense_Income() + * @see Taxation.Income#getExpenses + * @model opposite="expenses" required="true" transient="false" + * @generated + */ + Income getIncome(); + + /** + * Sets the value of the '{@link Taxation.Expense#getIncome Income}' container reference. + * + * + * @param value the new value of the 'Income' container reference. + * @see #getIncome() + * @generated + */ + void setIncome(Income value); + + /** + * Returns the value of the 'Id4' attribute. + * + * + * @return the value of the 'Id4' attribute. + * @see #setId4(String) + * @see Taxation.TaxationPackage#getExpense_Id4() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId4(); + + /** + * Sets the value of the '{@link Taxation.Expense#getId4 Id4}' attribute. + * + * + * @param value the new value of the 'Id4' attribute. + * @see #getId4() + * @generated + */ + void setId4(String value); + + /** + * Returns the value of the 'Beneficiary' reference. + * It is bidirectional and its opposite is '{@link Taxation.Physical_Person#getExpenses Expenses}'. + * + * + * @return the value of the 'Beneficiary' reference. + * @see #setBeneficiary(Physical_Person) + * @see Taxation.TaxationPackage#getExpense_Beneficiary() + * @see Taxation.Physical_Person#getExpenses + * @model opposite="expenses" ordered="false" + * @generated + */ + Physical_Person getBeneficiary(); + + /** + * Sets the value of the '{@link Taxation.Expense#getBeneficiary Beneficiary}' reference. + * + * + * @param value the new value of the 'Beneficiary' reference. + * @see #getBeneficiary() + * @generated + */ + void setBeneficiary(Physical_Person value); + +} // Expense diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Expense_Purpose.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Expense_Purpose.java new file mode 100644 index 00000000..84ab9ef1 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Expense_Purpose.java @@ -0,0 +1,301 @@ +/** + */ +package Taxation; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Expense Purpose', + * and utility methods for working with them. + * + * @see Taxation.TaxationPackage#getExpense_Purpose() + * @model + * @generated + */ +public enum Expense_Purpose implements Enumerator { + /** + * The 'HOUSE CARE' literal object. + * + * + * @see #HOUSE_CARE_VALUE + * @generated + * @ordered + */ + HOUSE_CARE(0, "HOUSE_CARE", "HOUSE_CARE"), + + /** + * The 'CHILD CARE' literal object. + * + * + * @see #CHILD_CARE_VALUE + * @generated + * @ordered + */ + CHILD_CARE(1, "CHILD_CARE", "CHILD_CARE"), + + /** + * The 'DEPENDENCE CARE' literal object. + * + * + * @see #DEPENDENCE_CARE_VALUE + * @generated + * @ordered + */ + DEPENDENCE_CARE(2, "DEPENDENCE_CARE", "DEPENDENCE_CARE"), + + /** + * The 'OTHER' literal object. + * + * + * @see #OTHER_VALUE + * @generated + * @ordered + */ + OTHER(3, "OTHER", "OTHER"), + + /** + * The 'ALIMONY' literal object. + * + * + * @see #ALIMONY_VALUE + * @generated + * @ordered + */ + ALIMONY(4, "ALIMONY", "ALIMONY"), + + /** + * The 'RECURRENT DEPT' literal object. + * + * + * @see #RECURRENT_DEPT_VALUE + * @generated + * @ordered + */ + RECURRENT_DEPT(5, "RECURRENT_DEPT", "RECURRENT_DEPT"); + + /** + * The 'HOUSE CARE' literal value. + * + * + * @see #HOUSE_CARE + * @model + * @generated + * @ordered + */ + public static final int HOUSE_CARE_VALUE = 0; + + /** + * The 'CHILD CARE' literal value. + * + * + * @see #CHILD_CARE + * @model + * @generated + * @ordered + */ + public static final int CHILD_CARE_VALUE = 1; + + /** + * The 'DEPENDENCE CARE' literal value. + * + * + * @see #DEPENDENCE_CARE + * @model + * @generated + * @ordered + */ + public static final int DEPENDENCE_CARE_VALUE = 2; + + /** + * The 'OTHER' literal value. + * + * + * @see #OTHER + * @model + * @generated + * @ordered + */ + public static final int OTHER_VALUE = 3; + + /** + * The 'ALIMONY' literal value. + * + * + * @see #ALIMONY + * @model + * @generated + * @ordered + */ + public static final int ALIMONY_VALUE = 4; + + /** + * The 'RECURRENT DEPT' literal value. + * + * + * @see #RECURRENT_DEPT + * @model + * @generated + * @ordered + */ + public static final int RECURRENT_DEPT_VALUE = 5; + + /** + * An array of all the 'Expense Purpose' enumerators. + * + * + * @generated + */ + private static final Expense_Purpose[] VALUES_ARRAY = + new Expense_Purpose[] { + HOUSE_CARE, + CHILD_CARE, + DEPENDENCE_CARE, + OTHER, + ALIMONY, + RECURRENT_DEPT, + }; + + /** + * A public read-only list of all the 'Expense Purpose' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Expense Purpose' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Expense_Purpose get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Expense_Purpose result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Expense Purpose' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Expense_Purpose getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Expense_Purpose result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Expense Purpose' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Expense_Purpose get(int value) { + switch (value) { + case HOUSE_CARE_VALUE: return HOUSE_CARE; + case CHILD_CARE_VALUE: return CHILD_CARE; + case DEPENDENCE_CARE_VALUE: return DEPENDENCE_CARE; + case OTHER_VALUE: return OTHER; + case ALIMONY_VALUE: return ALIMONY; + case RECURRENT_DEPT_VALUE: return RECURRENT_DEPT; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Expense_Purpose(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Expense_Purpose diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/External_Allowance.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/External_Allowance.java new file mode 100644 index 00000000..625efe59 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/External_Allowance.java @@ -0,0 +1,189 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'External Allowance'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.External_Allowance#getAmount Amount}
  • + *
  • {@link Taxation.External_Allowance#getGrantor Grantor}
  • + *
  • {@link Taxation.External_Allowance#getStarting_year Starting year}
  • + *
  • {@link Taxation.External_Allowance#getEnding_year Ending year}
  • + *
  • {@link Taxation.External_Allowance#getReciver Reciver}
  • + *
  • {@link Taxation.External_Allowance#getId5 Id5}
  • + *
  • {@link Taxation.External_Allowance#getPerson Person}
  • + *
+ * + * @see Taxation.TaxationPackage#getExternal_Allowance() + * @model + * @generated + */ +public interface External_Allowance extends EObject { + /** + * Returns the value of the 'Amount' attribute. + * + * + * @return the value of the 'Amount' attribute. + * @see #setAmount(double) + * @see Taxation.TaxationPackage#getExternal_Allowance_Amount() + * @model required="true" + * @generated + */ + double getAmount(); + + /** + * Sets the value of the '{@link Taxation.External_Allowance#getAmount Amount}' attribute. + * + * + * @param value the new value of the 'Amount' attribute. + * @see #getAmount() + * @generated + */ + void setAmount(double value); + + /** + * Returns the value of the 'Grantor' attribute. + * The literals are from the enumeration {@link Taxation.Grantor}. + * + * + * @return the value of the 'Grantor' attribute. + * @see Taxation.Grantor + * @see #setGrantor(Grantor) + * @see Taxation.TaxationPackage#getExternal_Allowance_Grantor() + * @model required="true" + * @generated + */ + Grantor getGrantor(); + + /** + * Sets the value of the '{@link Taxation.External_Allowance#getGrantor Grantor}' attribute. + * + * + * @param value the new value of the 'Grantor' attribute. + * @see Taxation.Grantor + * @see #getGrantor() + * @generated + */ + void setGrantor(Grantor value); + + /** + * Returns the value of the 'Starting year' attribute. + * + * + * @return the value of the 'Starting year' attribute. + * @see #setStarting_year(int) + * @see Taxation.TaxationPackage#getExternal_Allowance_Starting_year() + * @model required="true" ordered="false" + * @generated + */ + int getStarting_year(); + + /** + * Sets the value of the '{@link Taxation.External_Allowance#getStarting_year Starting year}' attribute. + * + * + * @param value the new value of the 'Starting year' attribute. + * @see #getStarting_year() + * @generated + */ + void setStarting_year(int value); + + /** + * Returns the value of the 'Ending year' attribute. + * + * + * @return the value of the 'Ending year' attribute. + * @see #setEnding_year(int) + * @see Taxation.TaxationPackage#getExternal_Allowance_Ending_year() + * @model required="true" ordered="false" + * @generated + */ + int getEnding_year(); + + /** + * Sets the value of the '{@link Taxation.External_Allowance#getEnding_year Ending year}' attribute. + * + * + * @param value the new value of the 'Ending year' attribute. + * @see #getEnding_year() + * @generated + */ + void setEnding_year(int value); + + /** + * Returns the value of the 'Reciver' reference. + * + * + * @return the value of the 'Reciver' reference. + * @see #setReciver(Physical_Person) + * @see Taxation.TaxationPackage#getExternal_Allowance_Reciver() + * @model required="true" ordered="false" + * @generated + */ + Physical_Person getReciver(); + + /** + * Sets the value of the '{@link Taxation.External_Allowance#getReciver Reciver}' reference. + * + * + * @param value the new value of the 'Reciver' reference. + * @see #getReciver() + * @generated + */ + void setReciver(Physical_Person value); + + /** + * Returns the value of the 'Id5' attribute. + * + * + * @return the value of the 'Id5' attribute. + * @see #setId5(String) + * @see Taxation.TaxationPackage#getExternal_Allowance_Id5() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId5(); + + /** + * Sets the value of the '{@link Taxation.External_Allowance#getId5 Id5}' attribute. + * + * + * @param value the new value of the 'Id5' attribute. + * @see #getId5() + * @generated + */ + void setId5(String value); + + /** + * Returns the value of the 'Person' container reference. + * It is bidirectional and its opposite is '{@link Taxation.Dependent#getAllowances Allowances}'. + * + * + * @return the value of the 'Person' container reference. + * @see #setPerson(Dependent) + * @see Taxation.TaxationPackage#getExternal_Allowance_Person() + * @see Taxation.Dependent#getAllowances + * @model opposite="allowances" required="true" transient="false" ordered="false" + * @generated + */ + Dependent getPerson(); + + /** + * Sets the value of the '{@link Taxation.External_Allowance#getPerson Person}' container reference. + * + * + * @param value the new value of the 'Person' container reference. + * @see #getPerson() + * @generated + */ + void setPerson(Dependent value); + +} // External_Allowance diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Extraordinary_Expense_CE.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Extraordinary_Expense_CE.java new file mode 100644 index 00000000..d377da58 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Extraordinary_Expense_CE.java @@ -0,0 +1,71 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Extraordinary Expense CE'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Extraordinary_Expense_CE#getThresholded_deduction_percentage Thresholded deduction percentage}
  • + *
  • {@link Taxation.Extraordinary_Expense_CE#getCe_type Ce type}
  • + *
+ * + * @see Taxation.TaxationPackage#getExtraordinary_Expense_CE() + * @model + * @generated + */ +public interface Extraordinary_Expense_CE extends Expense { + /** + * Returns the value of the 'Thresholded deduction percentage' attribute. + * + * + * @return the value of the 'Thresholded deduction percentage' attribute. + * @see #setThresholded_deduction_percentage(double) + * @see Taxation.TaxationPackage#getExtraordinary_Expense_CE_Thresholded_deduction_percentage() + * @model required="true" + * @generated + */ + double getThresholded_deduction_percentage(); + + /** + * Sets the value of the '{@link Taxation.Extraordinary_Expense_CE#getThresholded_deduction_percentage Thresholded deduction percentage}' attribute. + * + * + * @param value the new value of the 'Thresholded deduction percentage' attribute. + * @see #getThresholded_deduction_percentage() + * @generated + */ + void setThresholded_deduction_percentage(double value); + + /** + * Returns the value of the 'Ce type' attribute. + * The literals are from the enumeration {@link Taxation.CE_Type}. + * + * + * @return the value of the 'Ce type' attribute. + * @see Taxation.CE_Type + * @see #setCe_type(CE_Type) + * @see Taxation.TaxationPackage#getExtraordinary_Expense_CE_Ce_type() + * @model required="true" + * @generated + */ + CE_Type getCe_type(); + + /** + * Sets the value of the '{@link Taxation.Extraordinary_Expense_CE#getCe_type Ce type}' attribute. + * + * + * @param value the new value of the 'Ce type' attribute. + * @see Taxation.CE_Type + * @see #getCe_type() + * @generated + */ + void setCe_type(CE_Type value); + +} // Extraordinary_Expense_CE diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FD.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FD.java new file mode 100644 index 00000000..0c74a256 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FD.java @@ -0,0 +1,68 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'FD'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.FD#getDistance_declared_in_january Distance declared in january}
  • + *
  • {@link Taxation.FD#getCalculated_distance Calculated distance}
  • + *
+ * + * @see Taxation.TaxationPackage#getFD() + * @model + * @generated + */ +public interface FD extends Professional_Expenses_Deduction { + /** + * Returns the value of the 'Distance declared in january' attribute. + * + * + * @return the value of the 'Distance declared in january' attribute. + * @see #setDistance_declared_in_january(double) + * @see Taxation.TaxationPackage#getFD_Distance_declared_in_january() + * @model required="true" + * @generated + */ + double getDistance_declared_in_january(); + + /** + * Sets the value of the '{@link Taxation.FD#getDistance_declared_in_january Distance declared in january}' attribute. + * + * + * @param value the new value of the 'Distance declared in january' attribute. + * @see #getDistance_declared_in_january() + * @generated + */ + void setDistance_declared_in_january(double value); + + /** + * Returns the value of the 'Calculated distance' attribute. + * + * + * @return the value of the 'Calculated distance' attribute. + * @see #setCalculated_distance(double) + * @see Taxation.TaxationPackage#getFD_Calculated_distance() + * @model required="true" derived="true" + * @generated + */ + double getCalculated_distance(); + + /** + * Sets the value of the '{@link Taxation.FD#getCalculated_distance Calculated distance}' attribute. + * + * + * @param value the new value of the 'Calculated distance' attribute. + * @see #getCalculated_distance() + * @generated + */ + void setCalculated_distance(double value); + +} // FD diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FO.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FO.java new file mode 100644 index 00000000..e403cfa2 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FO.java @@ -0,0 +1,48 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'FO'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.FO#getRate_type_for_FO Rate type for FO}
  • + *
+ * + * @see Taxation.TaxationPackage#getFO() + * @model + * @generated + */ +public interface FO extends Professional_Expenses_Deduction { + /** + * Returns the value of the 'Rate type for FO' attribute. + * The literals are from the enumeration {@link Taxation.Type_of_Rate}. + * + * + * @return the value of the 'Rate type for FO' attribute. + * @see Taxation.Type_of_Rate + * @see #setRate_type_for_FO(Type_of_Rate) + * @see Taxation.TaxationPackage#getFO_Rate_type_for_FO() + * @model required="true" derived="true" + * @generated + */ + Type_of_Rate getRate_type_for_FO(); + + /** + * Sets the value of the '{@link Taxation.FO#getRate_type_for_FO Rate type for FO}' attribute. + * + * + * @param value the new value of the 'Rate type for FO' attribute. + * @see Taxation.Type_of_Rate + * @see #getRate_type_for_FO() + * @generated + */ + void setRate_type_for_FO(Type_of_Rate value); + +} // FO diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Fiscal_Address.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Fiscal_Address.java new file mode 100644 index 00000000..7dd05386 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Fiscal_Address.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Fiscal Address'. + * + * + * + * @see Taxation.TaxationPackage#getFiscal_Address() + * @model + * @generated + */ +public interface Fiscal_Address extends Address { +} // Fiscal_Address diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Foreign_Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Foreign_Income.java new file mode 100644 index 00000000..023b28d9 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Foreign_Income.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Foreign Income'. + * + * + * + * @see Taxation.TaxationPackage#getForeign_Income() + * @model + * @generated + */ +public interface Foreign_Income extends Income { +} // Foreign_Income diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FromAgent.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FromAgent.java new file mode 100644 index 00000000..c409cee0 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FromAgent.java @@ -0,0 +1,144 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'From Agent'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.FromAgent#getTaxPayer Tax Payer}
  • + *
  • {@link Taxation.FromAgent#isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care Is dependent eligible for CE Not In Houshold Children Care}
  • + *
  • {@link Taxation.FromAgent#getExpense Expense}
  • + *
  • {@link Taxation.FromAgent#isIs_eligible_debt Is eligible debt}
  • + *
  • {@link Taxation.FromAgent#getDependent Dependent}
  • + *
+ * + * @see Taxation.TaxationPackage#getFromAgent() + * @model + * @generated + */ +public interface FromAgent extends EObject { + /** + * Returns the value of the 'Tax Payer' container reference. + * It is bidirectional and its opposite is '{@link Taxation.Tax_Payer#getFrom_agent From agent}'. + * + * + * @return the value of the 'Tax Payer' container reference. + * @see #setTaxPayer(Tax_Payer) + * @see Taxation.TaxationPackage#getFromAgent_TaxPayer() + * @see Taxation.Tax_Payer#getFrom_agent + * @model opposite="from_agent" required="true" transient="false" + * @generated + */ + Tax_Payer getTaxPayer(); + + /** + * Sets the value of the '{@link Taxation.FromAgent#getTaxPayer Tax Payer}' container reference. + * + * + * @param value the new value of the 'Tax Payer' container reference. + * @see #getTaxPayer() + * @generated + */ + void setTaxPayer(Tax_Payer value); + + /** + * Returns the value of the 'Is dependent eligible for CE Not In Houshold Children Care' attribute. + * + * + * @return the value of the 'Is dependent eligible for CE Not In Houshold Children Care' attribute. + * @see #setIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care(boolean) + * @see Taxation.TaxationPackage#getFromAgent_Is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care() + * @model required="true" ordered="false" + * @generated + */ + boolean isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care(); + + /** + * Sets the value of the '{@link Taxation.FromAgent#isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care Is dependent eligible for CE Not In Houshold Children Care}' attribute. + * + * + * @param value the new value of the 'Is dependent eligible for CE Not In Houshold Children Care' attribute. + * @see #isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care() + * @generated + */ + void setIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care(boolean value); + + /** + * Returns the value of the 'Expense' reference. + * It is bidirectional and its opposite is '{@link Taxation.Expense#getFrom_agent From agent}'. + * + * + * @return the value of the 'Expense' reference. + * @see #setExpense(Expense) + * @see Taxation.TaxationPackage#getFromAgent_Expense() + * @see Taxation.Expense#getFrom_agent + * @model opposite="from_agent" ordered="false" + * @generated + */ + Expense getExpense(); + + /** + * Sets the value of the '{@link Taxation.FromAgent#getExpense Expense}' reference. + * + * + * @param value the new value of the 'Expense' reference. + * @see #getExpense() + * @generated + */ + void setExpense(Expense value); + + /** + * Returns the value of the 'Is eligible debt' attribute. + * + * + * @return the value of the 'Is eligible debt' attribute. + * @see #setIs_eligible_debt(boolean) + * @see Taxation.TaxationPackage#getFromAgent_Is_eligible_debt() + * @model required="true" ordered="false" + * @generated + */ + boolean isIs_eligible_debt(); + + /** + * Sets the value of the '{@link Taxation.FromAgent#isIs_eligible_debt Is eligible debt}' attribute. + * + * + * @param value the new value of the 'Is eligible debt' attribute. + * @see #isIs_eligible_debt() + * @generated + */ + void setIs_eligible_debt(boolean value); + + /** + * Returns the value of the 'Dependent' reference. + * It is bidirectional and its opposite is '{@link Taxation.Dependent#getFrom_agent From agent}'. + * + * + * @return the value of the 'Dependent' reference. + * @see #setDependent(Dependent) + * @see Taxation.TaxationPackage#getFromAgent_Dependent() + * @see Taxation.Dependent#getFrom_agent + * @model opposite="from_agent" ordered="false" + * @generated + */ + Dependent getDependent(); + + /** + * Sets the value of the '{@link Taxation.FromAgent#getDependent Dependent}' reference. + * + * + * @param value the new value of the 'Dependent' reference. + * @see #getDependent() + * @generated + */ + void setDependent(Dependent value); + +} // FromAgent diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FromLaw.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FromLaw.java new file mode 100644 index 00000000..0e5cc98d --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FromLaw.java @@ -0,0 +1,71 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'From Law'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.FromLaw#getId Id}
  • + *
  • {@link Taxation.FromLaw#getTaxPayer Tax Payer}
  • + *
+ * + * @see Taxation.TaxationPackage#getFromLaw() + * @model + * @generated + */ +public interface FromLaw extends EObject { + /** + * Returns the value of the 'Id' attribute. + * + * + * @return the value of the 'Id' attribute. + * @see #setId(String) + * @see Taxation.TaxationPackage#getFromLaw_Id() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId(); + + /** + * Sets the value of the '{@link Taxation.FromLaw#getId Id}' attribute. + * + * + * @param value the new value of the 'Id' attribute. + * @see #getId() + * @generated + */ + void setId(String value); + + /** + * Returns the value of the 'Tax Payer' container reference. + * It is bidirectional and its opposite is '{@link Taxation.Tax_Payer#getFrom_law From law}'. + * + * + * @return the value of the 'Tax Payer' container reference. + * @see #setTaxPayer(Tax_Payer) + * @see Taxation.TaxationPackage#getFromLaw_TaxPayer() + * @see Taxation.Tax_Payer#getFrom_law + * @model opposite="from_law" required="true" transient="false" + * @generated + */ + Tax_Payer getTaxPayer(); + + /** + * Sets the value of the '{@link Taxation.FromLaw#getTaxPayer Tax Payer}' container reference. + * + * + * @param value the new value of the 'Tax Payer' container reference. + * @see #getTaxPayer() + * @generated + */ + void setTaxPayer(Tax_Payer value); + +} // FromLaw diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Grantor.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Grantor.java new file mode 100644 index 00000000..0a9c45c9 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Grantor.java @@ -0,0 +1,301 @@ +/** + */ +package Taxation; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Grantor', + * and utility methods for working with them. + * + * @see Taxation.TaxationPackage#getGrantor() + * @model + * @generated + */ +public enum Grantor implements Enumerator { + /** + * The 'WWW' literal object. + * + * + * @see #WWW_VALUE + * @generated + * @ordered + */ + WWW(0, "WWW", "WWW"), + + /** + * The 'Employer' literal object. + * + * + * @see #EMPLOYER_VALUE + * @generated + * @ordered + */ + EMPLOYER(1, "Employer", "Employer"), + + /** + * The 'MMM' literal object. + * + * + * @see #MMM_VALUE + * @generated + * @ordered + */ + MMM(2, "MMM", "MMM"), + + /** + * The 'UUU' literal object. + * + * + * @see #UUU_VALUE + * @generated + * @ordered + */ + UUU(3, "UUU", "UUU"), + + /** + * The 'YYY' literal object. + * + * + * @see #YYY_VALUE + * @generated + * @ordered + */ + YYY(4, "YYY", "YYY"), + + /** + * The 'OOO' literal object. + * + * + * @see #OOO_VALUE + * @generated + * @ordered + */ + OOO(5, "OOO", "OOO"); + + /** + * The 'WWW' literal value. + * + * + * @see #WWW + * @model + * @generated + * @ordered + */ + public static final int WWW_VALUE = 0; + + /** + * The 'Employer' literal value. + * + * + * @see #EMPLOYER + * @model name="Employer" + * @generated + * @ordered + */ + public static final int EMPLOYER_VALUE = 1; + + /** + * The 'MMM' literal value. + * + * + * @see #MMM + * @model + * @generated + * @ordered + */ + public static final int MMM_VALUE = 2; + + /** + * The 'UUU' literal value. + * + * + * @see #UUU + * @model + * @generated + * @ordered + */ + public static final int UUU_VALUE = 3; + + /** + * The 'YYY' literal value. + * + * + * @see #YYY + * @model + * @generated + * @ordered + */ + public static final int YYY_VALUE = 4; + + /** + * The 'OOO' literal value. + * + * + * @see #OOO + * @model + * @generated + * @ordered + */ + public static final int OOO_VALUE = 5; + + /** + * An array of all the 'Grantor' enumerators. + * + * + * @generated + */ + private static final Grantor[] VALUES_ARRAY = + new Grantor[] { + WWW, + EMPLOYER, + MMM, + UUU, + YYY, + OOO, + }; + + /** + * A public read-only list of all the 'Grantor' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Grantor' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Grantor get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Grantor result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Grantor' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Grantor getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Grantor result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Grantor' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Grantor get(int value) { + switch (value) { + case WWW_VALUE: return WWW; + case EMPLOYER_VALUE: return EMPLOYER; + case MMM_VALUE: return MMM; + case UUU_VALUE: return UUU; + case YYY_VALUE: return YYY; + case OOO_VALUE: return OOO; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Grantor(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Grantor diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Habitual_Address.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Habitual_Address.java new file mode 100644 index 00000000..45e9b1c9 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Habitual_Address.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Habitual Address'. + * + * + * + * @see Taxation.TaxationPackage#getHabitual_Address() + * @model + * @generated + */ +public interface Habitual_Address extends Address { +} // Habitual_Address diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Health_and_Pension_Insurance.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Health_and_Pension_Insurance.java new file mode 100644 index 00000000..f23a6a91 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Health_and_Pension_Insurance.java @@ -0,0 +1,72 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Health and Pension Insurance'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Health_and_Pension_Insurance#getCategory Category}
  • + *
  • {@link Taxation.Health_and_Pension_Insurance#isIs_related_to_additional_salary Is related to additional salary}
  • + *
+ * + * @see Taxation.TaxationPackage#getHealth_and_Pension_Insurance() + * @model + * @generated + */ +public interface Health_and_Pension_Insurance extends Special_Expense_DS { + /** + * Returns the value of the 'Category' attribute. + * The literals are from the enumeration {@link Taxation.Category_of_Health_and_Pension_Insurances}. + * + * + * @return the value of the 'Category' attribute. + * @see Taxation.Category_of_Health_and_Pension_Insurances + * @see #setCategory(Category_of_Health_and_Pension_Insurances) + * @see Taxation.TaxationPackage#getHealth_and_Pension_Insurance_Category() + * @model required="true" + * @generated + */ + Category_of_Health_and_Pension_Insurances getCategory(); + + /** + * Sets the value of the '{@link Taxation.Health_and_Pension_Insurance#getCategory Category}' attribute. + * + * + * @param value the new value of the 'Category' attribute. + * @see Taxation.Category_of_Health_and_Pension_Insurances + * @see #getCategory() + * @generated + */ + void setCategory(Category_of_Health_and_Pension_Insurances value); + + /** + * Returns the value of the 'Is related to additional salary' attribute. + * The default value is "false". + * + * + * @return the value of the 'Is related to additional salary' attribute. + * @see #setIs_related_to_additional_salary(boolean) + * @see Taxation.TaxationPackage#getHealth_and_Pension_Insurance_Is_related_to_additional_salary() + * @model default="false" required="true" + * @generated + */ + boolean isIs_related_to_additional_salary(); + + /** + * Sets the value of the '{@link Taxation.Health_and_Pension_Insurance#isIs_related_to_additional_salary Is related to additional salary}' attribute. + * + * + * @param value the new value of the 'Is related to additional salary' attribute. + * @see #isIs_related_to_additional_salary() + * @generated + */ + void setIs_related_to_additional_salary(boolean value); + +} // Health_and_Pension_Insurance diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Household.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Household.java new file mode 100644 index 00000000..5aaed441 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Household.java @@ -0,0 +1,86 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'Household'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Household#getParents Parents}
  • + *
  • {@link Taxation.Household#getId1 Id1}
  • + *
  • {@link Taxation.Household#getChildren Children}
  • + *
+ * + * @see Taxation.TaxationPackage#getHousehold() + * @model + * @generated + */ +public interface Household extends Tax_Case { + /** + * Returns the value of the 'Parents' containment reference. + * It is bidirectional and its opposite is '{@link Taxation.Legal_Union_Record#getHousehold Household}'. + * + * + * @return the value of the 'Parents' containment reference. + * @see #setParents(Legal_Union_Record) + * @see Taxation.TaxationPackage#getHousehold_Parents() + * @see Taxation.Legal_Union_Record#getHousehold + * @model opposite="household" containment="true" required="true" ordered="false" + * @generated + */ + Legal_Union_Record getParents(); + + /** + * Sets the value of the '{@link Taxation.Household#getParents Parents}' containment reference. + * + * + * @param value the new value of the 'Parents' containment reference. + * @see #getParents() + * @generated + */ + void setParents(Legal_Union_Record value); + + /** + * Returns the value of the 'Id1' attribute. + * + * + * @return the value of the 'Id1' attribute. + * @see #setId1(String) + * @see Taxation.TaxationPackage#getHousehold_Id1() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId1(); + + /** + * Sets the value of the '{@link Taxation.Household#getId1 Id1}' attribute. + * + * + * @param value the new value of the 'Id1' attribute. + * @see #getId1() + * @generated + */ + void setId1(String value); + + /** + * Returns the value of the 'Children' containment reference list. + * The list contents are of type {@link Taxation.Dependent}. + * It is bidirectional and its opposite is '{@link Taxation.Dependent#getHousehold Household}'. + * + * + * @return the value of the 'Children' containment reference list. + * @see Taxation.TaxationPackage#getHousehold_Children() + * @see Taxation.Dependent#getHousehold + * @model opposite="household" containment="true" ordered="false" + * @generated + */ + EList getChildren(); + +} // Household diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income.java new file mode 100644 index 00000000..3e68e1ac --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income.java @@ -0,0 +1,271 @@ +/** + */ +package Taxation; + +import java.util.Date; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Income'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Income#getIncome_amount Income amount}
  • + *
  • {@link Taxation.Income#getIncome_type Income type}
  • + *
  • {@link Taxation.Income#getStart_date_within_taxation_year Start date within taxation year}
  • + *
  • {@link Taxation.Income#getStart_date_of_contract Start date of contract}
  • + *
  • {@link Taxation.Income#getEnd_date_within_taxation_year End date within taxation year}
  • + *
  • {@link Taxation.Income#getTax_card Tax card}
  • + *
  • {@link Taxation.Income#getTax_liability Tax liability}
  • + *
  • {@link Taxation.Income#getTaxPayer Tax Payer}
  • + *
  • {@link Taxation.Income#getDetails Details}
  • + *
  • {@link Taxation.Income#getNum Num}
  • + *
  • {@link Taxation.Income#getExpenses Expenses}
  • + *
+ * + * @see Taxation.TaxationPackage#getIncome() + * @model abstract="true" + * @generated + */ +public interface Income extends EObject { + /** + * Returns the value of the 'Income amount' attribute. + * + * + * @return the value of the 'Income amount' attribute. + * @see #setIncome_amount(double) + * @see Taxation.TaxationPackage#getIncome_Income_amount() + * @model unique="false" required="true" ordered="false" + * annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='let non_null_amounts:OrderedSet(Income_Detail)=self.details->select(det:Income_Detail|det.amount>0)->asOrderedSet() in\nnon_null_amounts->collect(amount)->min()'" + * @generated + */ + double getIncome_amount(); + + /** + * Sets the value of the '{@link Taxation.Income#getIncome_amount Income amount}' attribute. + * + * + * @param value the new value of the 'Income amount' attribute. + * @see #getIncome_amount() + * @generated + */ + void setIncome_amount(double value); + + /** + * Returns the value of the 'Income type' containment reference. + * It is bidirectional and its opposite is '{@link Taxation.Income_Type#getIncome Income}'. + * + * + * @return the value of the 'Income type' containment reference. + * @see #setIncome_type(Income_Type) + * @see Taxation.TaxationPackage#getIncome_Income_type() + * @see Taxation.Income_Type#getIncome + * @model opposite="income" containment="true" required="true" + * @generated + */ + Income_Type getIncome_type(); + + /** + * Sets the value of the '{@link Taxation.Income#getIncome_type Income type}' containment reference. + * + * + * @param value the new value of the 'Income type' containment reference. + * @see #getIncome_type() + * @generated + */ + void setIncome_type(Income_Type value); + + /** + * Returns the value of the 'Start date within taxation year' attribute. + * + * + * @return the value of the 'Start date within taxation year' attribute. + * @see #setStart_date_within_taxation_year(Date) + * @see Taxation.TaxationPackage#getIncome_Start_date_within_taxation_year() + * @model unique="false" required="true" ordered="false" + * @generated + */ + Date getStart_date_within_taxation_year(); + + /** + * Sets the value of the '{@link Taxation.Income#getStart_date_within_taxation_year Start date within taxation year}' attribute. + * + * + * @param value the new value of the 'Start date within taxation year' attribute. + * @see #getStart_date_within_taxation_year() + * @generated + */ + void setStart_date_within_taxation_year(Date value); + + /** + * Returns the value of the 'Start date of contract' attribute. + * + * + * @return the value of the 'Start date of contract' attribute. + * @see #setStart_date_of_contract(Date) + * @see Taxation.TaxationPackage#getIncome_Start_date_of_contract() + * @model unique="false" required="true" ordered="false" + * @generated + */ + Date getStart_date_of_contract(); + + /** + * Sets the value of the '{@link Taxation.Income#getStart_date_of_contract Start date of contract}' attribute. + * + * + * @param value the new value of the 'Start date of contract' attribute. + * @see #getStart_date_of_contract() + * @generated + */ + void setStart_date_of_contract(Date value); + + /** + * Returns the value of the 'End date within taxation year' attribute. + * + * + * @return the value of the 'End date within taxation year' attribute. + * @see #setEnd_date_within_taxation_year(Date) + * @see Taxation.TaxationPackage#getIncome_End_date_within_taxation_year() + * @model unique="false" required="true" ordered="false" + * @generated + */ + Date getEnd_date_within_taxation_year(); + + /** + * Sets the value of the '{@link Taxation.Income#getEnd_date_within_taxation_year End date within taxation year}' attribute. + * + * + * @param value the new value of the 'End date within taxation year' attribute. + * @see #getEnd_date_within_taxation_year() + * @generated + */ + void setEnd_date_within_taxation_year(Date value); + + /** + * Returns the value of the 'Tax card' containment reference. + * It is bidirectional and its opposite is '{@link Taxation.Tax_Card#getIncome Income}'. + * + * + * @return the value of the 'Tax card' containment reference. + * @see #setTax_card(Tax_Card) + * @see Taxation.TaxationPackage#getIncome_Tax_card() + * @see Taxation.Tax_Card#getIncome + * @model opposite="income" containment="true" + * @generated + */ + Tax_Card getTax_card(); + + /** + * Sets the value of the '{@link Taxation.Income#getTax_card Tax card}' containment reference. + * + * + * @param value the new value of the 'Tax card' containment reference. + * @see #getTax_card() + * @generated + */ + void setTax_card(Tax_Card value); + + /** + * Returns the value of the 'Tax liability' attribute. + * + * + * @return the value of the 'Tax liability' attribute. + * @see #setTax_liability(double) + * @see Taxation.TaxationPackage#getIncome_Tax_liability() + * @model required="true" + * @generated + */ + double getTax_liability(); + + /** + * Sets the value of the '{@link Taxation.Income#getTax_liability Tax liability}' attribute. + * + * + * @param value the new value of the 'Tax liability' attribute. + * @see #getTax_liability() + * @generated + */ + void setTax_liability(double value); + + /** + * Returns the value of the 'Tax Payer' container reference. + * It is bidirectional and its opposite is '{@link Taxation.Tax_Payer#getIncomes Incomes}'. + * + * + * @return the value of the 'Tax Payer' container reference. + * @see #setTaxPayer(Tax_Payer) + * @see Taxation.TaxationPackage#getIncome_TaxPayer() + * @see Taxation.Tax_Payer#getIncomes + * @model opposite="incomes" required="true" transient="false" ordered="false" + * @generated + */ + Tax_Payer getTaxPayer(); + + /** + * Sets the value of the '{@link Taxation.Income#getTaxPayer Tax Payer}' container reference. + * + * + * @param value the new value of the 'Tax Payer' container reference. + * @see #getTaxPayer() + * @generated + */ + void setTaxPayer(Tax_Payer value); + + /** + * Returns the value of the 'Details' containment reference list. + * The list contents are of type {@link Taxation.Income_Detail}. + * It is bidirectional and its opposite is '{@link Taxation.Income_Detail#getIncome Income}'. + * + * + * @return the value of the 'Details' containment reference list. + * @see Taxation.TaxationPackage#getIncome_Details() + * @see Taxation.Income_Detail#getIncome + * @model opposite="income" containment="true" lower="12" upper="12" + * @generated + */ + EList getDetails(); + + /** + * Returns the value of the 'Num' attribute. + * + * + * @return the value of the 'Num' attribute. + * @see #setNum(int) + * @see Taxation.TaxationPackage#getIncome_Num() + * @model id="true" required="true" ordered="false" + * @generated + */ + int getNum(); + + /** + * Sets the value of the '{@link Taxation.Income#getNum Num}' attribute. + * + * + * @param value the new value of the 'Num' attribute. + * @see #getNum() + * @generated + */ + void setNum(int value); + + /** + * Returns the value of the 'Expenses' containment reference list. + * The list contents are of type {@link Taxation.Expense}. + * It is bidirectional and its opposite is '{@link Taxation.Expense#getIncome Income}'. + * + * + * @return the value of the 'Expenses' containment reference list. + * @see Taxation.TaxationPackage#getIncome_Expenses() + * @see Taxation.Expense#getIncome + * @model opposite="income" containment="true" ordered="false" + * @generated + */ + EList getExpenses(); + +} // Income diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Detail.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Detail.java new file mode 100644 index 00000000..1613b281 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Detail.java @@ -0,0 +1,186 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Income Detail'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Income_Detail#getAmount Amount}
  • + *
  • {@link Taxation.Income_Detail#isIs_worked Is worked}
  • + *
  • {@link Taxation.Income_Detail#getDistance Distance}
  • + *
  • {@link Taxation.Income_Detail#getWorked_days Worked days}
  • + *
  • {@link Taxation.Income_Detail#isIs_contributing_CNS Is contributing CNS}
  • + *
  • {@link Taxation.Income_Detail#getId5 Id5}
  • + *
  • {@link Taxation.Income_Detail#getIncome Income}
  • + *
+ * + * @see Taxation.TaxationPackage#getIncome_Detail() + * @model + * @generated + */ +public interface Income_Detail extends EObject { + /** + * Returns the value of the 'Amount' attribute. + * + * + * @return the value of the 'Amount' attribute. + * @see #setAmount(double) + * @see Taxation.TaxationPackage#getIncome_Detail_Amount() + * @model required="true" + * @generated + */ + double getAmount(); + + /** + * Sets the value of the '{@link Taxation.Income_Detail#getAmount Amount}' attribute. + * + * + * @param value the new value of the 'Amount' attribute. + * @see #getAmount() + * @generated + */ + void setAmount(double value); + + /** + * Returns the value of the 'Is worked' attribute. + * + * + * @return the value of the 'Is worked' attribute. + * @see #setIs_worked(boolean) + * @see Taxation.TaxationPackage#getIncome_Detail_Is_worked() + * @model required="true" + * @generated + */ + boolean isIs_worked(); + + /** + * Sets the value of the '{@link Taxation.Income_Detail#isIs_worked Is worked}' attribute. + * + * + * @param value the new value of the 'Is worked' attribute. + * @see #isIs_worked() + * @generated + */ + void setIs_worked(boolean value); + + /** + * Returns the value of the 'Distance' attribute. + * + * + * @return the value of the 'Distance' attribute. + * @see #setDistance(double) + * @see Taxation.TaxationPackage#getIncome_Detail_Distance() + * @model required="true" + * @generated + */ + double getDistance(); + + /** + * Sets the value of the '{@link Taxation.Income_Detail#getDistance Distance}' attribute. + * + * + * @param value the new value of the 'Distance' attribute. + * @see #getDistance() + * @generated + */ + void setDistance(double value); + + /** + * Returns the value of the 'Worked days' attribute. + * + * + * @return the value of the 'Worked days' attribute. + * @see #setWorked_days(int) + * @see Taxation.TaxationPackage#getIncome_Detail_Worked_days() + * @model required="true" + * @generated + */ + int getWorked_days(); + + /** + * Sets the value of the '{@link Taxation.Income_Detail#getWorked_days Worked days}' attribute. + * + * + * @param value the new value of the 'Worked days' attribute. + * @see #getWorked_days() + * @generated + */ + void setWorked_days(int value); + + /** + * Returns the value of the 'Is contributing CNS' attribute. + * + * + * @return the value of the 'Is contributing CNS' attribute. + * @see #setIs_contributing_CNS(boolean) + * @see Taxation.TaxationPackage#getIncome_Detail_Is_contributing_CNS() + * @model required="true" ordered="false" + * @generated + */ + boolean isIs_contributing_CNS(); + + /** + * Sets the value of the '{@link Taxation.Income_Detail#isIs_contributing_CNS Is contributing CNS}' attribute. + * + * + * @param value the new value of the 'Is contributing CNS' attribute. + * @see #isIs_contributing_CNS() + * @generated + */ + void setIs_contributing_CNS(boolean value); + + /** + * Returns the value of the 'Id5' attribute. + * + * + * @return the value of the 'Id5' attribute. + * @see #setId5(String) + * @see Taxation.TaxationPackage#getIncome_Detail_Id5() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId5(); + + /** + * Sets the value of the '{@link Taxation.Income_Detail#getId5 Id5}' attribute. + * + * + * @param value the new value of the 'Id5' attribute. + * @see #getId5() + * @generated + */ + void setId5(String value); + + /** + * Returns the value of the 'Income' container reference. + * It is bidirectional and its opposite is '{@link Taxation.Income#getDetails Details}'. + * + * + * @return the value of the 'Income' container reference. + * @see #setIncome(Income) + * @see Taxation.TaxationPackage#getIncome_Detail_Income() + * @see Taxation.Income#getDetails + * @model opposite="details" required="true" transient="false" + * @generated + */ + Income getIncome(); + + /** + * Sets the value of the '{@link Taxation.Income_Detail#getIncome Income}' container reference. + * + * + * @param value the new value of the 'Income' container reference. + * @see #getIncome() + * @generated + */ + void setIncome(Income value); + +} // Income_Detail diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Tax.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Tax.java new file mode 100644 index 00000000..b78b7c88 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Tax.java @@ -0,0 +1,115 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Income Tax'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Income_Tax#getTaxPayer Tax Payer}
  • + *
  • {@link Taxation.Income_Tax#getTax_amount Tax amount}
  • + *
  • {@link Taxation.Income_Tax#getTax_year Tax year}
  • + *
  • {@link Taxation.Income_Tax#getId6 Id6}
  • + *
+ * + * @see Taxation.TaxationPackage#getIncome_Tax() + * @model + * @generated + */ +public interface Income_Tax extends EObject { + /** + * Returns the value of the 'Tax Payer' reference. + * + * + * @return the value of the 'Tax Payer' reference. + * @see #setTaxPayer(Tax_Payer) + * @see Taxation.TaxationPackage#getIncome_Tax_TaxPayer() + * @model required="true" + * @generated + */ + Tax_Payer getTaxPayer(); + + /** + * Sets the value of the '{@link Taxation.Income_Tax#getTaxPayer Tax Payer}' reference. + * + * + * @param value the new value of the 'Tax Payer' reference. + * @see #getTaxPayer() + * @generated + */ + void setTaxPayer(Tax_Payer value); + + /** + * Returns the value of the 'Tax amount' attribute. + * + * + * @return the value of the 'Tax amount' attribute. + * @see #setTax_amount(double) + * @see Taxation.TaxationPackage#getIncome_Tax_Tax_amount() + * @model required="true" + * @generated + */ + double getTax_amount(); + + /** + * Sets the value of the '{@link Taxation.Income_Tax#getTax_amount Tax amount}' attribute. + * + * + * @param value the new value of the 'Tax amount' attribute. + * @see #getTax_amount() + * @generated + */ + void setTax_amount(double value); + + /** + * Returns the value of the 'Tax year' attribute. + * + * + * @return the value of the 'Tax year' attribute. + * @see #setTax_year(int) + * @see Taxation.TaxationPackage#getIncome_Tax_Tax_year() + * @model required="true" + * @generated + */ + int getTax_year(); + + /** + * Sets the value of the '{@link Taxation.Income_Tax#getTax_year Tax year}' attribute. + * + * + * @param value the new value of the 'Tax year' attribute. + * @see #getTax_year() + * @generated + */ + void setTax_year(int value); + + /** + * Returns the value of the 'Id6' attribute. + * + * + * @return the value of the 'Id6' attribute. + * @see #setId6(String) + * @see Taxation.TaxationPackage#getIncome_Tax_Id6() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId6(); + + /** + * Sets the value of the '{@link Taxation.Income_Tax#getId6 Id6}' attribute. + * + * + * @param value the new value of the 'Id6' attribute. + * @see #getId6() + * @generated + */ + void setId6(String value); + +} // Income_Tax diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Tax_Credit.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Tax_Credit.java new file mode 100644 index 00000000..69ee9ed2 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Tax_Credit.java @@ -0,0 +1,215 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Income Tax Credit'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Income_Tax_Credit#getGrantedBy Granted By}
  • + *
  • {@link Taxation.Income_Tax_Credit#getTaxPayer Tax Payer}
  • + *
  • {@link Taxation.Income_Tax_Credit#getTax_year Tax year}
  • + *
  • {@link Taxation.Income_Tax_Credit#getYearly Yearly}
  • + *
  • {@link Taxation.Income_Tax_Credit#getMonthly Monthly}
  • + *
  • {@link Taxation.Income_Tax_Credit#getDaily Daily}
  • + *
  • {@link Taxation.Income_Tax_Credit#getId7 Id7}
  • + *
  • {@link Taxation.Income_Tax_Credit#getTaxation_Frame Taxation Frame}
  • + *
+ * + * @see Taxation.TaxationPackage#getIncome_Tax_Credit() + * @model + * @generated + */ +public interface Income_Tax_Credit extends EObject { + /** + * Returns the value of the 'Granted By' attribute. + * The literals are from the enumeration {@link Taxation.Grantor}. + * + * + * @return the value of the 'Granted By' attribute. + * @see Taxation.Grantor + * @see #setGrantedBy(Grantor) + * @see Taxation.TaxationPackage#getIncome_Tax_Credit_GrantedBy() + * @model required="true" + * @generated + */ + Grantor getGrantedBy(); + + /** + * Sets the value of the '{@link Taxation.Income_Tax_Credit#getGrantedBy Granted By}' attribute. + * + * + * @param value the new value of the 'Granted By' attribute. + * @see Taxation.Grantor + * @see #getGrantedBy() + * @generated + */ + void setGrantedBy(Grantor value); + + /** + * Returns the value of the 'Tax Payer' reference. + * + * + * @return the value of the 'Tax Payer' reference. + * @see #setTaxPayer(Tax_Payer) + * @see Taxation.TaxationPackage#getIncome_Tax_Credit_TaxPayer() + * @model + * @generated + */ + Tax_Payer getTaxPayer(); + + /** + * Sets the value of the '{@link Taxation.Income_Tax_Credit#getTaxPayer Tax Payer}' reference. + * + * + * @param value the new value of the 'Tax Payer' reference. + * @see #getTaxPayer() + * @generated + */ + void setTaxPayer(Tax_Payer value); + + /** + * Returns the value of the 'Tax year' attribute. + * + * + * @return the value of the 'Tax year' attribute. + * @see #setTax_year(int) + * @see Taxation.TaxationPackage#getIncome_Tax_Credit_Tax_year() + * @model required="true" + * @generated + */ + int getTax_year(); + + /** + * Sets the value of the '{@link Taxation.Income_Tax_Credit#getTax_year Tax year}' attribute. + * + * + * @param value the new value of the 'Tax year' attribute. + * @see #getTax_year() + * @generated + */ + void setTax_year(int value); + + /** + * Returns the value of the 'Yearly' attribute. + * The default value is "300.0". + * + * + * @return the value of the 'Yearly' attribute. + * @see #setYearly(double) + * @see Taxation.TaxationPackage#getIncome_Tax_Credit_Yearly() + * @model default="300.0" required="true" + * @generated + */ + double getYearly(); + + /** + * Sets the value of the '{@link Taxation.Income_Tax_Credit#getYearly Yearly}' attribute. + * + * + * @param value the new value of the 'Yearly' attribute. + * @see #getYearly() + * @generated + */ + void setYearly(double value); + + /** + * Returns the value of the 'Monthly' attribute. + * The default value is "25.0". + * + * + * @return the value of the 'Monthly' attribute. + * @see #setMonthly(double) + * @see Taxation.TaxationPackage#getIncome_Tax_Credit_Monthly() + * @model default="25.0" required="true" + * @generated + */ + double getMonthly(); + + /** + * Sets the value of the '{@link Taxation.Income_Tax_Credit#getMonthly Monthly}' attribute. + * + * + * @param value the new value of the 'Monthly' attribute. + * @see #getMonthly() + * @generated + */ + void setMonthly(double value); + + /** + * Returns the value of the 'Daily' attribute. + * The default value is "1.0". + * + * + * @return the value of the 'Daily' attribute. + * @see #setDaily(double) + * @see Taxation.TaxationPackage#getIncome_Tax_Credit_Daily() + * @model default="1.0" required="true" + * @generated + */ + double getDaily(); + + /** + * Sets the value of the '{@link Taxation.Income_Tax_Credit#getDaily Daily}' attribute. + * + * + * @param value the new value of the 'Daily' attribute. + * @see #getDaily() + * @generated + */ + void setDaily(double value); + + /** + * Returns the value of the 'Id7' attribute. + * + * + * @return the value of the 'Id7' attribute. + * @see #setId7(String) + * @see Taxation.TaxationPackage#getIncome_Tax_Credit_Id7() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId7(); + + /** + * Sets the value of the '{@link Taxation.Income_Tax_Credit#getId7 Id7}' attribute. + * + * + * @param value the new value of the 'Id7' attribute. + * @see #getId7() + * @generated + */ + void setId7(String value); + + /** + * Returns the value of the 'Taxation Frame' reference. + * It is bidirectional and its opposite is '{@link Taxation.Tax_Card#getIncome_Tax_Credit Income Tax Credit}'. + * + * + * @return the value of the 'Taxation Frame' reference. + * @see #setTaxation_Frame(Tax_Card) + * @see Taxation.TaxationPackage#getIncome_Tax_Credit_Taxation_Frame() + * @see Taxation.Tax_Card#getIncome_Tax_Credit + * @model opposite="income_Tax_Credit" + * @generated + */ + Tax_Card getTaxation_Frame(); + + /** + * Sets the value of the '{@link Taxation.Income_Tax_Credit#getTaxation_Frame Taxation Frame}' reference. + * + * + * @param value the new value of the 'Taxation Frame' reference. + * @see #getTaxation_Frame() + * @generated + */ + void setTaxation_Frame(Tax_Card value); + +} // Income_Tax_Credit diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Type.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Type.java new file mode 100644 index 00000000..3d7d03b1 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Type.java @@ -0,0 +1,95 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Income Type'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Income_Type#isSubjectToWithholdingTax Subject To Withholding Tax}
  • + *
  • {@link Taxation.Income_Type#getId8 Id8}
  • + *
  • {@link Taxation.Income_Type#getIncome Income}
  • + *
+ * + * @see Taxation.TaxationPackage#getIncome_Type() + * @model abstract="true" + * @generated + */ +public interface Income_Type extends EObject { + /** + * Returns the value of the 'Subject To Withholding Tax' attribute. + * + * + * @return the value of the 'Subject To Withholding Tax' attribute. + * @see #setSubjectToWithholdingTax(boolean) + * @see Taxation.TaxationPackage#getIncome_Type_SubjectToWithholdingTax() + * @model required="true" derived="true" + * annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='\n\t\t\t\tself.income.tax_card->notEmpty()\n\t\t\t\t'" + * @generated + */ + boolean isSubjectToWithholdingTax(); + + /** + * Sets the value of the '{@link Taxation.Income_Type#isSubjectToWithholdingTax Subject To Withholding Tax}' attribute. + * + * + * @param value the new value of the 'Subject To Withholding Tax' attribute. + * @see #isSubjectToWithholdingTax() + * @generated + */ + void setSubjectToWithholdingTax(boolean value); + + /** + * Returns the value of the 'Id8' attribute. + * + * + * @return the value of the 'Id8' attribute. + * @see #setId8(String) + * @see Taxation.TaxationPackage#getIncome_Type_Id8() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId8(); + + /** + * Sets the value of the '{@link Taxation.Income_Type#getId8 Id8}' attribute. + * + * + * @param value the new value of the 'Id8' attribute. + * @see #getId8() + * @generated + */ + void setId8(String value); + + /** + * Returns the value of the 'Income' container reference. + * It is bidirectional and its opposite is '{@link Taxation.Income#getIncome_type Income type}'. + * + * + * @return the value of the 'Income' container reference. + * @see #setIncome(Income) + * @see Taxation.TaxationPackage#getIncome_Type_Income() + * @see Taxation.Income#getIncome_type + * @model opposite="income_type" required="true" transient="false" + * @generated + */ + Income getIncome(); + + /** + * Sets the value of the '{@link Taxation.Income_Type#getIncome Income}' container reference. + * + * + * @param value the new value of the 'Income' container reference. + * @see #getIncome() + * @generated + */ + void setIncome(Income value); + +} // Income_Type diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Interest_Expense.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Interest_Expense.java new file mode 100644 index 00000000..fc0e1f1f --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Interest_Expense.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Interest Expense'. + * + * + * + * @see Taxation.TaxationPackage#getInterest_Expense() + * @model + * @generated + */ +public interface Interest_Expense extends Special_Expense_DS { +} // Interest_Expense diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Job_Activity.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Job_Activity.java new file mode 100644 index 00000000..aee76b1b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Job_Activity.java @@ -0,0 +1,232 @@ +/** + */ +package Taxation; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Job Activity', + * and utility methods for working with them. + * + * @see Taxation.TaxationPackage#getJob_Activity() + * @model + * @generated + */ +public enum Job_Activity implements Enumerator { + /** + * The 'Salary' literal object. + * + * + * @see #SALARY_VALUE + * @generated + * @ordered + */ + SALARY(0, "Salary", "Salary"), + + /** + * The 'Pension' literal object. + * + * + * @see #PENSION_VALUE + * @generated + * @ordered + */ + PENSION(1, "Pension", "Pension"), + + /** + * The 'Annuity' literal object. + * + * + * @see #ANNUITY_VALUE + * @generated + * @ordered + */ + ANNUITY(2, "Annuity", "Annuity"); + + /** + * The 'Salary' literal value. + * + * + * @see #SALARY + * @model name="Salary" + * @generated + * @ordered + */ + public static final int SALARY_VALUE = 0; + + /** + * The 'Pension' literal value. + * + * + * @see #PENSION + * @model name="Pension" + * @generated + * @ordered + */ + public static final int PENSION_VALUE = 1; + + /** + * The 'Annuity' literal value. + * + * + * @see #ANNUITY + * @model name="Annuity" + * @generated + * @ordered + */ + public static final int ANNUITY_VALUE = 2; + + /** + * An array of all the 'Job Activity' enumerators. + * + * + * @generated + */ + private static final Job_Activity[] VALUES_ARRAY = + new Job_Activity[] { + SALARY, + PENSION, + ANNUITY, + }; + + /** + * A public read-only list of all the 'Job Activity' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Job Activity' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Job_Activity get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Job_Activity result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Job Activity' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Job_Activity getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Job_Activity result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Job Activity' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Job_Activity get(int value) { + switch (value) { + case SALARY_VALUE: return SALARY; + case PENSION_VALUE: return PENSION; + case ANNUITY_VALUE: return ANNUITY; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Job_Activity(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Job_Activity diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Legal_Union_Record.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Legal_Union_Record.java new file mode 100644 index 00000000..47a5d766 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Legal_Union_Record.java @@ -0,0 +1,221 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Legal Union Record'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Legal_Union_Record#getStart_year Start year}
  • + *
  • {@link Taxation.Legal_Union_Record#getEnd_year End year}
  • + *
  • {@link Taxation.Legal_Union_Record#getSeparation_cause Separation cause}
  • + *
  • {@link Taxation.Legal_Union_Record#getIndividual_A Individual A}
  • + *
  • {@link Taxation.Legal_Union_Record#getIndividual_B Individual B}
  • + *
  • {@link Taxation.Legal_Union_Record#getProperties Properties}
  • + *
  • {@link Taxation.Legal_Union_Record#isMutual_agreement Mutual agreement}
  • + *
  • {@link Taxation.Legal_Union_Record#getId9 Id9}
  • + *
  • {@link Taxation.Legal_Union_Record#getHousehold Household}
  • + *
+ * + * @see Taxation.TaxationPackage#getLegal_Union_Record() + * @model abstract="true" + * @generated + */ +public interface Legal_Union_Record extends EObject { + /** + * Returns the value of the 'Start year' attribute. + * + * + * @return the value of the 'Start year' attribute. + * @see #setStart_year(int) + * @see Taxation.TaxationPackage#getLegal_Union_Record_Start_year() + * @model required="true" + * @generated + */ + int getStart_year(); + + /** + * Sets the value of the '{@link Taxation.Legal_Union_Record#getStart_year Start year}' attribute. + * + * + * @param value the new value of the 'Start year' attribute. + * @see #getStart_year() + * @generated + */ + void setStart_year(int value); + + /** + * Returns the value of the 'End year' attribute. + * + * + * @return the value of the 'End year' attribute. + * @see #setEnd_year(int) + * @see Taxation.TaxationPackage#getLegal_Union_Record_End_year() + * @model required="true" + * @generated + */ + int getEnd_year(); + + /** + * Sets the value of the '{@link Taxation.Legal_Union_Record#getEnd_year End year}' attribute. + * + * + * @param value the new value of the 'End year' attribute. + * @see #getEnd_year() + * @generated + */ + void setEnd_year(int value); + + /** + * Returns the value of the 'Separation cause' attribute. + * The literals are from the enumeration {@link Taxation.Separation_Causes}. + * + * + * @return the value of the 'Separation cause' attribute. + * @see Taxation.Separation_Causes + * @see #setSeparation_cause(Separation_Causes) + * @see Taxation.TaxationPackage#getLegal_Union_Record_Separation_cause() + * @model required="true" ordered="false" + * @generated + */ + Separation_Causes getSeparation_cause(); + + /** + * Sets the value of the '{@link Taxation.Legal_Union_Record#getSeparation_cause Separation cause}' attribute. + * + * + * @param value the new value of the 'Separation cause' attribute. + * @see Taxation.Separation_Causes + * @see #getSeparation_cause() + * @generated + */ + void setSeparation_cause(Separation_Causes value); + + /** + * Returns the value of the 'Individual A' containment reference. + * + * + * @return the value of the 'Individual A' containment reference. + * @see #setIndividual_A(Physical_Person) + * @see Taxation.TaxationPackage#getLegal_Union_Record_Individual_A() + * @model containment="true" required="true" ordered="false" + * annotation="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName body='legal_union_A'" + * @generated + */ + Physical_Person getIndividual_A(); + + /** + * Sets the value of the '{@link Taxation.Legal_Union_Record#getIndividual_A Individual A}' containment reference. + * + * + * @param value the new value of the 'Individual A' containment reference. + * @see #getIndividual_A() + * @generated + */ + void setIndividual_A(Physical_Person value); + + /** + * Returns the value of the 'Individual B' containment reference list. + * The list contents are of type {@link Taxation.Physical_Person}. + * + * + * @return the value of the 'Individual B' containment reference list. + * @see Taxation.TaxationPackage#getLegal_Union_Record_Individual_B() + * @model containment="true" required="true" ordered="false" + * annotation="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName body='legal_union_B'" + * @generated + */ + EList getIndividual_B(); + + /** + * Returns the value of the 'Properties' containment reference list. + * The list contents are of type {@link Taxation.Tax_Property}. + * It is bidirectional and its opposite is '{@link Taxation.Tax_Property#getUnion_record Union record}'. + * + * + * @return the value of the 'Properties' containment reference list. + * @see Taxation.TaxationPackage#getLegal_Union_Record_Properties() + * @see Taxation.Tax_Property#getUnion_record + * @model opposite="union_record" containment="true" required="true" ordered="false" + * @generated + */ + EList getProperties(); + + /** + * Returns the value of the 'Mutual agreement' attribute. + * + * + * @return the value of the 'Mutual agreement' attribute. + * @see #setMutual_agreement(boolean) + * @see Taxation.TaxationPackage#getLegal_Union_Record_Mutual_agreement() + * @model required="true" ordered="false" + * @generated + */ + boolean isMutual_agreement(); + + /** + * Sets the value of the '{@link Taxation.Legal_Union_Record#isMutual_agreement Mutual agreement}' attribute. + * + * + * @param value the new value of the 'Mutual agreement' attribute. + * @see #isMutual_agreement() + * @generated + */ + void setMutual_agreement(boolean value); + + /** + * Returns the value of the 'Id9' attribute. + * + * + * @return the value of the 'Id9' attribute. + * @see #setId9(String) + * @see Taxation.TaxationPackage#getLegal_Union_Record_Id9() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId9(); + + /** + * Sets the value of the '{@link Taxation.Legal_Union_Record#getId9 Id9}' attribute. + * + * + * @param value the new value of the 'Id9' attribute. + * @see #getId9() + * @generated + */ + void setId9(String value); + + /** + * Returns the value of the 'Household' container reference. + * It is bidirectional and its opposite is '{@link Taxation.Household#getParents Parents}'. + * + * + * @return the value of the 'Household' container reference. + * @see #setHousehold(Household) + * @see Taxation.TaxationPackage#getLegal_Union_Record_Household() + * @see Taxation.Household#getParents + * @model opposite="parents" required="true" transient="false" ordered="false" + * @generated + */ + Household getHousehold(); + + /** + * Sets the value of the '{@link Taxation.Legal_Union_Record#getHousehold Household}' container reference. + * + * + * @param value the new value of the 'Household' container reference. + * @see #getHousehold() + * @generated + */ + void setHousehold(Household value); + +} // Legal_Union_Record diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Legal_Union_Types.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Legal_Union_Types.java new file mode 100644 index 00000000..3f613efa --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Legal_Union_Types.java @@ -0,0 +1,232 @@ +/** + */ +package Taxation; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Legal Union Types', + * and utility methods for working with them. + * + * @see Taxation.TaxationPackage#getLegal_Union_Types() + * @model + * @generated + */ +public enum Legal_Union_Types implements Enumerator { + /** + * The 'MARIAGE' literal object. + * + * + * @see #MARIAGE_VALUE + * @generated + * @ordered + */ + MARIAGE(0, "MARIAGE", "MARIAGE"), + + /** + * The 'PARTNERSHIP' literal object. + * + * + * @see #PARTNERSHIP_VALUE + * @generated + * @ordered + */ + PARTNERSHIP(1, "PARTNERSHIP", "PARTNERSHIP"), + + /** + * The 'OTHER' literal object. + * + * + * @see #OTHER_VALUE + * @generated + * @ordered + */ + OTHER(2, "OTHER", "OTHER"); + + /** + * The 'MARIAGE' literal value. + * + * + * @see #MARIAGE + * @model + * @generated + * @ordered + */ + public static final int MARIAGE_VALUE = 0; + + /** + * The 'PARTNERSHIP' literal value. + * + * + * @see #PARTNERSHIP + * @model + * @generated + * @ordered + */ + public static final int PARTNERSHIP_VALUE = 1; + + /** + * The 'OTHER' literal value. + * + * + * @see #OTHER + * @model + * @generated + * @ordered + */ + public static final int OTHER_VALUE = 2; + + /** + * An array of all the 'Legal Union Types' enumerators. + * + * + * @generated + */ + private static final Legal_Union_Types[] VALUES_ARRAY = + new Legal_Union_Types[] { + MARIAGE, + PARTNERSHIP, + OTHER, + }; + + /** + * A public read-only list of all the 'Legal Union Types' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Legal Union Types' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Legal_Union_Types get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Legal_Union_Types result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Legal Union Types' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Legal_Union_Types getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Legal_Union_Types result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Legal Union Types' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Legal_Union_Types get(int value) { + switch (value) { + case MARIAGE_VALUE: return MARIAGE; + case PARTNERSHIP_VALUE: return PARTNERSHIP; + case OTHER_VALUE: return OTHER; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Legal_Union_Types(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Legal_Union_Types diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Local_Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Local_Income.java new file mode 100644 index 00000000..c01ecef5 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Local_Income.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Local Income'. + * + * + * + * @see Taxation.TaxationPackage#getLocal_Income() + * @model + * @generated + */ +public interface Local_Income extends Income { +} // Local_Income diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Loss_Carryforward.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Loss_Carryforward.java new file mode 100644 index 00000000..e2ecfb38 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Loss_Carryforward.java @@ -0,0 +1,116 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Loss Carryforward'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Loss_Carryforward#isRegular_accountability Regular accountability}
  • + *
  • {@link Taxation.Loss_Carryforward#isCompensation_by_other_means Compensation by other means}
  • + *
  • {@link Taxation.Loss_Carryforward#isTax_payer_has_inherited_business_ownership Tax payer has inherited business ownership}
  • + *
  • {@link Taxation.Loss_Carryforward#isTax_payer_has_been_partner_in_business Tax payer has been partner in business}
  • + *
+ * + * @see Taxation.TaxationPackage#getLoss_Carryforward() + * @model + * @generated + */ +public interface Loss_Carryforward extends Special_Expense_DS { + /** + * Returns the value of the 'Regular accountability' attribute. + * + * + * @return the value of the 'Regular accountability' attribute. + * @see #setRegular_accountability(boolean) + * @see Taxation.TaxationPackage#getLoss_Carryforward_Regular_accountability() + * @model required="true" derived="true" + * @generated + */ + boolean isRegular_accountability(); + + /** + * Sets the value of the '{@link Taxation.Loss_Carryforward#isRegular_accountability Regular accountability}' attribute. + * + * + * @param value the new value of the 'Regular accountability' attribute. + * @see #isRegular_accountability() + * @generated + */ + void setRegular_accountability(boolean value); + + /** + * Returns the value of the 'Compensation by other means' attribute. + * + * + * @return the value of the 'Compensation by other means' attribute. + * @see #setCompensation_by_other_means(boolean) + * @see Taxation.TaxationPackage#getLoss_Carryforward_Compensation_by_other_means() + * @model required="true" derived="true" + * @generated + */ + boolean isCompensation_by_other_means(); + + /** + * Sets the value of the '{@link Taxation.Loss_Carryforward#isCompensation_by_other_means Compensation by other means}' attribute. + * + * + * @param value the new value of the 'Compensation by other means' attribute. + * @see #isCompensation_by_other_means() + * @generated + */ + void setCompensation_by_other_means(boolean value); + + /** + * Returns the value of the 'Tax payer has inherited business ownership' attribute. + * The default value is "false". + * + * + * @return the value of the 'Tax payer has inherited business ownership' attribute. + * @see #setTax_payer_has_inherited_business_ownership(boolean) + * @see Taxation.TaxationPackage#getLoss_Carryforward_Tax_payer_has_inherited_business_ownership() + * @model default="false" required="true" derived="true" + * @generated + */ + boolean isTax_payer_has_inherited_business_ownership(); + + /** + * Sets the value of the '{@link Taxation.Loss_Carryforward#isTax_payer_has_inherited_business_ownership Tax payer has inherited business ownership}' attribute. + * + * + * @param value the new value of the 'Tax payer has inherited business ownership' attribute. + * @see #isTax_payer_has_inherited_business_ownership() + * @generated + */ + void setTax_payer_has_inherited_business_ownership(boolean value); + + /** + * Returns the value of the 'Tax payer has been partner in business' attribute. + * The default value is "true". + * + * + * @return the value of the 'Tax payer has been partner in business' attribute. + * @see #setTax_payer_has_been_partner_in_business(boolean) + * @see Taxation.TaxationPackage#getLoss_Carryforward_Tax_payer_has_been_partner_in_business() + * @model default="true" required="true" derived="true" + * @generated + */ + boolean isTax_payer_has_been_partner_in_business(); + + /** + * Sets the value of the '{@link Taxation.Loss_Carryforward#isTax_payer_has_been_partner_in_business Tax payer has been partner in business}' attribute. + * + * + * @param value the new value of the 'Tax payer has been partner in business' attribute. + * @see #isTax_payer_has_been_partner_in_business() + * @generated + */ + void setTax_payer_has_been_partner_in_business(boolean value); + +} // Loss_Carryforward diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Marriage_Record.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Marriage_Record.java new file mode 100644 index 00000000..66a1ab40 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Marriage_Record.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Marriage Record'. + * + * + * + * @see Taxation.TaxationPackage#getMarriage_Record() + * @model + * @generated + */ +public interface Marriage_Record extends Legal_Union_Record { +} // Marriage_Record diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Miscellaneous_Expense_FO.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Miscellaneous_Expense_FO.java new file mode 100644 index 00000000..84186946 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Miscellaneous_Expense_FO.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Miscellaneous Expense FO'. + * + * + * + * @see Taxation.TaxationPackage#getMiscellaneous_Expense_FO() + * @model + * @generated + */ +public interface Miscellaneous_Expense_FO extends Professional_Expense { +} // Miscellaneous_Expense_FO diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Non_Resident_Tax_Payer.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Non_Resident_Tax_Payer.java new file mode 100644 index 00000000..30df70bb --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Non_Resident_Tax_Payer.java @@ -0,0 +1,46 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Non Resident Tax Payer'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Non_Resident_Tax_Payer#isIs_assimilated_to_resident Is assimilated to resident}
  • + *
+ * + * @see Taxation.TaxationPackage#getNon_Resident_Tax_Payer() + * @model + * @generated + */ +public interface Non_Resident_Tax_Payer extends Tax_Payer { + /** + * Returns the value of the 'Is assimilated to resident' attribute. + * The default value is "false". + * + * + * @return the value of the 'Is assimilated to resident' attribute. + * @see #setIs_assimilated_to_resident(boolean) + * @see Taxation.TaxationPackage#getNon_Resident_Tax_Payer_Is_assimilated_to_resident() + * @model default="false" required="true" + * @generated + */ + boolean isIs_assimilated_to_resident(); + + /** + * Sets the value of the '{@link Taxation.Non_Resident_Tax_Payer#isIs_assimilated_to_resident Is assimilated to resident}' attribute. + * + * + * @param value the new value of the 'Is assimilated to resident' attribute. + * @see #isIs_assimilated_to_resident() + * @generated + */ + void setIs_assimilated_to_resident(boolean value); + +} // Non_Resident_Tax_Payer diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Partnership_Record.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Partnership_Record.java new file mode 100644 index 00000000..4f1344f5 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Partnership_Record.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Partnership Record'. + * + * + * + * @see Taxation.TaxationPackage#getPartnership_Record() + * @model + * @generated + */ +public interface Partnership_Record extends Legal_Union_Record { +} // Partnership_Record diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Pensions_and_Annuities_Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Pensions_and_Annuities_Income.java new file mode 100644 index 00000000..67c6bcc6 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Pensions_and_Annuities_Income.java @@ -0,0 +1,46 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Pensions and Annuities Income'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Pensions_and_Annuities_Income#isOccasional_payement Occasional payement}
  • + *
+ * + * @see Taxation.TaxationPackage#getPensions_and_Annuities_Income() + * @model + * @generated + */ +public interface Pensions_and_Annuities_Income extends Income_Type { + /** + * Returns the value of the 'Occasional payement' attribute. + * The default value is "false". + * + * + * @return the value of the 'Occasional payement' attribute. + * @see #setOccasional_payement(boolean) + * @see Taxation.TaxationPackage#getPensions_and_Annuities_Income_Occasional_payement() + * @model default="false" + * @generated + */ + boolean isOccasional_payement(); + + /** + * Sets the value of the '{@link Taxation.Pensions_and_Annuities_Income#isOccasional_payement Occasional payement}' attribute. + * + * + * @param value the new value of the 'Occasional payement' attribute. + * @see #isOccasional_payement() + * @generated + */ + void setOccasional_payement(boolean value); + +} // Pensions_and_Annuities_Income diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Permanent_Expense.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Permanent_Expense.java new file mode 100644 index 00000000..1e8d885b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Permanent_Expense.java @@ -0,0 +1,72 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Permanent Expense'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Permanent_Expense#getCategory Category}
  • + *
  • {@link Taxation.Permanent_Expense#isIs_eligible_for_deduction Is eligible for deduction}
  • + *
+ * + * @see Taxation.TaxationPackage#getPermanent_Expense() + * @model + * @generated + */ +public interface Permanent_Expense extends Special_Expense_DS { + /** + * Returns the value of the 'Category' attribute. + * The literals are from the enumeration {@link Taxation.Category_of_Permanent_Expense}. + * + * + * @return the value of the 'Category' attribute. + * @see Taxation.Category_of_Permanent_Expense + * @see #setCategory(Category_of_Permanent_Expense) + * @see Taxation.TaxationPackage#getPermanent_Expense_Category() + * @model required="true" + * @generated + */ + Category_of_Permanent_Expense getCategory(); + + /** + * Sets the value of the '{@link Taxation.Permanent_Expense#getCategory Category}' attribute. + * + * + * @param value the new value of the 'Category' attribute. + * @see Taxation.Category_of_Permanent_Expense + * @see #getCategory() + * @generated + */ + void setCategory(Category_of_Permanent_Expense value); + + /** + * Returns the value of the 'Is eligible for deduction' attribute. + * The default value is "false". + * + * + * @return the value of the 'Is eligible for deduction' attribute. + * @see #setIs_eligible_for_deduction(boolean) + * @see Taxation.TaxationPackage#getPermanent_Expense_Is_eligible_for_deduction() + * @model default="false" required="true" derived="true" + * @generated + */ + boolean isIs_eligible_for_deduction(); + + /** + * Sets the value of the '{@link Taxation.Permanent_Expense#isIs_eligible_for_deduction Is eligible for deduction}' attribute. + * + * + * @param value the new value of the 'Is eligible for deduction' attribute. + * @see #isIs_eligible_for_deduction() + * @generated + */ + void setIs_eligible_for_deduction(boolean value); + +} // Permanent_Expense diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Physical_Person.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Physical_Person.java new file mode 100644 index 00000000..02144134 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Physical_Person.java @@ -0,0 +1,278 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Physical Person'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Physical_Person#isIs_assisting_spouse Is assisting spouse}
  • + *
  • {@link Taxation.Physical_Person#getSSNo SS No}
  • + *
  • {@link Taxation.Physical_Person#getAddresses Addresses}
  • + *
  • {@link Taxation.Physical_Person#getBirth_year Birth year}
  • + *
  • {@link Taxation.Physical_Person#getDisability_percentage Disability percentage}
  • + *
  • {@link Taxation.Physical_Person#getDisability_type Disability type}
  • + *
  • {@link Taxation.Physical_Person#isIs_affiliated_personnaly_to_social_security Is affiliated personnaly to social security}
  • + *
  • {@link Taxation.Physical_Person#getBirth_month Birth month}
  • + *
  • {@link Taxation.Physical_Person#getBirth_day Birth day}
  • + *
  • {@link Taxation.Physical_Person#getExpenses Expenses}
  • + *
  • {@link Taxation.Physical_Person#isIs_widower Is widower}
  • + *
  • {@link Taxation.Physical_Person#getOwns_Address Owns Address}
  • + *
+ * + * @see Taxation.TaxationPackage#getPhysical_Person() + * @model + * @generated + */ +public interface Physical_Person extends EObject { + /** + * Returns the value of the 'Is assisting spouse' attribute. + * + * + * @return the value of the 'Is assisting spouse' attribute. + * @see #setIs_assisting_spouse(boolean) + * @see Taxation.TaxationPackage#getPhysical_Person_Is_assisting_spouse() + * @model required="true" derived="true" + * @generated + */ + boolean isIs_assisting_spouse(); + + /** + * Sets the value of the '{@link Taxation.Physical_Person#isIs_assisting_spouse Is assisting spouse}' attribute. + * + * + * @param value the new value of the 'Is assisting spouse' attribute. + * @see #isIs_assisting_spouse() + * @generated + */ + void setIs_assisting_spouse(boolean value); + + /** + * Returns the value of the 'SS No' attribute. + * + * + * @return the value of the 'SS No' attribute. + * @see #setSSNo(String) + * @see Taxation.TaxationPackage#getPhysical_Person_SSNo() + * @model id="true" required="true" + * @generated + */ + String getSSNo(); + + /** + * Sets the value of the '{@link Taxation.Physical_Person#getSSNo SS No}' attribute. + * + * + * @param value the new value of the 'SS No' attribute. + * @see #getSSNo() + * @generated + */ + void setSSNo(String value); + + /** + * Returns the value of the 'Addresses' reference list. + * The list contents are of type {@link Taxation.Address}. + * It is bidirectional and its opposite is '{@link Taxation.Address#getTaxPayer Tax Payer}'. + * + * + * @return the value of the 'Addresses' reference list. + * @see Taxation.TaxationPackage#getPhysical_Person_Addresses() + * @see Taxation.Address#getTaxPayer + * @model opposite="taxPayer" ordered="false" + * @generated + */ + EList
getAddresses(); + + /** + * Returns the value of the 'Birth year' attribute. + * + * + * @return the value of the 'Birth year' attribute. + * @see #setBirth_year(int) + * @see Taxation.TaxationPackage#getPhysical_Person_Birth_year() + * @model unique="false" required="true" ordered="false" + * @generated + */ + int getBirth_year(); + + /** + * Sets the value of the '{@link Taxation.Physical_Person#getBirth_year Birth year}' attribute. + * + * + * @param value the new value of the 'Birth year' attribute. + * @see #getBirth_year() + * @generated + */ + void setBirth_year(int value); + + /** + * Returns the value of the 'Disability percentage' attribute. + * + * + * @return the value of the 'Disability percentage' attribute. + * @see #setDisability_percentage(double) + * @see Taxation.TaxationPackage#getPhysical_Person_Disability_percentage() + * @model unique="false" required="true" ordered="false" + * @generated + */ + double getDisability_percentage(); + + /** + * Sets the value of the '{@link Taxation.Physical_Person#getDisability_percentage Disability percentage}' attribute. + * + * + * @param value the new value of the 'Disability percentage' attribute. + * @see #getDisability_percentage() + * @generated + */ + void setDisability_percentage(double value); + + /** + * Returns the value of the 'Disability type' attribute. + * The literals are from the enumeration {@link Taxation.Disability_Types}. + * + * + * @return the value of the 'Disability type' attribute. + * @see Taxation.Disability_Types + * @see #setDisability_type(Disability_Types) + * @see Taxation.TaxationPackage#getPhysical_Person_Disability_type() + * @model unique="false" required="true" ordered="false" + * @generated + */ + Disability_Types getDisability_type(); + + /** + * Sets the value of the '{@link Taxation.Physical_Person#getDisability_type Disability type}' attribute. + * + * + * @param value the new value of the 'Disability type' attribute. + * @see Taxation.Disability_Types + * @see #getDisability_type() + * @generated + */ + void setDisability_type(Disability_Types value); + + /** + * Returns the value of the 'Is affiliated personnaly to social security' attribute. + * + * + * @return the value of the 'Is affiliated personnaly to social security' attribute. + * @see #setIs_affiliated_personnaly_to_social_security(boolean) + * @see Taxation.TaxationPackage#getPhysical_Person_Is_affiliated_personnaly_to_social_security() + * @model required="true" derived="true" + * @generated + */ + boolean isIs_affiliated_personnaly_to_social_security(); + + /** + * Sets the value of the '{@link Taxation.Physical_Person#isIs_affiliated_personnaly_to_social_security Is affiliated personnaly to social security}' attribute. + * + * + * @param value the new value of the 'Is affiliated personnaly to social security' attribute. + * @see #isIs_affiliated_personnaly_to_social_security() + * @generated + */ + void setIs_affiliated_personnaly_to_social_security(boolean value); + + /** + * Returns the value of the 'Birth month' attribute. + * + * + * @return the value of the 'Birth month' attribute. + * @see #setBirth_month(int) + * @see Taxation.TaxationPackage#getPhysical_Person_Birth_month() + * @model unique="false" required="true" ordered="false" + * @generated + */ + int getBirth_month(); + + /** + * Sets the value of the '{@link Taxation.Physical_Person#getBirth_month Birth month}' attribute. + * + * + * @param value the new value of the 'Birth month' attribute. + * @see #getBirth_month() + * @generated + */ + void setBirth_month(int value); + + /** + * Returns the value of the 'Birth day' attribute. + * + * + * @return the value of the 'Birth day' attribute. + * @see #setBirth_day(int) + * @see Taxation.TaxationPackage#getPhysical_Person_Birth_day() + * @model unique="false" required="true" ordered="false" + * @generated + */ + int getBirth_day(); + + /** + * Sets the value of the '{@link Taxation.Physical_Person#getBirth_day Birth day}' attribute. + * + * + * @param value the new value of the 'Birth day' attribute. + * @see #getBirth_day() + * @generated + */ + void setBirth_day(int value); + + /** + * Returns the value of the 'Expenses' reference list. + * The list contents are of type {@link Taxation.Expense}. + * It is bidirectional and its opposite is '{@link Taxation.Expense#getBeneficiary Beneficiary}'. + * + * + * @return the value of the 'Expenses' reference list. + * @see Taxation.TaxationPackage#getPhysical_Person_Expenses() + * @see Taxation.Expense#getBeneficiary + * @model opposite="beneficiary" ordered="false" + * @generated + */ + EList getExpenses(); + + /** + * Returns the value of the 'Is widower' attribute. + * + * + * @return the value of the 'Is widower' attribute. + * @see #setIs_widower(boolean) + * @see Taxation.TaxationPackage#getPhysical_Person_Is_widower() + * @model required="true" ordered="false" + * @generated + */ + boolean isIs_widower(); + + /** + * Sets the value of the '{@link Taxation.Physical_Person#isIs_widower Is widower}' attribute. + * + * + * @param value the new value of the 'Is widower' attribute. + * @see #isIs_widower() + * @generated + */ + void setIs_widower(boolean value); + + /** + * Returns the value of the 'Owns Address' containment reference list. + * The list contents are of type {@link Taxation.Address}. + * + * + * @return the value of the 'Owns Address' containment reference list. + * @see Taxation.TaxationPackage#getPhysical_Person_Owns_Address() + * @model containment="true" + * @generated + */ + EList
getOwns_Address(); + +} // Physical_Person diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Private_Insurance_and_Plan.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Private_Insurance_and_Plan.java new file mode 100644 index 00000000..789099c5 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Private_Insurance_and_Plan.java @@ -0,0 +1,94 @@ +/** + */ +package Taxation; + +/** + * + * A representation of the model object 'Private Insurance and Plan'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Private_Insurance_and_Plan#getCategory Category}
  • + *
  • {@link Taxation.Private_Insurance_and_Plan#getDuration_of_contract Duration of contract}
  • + *
  • {@link Taxation.Private_Insurance_and_Plan#isIs_private_insurance_and_plan_eligible_for_deduction Is private insurance and plan eligible for deduction}
  • + *
+ * + * @see Taxation.TaxationPackage#getPrivate_Insurance_and_Plan() + * @model + * @generated + */ +public interface Private_Insurance_and_Plan extends Special_Expense_DS { + /** + * Returns the value of the 'Category' attribute. + * The literals are from the enumeration {@link Taxation.Category_of_Private_Insurance_and_Plan}. + * + * + * @return the value of the 'Category' attribute. + * @see Taxation.Category_of_Private_Insurance_and_Plan + * @see #setCategory(Category_of_Private_Insurance_and_Plan) + * @see Taxation.TaxationPackage#getPrivate_Insurance_and_Plan_Category() + * @model required="true" + * @generated + */ + Category_of_Private_Insurance_and_Plan getCategory(); + + /** + * Sets the value of the '{@link Taxation.Private_Insurance_and_Plan#getCategory Category}' attribute. + * + * + * @param value the new value of the 'Category' attribute. + * @see Taxation.Category_of_Private_Insurance_and_Plan + * @see #getCategory() + * @generated + */ + void setCategory(Category_of_Private_Insurance_and_Plan value); + + /** + * Returns the value of the 'Duration of contract' attribute. + * + * + * @return the value of the 'Duration of contract' attribute. + * @see #setDuration_of_contract(int) + * @see Taxation.TaxationPackage#getPrivate_Insurance_and_Plan_Duration_of_contract() + * @model required="true" + * @generated + */ + int getDuration_of_contract(); + + /** + * Sets the value of the '{@link Taxation.Private_Insurance_and_Plan#getDuration_of_contract Duration of contract}' attribute. + * + * + * @param value the new value of the 'Duration of contract' attribute. + * @see #getDuration_of_contract() + * @generated + */ + void setDuration_of_contract(int value); + + /** + * Returns the value of the 'Is private insurance and plan eligible for deduction' attribute. + * The default value is "false". + * + * + * @return the value of the 'Is private insurance and plan eligible for deduction' attribute. + * @see #setIs_private_insurance_and_plan_eligible_for_deduction(boolean) + * @see Taxation.TaxationPackage#getPrivate_Insurance_and_Plan_Is_private_insurance_and_plan_eligible_for_deduction() + * @model default="false" required="true" derived="true" + * @generated + */ + boolean isIs_private_insurance_and_plan_eligible_for_deduction(); + + /** + * Sets the value of the '{@link Taxation.Private_Insurance_and_Plan#isIs_private_insurance_and_plan_eligible_for_deduction Is private insurance and plan eligible for deduction}' attribute. + * + * + * @param value the new value of the 'Is private insurance and plan eligible for deduction' attribute. + * @see #isIs_private_insurance_and_plan_eligible_for_deduction() + * @generated + */ + void setIs_private_insurance_and_plan_eligible_for_deduction(boolean value); + +} // Private_Insurance_and_Plan diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Professional_Expense.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Professional_Expense.java new file mode 100644 index 00000000..3dbffe88 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Professional_Expense.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Professional Expense'. + * + * + * + * @see Taxation.TaxationPackage#getProfessional_Expense() + * @model + * @generated + */ +public interface Professional_Expense extends Expense { +} // Professional_Expense diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Professional_Expenses_Deduction.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Professional_Expenses_Deduction.java new file mode 100644 index 00000000..cb994481 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Professional_Expenses_Deduction.java @@ -0,0 +1,18 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Professional Expenses Deduction'. + * + * + * + * @see Taxation.TaxationPackage#getProfessional_Expenses_Deduction() + * @model + * @generated + */ +public interface Professional_Expenses_Deduction extends EObject { +} // Professional_Expenses_Deduction diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Rentals_and_Leases_Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Rentals_and_Leases_Income.java new file mode 100644 index 00000000..00bcb2d0 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Rentals_and_Leases_Income.java @@ -0,0 +1,46 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Rentals and Leases Income'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Rentals_and_Leases_Income#isIs_periodic Is periodic}
  • + *
+ * + * @see Taxation.TaxationPackage#getRentals_and_Leases_Income() + * @model + * @generated + */ +public interface Rentals_and_Leases_Income extends Income_Type { + /** + * Returns the value of the 'Is periodic' attribute. + * The default value is "true". + * + * + * @return the value of the 'Is periodic' attribute. + * @see #setIs_periodic(boolean) + * @see Taxation.TaxationPackage#getRentals_and_Leases_Income_Is_periodic() + * @model default="true" required="true" + * @generated + */ + boolean isIs_periodic(); + + /** + * Sets the value of the '{@link Taxation.Rentals_and_Leases_Income#isIs_periodic Is periodic}' attribute. + * + * + * @param value the new value of the 'Is periodic' attribute. + * @see #isIs_periodic() + * @generated + */ + void setIs_periodic(boolean value); + +} // Rentals_and_Leases_Income diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Resident_Tax_Payer.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Resident_Tax_Payer.java new file mode 100644 index 00000000..6f529c32 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Resident_Tax_Payer.java @@ -0,0 +1,18 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Resident Tax Payer'. + * + * + * + * @see Taxation.TaxationPackage#getResident_Tax_Payer() + * @model + * @generated + */ +public interface Resident_Tax_Payer extends Tax_Payer { + +} // Resident_Tax_Payer diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Separation_Causes.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Separation_Causes.java new file mode 100644 index 00000000..da0ff733 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Separation_Causes.java @@ -0,0 +1,255 @@ +/** + */ +package Taxation; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Separation Causes', + * and utility methods for working with them. + * + * @see Taxation.TaxationPackage#getSeparation_Causes() + * @model + * @generated + */ +public enum Separation_Causes implements Enumerator { + /** + * The 'NONE' literal object. + * + * + * @see #NONE_VALUE + * @generated + * @ordered + */ + NONE(0, "NONE", "NONE"), + + /** + * The 'DIVORCE' literal object. + * + * + * @see #DIVORCE_VALUE + * @generated + * @ordered + */ + DIVORCE(1, "DIVORCE", "DIVORCE"), + + /** + * The 'SEPARATION DE FAIT' literal object. + * + * + * @see #SEPARATION_DE_FAIT_VALUE + * @generated + * @ordered + */ + SEPARATION_DE_FAIT(2, "SEPARATION_DE_FAIT", "SEPARATION_DE_FAIT"), + + /** + * The 'SEPARATION BY COURT' literal object. + * + * + * @see #SEPARATION_BY_COURT_VALUE + * @generated + * @ordered + */ + SEPARATION_BY_COURT(3, "SEPARATION_BY_COURT", "SEPARATION_BY_COURT"); + + /** + * The 'NONE' literal value. + * + * + * @see #NONE + * @model + * @generated + * @ordered + */ + public static final int NONE_VALUE = 0; + + /** + * The 'DIVORCE' literal value. + * + * + * @see #DIVORCE + * @model + * @generated + * @ordered + */ + public static final int DIVORCE_VALUE = 1; + + /** + * The 'SEPARATION DE FAIT' literal value. + * + * + * @see #SEPARATION_DE_FAIT + * @model + * @generated + * @ordered + */ + public static final int SEPARATION_DE_FAIT_VALUE = 2; + + /** + * The 'SEPARATION BY COURT' literal value. + * + * + * @see #SEPARATION_BY_COURT + * @model + * @generated + * @ordered + */ + public static final int SEPARATION_BY_COURT_VALUE = 3; + + /** + * An array of all the 'Separation Causes' enumerators. + * + * + * @generated + */ + private static final Separation_Causes[] VALUES_ARRAY = + new Separation_Causes[] { + NONE, + DIVORCE, + SEPARATION_DE_FAIT, + SEPARATION_BY_COURT, + }; + + /** + * A public read-only list of all the 'Separation Causes' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Separation Causes' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Separation_Causes get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Separation_Causes result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Separation Causes' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Separation_Causes getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Separation_Causes result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Separation Causes' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Separation_Causes get(int value) { + switch (value) { + case NONE_VALUE: return NONE; + case DIVORCE_VALUE: return DIVORCE; + case SEPARATION_DE_FAIT_VALUE: return SEPARATION_DE_FAIT; + case SEPARATION_BY_COURT_VALUE: return SEPARATION_BY_COURT; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Separation_Causes(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Separation_Causes diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Special_Expense_DS.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Special_Expense_DS.java new file mode 100644 index 00000000..0f53386f --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Special_Expense_DS.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Special Expense DS'. + * + * + * + * @see Taxation.TaxationPackage#getSpecial_Expense_DS() + * @model + * @generated + */ +public interface Special_Expense_DS extends Expense { +} // Special_Expense_DS diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Spousal_Expense_AC.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Spousal_Expense_AC.java new file mode 100644 index 00000000..07d9163a --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Spousal_Expense_AC.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Spousal Expense AC'. + * + * + * + * @see Taxation.TaxationPackage#getSpousal_Expense_AC() + * @model + * @generated + */ +public interface Spousal_Expense_AC extends Expense { +} // Spousal_Expense_AC diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card.java new file mode 100644 index 00000000..8bb5f622 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card.java @@ -0,0 +1,885 @@ +/** + */ +package Taxation; + +import java.util.Date; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Tax Card'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Tax_Card#getCard_identifier Card identifier}
  • + *
  • {@link Taxation.Tax_Card#getTax_card_type Tax card type}
  • + *
  • {@link Taxation.Tax_Card#getTax_office Tax office}
  • + *
  • {@link Taxation.Tax_Card#getValid_from_date Valid from date}
  • + *
  • {@link Taxation.Tax_Card#getValid_until_date Valid until date}
  • + *
  • {@link Taxation.Tax_Card#getPercentage_of_witholding Percentage of witholding}
  • + *
  • {@link Taxation.Tax_Card#getTax_payers_name_surname Tax payers name surname}
  • + *
  • {@link Taxation.Tax_Card#getTax_payers_partner_name_surname Tax payers partner name surname}
  • + *
  • {@link Taxation.Tax_Card#getTax_payers_address Tax payers address}
  • + *
  • {@link Taxation.Tax_Card#getJobs_Employer_SSNo Jobs Employer SS No}
  • + *
  • {@link Taxation.Tax_Card#getJobs_employers_name Jobs employers name}
  • + *
  • {@link Taxation.Tax_Card#getJobs_activity_type Jobs activity type}
  • + *
  • {@link Taxation.Tax_Card#getJobs_place_of_work Jobs place of work}
  • + *
  • {@link Taxation.Tax_Card#getDeduction_FD_daily Deduction FD daily}
  • + *
  • {@link Taxation.Tax_Card#getDeduction_FD_monthly Deduction FD monthly}
  • + *
  • {@link Taxation.Tax_Card#getDeduction_AC_daily Deduction AC daily}
  • + *
  • {@link Taxation.Tax_Card#getDeduction_AC_monthly Deduction AC monthly}
  • + *
  • {@link Taxation.Tax_Card#getDeduction_AC_yearly Deduction AC yearly}
  • + *
  • {@link Taxation.Tax_Card#getDeduction_CE_daily Deduction CE daily}
  • + *
  • {@link Taxation.Tax_Card#getDeduction_CE_monthly Deduction CE monthly}
  • + *
  • {@link Taxation.Tax_Card#getDeduction_CE_yearly Deduction CE yearly}
  • + *
  • {@link Taxation.Tax_Card#getDeduction_DS_daily Deduction DS daily}
  • + *
  • {@link Taxation.Tax_Card#getDeduction_DS_monthly Deduction DS monthly}
  • + *
  • {@link Taxation.Tax_Card#getDeduction_FO_daily Deduction FO daily}
  • + *
  • {@link Taxation.Tax_Card#getDeduction_FO_monthly Deduction FO monthly}
  • + *
  • {@link Taxation.Tax_Card#getDeduction_FO_yearly Deduction FO yearly}
  • + *
  • {@link Taxation.Tax_Card#getCredit_CIS_daily Credit CIS daily}
  • + *
  • {@link Taxation.Tax_Card#getCredit_CIS_monthly Credit CIS monthly}
  • + *
  • {@link Taxation.Tax_Card#getCredit_CIM_daily Credit CIM daily}
  • + *
  • {@link Taxation.Tax_Card#isValidity Validity}
  • + *
  • {@link Taxation.Tax_Card#getIncome_Tax_Credit Income Tax Credit}
  • + *
  • {@link Taxation.Tax_Card#getPrevious Previous}
  • + *
  • {@link Taxation.Tax_Card#getCurrent_tax_card Current tax card}
  • + *
  • {@link Taxation.Tax_Card#getCredit_CIM_yearly Credit CIM yearly}
  • + *
  • {@link Taxation.Tax_Card#getDeduction_DS_Alimony_yearly Deduction DS Alimony yearly}
  • + *
  • {@link Taxation.Tax_Card#getDeduction_DS_Debt_yearly Deduction DS Debt yearly}
  • + *
  • {@link Taxation.Tax_Card#getIncome Income}
  • + *
+ * + * @see Taxation.TaxationPackage#getTax_Card() + * @model + * @generated + */ +public interface Tax_Card extends EObject { + /** + * Returns the value of the 'Card identifier' attribute. + * + * + * @return the value of the 'Card identifier' attribute. + * @see #setCard_identifier(String) + * @see Taxation.TaxationPackage#getTax_Card_Card_identifier() + * @model id="true" + * @generated + */ + String getCard_identifier(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getCard_identifier Card identifier}' attribute. + * + * + * @param value the new value of the 'Card identifier' attribute. + * @see #getCard_identifier() + * @generated + */ + void setCard_identifier(String value); + + /** + * Returns the value of the 'Tax card type' attribute. + * The literals are from the enumeration {@link Taxation.Tax_Card_Type}. + * + * + * @return the value of the 'Tax card type' attribute. + * @see Taxation.Tax_Card_Type + * @see #setTax_card_type(Tax_Card_Type) + * @see Taxation.TaxationPackage#getTax_Card_Tax_card_type() + * @model required="true" derived="true" + * annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='if(self.income.taxPayer.incomes->size()=1) then \nTax_Card_Type::Principal\n\telse\n\t\tlet all_incomes:OrderedSet(Income)=self.income.taxPayer.incomes->select(inc:Income| inc.income_amount= self.income.taxPayer.incomes.income_amount->max())->asOrderedSet() in\n\t\tlet bigest_income:Income= all_incomes->first() in\n\t\t\t if(bigest_income=self.income) then\n\t\t\t \t Tax_Card_Type::Principal\n\t\t\t else\n\t\t\t\t\tTax_Card_Type::Additional\n\t\t\t\tendif\nendif\n\t\t\t\t'" + * @generated + */ + Tax_Card_Type getTax_card_type(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getTax_card_type Tax card type}' attribute. + * + * + * @param value the new value of the 'Tax card type' attribute. + * @see Taxation.Tax_Card_Type + * @see #getTax_card_type() + * @generated + */ + void setTax_card_type(Tax_Card_Type value); + + /** + * Returns the value of the 'Tax office' attribute. + * The literals are from the enumeration {@link Taxation.Tax_Office}. + * + * + * @return the value of the 'Tax office' attribute. + * @see Taxation.Tax_Office + * @see #setTax_office(Tax_Office) + * @see Taxation.TaxationPackage#getTax_Card_Tax_office() + * @model required="true" + * @generated + */ + Tax_Office getTax_office(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getTax_office Tax office}' attribute. + * + * + * @param value the new value of the 'Tax office' attribute. + * @see Taxation.Tax_Office + * @see #getTax_office() + * @generated + */ + void setTax_office(Tax_Office value); + + /** + * Returns the value of the 'Valid from date' attribute. + * + * + * @return the value of the 'Valid from date' attribute. + * @see #setValid_from_date(Date) + * @see Taxation.TaxationPackage#getTax_Card_Valid_from_date() + * @model unique="false" required="true" ordered="false" + * @generated + */ + Date getValid_from_date(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getValid_from_date Valid from date}' attribute. + * + * + * @param value the new value of the 'Valid from date' attribute. + * @see #getValid_from_date() + * @generated + */ + void setValid_from_date(Date value); + + /** + * Returns the value of the 'Valid until date' attribute. + * + * + * @return the value of the 'Valid until date' attribute. + * @see #setValid_until_date(Date) + * @see Taxation.TaxationPackage#getTax_Card_Valid_until_date() + * @model unique="false" required="true" ordered="false" + * @generated + */ + Date getValid_until_date(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getValid_until_date Valid until date}' attribute. + * + * + * @param value the new value of the 'Valid until date' attribute. + * @see #getValid_until_date() + * @generated + */ + void setValid_until_date(Date value); + + /** + * Returns the value of the 'Percentage of witholding' attribute. + * + * + * @return the value of the 'Percentage of witholding' attribute. + * @see #setPercentage_of_witholding(double) + * @see Taxation.TaxationPackage#getTax_Card_Percentage_of_witholding() + * @model required="true" + * @generated + */ + double getPercentage_of_witholding(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getPercentage_of_witholding Percentage of witholding}' attribute. + * + * + * @param value the new value of the 'Percentage of witholding' attribute. + * @see #getPercentage_of_witholding() + * @generated + */ + void setPercentage_of_witholding(double value); + + /** + * Returns the value of the 'Tax payers name surname' attribute list. + * The list contents are of type {@link java.lang.String}. + * + * + * @return the value of the 'Tax payers name surname' attribute list. + * @see Taxation.TaxationPackage#getTax_Card_Tax_payers_name_surname() + * @model ordered="false" + * @generated + */ + EList getTax_payers_name_surname(); + + /** + * Returns the value of the 'Tax payers partner name surname' attribute list. + * The list contents are of type {@link java.lang.String}. + * + * + * @return the value of the 'Tax payers partner name surname' attribute list. + * @see Taxation.TaxationPackage#getTax_Card_Tax_payers_partner_name_surname() + * @model ordered="false" + * @generated + */ + EList getTax_payers_partner_name_surname(); + + /** + * Returns the value of the 'Tax payers address' reference. + * + * + * @return the value of the 'Tax payers address' reference. + * @see #setTax_payers_address(Address) + * @see Taxation.TaxationPackage#getTax_Card_Tax_payers_address() + * @model + * @generated + */ + Address getTax_payers_address(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getTax_payers_address Tax payers address}' reference. + * + * + * @param value the new value of the 'Tax payers address' reference. + * @see #getTax_payers_address() + * @generated + */ + void setTax_payers_address(Address value); + + /** + * Returns the value of the 'Jobs Employer SS No' attribute. + * + * + * @return the value of the 'Jobs Employer SS No' attribute. + * @see #setJobs_Employer_SSNo(String) + * @see Taxation.TaxationPackage#getTax_Card_Jobs_Employer_SSNo() + * @model unique="false" ordered="false" + * @generated + */ + String getJobs_Employer_SSNo(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getJobs_Employer_SSNo Jobs Employer SS No}' attribute. + * + * + * @param value the new value of the 'Jobs Employer SS No' attribute. + * @see #getJobs_Employer_SSNo() + * @generated + */ + void setJobs_Employer_SSNo(String value); + + /** + * Returns the value of the 'Jobs employers name' attribute. + * + * + * @return the value of the 'Jobs employers name' attribute. + * @see #setJobs_employers_name(String) + * @see Taxation.TaxationPackage#getTax_Card_Jobs_employers_name() + * @model unique="false" ordered="false" + * @generated + */ + String getJobs_employers_name(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getJobs_employers_name Jobs employers name}' attribute. + * + * + * @param value the new value of the 'Jobs employers name' attribute. + * @see #getJobs_employers_name() + * @generated + */ + void setJobs_employers_name(String value); + + /** + * Returns the value of the 'Jobs activity type' attribute. + * The literals are from the enumeration {@link Taxation.Job_Activity}. + * + * + * @return the value of the 'Jobs activity type' attribute. + * @see Taxation.Job_Activity + * @see #setJobs_activity_type(Job_Activity) + * @see Taxation.TaxationPackage#getTax_Card_Jobs_activity_type() + * @model required="true" + * @generated + */ + Job_Activity getJobs_activity_type(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getJobs_activity_type Jobs activity type}' attribute. + * + * + * @param value the new value of the 'Jobs activity type' attribute. + * @see Taxation.Job_Activity + * @see #getJobs_activity_type() + * @generated + */ + void setJobs_activity_type(Job_Activity value); + + /** + * Returns the value of the 'Jobs place of work' attribute. + * The literals are from the enumeration {@link Taxation.Town}. + * + * + * @return the value of the 'Jobs place of work' attribute. + * @see Taxation.Town + * @see #setJobs_place_of_work(Town) + * @see Taxation.TaxationPackage#getTax_Card_Jobs_place_of_work() + * @model required="true" + * @generated + */ + Town getJobs_place_of_work(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getJobs_place_of_work Jobs place of work}' attribute. + * + * + * @param value the new value of the 'Jobs place of work' attribute. + * @see Taxation.Town + * @see #getJobs_place_of_work() + * @generated + */ + void setJobs_place_of_work(Town value); + + /** + * Returns the value of the 'Deduction FD daily' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction FD daily' attribute. + * @see #setDeduction_FD_daily(double) + * @see Taxation.TaxationPackage#getTax_Card_Deduction_FD_daily() + * @model default="0.0" unique="false" required="true" ordered="false" + * @generated + */ + double getDeduction_FD_daily(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getDeduction_FD_daily Deduction FD daily}' attribute. + * + * + * @param value the new value of the 'Deduction FD daily' attribute. + * @see #getDeduction_FD_daily() + * @generated + */ + void setDeduction_FD_daily(double value); + + /** + * Returns the value of the 'Deduction FD monthly' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction FD monthly' attribute. + * @see #setDeduction_FD_monthly(double) + * @see Taxation.TaxationPackage#getTax_Card_Deduction_FD_monthly() + * @model default="0.0" unique="false" required="true" ordered="false" + * @generated + */ + double getDeduction_FD_monthly(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getDeduction_FD_monthly Deduction FD monthly}' attribute. + * + * + * @param value the new value of the 'Deduction FD monthly' attribute. + * @see #getDeduction_FD_monthly() + * @generated + */ + void setDeduction_FD_monthly(double value); + + /** + * Returns the value of the 'Deduction AC daily' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction AC daily' attribute. + * @see #setDeduction_AC_daily(double) + * @see Taxation.TaxationPackage#getTax_Card_Deduction_AC_daily() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_AC_daily(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getDeduction_AC_daily Deduction AC daily}' attribute. + * + * + * @param value the new value of the 'Deduction AC daily' attribute. + * @see #getDeduction_AC_daily() + * @generated + */ + void setDeduction_AC_daily(double value); + + /** + * Returns the value of the 'Deduction AC monthly' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction AC monthly' attribute. + * @see #setDeduction_AC_monthly(double) + * @see Taxation.TaxationPackage#getTax_Card_Deduction_AC_monthly() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_AC_monthly(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getDeduction_AC_monthly Deduction AC monthly}' attribute. + * + * + * @param value the new value of the 'Deduction AC monthly' attribute. + * @see #getDeduction_AC_monthly() + * @generated + */ + void setDeduction_AC_monthly(double value); + + /** + * Returns the value of the 'Deduction AC yearly' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction AC yearly' attribute. + * @see #setDeduction_AC_yearly(double) + * @see Taxation.TaxationPackage#getTax_Card_Deduction_AC_yearly() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_AC_yearly(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getDeduction_AC_yearly Deduction AC yearly}' attribute. + * + * + * @param value the new value of the 'Deduction AC yearly' attribute. + * @see #getDeduction_AC_yearly() + * @generated + */ + void setDeduction_AC_yearly(double value); + + /** + * Returns the value of the 'Deduction CE daily' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction CE daily' attribute. + * @see #setDeduction_CE_daily(double) + * @see Taxation.TaxationPackage#getTax_Card_Deduction_CE_daily() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_CE_daily(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getDeduction_CE_daily Deduction CE daily}' attribute. + * + * + * @param value the new value of the 'Deduction CE daily' attribute. + * @see #getDeduction_CE_daily() + * @generated + */ + void setDeduction_CE_daily(double value); + + /** + * Returns the value of the 'Deduction CE monthly' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction CE monthly' attribute. + * @see #setDeduction_CE_monthly(double) + * @see Taxation.TaxationPackage#getTax_Card_Deduction_CE_monthly() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_CE_monthly(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getDeduction_CE_monthly Deduction CE monthly}' attribute. + * + * + * @param value the new value of the 'Deduction CE monthly' attribute. + * @see #getDeduction_CE_monthly() + * @generated + */ + void setDeduction_CE_monthly(double value); + + /** + * Returns the value of the 'Deduction CE yearly' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction CE yearly' attribute. + * @see #setDeduction_CE_yearly(double) + * @see Taxation.TaxationPackage#getTax_Card_Deduction_CE_yearly() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_CE_yearly(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getDeduction_CE_yearly Deduction CE yearly}' attribute. + * + * + * @param value the new value of the 'Deduction CE yearly' attribute. + * @see #getDeduction_CE_yearly() + * @generated + */ + void setDeduction_CE_yearly(double value); + + /** + * Returns the value of the 'Deduction DS daily' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction DS daily' attribute. + * @see #setDeduction_DS_daily(double) + * @see Taxation.TaxationPackage#getTax_Card_Deduction_DS_daily() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_DS_daily(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getDeduction_DS_daily Deduction DS daily}' attribute. + * + * + * @param value the new value of the 'Deduction DS daily' attribute. + * @see #getDeduction_DS_daily() + * @generated + */ + void setDeduction_DS_daily(double value); + + /** + * Returns the value of the 'Deduction DS monthly' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction DS monthly' attribute. + * @see #setDeduction_DS_monthly(double) + * @see Taxation.TaxationPackage#getTax_Card_Deduction_DS_monthly() + * @model default="0.0" required="true" + * @generated + */ + double getDeduction_DS_monthly(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getDeduction_DS_monthly Deduction DS monthly}' attribute. + * + * + * @param value the new value of the 'Deduction DS monthly' attribute. + * @see #getDeduction_DS_monthly() + * @generated + */ + void setDeduction_DS_monthly(double value); + + /** + * Returns the value of the 'Deduction FO daily' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction FO daily' attribute. + * @see #setDeduction_FO_daily(double) + * @see Taxation.TaxationPackage#getTax_Card_Deduction_FO_daily() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_FO_daily(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getDeduction_FO_daily Deduction FO daily}' attribute. + * + * + * @param value the new value of the 'Deduction FO daily' attribute. + * @see #getDeduction_FO_daily() + * @generated + */ + void setDeduction_FO_daily(double value); + + /** + * Returns the value of the 'Deduction FO monthly' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction FO monthly' attribute. + * @see #setDeduction_FO_monthly(double) + * @see Taxation.TaxationPackage#getTax_Card_Deduction_FO_monthly() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_FO_monthly(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getDeduction_FO_monthly Deduction FO monthly}' attribute. + * + * + * @param value the new value of the 'Deduction FO monthly' attribute. + * @see #getDeduction_FO_monthly() + * @generated + */ + void setDeduction_FO_monthly(double value); + + /** + * Returns the value of the 'Deduction FO yearly' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction FO yearly' attribute. + * @see #setDeduction_FO_yearly(double) + * @see Taxation.TaxationPackage#getTax_Card_Deduction_FO_yearly() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_FO_yearly(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getDeduction_FO_yearly Deduction FO yearly}' attribute. + * + * + * @param value the new value of the 'Deduction FO yearly' attribute. + * @see #getDeduction_FO_yearly() + * @generated + */ + void setDeduction_FO_yearly(double value); + + /** + * Returns the value of the 'Credit CIS daily' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Credit CIS daily' attribute. + * @see #setCredit_CIS_daily(double) + * @see Taxation.TaxationPackage#getTax_Card_Credit_CIS_daily() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getCredit_CIS_daily(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getCredit_CIS_daily Credit CIS daily}' attribute. + * + * + * @param value the new value of the 'Credit CIS daily' attribute. + * @see #getCredit_CIS_daily() + * @generated + */ + void setCredit_CIS_daily(double value); + + /** + * Returns the value of the 'Credit CIS monthly' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Credit CIS monthly' attribute. + * @see #setCredit_CIS_monthly(double) + * @see Taxation.TaxationPackage#getTax_Card_Credit_CIS_monthly() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getCredit_CIS_monthly(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getCredit_CIS_monthly Credit CIS monthly}' attribute. + * + * + * @param value the new value of the 'Credit CIS monthly' attribute. + * @see #getCredit_CIS_monthly() + * @generated + */ + void setCredit_CIS_monthly(double value); + + /** + * Returns the value of the 'Credit CIM daily' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Credit CIM daily' attribute. + * @see #setCredit_CIM_daily(double) + * @see Taxation.TaxationPackage#getTax_Card_Credit_CIM_daily() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getCredit_CIM_daily(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getCredit_CIM_daily Credit CIM daily}' attribute. + * + * + * @param value the new value of the 'Credit CIM daily' attribute. + * @see #getCredit_CIM_daily() + * @generated + */ + void setCredit_CIM_daily(double value); + + /** + * Returns the value of the 'Validity' attribute. + * + * + * @return the value of the 'Validity' attribute. + * @see #setValidity(boolean) + * @see Taxation.TaxationPackage#getTax_Card_Validity() + * @model required="true" + * @generated + */ + boolean isValidity(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#isValidity Validity}' attribute. + * + * + * @param value the new value of the 'Validity' attribute. + * @see #isValidity() + * @generated + */ + void setValidity(boolean value); + + /** + * Returns the value of the 'Income Tax Credit' reference list. + * The list contents are of type {@link Taxation.Income_Tax_Credit}. + * It is bidirectional and its opposite is '{@link Taxation.Income_Tax_Credit#getTaxation_Frame Taxation Frame}'. + * + * + * @return the value of the 'Income Tax Credit' reference list. + * @see Taxation.TaxationPackage#getTax_Card_Income_Tax_Credit() + * @see Taxation.Income_Tax_Credit#getTaxation_Frame + * @model opposite="taxation_Frame" ordered="false" + * @generated + */ + EList getIncome_Tax_Credit(); + + /** + * Returns the value of the 'Previous' reference. + * It is bidirectional and its opposite is '{@link Taxation.Tax_Card#getCurrent_tax_card Current tax card}'. + * + * + * @return the value of the 'Previous' reference. + * @see #setPrevious(Tax_Card) + * @see Taxation.TaxationPackage#getTax_Card_Previous() + * @see Taxation.Tax_Card#getCurrent_tax_card + * @model opposite="current_tax_card" + * @generated + */ + Tax_Card getPrevious(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getPrevious Previous}' reference. + * + * + * @param value the new value of the 'Previous' reference. + * @see #getPrevious() + * @generated + */ + void setPrevious(Tax_Card value); + + /** + * Returns the value of the 'Current tax card' reference. + * It is bidirectional and its opposite is '{@link Taxation.Tax_Card#getPrevious Previous}'. + * + * + * @return the value of the 'Current tax card' reference. + * @see #setCurrent_tax_card(Tax_Card) + * @see Taxation.TaxationPackage#getTax_Card_Current_tax_card() + * @see Taxation.Tax_Card#getPrevious + * @model opposite="previous" + * @generated + */ + Tax_Card getCurrent_tax_card(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getCurrent_tax_card Current tax card}' reference. + * + * + * @param value the new value of the 'Current tax card' reference. + * @see #getCurrent_tax_card() + * @generated + */ + void setCurrent_tax_card(Tax_Card value); + + /** + * Returns the value of the 'Credit CIM yearly' attribute. + * + * + * @return the value of the 'Credit CIM yearly' attribute. + * @see #setCredit_CIM_yearly(double) + * @see Taxation.TaxationPackage#getTax_Card_Credit_CIM_yearly() + * @model required="true" ordered="false" + * @generated + */ + double getCredit_CIM_yearly(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getCredit_CIM_yearly Credit CIM yearly}' attribute. + * + * + * @param value the new value of the 'Credit CIM yearly' attribute. + * @see #getCredit_CIM_yearly() + * @generated + */ + void setCredit_CIM_yearly(double value); + + /** + * Returns the value of the 'Deduction DS Alimony yearly' attribute. + * + * + * @return the value of the 'Deduction DS Alimony yearly' attribute. + * @see #setDeduction_DS_Alimony_yearly(double) + * @see Taxation.TaxationPackage#getTax_Card_Deduction_DS_Alimony_yearly() + * @model required="true" ordered="false" + * @generated + */ + double getDeduction_DS_Alimony_yearly(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getDeduction_DS_Alimony_yearly Deduction DS Alimony yearly}' attribute. + * + * + * @param value the new value of the 'Deduction DS Alimony yearly' attribute. + * @see #getDeduction_DS_Alimony_yearly() + * @generated + */ + void setDeduction_DS_Alimony_yearly(double value); + + /** + * Returns the value of the 'Deduction DS Debt yearly' attribute. + * + * + * @return the value of the 'Deduction DS Debt yearly' attribute. + * @see #setDeduction_DS_Debt_yearly(double) + * @see Taxation.TaxationPackage#getTax_Card_Deduction_DS_Debt_yearly() + * @model required="true" ordered="false" + * @generated + */ + double getDeduction_DS_Debt_yearly(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getDeduction_DS_Debt_yearly Deduction DS Debt yearly}' attribute. + * + * + * @param value the new value of the 'Deduction DS Debt yearly' attribute. + * @see #getDeduction_DS_Debt_yearly() + * @generated + */ + void setDeduction_DS_Debt_yearly(double value); + + /** + * Returns the value of the 'Income' container reference. + * It is bidirectional and its opposite is '{@link Taxation.Income#getTax_card Tax card}'. + * + * + * @return the value of the 'Income' container reference. + * @see #setIncome(Income) + * @see Taxation.TaxationPackage#getTax_Card_Income() + * @see Taxation.Income#getTax_card + * @model opposite="tax_card" required="true" transient="false" + * @generated + */ + Income getIncome(); + + /** + * Sets the value of the '{@link Taxation.Tax_Card#getIncome Income}' container reference. + * + * + * @param value the new value of the 'Income' container reference. + * @see #getIncome() + * @generated + */ + void setIncome(Income value); + +} // Tax_Card diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card_Type.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card_Type.java new file mode 100644 index 00000000..442c1b65 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card_Type.java @@ -0,0 +1,209 @@ +/** + */ +package Taxation; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Tax Card Type', + * and utility methods for working with them. + * + * @see Taxation.TaxationPackage#getTax_Card_Type() + * @model + * @generated + */ +public enum Tax_Card_Type implements Enumerator { + /** + * The 'Principal' literal object. + * + * + * @see #PRINCIPAL_VALUE + * @generated + * @ordered + */ + PRINCIPAL(0, "Principal", "Principal"), + + /** + * The 'Additional' literal object. + * + * + * @see #ADDITIONAL_VALUE + * @generated + * @ordered + */ + ADDITIONAL(1, "Additional", "Additional"); + + /** + * The 'Principal' literal value. + * + * + * @see #PRINCIPAL + * @model name="Principal" + * @generated + * @ordered + */ + public static final int PRINCIPAL_VALUE = 0; + + /** + * The 'Additional' literal value. + * + * + * @see #ADDITIONAL + * @model name="Additional" + * @generated + * @ordered + */ + public static final int ADDITIONAL_VALUE = 1; + + /** + * An array of all the 'Tax Card Type' enumerators. + * + * + * @generated + */ + private static final Tax_Card_Type[] VALUES_ARRAY = + new Tax_Card_Type[] { + PRINCIPAL, + ADDITIONAL, + }; + + /** + * A public read-only list of all the 'Tax Card Type' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Tax Card Type' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Tax_Card_Type get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Tax_Card_Type result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Tax Card Type' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Tax_Card_Type getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Tax_Card_Type result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Tax Card Type' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Tax_Card_Type get(int value) { + switch (value) { + case PRINCIPAL_VALUE: return PRINCIPAL; + case ADDITIONAL_VALUE: return ADDITIONAL; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Tax_Card_Type(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Tax_Card_Type diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Case.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Case.java new file mode 100644 index 00000000..eeab8f3f --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Case.java @@ -0,0 +1,18 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Tax Case'. + * + * + * + * @see Taxation.TaxationPackage#getTax_Case() + * @model interface="true" abstract="true" + * @generated + */ +public interface Tax_Case extends EObject { +} // Tax_Case diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Class_Category.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Class_Category.java new file mode 100644 index 00000000..5fc2437d --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Class_Category.java @@ -0,0 +1,232 @@ +/** + */ +package Taxation; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Tax Class Category', + * and utility methods for working with them. + * + * @see Taxation.TaxationPackage#getTax_Class_Category() + * @model + * @generated + */ +public enum Tax_Class_Category implements Enumerator { + /** + * The 'One' literal object. + * + * + * @see #ONE_VALUE + * @generated + * @ordered + */ + ONE(0, "One", "One"), + + /** + * The 'One A' literal object. + * + * + * @see #ONE_A_VALUE + * @generated + * @ordered + */ + ONE_A(1, "One_A", "One_A"), + + /** + * The 'Two' literal object. + * + * + * @see #TWO_VALUE + * @generated + * @ordered + */ + TWO(2, "Two", "Two"); + + /** + * The 'One' literal value. + * + * + * @see #ONE + * @model name="One" + * @generated + * @ordered + */ + public static final int ONE_VALUE = 0; + + /** + * The 'One A' literal value. + * + * + * @see #ONE_A + * @model name="One_A" + * @generated + * @ordered + */ + public static final int ONE_A_VALUE = 1; + + /** + * The 'Two' literal value. + * + * + * @see #TWO + * @model name="Two" + * @generated + * @ordered + */ + public static final int TWO_VALUE = 2; + + /** + * An array of all the 'Tax Class Category' enumerators. + * + * + * @generated + */ + private static final Tax_Class_Category[] VALUES_ARRAY = + new Tax_Class_Category[] { + ONE, + ONE_A, + TWO, + }; + + /** + * A public read-only list of all the 'Tax Class Category' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Tax Class Category' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Tax_Class_Category get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Tax_Class_Category result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Tax Class Category' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Tax_Class_Category getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Tax_Class_Category result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Tax Class Category' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Tax_Class_Category get(int value) { + switch (value) { + case ONE_VALUE: return ONE; + case ONE_A_VALUE: return ONE_A; + case TWO_VALUE: return TWO; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Tax_Class_Category(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Tax_Class_Category diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Office.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Office.java new file mode 100644 index 00000000..2b3969c3 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Office.java @@ -0,0 +1,255 @@ +/** + */ +package Taxation; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Tax Office', + * and utility methods for working with them. + * + * @see Taxation.TaxationPackage#getTax_Office() + * @model + * @generated + */ +public enum Tax_Office implements Enumerator { + /** + * The 'RTS 2' literal object. + * + * + * @see #RTS_2_VALUE + * @generated + * @ordered + */ + RTS_2(0, "RTS_2", "RTS_2"), + + /** + * The 'RTS 3' literal object. + * + * + * @see #RTS_3_VALUE + * @generated + * @ordered + */ + RTS_3(1, "RTS_3", "RTS_3"), + + /** + * The 'RTS 4' literal object. + * + * + * @see #RTS_4_VALUE + * @generated + * @ordered + */ + RTS_4(2, "RTS_4", "RTS_4"), + + /** + * The 'RTS 5' literal object. + * + * + * @see #RTS_5_VALUE + * @generated + * @ordered + */ + RTS_5(3, "RTS_5", "RTS_5"); + + /** + * The 'RTS 2' literal value. + * + * + * @see #RTS_2 + * @model + * @generated + * @ordered + */ + public static final int RTS_2_VALUE = 0; + + /** + * The 'RTS 3' literal value. + * + * + * @see #RTS_3 + * @model + * @generated + * @ordered + */ + public static final int RTS_3_VALUE = 1; + + /** + * The 'RTS 4' literal value. + * + * + * @see #RTS_4 + * @model + * @generated + * @ordered + */ + public static final int RTS_4_VALUE = 2; + + /** + * The 'RTS 5' literal value. + * + * + * @see #RTS_5 + * @model + * @generated + * @ordered + */ + public static final int RTS_5_VALUE = 3; + + /** + * An array of all the 'Tax Office' enumerators. + * + * + * @generated + */ + private static final Tax_Office[] VALUES_ARRAY = + new Tax_Office[] { + RTS_2, + RTS_3, + RTS_4, + RTS_5, + }; + + /** + * A public read-only list of all the 'Tax Office' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Tax Office' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Tax_Office get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Tax_Office result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Tax Office' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Tax_Office getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Tax_Office result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Tax Office' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Tax_Office get(int value) { + switch (value) { + case RTS_2_VALUE: return RTS_2; + case RTS_3_VALUE: return RTS_3; + case RTS_4_VALUE: return RTS_4; + case RTS_5_VALUE: return RTS_5; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Tax_Office(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Tax_Office diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Payer.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Payer.java new file mode 100644 index 00000000..56de04a4 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Payer.java @@ -0,0 +1,127 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'Tax Payer'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Tax_Payer#getDependents Dependents}
  • + *
  • {@link Taxation.Tax_Payer#getFrom_agent From agent}
  • + *
  • {@link Taxation.Tax_Payer#getIncomes Incomes}
  • + *
  • {@link Taxation.Tax_Payer#getFrom_law From law}
  • + *
  • {@link Taxation.Tax_Payer#getTaxesDue Taxes Due}
  • + *
+ * + * @see Taxation.TaxationPackage#getTax_Payer() + * @model abstract="true" + * annotation="duplicates" + * @generated + */ +public interface Tax_Payer extends Physical_Person, Tax_Case { + /** + * Returns the value of the 'Dependents' containment reference list. + * The list contents are of type {@link Taxation.Dependent}. + * It is bidirectional and its opposite is '{@link Taxation.Dependent#getResponsible_person Responsible person}'. + * + * + * @return the value of the 'Dependents' containment reference list. + * @see Taxation.TaxationPackage#getTax_Payer_Dependents() + * @see Taxation.Dependent#getResponsible_person + * @model opposite="responsible_person" containment="true" upper="6" ordered="false" + * @generated + */ + EList getDependents(); + + /** + * Returns the value of the 'From agent' containment reference. + * It is bidirectional and its opposite is '{@link Taxation.FromAgent#getTaxPayer Tax Payer}'. + * + * + * @return the value of the 'From agent' containment reference. + * @see #setFrom_agent(FromAgent) + * @see Taxation.TaxationPackage#getTax_Payer_From_agent() + * @see Taxation.FromAgent#getTaxPayer + * @model opposite="taxPayer" containment="true" required="true" + * @generated + */ + FromAgent getFrom_agent(); + + /** + * Sets the value of the '{@link Taxation.Tax_Payer#getFrom_agent From agent}' containment reference. + * + * + * @param value the new value of the 'From agent' containment reference. + * @see #getFrom_agent() + * @generated + */ + void setFrom_agent(FromAgent value); + + /** + * Returns the value of the 'Incomes' containment reference list. + * The list contents are of type {@link Taxation.Income}. + * It is bidirectional and its opposite is '{@link Taxation.Income#getTaxPayer Tax Payer}'. + * + * + * @return the value of the 'Incomes' containment reference list. + * @see Taxation.TaxationPackage#getTax_Payer_Incomes() + * @see Taxation.Income#getTaxPayer + * @model opposite="taxPayer" containment="true" required="true" ordered="false" + * @generated + */ + EList getIncomes(); + + /** + * Returns the value of the 'From law' containment reference. + * It is bidirectional and its opposite is '{@link Taxation.FromLaw#getTaxPayer Tax Payer}'. + * + * + * @return the value of the 'From law' containment reference. + * @see #setFrom_law(FromLaw) + * @see Taxation.TaxationPackage#getTax_Payer_From_law() + * @see Taxation.FromLaw#getTaxPayer + * @model opposite="taxPayer" containment="true" required="true" + * @generated + */ + FromLaw getFrom_law(); + + /** + * Sets the value of the '{@link Taxation.Tax_Payer#getFrom_law From law}' containment reference. + * + * + * @param value the new value of the 'From law' containment reference. + * @see #getFrom_law() + * @generated + */ + void setFrom_law(FromLaw value); + + /** + * Returns the value of the 'Taxes Due' attribute. + * + * + * @return the value of the 'Taxes Due' attribute. + * @see #setTaxesDue(double) + * @see Taxation.TaxationPackage#getTax_Payer_TaxesDue() + * @model required="true" ordered="false" + * @generated + */ + double getTaxesDue(); + + /** + * Sets the value of the '{@link Taxation.Tax_Payer#getTaxesDue Taxes Due}' attribute. + * + * + * @param value the new value of the 'Taxes Due' attribute. + * @see #getTaxesDue() + * @generated + */ + void setTaxesDue(double value); + +} // Tax_Payer diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Property.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Property.java new file mode 100644 index 00000000..25c2d51a --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Property.java @@ -0,0 +1,94 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Tax Property'. + * + * + *

+ * The following features are supported: + *

+ *
    + *
  • {@link Taxation.Tax_Property#getStarting_year Starting year}
  • + *
  • {@link Taxation.Tax_Property#getId10 Id10}
  • + *
  • {@link Taxation.Tax_Property#getUnion_record Union record}
  • + *
+ * + * @see Taxation.TaxationPackage#getTax_Property() + * @model + * @generated + */ +public interface Tax_Property extends EObject { + /** + * Returns the value of the 'Starting year' attribute. + * + * + * @return the value of the 'Starting year' attribute. + * @see #setStarting_year(int) + * @see Taxation.TaxationPackage#getTax_Property_Starting_year() + * @model required="true" ordered="false" + * @generated + */ + int getStarting_year(); + + /** + * Sets the value of the '{@link Taxation.Tax_Property#getStarting_year Starting year}' attribute. + * + * + * @param value the new value of the 'Starting year' attribute. + * @see #getStarting_year() + * @generated + */ + void setStarting_year(int value); + + /** + * Returns the value of the 'Id10' attribute. + * + * + * @return the value of the 'Id10' attribute. + * @see #setId10(String) + * @see Taxation.TaxationPackage#getTax_Property_Id10() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId10(); + + /** + * Sets the value of the '{@link Taxation.Tax_Property#getId10 Id10}' attribute. + * + * + * @param value the new value of the 'Id10' attribute. + * @see #getId10() + * @generated + */ + void setId10(String value); + + /** + * Returns the value of the 'Union record' container reference. + * It is bidirectional and its opposite is '{@link Taxation.Legal_Union_Record#getProperties Properties}'. + * + * + * @return the value of the 'Union record' container reference. + * @see #setUnion_record(Legal_Union_Record) + * @see Taxation.TaxationPackage#getTax_Property_Union_record() + * @see Taxation.Legal_Union_Record#getProperties + * @model opposite="properties" required="true" transient="false" ordered="false" + * @generated + */ + Legal_Union_Record getUnion_record(); + + /** + * Sets the value of the '{@link Taxation.Tax_Property#getUnion_record Union record}' container reference. + * + * + * @param value the new value of the 'Union record' container reference. + * @see #getUnion_record() + * @generated + */ + void setUnion_record(Legal_Union_Record value); + +} // Tax_Property diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/TaxationFactory.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/TaxationFactory.java new file mode 100644 index 00000000..cdf29fd9 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/TaxationFactory.java @@ -0,0 +1,501 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.ecore.EFactory; + +/** + * + * The Factory for the model. + * It provides a create method for each non-abstract class of the model. + * + * @see Taxation.TaxationPackage + * @generated + */ +public interface TaxationFactory extends EFactory { + /** + * The singleton instance of the factory. + * + * + * @generated + */ + TaxationFactory eINSTANCE = Taxation.impl.TaxationFactoryImpl.init(); + + /** + * Returns a new object of class 'Income Tax'. + * + * + * @return a new object of class 'Income Tax'. + * @generated + */ + Income_Tax createIncome_Tax(); + + /** + * Returns a new object of class 'Physical Person'. + * + * + * @return a new object of class 'Physical Person'. + * @generated + */ + Physical_Person createPhysical_Person(); + + /** + * Returns a new object of class 'Address'. + * + * + * @return a new object of class 'Address'. + * @generated + */ + Address createAddress(); + + /** + * Returns a new object of class 'Expense'. + * + * + * @return a new object of class 'Expense'. + * @generated + */ + Expense createExpense(); + + /** + * Returns a new object of class 'Dependent'. + * + * + * @return a new object of class 'Dependent'. + * @generated + */ + Dependent createDependent(); + + /** + * Returns a new object of class 'External Allowance'. + * + * + * @return a new object of class 'External Allowance'. + * @generated + */ + External_Allowance createExternal_Allowance(); + + /** + * Returns a new object of class 'Household'. + * + * + * @return a new object of class 'Household'. + * @generated + */ + Household createHousehold(); + + /** + * Returns a new object of class 'Tax Property'. + * + * + * @return a new object of class 'Tax Property'. + * @generated + */ + Tax_Property createTax_Property(); + + /** + * Returns a new object of class 'From Agent'. + * + * + * @return a new object of class 'From Agent'. + * @generated + */ + FromAgent createFromAgent(); + + /** + * Returns a new object of class 'Tax Card'. + * + * + * @return a new object of class 'Tax Card'. + * @generated + */ + Tax_Card createTax_Card(); + + /** + * Returns a new object of class 'Income Tax Credit'. + * + * + * @return a new object of class 'Income Tax Credit'. + * @generated + */ + Income_Tax_Credit createIncome_Tax_Credit(); + + /** + * Returns a new object of class 'Income Detail'. + * + * + * @return a new object of class 'Income Detail'. + * @generated + */ + Income_Detail createIncome_Detail(); + + /** + * Returns a new object of class 'From Law'. + * + * + * @return a new object of class 'From Law'. + * @generated + */ + FromLaw createFromLaw(); + + /** + * Returns a new object of class 'Fiscal Address'. + * + * + * @return a new object of class 'Fiscal Address'. + * @generated + */ + Fiscal_Address createFiscal_Address(); + + /** + * Returns a new object of class 'Habitual Address'. + * + * + * @return a new object of class 'Habitual Address'. + * @generated + */ + Habitual_Address createHabitual_Address(); + + /** + * Returns a new object of class 'Marriage Record'. + * + * + * @return a new object of class 'Marriage Record'. + * @generated + */ + Marriage_Record createMarriage_Record(); + + /** + * Returns a new object of class 'Non Resident Tax Payer'. + * + * + * @return a new object of class 'Non Resident Tax Payer'. + * @generated + */ + Non_Resident_Tax_Payer createNon_Resident_Tax_Payer(); + + /** + * Returns a new object of class 'Partnership Record'. + * + * + * @return a new object of class 'Partnership Record'. + * @generated + */ + Partnership_Record createPartnership_Record(); + + /** + * Returns a new object of class 'Resident Tax Payer'. + * + * + * @return a new object of class 'Resident Tax Payer'. + * @generated + */ + Resident_Tax_Payer createResident_Tax_Payer(); + + /** + * Returns a new object of class 'Trade and Business Income'. + * + * + * @return a new object of class 'Trade and Business Income'. + * @generated + */ + Trade_and_Business_Income createTrade_and_Business_Income(); + + /** + * Returns a new object of class 'Agriculture and Forestry Income'. + * + * + * @return a new object of class 'Agriculture and Forestry Income'. + * @generated + */ + Agriculture_and_Forestry_Income createAgriculture_and_Forestry_Income(); + + /** + * Returns a new object of class 'Pensions and Annuities Income'. + * + * + * @return a new object of class 'Pensions and Annuities Income'. + * @generated + */ + Pensions_and_Annuities_Income createPensions_and_Annuities_Income(); + + /** + * Returns a new object of class 'Capital and Investments Income'. + * + * + * @return a new object of class 'Capital and Investments Income'. + * @generated + */ + Capital_and_Investments_Income createCapital_and_Investments_Income(); + + /** + * Returns a new object of class 'Employment Income'. + * + * + * @return a new object of class 'Employment Income'. + * @generated + */ + Employment_Income createEmployment_Income(); + + /** + * Returns a new object of class 'Rentals and Leases Income'. + * + * + * @return a new object of class 'Rentals and Leases Income'. + * @generated + */ + Rentals_and_Leases_Income createRentals_and_Leases_Income(); + + /** + * Returns a new object of class 'Foreign Income'. + * + * + * @return a new object of class 'Foreign Income'. + * @generated + */ + Foreign_Income createForeign_Income(); + + /** + * Returns a new object of class 'Local Income'. + * + * + * @return a new object of class 'Local Income'. + * @generated + */ + Local_Income createLocal_Income(); + + /** + * Returns a new object of class 'CIM'. + * + * + * @return a new object of class 'CIM'. + * @generated + */ + CIM createCIM(); + + /** + * Returns a new object of class 'CIP'. + * + * + * @return a new object of class 'CIP'. + * @generated + */ + CIP createCIP(); + + /** + * Returns a new object of class 'CIS'. + * + * + * @return a new object of class 'CIS'. + * @generated + */ + CIS createCIS(); + + /** + * Returns a new object of class 'FD'. + * + * + * @return a new object of class 'FD'. + * @generated + */ + FD createFD(); + + /** + * Returns a new object of class 'Professional Expenses Deduction'. + * + * + * @return a new object of class 'Professional Expenses Deduction'. + * @generated + */ + Professional_Expenses_Deduction createProfessional_Expenses_Deduction(); + + /** + * Returns a new object of class 'FO'. + * + * + * @return a new object of class 'FO'. + * @generated + */ + FO createFO(); + + /** + * Returns a new object of class 'DS for Permanent Expense'. + * + * + * @return a new object of class 'DS for Permanent Expense'. + * @generated + */ + DS_for_Permanent_Expense createDS_for_Permanent_Expense(); + + /** + * Returns a new object of class 'DS'. + * + * + * @return a new object of class 'DS'. + * @generated + */ + DS createDS(); + + /** + * Returns a new object of class 'DS for Interest Expense'. + * + * + * @return a new object of class 'DS for Interest Expense'. + * @generated + */ + DS_for_Interest_Expense createDS_for_Interest_Expense(); + + /** + * Returns a new object of class 'DS for Health and Pension Insurance'. + * + * + * @return a new object of class 'DS for Health and Pension Insurance'. + * @generated + */ + DS_for_Health_and_Pension_Insurance createDS_for_Health_and_Pension_Insurance(); + + /** + * Returns a new object of class 'DS for Private Insurance and Plan'. + * + * + * @return a new object of class 'DS for Private Insurance and Plan'. + * @generated + */ + DS_for_Private_Insurance_and_Plan createDS_for_Private_Insurance_and_Plan(); + + /** + * Returns a new object of class 'DS for Loss Carryforward'. + * + * + * @return a new object of class 'DS for Loss Carryforward'. + * @generated + */ + DS_for_Loss_Carryforward createDS_for_Loss_Carryforward(); + + /** + * Returns a new object of class 'DS for Donation'. + * + * + * @return a new object of class 'DS for Donation'. + * @generated + */ + DS_for_Donation createDS_for_Donation(); + + /** + * Returns a new object of class 'Permanent Expense'. + * + * + * @return a new object of class 'Permanent Expense'. + * @generated + */ + Permanent_Expense createPermanent_Expense(); + + /** + * Returns a new object of class 'Special Expense DS'. + * + * + * @return a new object of class 'Special Expense DS'. + * @generated + */ + Special_Expense_DS createSpecial_Expense_DS(); + + /** + * Returns a new object of class 'Interest Expense'. + * + * + * @return a new object of class 'Interest Expense'. + * @generated + */ + Interest_Expense createInterest_Expense(); + + /** + * Returns a new object of class 'Private Insurance and Plan'. + * + * + * @return a new object of class 'Private Insurance and Plan'. + * @generated + */ + Private_Insurance_and_Plan createPrivate_Insurance_and_Plan(); + + /** + * Returns a new object of class 'Health and Pension Insurance'. + * + * + * @return a new object of class 'Health and Pension Insurance'. + * @generated + */ + Health_and_Pension_Insurance createHealth_and_Pension_Insurance(); + + /** + * Returns a new object of class 'Donation'. + * + * + * @return a new object of class 'Donation'. + * @generated + */ + Donation createDonation(); + + /** + * Returns a new object of class 'Loss Carryforward'. + * + * + * @return a new object of class 'Loss Carryforward'. + * @generated + */ + Loss_Carryforward createLoss_Carryforward(); + + /** + * Returns a new object of class 'Spousal Expense AC'. + * + * + * @return a new object of class 'Spousal Expense AC'. + * @generated + */ + Spousal_Expense_AC createSpousal_Expense_AC(); + + /** + * Returns a new object of class 'Extraordinary Expense CE'. + * + * + * @return a new object of class 'Extraordinary Expense CE'. + * @generated + */ + Extraordinary_Expense_CE createExtraordinary_Expense_CE(); + + /** + * Returns a new object of class 'Travel Expense FD'. + * + * + * @return a new object of class 'Travel Expense FD'. + * @generated + */ + Travel_Expense_FD createTravel_Expense_FD(); + + /** + * Returns a new object of class 'Professional Expense'. + * + * + * @return a new object of class 'Professional Expense'. + * @generated + */ + Professional_Expense createProfessional_Expense(); + + /** + * Returns a new object of class 'Miscellaneous Expense FO'. + * + * + * @return a new object of class 'Miscellaneous Expense FO'. + * @generated + */ + Miscellaneous_Expense_FO createMiscellaneous_Expense_FO(); + + /** + * Returns the package supported by this factory. + * + * + * @return the package supported by this factory. + * @generated + */ + TaxationPackage getTaxationPackage(); + +} //TaxationFactory diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/TaxationPackage.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/TaxationPackage.java new file mode 100644 index 00000000..260e296f --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/TaxationPackage.java @@ -0,0 +1,10961 @@ +/** + */ +package Taxation; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EEnum; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +/** + * + * The Package for the model. + * It contains accessors for the meta objects to represent + *
    + *
  • each class,
  • + *
  • each feature of each class,
  • + *
  • each operation of each class,
  • + *
  • each enum,
  • + *
  • and each data type
  • + *
+ * + * @see Taxation.TaxationFactory + * @model kind="package" + * annotation="http://www.eclipse.org/OCL/Import ecore='http://www.eclipse.org/emf/2002/Ecore'" + * @generated + */ +public interface TaxationPackage extends EPackage { + /** + * The package name. + * + * + * @generated + */ + String eNAME = "Taxation"; + + /** + * The package namespace URI. + * + * + * @generated + */ + String eNS_URI = "http:///TaxCard.ecore"; + + /** + * The package namespace name. + * + * + * @generated + */ + String eNS_PREFIX = "TaxCard"; + + /** + * The singleton instance of the package. + * + * + * @generated + */ + TaxationPackage eINSTANCE = Taxation.impl.TaxationPackageImpl.init(); + + /** + * The meta object id for the '{@link Taxation.impl.ConstantsImpl Constants}' class. + * + * + * @see Taxation.impl.ConstantsImpl + * @see Taxation.impl.TaxationPackageImpl#getConstants() + * @generated + */ + int CONSTANTS = 0; + + /** + * The feature id for the 'MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD = 0; + + /** + * The feature id for the 'MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE = 1; + + /** + * The feature id for the 'MINIMUM SALARY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MINIMUM_SALARY = 2; + + /** + * The feature id for the 'FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION = 3; + + /** + * The feature id for the 'MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS = 4; + + /** + * The feature id for the 'MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS = 5; + + /** + * The feature id for the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC = 6; + + /** + * The feature id for the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE = 7; + + /** + * The feature id for the 'MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = 8; + + /** + * The feature id for the 'MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = 9; + + /** + * The feature id for the 'MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = 10; + + /** + * The feature id for the 'FLAT RATE CIM DAILY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_CIM_DAILY = 11; + + /** + * The feature id for the 'FLAT RATE CIM MONTHLY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_CIM_MONTHLY = 12; + + /** + * The feature id for the 'FLAT RATE CIM YEARLY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_CIM_YEARLY = 13; + + /** + * The feature id for the 'FLAT RATE CIP DAILY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_CIP_DAILY = 14; + + /** + * The feature id for the 'FLAT RATE CIP MONTHLY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_CIP_MONTHLY = 15; + + /** + * The feature id for the 'FLAT RATE CIP YEARLY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_CIP_YEARLY = 16; + + /** + * The feature id for the 'FLAT RATE CIS DAILY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_CIS_DAILY = 17; + + /** + * The feature id for the 'FLAT RATE CIS MONTHLY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_CIS_MONTHLY = 18; + + /** + * The feature id for the 'FLAT RATE CIS YEARLY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_CIS_YEARLY = 19; + + /** + * The feature id for the 'FLAT RATE FOR TRAVEL EXPENSE PER UNIT' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT = 20; + + /** + * The feature id for the 'MAXIMUM DEDUCTIBLE AMOUNT FOR DS' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS = 21; + + /** + * The feature id for the 'FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE = 22; + + /** + * The feature id for the 'DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE = 23; + + /** + * The feature id for the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE = 24; + + /** + * The number of structural features of the 'Constants' class. + * + * + * @generated + * @ordered + */ + int CONSTANTS_FEATURE_COUNT = 25; + + /** + * The number of operations of the 'Constants' class. + * + * + * @generated + * @ordered + */ + int CONSTANTS_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link Taxation.impl.Income_TaxImpl Income Tax}' class. + * + * + * @see Taxation.impl.Income_TaxImpl + * @see Taxation.impl.TaxationPackageImpl#getIncome_Tax() + * @generated + */ + int INCOME_TAX = 1; + + /** + * The feature id for the 'Tax Payer' reference. + * + * + * @generated + * @ordered + */ + int INCOME_TAX__TAX_PAYER = 0; + + /** + * The feature id for the 'Tax amount' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TAX__TAX_AMOUNT = 1; + + /** + * The feature id for the 'Tax year' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TAX__TAX_YEAR = 2; + + /** + * The feature id for the 'Id6' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TAX__ID6 = 3; + + /** + * The number of structural features of the 'Income Tax' class. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_FEATURE_COUNT = 4; + + /** + * The number of operations of the 'Income Tax' class. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link Taxation.impl.Physical_PersonImpl Physical Person}' class. + * + * + * @see Taxation.impl.Physical_PersonImpl + * @see Taxation.impl.TaxationPackageImpl#getPhysical_Person() + * @generated + */ + int PHYSICAL_PERSON = 3; + + /** + * The feature id for the 'Is assisting spouse' attribute. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__IS_ASSISTING_SPOUSE = 0; + + /** + * The feature id for the 'SS No' attribute. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__SS_NO = 1; + + /** + * The feature id for the 'Addresses' reference list. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__ADDRESSES = 2; + + /** + * The feature id for the 'Birth year' attribute. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__BIRTH_YEAR = 3; + + /** + * The feature id for the 'Disability percentage' attribute. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__DISABILITY_PERCENTAGE = 4; + + /** + * The feature id for the 'Disability type' attribute. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__DISABILITY_TYPE = 5; + + /** + * The feature id for the 'Is affiliated personnaly to social security' attribute. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY = 6; + + /** + * The feature id for the 'Birth month' attribute. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__BIRTH_MONTH = 7; + + /** + * The feature id for the 'Birth day' attribute. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__BIRTH_DAY = 8; + + /** + * The feature id for the 'Expenses' reference list. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__EXPENSES = 9; + + /** + * The feature id for the 'Is widower' attribute. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__IS_WIDOWER = 10; + + /** + * The feature id for the 'Owns Address' containment reference list. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__OWNS_ADDRESS = 11; + + /** + * The number of structural features of the 'Physical Person' class. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON_FEATURE_COUNT = 12; + + /** + * The number of operations of the 'Physical Person' class. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link Taxation.impl.Tax_PayerImpl Tax Payer}' class. + * + * + * @see Taxation.impl.Tax_PayerImpl + * @see Taxation.impl.TaxationPackageImpl#getTax_Payer() + * @generated + */ + int TAX_PAYER = 2; + + /** + * The feature id for the 'Is assisting spouse' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__IS_ASSISTING_SPOUSE = PHYSICAL_PERSON__IS_ASSISTING_SPOUSE; + + /** + * The feature id for the 'SS No' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__SS_NO = PHYSICAL_PERSON__SS_NO; + + /** + * The feature id for the 'Addresses' reference list. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__ADDRESSES = PHYSICAL_PERSON__ADDRESSES; + + /** + * The feature id for the 'Birth year' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__BIRTH_YEAR = PHYSICAL_PERSON__BIRTH_YEAR; + + /** + * The feature id for the 'Disability percentage' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__DISABILITY_PERCENTAGE = PHYSICAL_PERSON__DISABILITY_PERCENTAGE; + + /** + * The feature id for the 'Disability type' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__DISABILITY_TYPE = PHYSICAL_PERSON__DISABILITY_TYPE; + + /** + * The feature id for the 'Is affiliated personnaly to social security' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY = PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY; + + /** + * The feature id for the 'Birth month' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__BIRTH_MONTH = PHYSICAL_PERSON__BIRTH_MONTH; + + /** + * The feature id for the 'Birth day' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__BIRTH_DAY = PHYSICAL_PERSON__BIRTH_DAY; + + /** + * The feature id for the 'Expenses' reference list. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__EXPENSES = PHYSICAL_PERSON__EXPENSES; + + /** + * The feature id for the 'Is widower' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__IS_WIDOWER = PHYSICAL_PERSON__IS_WIDOWER; + + /** + * The feature id for the 'Owns Address' containment reference list. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__OWNS_ADDRESS = PHYSICAL_PERSON__OWNS_ADDRESS; + + /** + * The feature id for the 'Dependents' containment reference list. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__DEPENDENTS = PHYSICAL_PERSON_FEATURE_COUNT + 0; + + /** + * The feature id for the 'From agent' containment reference. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__FROM_AGENT = PHYSICAL_PERSON_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Incomes' containment reference list. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__INCOMES = PHYSICAL_PERSON_FEATURE_COUNT + 2; + + /** + * The feature id for the 'From law' containment reference. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__FROM_LAW = PHYSICAL_PERSON_FEATURE_COUNT + 3; + + /** + * The feature id for the 'Taxes Due' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__TAXES_DUE = PHYSICAL_PERSON_FEATURE_COUNT + 4; + + /** + * The number of structural features of the 'Tax Payer' class. + * + * + * @generated + * @ordered + */ + int TAX_PAYER_FEATURE_COUNT = PHYSICAL_PERSON_FEATURE_COUNT + 5; + + /** + * The number of operations of the 'Tax Payer' class. + * + * + * @generated + * @ordered + */ + int TAX_PAYER_OPERATION_COUNT = PHYSICAL_PERSON_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.AddressImpl Address}' class. + * + * + * @see Taxation.impl.AddressImpl + * @see Taxation.impl.TaxationPackageImpl#getAddress() + * @generated + */ + int ADDRESS = 4; + + /** + * The feature id for the 'Country' attribute. + * + * + * @generated + * @ordered + */ + int ADDRESS__COUNTRY = 0; + + /** + * The feature id for the 'Street' attribute. + * + * + * @generated + * @ordered + */ + int ADDRESS__STREET = 1; + + /** + * The feature id for the 'Zip Code' attribute. + * + * + * @generated + * @ordered + */ + int ADDRESS__ZIP_CODE = 2; + + /** + * The feature id for the 'City' attribute. + * + * + * @generated + * @ordered + */ + int ADDRESS__CITY = 3; + + /** + * The feature id for the 'Id2' attribute. + * + * + * @generated + * @ordered + */ + int ADDRESS__ID2 = 4; + + /** + * The feature id for the 'Tax Payer' reference list. + * + * + * @generated + * @ordered + */ + int ADDRESS__TAX_PAYER = 5; + + /** + * The number of structural features of the 'Address' class. + * + * + * @generated + * @ordered + */ + int ADDRESS_FEATURE_COUNT = 6; + + /** + * The number of operations of the 'Address' class. + * + * + * @generated + * @ordered + */ + int ADDRESS_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link Taxation.impl.ExpenseImpl Expense}' class. + * + * + * @see Taxation.impl.ExpenseImpl + * @see Taxation.impl.TaxationPackageImpl#getExpense() + * @generated + */ + int EXPENSE = 5; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int EXPENSE__DECLARED_AMOUNT = 0; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int EXPENSE__EXPENSE_PURPOSE = 1; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int EXPENSE__DEPENDENT = 2; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int EXPENSE__FROM_AGENT = 3; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int EXPENSE__INCOME = 4; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int EXPENSE__ID4 = 5; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int EXPENSE__BENEFICIARY = 6; + + /** + * The number of structural features of the 'Expense' class. + * + * + * @generated + * @ordered + */ + int EXPENSE_FEATURE_COUNT = 7; + + /** + * The number of operations of the 'Expense' class. + * + * + * @generated + * @ordered + */ + int EXPENSE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link Taxation.impl.DependentImpl Dependent}' class. + * + * + * @see Taxation.impl.DependentImpl + * @see Taxation.impl.TaxationPackageImpl#getDependent() + * @generated + */ + int DEPENDENT = 6; + + /** + * The feature id for the 'Is assisting spouse' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__IS_ASSISTING_SPOUSE = PHYSICAL_PERSON__IS_ASSISTING_SPOUSE; + + /** + * The feature id for the 'SS No' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__SS_NO = PHYSICAL_PERSON__SS_NO; + + /** + * The feature id for the 'Addresses' reference list. + * + * + * @generated + * @ordered + */ + int DEPENDENT__ADDRESSES = PHYSICAL_PERSON__ADDRESSES; + + /** + * The feature id for the 'Birth year' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__BIRTH_YEAR = PHYSICAL_PERSON__BIRTH_YEAR; + + /** + * The feature id for the 'Disability percentage' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__DISABILITY_PERCENTAGE = PHYSICAL_PERSON__DISABILITY_PERCENTAGE; + + /** + * The feature id for the 'Disability type' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__DISABILITY_TYPE = PHYSICAL_PERSON__DISABILITY_TYPE; + + /** + * The feature id for the 'Is affiliated personnaly to social security' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY = PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY; + + /** + * The feature id for the 'Birth month' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__BIRTH_MONTH = PHYSICAL_PERSON__BIRTH_MONTH; + + /** + * The feature id for the 'Birth day' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__BIRTH_DAY = PHYSICAL_PERSON__BIRTH_DAY; + + /** + * The feature id for the 'Expenses' reference list. + * + * + * @generated + * @ordered + */ + int DEPENDENT__EXPENSES = PHYSICAL_PERSON__EXPENSES; + + /** + * The feature id for the 'Is widower' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__IS_WIDOWER = PHYSICAL_PERSON__IS_WIDOWER; + + /** + * The feature id for the 'Owns Address' containment reference list. + * + * + * @generated + * @ordered + */ + int DEPENDENT__OWNS_ADDRESS = PHYSICAL_PERSON__OWNS_ADDRESS; + + /** + * The feature id for the 'Dependent type' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__DEPENDENT_TYPE = PHYSICAL_PERSON_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Responsible person' container reference. + * + * + * @generated + * @ordered + */ + int DEPENDENT__RESPONSIBLE_PERSON = PHYSICAL_PERSON_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Continued studies' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__CONTINUED_STUDIES = PHYSICAL_PERSON_FEATURE_COUNT + 2; + + /** + * The feature id for the 'Allowances' containment reference. + * + * + * @generated + * @ordered + */ + int DEPENDENT__ALLOWANCES = PHYSICAL_PERSON_FEATURE_COUNT + 3; + + /** + * The feature id for the 'Household' container reference. + * + * + * @generated + * @ordered + */ + int DEPENDENT__HOUSEHOLD = PHYSICAL_PERSON_FEATURE_COUNT + 4; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int DEPENDENT__FROM_AGENT = PHYSICAL_PERSON_FEATURE_COUNT + 5; + + /** + * The feature id for the 'Expense' reference list. + * + * + * @generated + * @ordered + */ + int DEPENDENT__EXPENSE = PHYSICAL_PERSON_FEATURE_COUNT + 6; + + /** + * The number of structural features of the 'Dependent' class. + * + * + * @generated + * @ordered + */ + int DEPENDENT_FEATURE_COUNT = PHYSICAL_PERSON_FEATURE_COUNT + 7; + + /** + * The number of operations of the 'Dependent' class. + * + * + * @generated + * @ordered + */ + int DEPENDENT_OPERATION_COUNT = PHYSICAL_PERSON_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.External_AllowanceImpl External Allowance}' class. + * + * + * @see Taxation.impl.External_AllowanceImpl + * @see Taxation.impl.TaxationPackageImpl#getExternal_Allowance() + * @generated + */ + int EXTERNAL_ALLOWANCE = 7; + + /** + * The feature id for the 'Amount' attribute. + * + * + * @generated + * @ordered + */ + int EXTERNAL_ALLOWANCE__AMOUNT = 0; + + /** + * The feature id for the 'Grantor' attribute. + * + * + * @generated + * @ordered + */ + int EXTERNAL_ALLOWANCE__GRANTOR = 1; + + /** + * The feature id for the 'Starting year' attribute. + * + * + * @generated + * @ordered + */ + int EXTERNAL_ALLOWANCE__STARTING_YEAR = 2; + + /** + * The feature id for the 'Ending year' attribute. + * + * + * @generated + * @ordered + */ + int EXTERNAL_ALLOWANCE__ENDING_YEAR = 3; + + /** + * The feature id for the 'Reciver' reference. + * + * + * @generated + * @ordered + */ + int EXTERNAL_ALLOWANCE__RECIVER = 4; + + /** + * The feature id for the 'Id5' attribute. + * + * + * @generated + * @ordered + */ + int EXTERNAL_ALLOWANCE__ID5 = 5; + + /** + * The feature id for the 'Person' container reference. + * + * + * @generated + * @ordered + */ + int EXTERNAL_ALLOWANCE__PERSON = 6; + + /** + * The number of structural features of the 'External Allowance' class. + * + * + * @generated + * @ordered + */ + int EXTERNAL_ALLOWANCE_FEATURE_COUNT = 7; + + /** + * The number of operations of the 'External Allowance' class. + * + * + * @generated + * @ordered + */ + int EXTERNAL_ALLOWANCE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link Taxation.Tax_Case Tax Case}' class. + * + * + * @see Taxation.Tax_Case + * @see Taxation.impl.TaxationPackageImpl#getTax_Case() + * @generated + */ + int TAX_CASE = 11; + + /** + * The number of structural features of the 'Tax Case' class. + * + * + * @generated + * @ordered + */ + int TAX_CASE_FEATURE_COUNT = 0; + + /** + * The number of operations of the 'Tax Case' class. + * + * + * @generated + * @ordered + */ + int TAX_CASE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link Taxation.impl.HouseholdImpl Household}' class. + * + * + * @see Taxation.impl.HouseholdImpl + * @see Taxation.impl.TaxationPackageImpl#getHousehold() + * @generated + */ + int HOUSEHOLD = 8; + + /** + * The feature id for the 'Parents' containment reference. + * + * + * @generated + * @ordered + */ + int HOUSEHOLD__PARENTS = TAX_CASE_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Id1' attribute. + * + * + * @generated + * @ordered + */ + int HOUSEHOLD__ID1 = TAX_CASE_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Children' containment reference list. + * + * + * @generated + * @ordered + */ + int HOUSEHOLD__CHILDREN = TAX_CASE_FEATURE_COUNT + 2; + + /** + * The number of structural features of the 'Household' class. + * + * + * @generated + * @ordered + */ + int HOUSEHOLD_FEATURE_COUNT = TAX_CASE_FEATURE_COUNT + 3; + + /** + * The number of operations of the 'Household' class. + * + * + * @generated + * @ordered + */ + int HOUSEHOLD_OPERATION_COUNT = TAX_CASE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Legal_Union_RecordImpl Legal Union Record}' class. + * + * + * @see Taxation.impl.Legal_Union_RecordImpl + * @see Taxation.impl.TaxationPackageImpl#getLegal_Union_Record() + * @generated + */ + int LEGAL_UNION_RECORD = 9; + + /** + * The feature id for the 'Start year' attribute. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD__START_YEAR = 0; + + /** + * The feature id for the 'End year' attribute. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD__END_YEAR = 1; + + /** + * The feature id for the 'Separation cause' attribute. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD__SEPARATION_CAUSE = 2; + + /** + * The feature id for the 'Individual A' containment reference. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD__INDIVIDUAL_A = 3; + + /** + * The feature id for the 'Individual B' containment reference list. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD__INDIVIDUAL_B = 4; + + /** + * The feature id for the 'Properties' containment reference list. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD__PROPERTIES = 5; + + /** + * The feature id for the 'Mutual agreement' attribute. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD__MUTUAL_AGREEMENT = 6; + + /** + * The feature id for the 'Id9' attribute. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD__ID9 = 7; + + /** + * The feature id for the 'Household' container reference. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD__HOUSEHOLD = 8; + + /** + * The number of structural features of the 'Legal Union Record' class. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD_FEATURE_COUNT = 9; + + /** + * The number of operations of the 'Legal Union Record' class. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link Taxation.impl.Tax_PropertyImpl Tax Property}' class. + * + * + * @see Taxation.impl.Tax_PropertyImpl + * @see Taxation.impl.TaxationPackageImpl#getTax_Property() + * @generated + */ + int TAX_PROPERTY = 10; + + /** + * The feature id for the 'Starting year' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PROPERTY__STARTING_YEAR = 0; + + /** + * The feature id for the 'Id10' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PROPERTY__ID10 = 1; + + /** + * The feature id for the 'Union record' container reference. + * + * + * @generated + * @ordered + */ + int TAX_PROPERTY__UNION_RECORD = 2; + + /** + * The number of structural features of the 'Tax Property' class. + * + * + * @generated + * @ordered + */ + int TAX_PROPERTY_FEATURE_COUNT = 3; + + /** + * The number of operations of the 'Tax Property' class. + * + * + * @generated + * @ordered + */ + int TAX_PROPERTY_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link Taxation.impl.FromAgentImpl From Agent}' class. + * + * + * @see Taxation.impl.FromAgentImpl + * @see Taxation.impl.TaxationPackageImpl#getFromAgent() + * @generated + */ + int FROM_AGENT = 12; + + /** + * The feature id for the 'Tax Payer' container reference. + * + * + * @generated + * @ordered + */ + int FROM_AGENT__TAX_PAYER = 0; + + /** + * The feature id for the 'Is dependent eligible for CE Not In Houshold Children Care' attribute. + * + * + * @generated + * @ordered + */ + int FROM_AGENT__IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE = 1; + + /** + * The feature id for the 'Expense' reference. + * + * + * @generated + * @ordered + */ + int FROM_AGENT__EXPENSE = 2; + + /** + * The feature id for the 'Is eligible debt' attribute. + * + * + * @generated + * @ordered + */ + int FROM_AGENT__IS_ELIGIBLE_DEBT = 3; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int FROM_AGENT__DEPENDENT = 4; + + /** + * The number of structural features of the 'From Agent' class. + * + * + * @generated + * @ordered + */ + int FROM_AGENT_FEATURE_COUNT = 5; + + /** + * The number of operations of the 'From Agent' class. + * + * + * @generated + * @ordered + */ + int FROM_AGENT_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link Taxation.impl.IncomeImpl Income}' class. + * + * + * @see Taxation.impl.IncomeImpl + * @see Taxation.impl.TaxationPackageImpl#getIncome() + * @generated + */ + int INCOME = 13; + + /** + * The feature id for the 'Income amount' attribute. + * + * + * @generated + * @ordered + */ + int INCOME__INCOME_AMOUNT = 0; + + /** + * The feature id for the 'Income type' containment reference. + * + * + * @generated + * @ordered + */ + int INCOME__INCOME_TYPE = 1; + + /** + * The feature id for the 'Start date within taxation year' attribute. + * + * + * @generated + * @ordered + */ + int INCOME__START_DATE_WITHIN_TAXATION_YEAR = 2; + + /** + * The feature id for the 'Start date of contract' attribute. + * + * + * @generated + * @ordered + */ + int INCOME__START_DATE_OF_CONTRACT = 3; + + /** + * The feature id for the 'End date within taxation year' attribute. + * + * + * @generated + * @ordered + */ + int INCOME__END_DATE_WITHIN_TAXATION_YEAR = 4; + + /** + * The feature id for the 'Tax card' containment reference. + * + * + * @generated + * @ordered + */ + int INCOME__TAX_CARD = 5; + + /** + * The feature id for the 'Tax liability' attribute. + * + * + * @generated + * @ordered + */ + int INCOME__TAX_LIABILITY = 6; + + /** + * The feature id for the 'Tax Payer' container reference. + * + * + * @generated + * @ordered + */ + int INCOME__TAX_PAYER = 7; + + /** + * The feature id for the 'Details' containment reference list. + * + * + * @generated + * @ordered + */ + int INCOME__DETAILS = 8; + + /** + * The feature id for the 'Num' attribute. + * + * + * @generated + * @ordered + */ + int INCOME__NUM = 9; + + /** + * The feature id for the 'Expenses' containment reference list. + * + * + * @generated + * @ordered + */ + int INCOME__EXPENSES = 10; + + /** + * The number of structural features of the 'Income' class. + * + * + * @generated + * @ordered + */ + int INCOME_FEATURE_COUNT = 11; + + /** + * The number of operations of the 'Income' class. + * + * + * @generated + * @ordered + */ + int INCOME_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link Taxation.impl.Income_TypeImpl Income Type}' class. + * + * + * @see Taxation.impl.Income_TypeImpl + * @see Taxation.impl.TaxationPackageImpl#getIncome_Type() + * @generated + */ + int INCOME_TYPE = 14; + + /** + * The feature id for the 'Subject To Withholding Tax' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX = 0; + + /** + * The feature id for the 'Id8' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TYPE__ID8 = 1; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int INCOME_TYPE__INCOME = 2; + + /** + * The number of structural features of the 'Income Type' class. + * + * + * @generated + * @ordered + */ + int INCOME_TYPE_FEATURE_COUNT = 3; + + /** + * The number of operations of the 'Income Type' class. + * + * + * @generated + * @ordered + */ + int INCOME_TYPE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link Taxation.impl.Tax_CardImpl Tax Card}' class. + * + * + * @see Taxation.impl.Tax_CardImpl + * @see Taxation.impl.TaxationPackageImpl#getTax_Card() + * @generated + */ + int TAX_CARD = 15; + + /** + * The feature id for the 'Card identifier' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__CARD_IDENTIFIER = 0; + + /** + * The feature id for the 'Tax card type' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__TAX_CARD_TYPE = 1; + + /** + * The feature id for the 'Tax office' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__TAX_OFFICE = 2; + + /** + * The feature id for the 'Valid from date' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__VALID_FROM_DATE = 3; + + /** + * The feature id for the 'Valid until date' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__VALID_UNTIL_DATE = 4; + + /** + * The feature id for the 'Percentage of witholding' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__PERCENTAGE_OF_WITHOLDING = 5; + + /** + * The feature id for the 'Tax payers name surname' attribute list. + * + * + * @generated + * @ordered + */ + int TAX_CARD__TAX_PAYERS_NAME_SURNAME = 6; + + /** + * The feature id for the 'Tax payers partner name surname' attribute list. + * + * + * @generated + * @ordered + */ + int TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME = 7; + + /** + * The feature id for the 'Tax payers address' reference. + * + * + * @generated + * @ordered + */ + int TAX_CARD__TAX_PAYERS_ADDRESS = 8; + + /** + * The feature id for the 'Jobs Employer SS No' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__JOBS_EMPLOYER_SS_NO = 9; + + /** + * The feature id for the 'Jobs employers name' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__JOBS_EMPLOYERS_NAME = 10; + + /** + * The feature id for the 'Jobs activity type' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__JOBS_ACTIVITY_TYPE = 11; + + /** + * The feature id for the 'Jobs place of work' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__JOBS_PLACE_OF_WORK = 12; + + /** + * The feature id for the 'Deduction FD daily' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_FD_DAILY = 13; + + /** + * The feature id for the 'Deduction FD monthly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_FD_MONTHLY = 14; + + /** + * The feature id for the 'Deduction AC daily' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_AC_DAILY = 15; + + /** + * The feature id for the 'Deduction AC monthly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_AC_MONTHLY = 16; + + /** + * The feature id for the 'Deduction AC yearly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_AC_YEARLY = 17; + + /** + * The feature id for the 'Deduction CE daily' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_CE_DAILY = 18; + + /** + * The feature id for the 'Deduction CE monthly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_CE_MONTHLY = 19; + + /** + * The feature id for the 'Deduction CE yearly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_CE_YEARLY = 20; + + /** + * The feature id for the 'Deduction DS daily' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_DS_DAILY = 21; + + /** + * The feature id for the 'Deduction DS monthly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_DS_MONTHLY = 22; + + /** + * The feature id for the 'Deduction FO daily' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_FO_DAILY = 23; + + /** + * The feature id for the 'Deduction FO monthly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_FO_MONTHLY = 24; + + /** + * The feature id for the 'Deduction FO yearly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_FO_YEARLY = 25; + + /** + * The feature id for the 'Credit CIS daily' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__CREDIT_CIS_DAILY = 26; + + /** + * The feature id for the 'Credit CIS monthly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__CREDIT_CIS_MONTHLY = 27; + + /** + * The feature id for the 'Credit CIM daily' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__CREDIT_CIM_DAILY = 28; + + /** + * The feature id for the 'Validity' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__VALIDITY = 29; + + /** + * The feature id for the 'Income Tax Credit' reference list. + * + * + * @generated + * @ordered + */ + int TAX_CARD__INCOME_TAX_CREDIT = 30; + + /** + * The feature id for the 'Previous' reference. + * + * + * @generated + * @ordered + */ + int TAX_CARD__PREVIOUS = 31; + + /** + * The feature id for the 'Current tax card' reference. + * + * + * @generated + * @ordered + */ + int TAX_CARD__CURRENT_TAX_CARD = 32; + + /** + * The feature id for the 'Credit CIM yearly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__CREDIT_CIM_YEARLY = 33; + + /** + * The feature id for the 'Deduction DS Alimony yearly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY = 34; + + /** + * The feature id for the 'Deduction DS Debt yearly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_DS_DEBT_YEARLY = 35; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int TAX_CARD__INCOME = 36; + + /** + * The number of structural features of the 'Tax Card' class. + * + * + * @generated + * @ordered + */ + int TAX_CARD_FEATURE_COUNT = 37; + + /** + * The number of operations of the 'Tax Card' class. + * + * + * @generated + * @ordered + */ + int TAX_CARD_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link Taxation.impl.Income_Tax_CreditImpl Income Tax Credit}' class. + * + * + * @see Taxation.impl.Income_Tax_CreditImpl + * @see Taxation.impl.TaxationPackageImpl#getIncome_Tax_Credit() + * @generated + */ + int INCOME_TAX_CREDIT = 16; + + /** + * The feature id for the 'Granted By' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT__GRANTED_BY = 0; + + /** + * The feature id for the 'Tax Payer' reference. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT__TAX_PAYER = 1; + + /** + * The feature id for the 'Tax year' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT__TAX_YEAR = 2; + + /** + * The feature id for the 'Yearly' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT__YEARLY = 3; + + /** + * The feature id for the 'Monthly' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT__MONTHLY = 4; + + /** + * The feature id for the 'Daily' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT__DAILY = 5; + + /** + * The feature id for the 'Id7' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT__ID7 = 6; + + /** + * The feature id for the 'Taxation Frame' reference. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT__TAXATION_FRAME = 7; + + /** + * The number of structural features of the 'Income Tax Credit' class. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT_FEATURE_COUNT = 8; + + /** + * The number of operations of the 'Income Tax Credit' class. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link Taxation.impl.Income_DetailImpl Income Detail}' class. + * + * + * @see Taxation.impl.Income_DetailImpl + * @see Taxation.impl.TaxationPackageImpl#getIncome_Detail() + * @generated + */ + int INCOME_DETAIL = 17; + + /** + * The feature id for the 'Amount' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_DETAIL__AMOUNT = 0; + + /** + * The feature id for the 'Is worked' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_DETAIL__IS_WORKED = 1; + + /** + * The feature id for the 'Distance' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_DETAIL__DISTANCE = 2; + + /** + * The feature id for the 'Worked days' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_DETAIL__WORKED_DAYS = 3; + + /** + * The feature id for the 'Is contributing CNS' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_DETAIL__IS_CONTRIBUTING_CNS = 4; + + /** + * The feature id for the 'Id5' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_DETAIL__ID5 = 5; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int INCOME_DETAIL__INCOME = 6; + + /** + * The number of structural features of the 'Income Detail' class. + * + * + * @generated + * @ordered + */ + int INCOME_DETAIL_FEATURE_COUNT = 7; + + /** + * The number of operations of the 'Income Detail' class. + * + * + * @generated + * @ordered + */ + int INCOME_DETAIL_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link Taxation.impl.FromLawImpl From Law}' class. + * + * + * @see Taxation.impl.FromLawImpl + * @see Taxation.impl.TaxationPackageImpl#getFromLaw() + * @generated + */ + int FROM_LAW = 18; + + /** + * The feature id for the 'Id' attribute. + * + * + * @generated + * @ordered + */ + int FROM_LAW__ID = 0; + + /** + * The feature id for the 'Tax Payer' container reference. + * + * + * @generated + * @ordered + */ + int FROM_LAW__TAX_PAYER = 1; + + /** + * The number of structural features of the 'From Law' class. + * + * + * @generated + * @ordered + */ + int FROM_LAW_FEATURE_COUNT = 2; + + /** + * The number of operations of the 'From Law' class. + * + * + * @generated + * @ordered + */ + int FROM_LAW_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link Taxation.impl.Fiscal_AddressImpl Fiscal Address}' class. + * + * + * @see Taxation.impl.Fiscal_AddressImpl + * @see Taxation.impl.TaxationPackageImpl#getFiscal_Address() + * @generated + */ + int FISCAL_ADDRESS = 19; + + /** + * The feature id for the 'Country' attribute. + * + * + * @generated + * @ordered + */ + int FISCAL_ADDRESS__COUNTRY = ADDRESS__COUNTRY; + + /** + * The feature id for the 'Street' attribute. + * + * + * @generated + * @ordered + */ + int FISCAL_ADDRESS__STREET = ADDRESS__STREET; + + /** + * The feature id for the 'Zip Code' attribute. + * + * + * @generated + * @ordered + */ + int FISCAL_ADDRESS__ZIP_CODE = ADDRESS__ZIP_CODE; + + /** + * The feature id for the 'City' attribute. + * + * + * @generated + * @ordered + */ + int FISCAL_ADDRESS__CITY = ADDRESS__CITY; + + /** + * The feature id for the 'Id2' attribute. + * + * + * @generated + * @ordered + */ + int FISCAL_ADDRESS__ID2 = ADDRESS__ID2; + + /** + * The feature id for the 'Tax Payer' reference list. + * + * + * @generated + * @ordered + */ + int FISCAL_ADDRESS__TAX_PAYER = ADDRESS__TAX_PAYER; + + /** + * The number of structural features of the 'Fiscal Address' class. + * + * + * @generated + * @ordered + */ + int FISCAL_ADDRESS_FEATURE_COUNT = ADDRESS_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Fiscal Address' class. + * + * + * @generated + * @ordered + */ + int FISCAL_ADDRESS_OPERATION_COUNT = ADDRESS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Habitual_AddressImpl Habitual Address}' class. + * + * + * @see Taxation.impl.Habitual_AddressImpl + * @see Taxation.impl.TaxationPackageImpl#getHabitual_Address() + * @generated + */ + int HABITUAL_ADDRESS = 20; + + /** + * The feature id for the 'Country' attribute. + * + * + * @generated + * @ordered + */ + int HABITUAL_ADDRESS__COUNTRY = ADDRESS__COUNTRY; + + /** + * The feature id for the 'Street' attribute. + * + * + * @generated + * @ordered + */ + int HABITUAL_ADDRESS__STREET = ADDRESS__STREET; + + /** + * The feature id for the 'Zip Code' attribute. + * + * + * @generated + * @ordered + */ + int HABITUAL_ADDRESS__ZIP_CODE = ADDRESS__ZIP_CODE; + + /** + * The feature id for the 'City' attribute. + * + * + * @generated + * @ordered + */ + int HABITUAL_ADDRESS__CITY = ADDRESS__CITY; + + /** + * The feature id for the 'Id2' attribute. + * + * + * @generated + * @ordered + */ + int HABITUAL_ADDRESS__ID2 = ADDRESS__ID2; + + /** + * The feature id for the 'Tax Payer' reference list. + * + * + * @generated + * @ordered + */ + int HABITUAL_ADDRESS__TAX_PAYER = ADDRESS__TAX_PAYER; + + /** + * The number of structural features of the 'Habitual Address' class. + * + * + * @generated + * @ordered + */ + int HABITUAL_ADDRESS_FEATURE_COUNT = ADDRESS_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Habitual Address' class. + * + * + * @generated + * @ordered + */ + int HABITUAL_ADDRESS_OPERATION_COUNT = ADDRESS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Marriage_RecordImpl Marriage Record}' class. + * + * + * @see Taxation.impl.Marriage_RecordImpl + * @see Taxation.impl.TaxationPackageImpl#getMarriage_Record() + * @generated + */ + int MARRIAGE_RECORD = 21; + + /** + * The feature id for the 'Start year' attribute. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD__START_YEAR = LEGAL_UNION_RECORD__START_YEAR; + + /** + * The feature id for the 'End year' attribute. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD__END_YEAR = LEGAL_UNION_RECORD__END_YEAR; + + /** + * The feature id for the 'Separation cause' attribute. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD__SEPARATION_CAUSE = LEGAL_UNION_RECORD__SEPARATION_CAUSE; + + /** + * The feature id for the 'Individual A' containment reference. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD__INDIVIDUAL_A = LEGAL_UNION_RECORD__INDIVIDUAL_A; + + /** + * The feature id for the 'Individual B' containment reference list. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD__INDIVIDUAL_B = LEGAL_UNION_RECORD__INDIVIDUAL_B; + + /** + * The feature id for the 'Properties' containment reference list. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD__PROPERTIES = LEGAL_UNION_RECORD__PROPERTIES; + + /** + * The feature id for the 'Mutual agreement' attribute. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD__MUTUAL_AGREEMENT = LEGAL_UNION_RECORD__MUTUAL_AGREEMENT; + + /** + * The feature id for the 'Id9' attribute. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD__ID9 = LEGAL_UNION_RECORD__ID9; + + /** + * The feature id for the 'Household' container reference. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD__HOUSEHOLD = LEGAL_UNION_RECORD__HOUSEHOLD; + + /** + * The number of structural features of the 'Marriage Record' class. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD_FEATURE_COUNT = LEGAL_UNION_RECORD_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Marriage Record' class. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD_OPERATION_COUNT = LEGAL_UNION_RECORD_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Non_Resident_Tax_PayerImpl Non Resident Tax Payer}' class. + * + * + * @see Taxation.impl.Non_Resident_Tax_PayerImpl + * @see Taxation.impl.TaxationPackageImpl#getNon_Resident_Tax_Payer() + * @generated + */ + int NON_RESIDENT_TAX_PAYER = 22; + + /** + * The feature id for the 'Is assisting spouse' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__IS_ASSISTING_SPOUSE = TAX_PAYER__IS_ASSISTING_SPOUSE; + + /** + * The feature id for the 'SS No' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__SS_NO = TAX_PAYER__SS_NO; + + /** + * The feature id for the 'Addresses' reference list. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__ADDRESSES = TAX_PAYER__ADDRESSES; + + /** + * The feature id for the 'Birth year' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__BIRTH_YEAR = TAX_PAYER__BIRTH_YEAR; + + /** + * The feature id for the 'Disability percentage' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__DISABILITY_PERCENTAGE = TAX_PAYER__DISABILITY_PERCENTAGE; + + /** + * The feature id for the 'Disability type' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__DISABILITY_TYPE = TAX_PAYER__DISABILITY_TYPE; + + /** + * The feature id for the 'Is affiliated personnaly to social security' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY = TAX_PAYER__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY; + + /** + * The feature id for the 'Birth month' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__BIRTH_MONTH = TAX_PAYER__BIRTH_MONTH; + + /** + * The feature id for the 'Birth day' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__BIRTH_DAY = TAX_PAYER__BIRTH_DAY; + + /** + * The feature id for the 'Expenses' reference list. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__EXPENSES = TAX_PAYER__EXPENSES; + + /** + * The feature id for the 'Is widower' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__IS_WIDOWER = TAX_PAYER__IS_WIDOWER; + + /** + * The feature id for the 'Owns Address' containment reference list. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__OWNS_ADDRESS = TAX_PAYER__OWNS_ADDRESS; + + /** + * The feature id for the 'Dependents' containment reference list. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__DEPENDENTS = TAX_PAYER__DEPENDENTS; + + /** + * The feature id for the 'From agent' containment reference. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__FROM_AGENT = TAX_PAYER__FROM_AGENT; + + /** + * The feature id for the 'Incomes' containment reference list. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__INCOMES = TAX_PAYER__INCOMES; + + /** + * The feature id for the 'From law' containment reference. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__FROM_LAW = TAX_PAYER__FROM_LAW; + + /** + * The feature id for the 'Taxes Due' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__TAXES_DUE = TAX_PAYER__TAXES_DUE; + + /** + * The feature id for the 'Is assimilated to resident' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__IS_ASSIMILATED_TO_RESIDENT = TAX_PAYER_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Non Resident Tax Payer' class. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER_FEATURE_COUNT = TAX_PAYER_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Non Resident Tax Payer' class. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER_OPERATION_COUNT = TAX_PAYER_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Partnership_RecordImpl Partnership Record}' class. + * + * + * @see Taxation.impl.Partnership_RecordImpl + * @see Taxation.impl.TaxationPackageImpl#getPartnership_Record() + * @generated + */ + int PARTNERSHIP_RECORD = 23; + + /** + * The feature id for the 'Start year' attribute. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD__START_YEAR = LEGAL_UNION_RECORD__START_YEAR; + + /** + * The feature id for the 'End year' attribute. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD__END_YEAR = LEGAL_UNION_RECORD__END_YEAR; + + /** + * The feature id for the 'Separation cause' attribute. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD__SEPARATION_CAUSE = LEGAL_UNION_RECORD__SEPARATION_CAUSE; + + /** + * The feature id for the 'Individual A' containment reference. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD__INDIVIDUAL_A = LEGAL_UNION_RECORD__INDIVIDUAL_A; + + /** + * The feature id for the 'Individual B' containment reference list. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD__INDIVIDUAL_B = LEGAL_UNION_RECORD__INDIVIDUAL_B; + + /** + * The feature id for the 'Properties' containment reference list. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD__PROPERTIES = LEGAL_UNION_RECORD__PROPERTIES; + + /** + * The feature id for the 'Mutual agreement' attribute. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD__MUTUAL_AGREEMENT = LEGAL_UNION_RECORD__MUTUAL_AGREEMENT; + + /** + * The feature id for the 'Id9' attribute. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD__ID9 = LEGAL_UNION_RECORD__ID9; + + /** + * The feature id for the 'Household' container reference. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD__HOUSEHOLD = LEGAL_UNION_RECORD__HOUSEHOLD; + + /** + * The number of structural features of the 'Partnership Record' class. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD_FEATURE_COUNT = LEGAL_UNION_RECORD_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Partnership Record' class. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD_OPERATION_COUNT = LEGAL_UNION_RECORD_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Resident_Tax_PayerImpl Resident Tax Payer}' class. + * + * + * @see Taxation.impl.Resident_Tax_PayerImpl + * @see Taxation.impl.TaxationPackageImpl#getResident_Tax_Payer() + * @generated + */ + int RESIDENT_TAX_PAYER = 24; + + /** + * The feature id for the 'Is assisting spouse' attribute. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__IS_ASSISTING_SPOUSE = TAX_PAYER__IS_ASSISTING_SPOUSE; + + /** + * The feature id for the 'SS No' attribute. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__SS_NO = TAX_PAYER__SS_NO; + + /** + * The feature id for the 'Addresses' reference list. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__ADDRESSES = TAX_PAYER__ADDRESSES; + + /** + * The feature id for the 'Birth year' attribute. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__BIRTH_YEAR = TAX_PAYER__BIRTH_YEAR; + + /** + * The feature id for the 'Disability percentage' attribute. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__DISABILITY_PERCENTAGE = TAX_PAYER__DISABILITY_PERCENTAGE; + + /** + * The feature id for the 'Disability type' attribute. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__DISABILITY_TYPE = TAX_PAYER__DISABILITY_TYPE; + + /** + * The feature id for the 'Is affiliated personnaly to social security' attribute. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY = TAX_PAYER__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY; + + /** + * The feature id for the 'Birth month' attribute. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__BIRTH_MONTH = TAX_PAYER__BIRTH_MONTH; + + /** + * The feature id for the 'Birth day' attribute. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__BIRTH_DAY = TAX_PAYER__BIRTH_DAY; + + /** + * The feature id for the 'Expenses' reference list. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__EXPENSES = TAX_PAYER__EXPENSES; + + /** + * The feature id for the 'Is widower' attribute. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__IS_WIDOWER = TAX_PAYER__IS_WIDOWER; + + /** + * The feature id for the 'Owns Address' containment reference list. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__OWNS_ADDRESS = TAX_PAYER__OWNS_ADDRESS; + + /** + * The feature id for the 'Dependents' containment reference list. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__DEPENDENTS = TAX_PAYER__DEPENDENTS; + + /** + * The feature id for the 'From agent' containment reference. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__FROM_AGENT = TAX_PAYER__FROM_AGENT; + + /** + * The feature id for the 'Incomes' containment reference list. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__INCOMES = TAX_PAYER__INCOMES; + + /** + * The feature id for the 'From law' containment reference. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__FROM_LAW = TAX_PAYER__FROM_LAW; + + /** + * The feature id for the 'Taxes Due' attribute. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__TAXES_DUE = TAX_PAYER__TAXES_DUE; + + /** + * The number of structural features of the 'Resident Tax Payer' class. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER_FEATURE_COUNT = TAX_PAYER_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Resident Tax Payer' class. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER_OPERATION_COUNT = TAX_PAYER_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Trade_and_Business_IncomeImpl Trade and Business Income}' class. + * + * + * @see Taxation.impl.Trade_and_Business_IncomeImpl + * @see Taxation.impl.TaxationPackageImpl#getTrade_and_Business_Income() + * @generated + */ + int TRADE_AND_BUSINESS_INCOME = 25; + + /** + * The feature id for the 'Subject To Withholding Tax' attribute. + * + * + * @generated + * @ordered + */ + int TRADE_AND_BUSINESS_INCOME__SUBJECT_TO_WITHHOLDING_TAX = INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX; + + /** + * The feature id for the 'Id8' attribute. + * + * + * @generated + * @ordered + */ + int TRADE_AND_BUSINESS_INCOME__ID8 = INCOME_TYPE__ID8; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int TRADE_AND_BUSINESS_INCOME__INCOME = INCOME_TYPE__INCOME; + + /** + * The number of structural features of the 'Trade and Business Income' class. + * + * + * @generated + * @ordered + */ + int TRADE_AND_BUSINESS_INCOME_FEATURE_COUNT = INCOME_TYPE_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Trade and Business Income' class. + * + * + * @generated + * @ordered + */ + int TRADE_AND_BUSINESS_INCOME_OPERATION_COUNT = INCOME_TYPE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Agriculture_and_Forestry_IncomeImpl Agriculture and Forestry Income}' class. + * + * + * @see Taxation.impl.Agriculture_and_Forestry_IncomeImpl + * @see Taxation.impl.TaxationPackageImpl#getAgriculture_and_Forestry_Income() + * @generated + */ + int AGRICULTURE_AND_FORESTRY_INCOME = 26; + + /** + * The feature id for the 'Subject To Withholding Tax' attribute. + * + * + * @generated + * @ordered + */ + int AGRICULTURE_AND_FORESTRY_INCOME__SUBJECT_TO_WITHHOLDING_TAX = INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX; + + /** + * The feature id for the 'Id8' attribute. + * + * + * @generated + * @ordered + */ + int AGRICULTURE_AND_FORESTRY_INCOME__ID8 = INCOME_TYPE__ID8; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int AGRICULTURE_AND_FORESTRY_INCOME__INCOME = INCOME_TYPE__INCOME; + + /** + * The number of structural features of the 'Agriculture and Forestry Income' class. + * + * + * @generated + * @ordered + */ + int AGRICULTURE_AND_FORESTRY_INCOME_FEATURE_COUNT = INCOME_TYPE_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Agriculture and Forestry Income' class. + * + * + * @generated + * @ordered + */ + int AGRICULTURE_AND_FORESTRY_INCOME_OPERATION_COUNT = INCOME_TYPE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Pensions_and_Annuities_IncomeImpl Pensions and Annuities Income}' class. + * + * + * @see Taxation.impl.Pensions_and_Annuities_IncomeImpl + * @see Taxation.impl.TaxationPackageImpl#getPensions_and_Annuities_Income() + * @generated + */ + int PENSIONS_AND_ANNUITIES_INCOME = 27; + + /** + * The feature id for the 'Subject To Withholding Tax' attribute. + * + * + * @generated + * @ordered + */ + int PENSIONS_AND_ANNUITIES_INCOME__SUBJECT_TO_WITHHOLDING_TAX = INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX; + + /** + * The feature id for the 'Id8' attribute. + * + * + * @generated + * @ordered + */ + int PENSIONS_AND_ANNUITIES_INCOME__ID8 = INCOME_TYPE__ID8; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int PENSIONS_AND_ANNUITIES_INCOME__INCOME = INCOME_TYPE__INCOME; + + /** + * The feature id for the 'Occasional payement' attribute. + * + * + * @generated + * @ordered + */ + int PENSIONS_AND_ANNUITIES_INCOME__OCCASIONAL_PAYEMENT = INCOME_TYPE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Pensions and Annuities Income' class. + * + * + * @generated + * @ordered + */ + int PENSIONS_AND_ANNUITIES_INCOME_FEATURE_COUNT = INCOME_TYPE_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Pensions and Annuities Income' class. + * + * + * @generated + * @ordered + */ + int PENSIONS_AND_ANNUITIES_INCOME_OPERATION_COUNT = INCOME_TYPE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Capital_and_Investments_IncomeImpl Capital and Investments Income}' class. + * + * + * @see Taxation.impl.Capital_and_Investments_IncomeImpl + * @see Taxation.impl.TaxationPackageImpl#getCapital_and_Investments_Income() + * @generated + */ + int CAPITAL_AND_INVESTMENTS_INCOME = 28; + + /** + * The feature id for the 'Subject To Withholding Tax' attribute. + * + * + * @generated + * @ordered + */ + int CAPITAL_AND_INVESTMENTS_INCOME__SUBJECT_TO_WITHHOLDING_TAX = INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX; + + /** + * The feature id for the 'Id8' attribute. + * + * + * @generated + * @ordered + */ + int CAPITAL_AND_INVESTMENTS_INCOME__ID8 = INCOME_TYPE__ID8; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int CAPITAL_AND_INVESTMENTS_INCOME__INCOME = INCOME_TYPE__INCOME; + + /** + * The number of structural features of the 'Capital and Investments Income' class. + * + * + * @generated + * @ordered + */ + int CAPITAL_AND_INVESTMENTS_INCOME_FEATURE_COUNT = INCOME_TYPE_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Capital and Investments Income' class. + * + * + * @generated + * @ordered + */ + int CAPITAL_AND_INVESTMENTS_INCOME_OPERATION_COUNT = INCOME_TYPE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Employment_IncomeImpl Employment Income}' class. + * + * + * @see Taxation.impl.Employment_IncomeImpl + * @see Taxation.impl.TaxationPackageImpl#getEmployment_Income() + * @generated + */ + int EMPLOYMENT_INCOME = 29; + + /** + * The feature id for the 'Subject To Withholding Tax' attribute. + * + * + * @generated + * @ordered + */ + int EMPLOYMENT_INCOME__SUBJECT_TO_WITHHOLDING_TAX = INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX; + + /** + * The feature id for the 'Id8' attribute. + * + * + * @generated + * @ordered + */ + int EMPLOYMENT_INCOME__ID8 = INCOME_TYPE__ID8; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int EMPLOYMENT_INCOME__INCOME = INCOME_TYPE__INCOME; + + /** + * The number of structural features of the 'Employment Income' class. + * + * + * @generated + * @ordered + */ + int EMPLOYMENT_INCOME_FEATURE_COUNT = INCOME_TYPE_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Employment Income' class. + * + * + * @generated + * @ordered + */ + int EMPLOYMENT_INCOME_OPERATION_COUNT = INCOME_TYPE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Rentals_and_Leases_IncomeImpl Rentals and Leases Income}' class. + * + * + * @see Taxation.impl.Rentals_and_Leases_IncomeImpl + * @see Taxation.impl.TaxationPackageImpl#getRentals_and_Leases_Income() + * @generated + */ + int RENTALS_AND_LEASES_INCOME = 30; + + /** + * The feature id for the 'Subject To Withholding Tax' attribute. + * + * + * @generated + * @ordered + */ + int RENTALS_AND_LEASES_INCOME__SUBJECT_TO_WITHHOLDING_TAX = INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX; + + /** + * The feature id for the 'Id8' attribute. + * + * + * @generated + * @ordered + */ + int RENTALS_AND_LEASES_INCOME__ID8 = INCOME_TYPE__ID8; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int RENTALS_AND_LEASES_INCOME__INCOME = INCOME_TYPE__INCOME; + + /** + * The feature id for the 'Is periodic' attribute. + * + * + * @generated + * @ordered + */ + int RENTALS_AND_LEASES_INCOME__IS_PERIODIC = INCOME_TYPE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Rentals and Leases Income' class. + * + * + * @generated + * @ordered + */ + int RENTALS_AND_LEASES_INCOME_FEATURE_COUNT = INCOME_TYPE_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Rentals and Leases Income' class. + * + * + * @generated + * @ordered + */ + int RENTALS_AND_LEASES_INCOME_OPERATION_COUNT = INCOME_TYPE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Foreign_IncomeImpl Foreign Income}' class. + * + * + * @see Taxation.impl.Foreign_IncomeImpl + * @see Taxation.impl.TaxationPackageImpl#getForeign_Income() + * @generated + */ + int FOREIGN_INCOME = 31; + + /** + * The feature id for the 'Income amount' attribute. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__INCOME_AMOUNT = INCOME__INCOME_AMOUNT; + + /** + * The feature id for the 'Income type' containment reference. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__INCOME_TYPE = INCOME__INCOME_TYPE; + + /** + * The feature id for the 'Start date within taxation year' attribute. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__START_DATE_WITHIN_TAXATION_YEAR = INCOME__START_DATE_WITHIN_TAXATION_YEAR; + + /** + * The feature id for the 'Start date of contract' attribute. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__START_DATE_OF_CONTRACT = INCOME__START_DATE_OF_CONTRACT; + + /** + * The feature id for the 'End date within taxation year' attribute. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__END_DATE_WITHIN_TAXATION_YEAR = INCOME__END_DATE_WITHIN_TAXATION_YEAR; + + /** + * The feature id for the 'Tax card' containment reference. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__TAX_CARD = INCOME__TAX_CARD; + + /** + * The feature id for the 'Tax liability' attribute. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__TAX_LIABILITY = INCOME__TAX_LIABILITY; + + /** + * The feature id for the 'Tax Payer' container reference. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__TAX_PAYER = INCOME__TAX_PAYER; + + /** + * The feature id for the 'Details' containment reference list. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__DETAILS = INCOME__DETAILS; + + /** + * The feature id for the 'Num' attribute. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__NUM = INCOME__NUM; + + /** + * The feature id for the 'Expenses' containment reference list. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__EXPENSES = INCOME__EXPENSES; + + /** + * The number of structural features of the 'Foreign Income' class. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME_FEATURE_COUNT = INCOME_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Foreign Income' class. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME_OPERATION_COUNT = INCOME_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Local_IncomeImpl Local Income}' class. + * + * + * @see Taxation.impl.Local_IncomeImpl + * @see Taxation.impl.TaxationPackageImpl#getLocal_Income() + * @generated + */ + int LOCAL_INCOME = 32; + + /** + * The feature id for the 'Income amount' attribute. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__INCOME_AMOUNT = INCOME__INCOME_AMOUNT; + + /** + * The feature id for the 'Income type' containment reference. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__INCOME_TYPE = INCOME__INCOME_TYPE; + + /** + * The feature id for the 'Start date within taxation year' attribute. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__START_DATE_WITHIN_TAXATION_YEAR = INCOME__START_DATE_WITHIN_TAXATION_YEAR; + + /** + * The feature id for the 'Start date of contract' attribute. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__START_DATE_OF_CONTRACT = INCOME__START_DATE_OF_CONTRACT; + + /** + * The feature id for the 'End date within taxation year' attribute. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__END_DATE_WITHIN_TAXATION_YEAR = INCOME__END_DATE_WITHIN_TAXATION_YEAR; + + /** + * The feature id for the 'Tax card' containment reference. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__TAX_CARD = INCOME__TAX_CARD; + + /** + * The feature id for the 'Tax liability' attribute. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__TAX_LIABILITY = INCOME__TAX_LIABILITY; + + /** + * The feature id for the 'Tax Payer' container reference. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__TAX_PAYER = INCOME__TAX_PAYER; + + /** + * The feature id for the 'Details' containment reference list. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__DETAILS = INCOME__DETAILS; + + /** + * The feature id for the 'Num' attribute. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__NUM = INCOME__NUM; + + /** + * The feature id for the 'Expenses' containment reference list. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__EXPENSES = INCOME__EXPENSES; + + /** + * The number of structural features of the 'Local Income' class. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME_FEATURE_COUNT = INCOME_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Local Income' class. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME_OPERATION_COUNT = INCOME_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.CIMImpl CIM}' class. + * + * + * @see Taxation.impl.CIMImpl + * @see Taxation.impl.TaxationPackageImpl#getCIM() + * @generated + */ + int CIM = 33; + + /** + * The feature id for the 'Granted By' attribute. + * + * + * @generated + * @ordered + */ + int CIM__GRANTED_BY = INCOME_TAX_CREDIT__GRANTED_BY; + + /** + * The feature id for the 'Tax Payer' reference. + * + * + * @generated + * @ordered + */ + int CIM__TAX_PAYER = INCOME_TAX_CREDIT__TAX_PAYER; + + /** + * The feature id for the 'Tax year' attribute. + * + * + * @generated + * @ordered + */ + int CIM__TAX_YEAR = INCOME_TAX_CREDIT__TAX_YEAR; + + /** + * The feature id for the 'Yearly' attribute. + * + * + * @generated + * @ordered + */ + int CIM__YEARLY = INCOME_TAX_CREDIT__YEARLY; + + /** + * The feature id for the 'Monthly' attribute. + * + * + * @generated + * @ordered + */ + int CIM__MONTHLY = INCOME_TAX_CREDIT__MONTHLY; + + /** + * The feature id for the 'Daily' attribute. + * + * + * @generated + * @ordered + */ + int CIM__DAILY = INCOME_TAX_CREDIT__DAILY; + + /** + * The feature id for the 'Id7' attribute. + * + * + * @generated + * @ordered + */ + int CIM__ID7 = INCOME_TAX_CREDIT__ID7; + + /** + * The feature id for the 'Taxation Frame' reference. + * + * + * @generated + * @ordered + */ + int CIM__TAXATION_FRAME = INCOME_TAX_CREDIT__TAXATION_FRAME; + + /** + * The number of structural features of the 'CIM' class. + * + * + * @generated + * @ordered + */ + int CIM_FEATURE_COUNT = INCOME_TAX_CREDIT_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'CIM' class. + * + * + * @generated + * @ordered + */ + int CIM_OPERATION_COUNT = INCOME_TAX_CREDIT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.CIPImpl CIP}' class. + * + * + * @see Taxation.impl.CIPImpl + * @see Taxation.impl.TaxationPackageImpl#getCIP() + * @generated + */ + int CIP = 34; + + /** + * The feature id for the 'Granted By' attribute. + * + * + * @generated + * @ordered + */ + int CIP__GRANTED_BY = INCOME_TAX_CREDIT__GRANTED_BY; + + /** + * The feature id for the 'Tax Payer' reference. + * + * + * @generated + * @ordered + */ + int CIP__TAX_PAYER = INCOME_TAX_CREDIT__TAX_PAYER; + + /** + * The feature id for the 'Tax year' attribute. + * + * + * @generated + * @ordered + */ + int CIP__TAX_YEAR = INCOME_TAX_CREDIT__TAX_YEAR; + + /** + * The feature id for the 'Yearly' attribute. + * + * + * @generated + * @ordered + */ + int CIP__YEARLY = INCOME_TAX_CREDIT__YEARLY; + + /** + * The feature id for the 'Monthly' attribute. + * + * + * @generated + * @ordered + */ + int CIP__MONTHLY = INCOME_TAX_CREDIT__MONTHLY; + + /** + * The feature id for the 'Daily' attribute. + * + * + * @generated + * @ordered + */ + int CIP__DAILY = INCOME_TAX_CREDIT__DAILY; + + /** + * The feature id for the 'Id7' attribute. + * + * + * @generated + * @ordered + */ + int CIP__ID7 = INCOME_TAX_CREDIT__ID7; + + /** + * The feature id for the 'Taxation Frame' reference. + * + * + * @generated + * @ordered + */ + int CIP__TAXATION_FRAME = INCOME_TAX_CREDIT__TAXATION_FRAME; + + /** + * The number of structural features of the 'CIP' class. + * + * + * @generated + * @ordered + */ + int CIP_FEATURE_COUNT = INCOME_TAX_CREDIT_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'CIP' class. + * + * + * @generated + * @ordered + */ + int CIP_OPERATION_COUNT = INCOME_TAX_CREDIT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.CISImpl CIS}' class. + * + * + * @see Taxation.impl.CISImpl + * @see Taxation.impl.TaxationPackageImpl#getCIS() + * @generated + */ + int CIS = 35; + + /** + * The feature id for the 'Granted By' attribute. + * + * + * @generated + * @ordered + */ + int CIS__GRANTED_BY = INCOME_TAX_CREDIT__GRANTED_BY; + + /** + * The feature id for the 'Tax Payer' reference. + * + * + * @generated + * @ordered + */ + int CIS__TAX_PAYER = INCOME_TAX_CREDIT__TAX_PAYER; + + /** + * The feature id for the 'Tax year' attribute. + * + * + * @generated + * @ordered + */ + int CIS__TAX_YEAR = INCOME_TAX_CREDIT__TAX_YEAR; + + /** + * The feature id for the 'Yearly' attribute. + * + * + * @generated + * @ordered + */ + int CIS__YEARLY = INCOME_TAX_CREDIT__YEARLY; + + /** + * The feature id for the 'Monthly' attribute. + * + * + * @generated + * @ordered + */ + int CIS__MONTHLY = INCOME_TAX_CREDIT__MONTHLY; + + /** + * The feature id for the 'Daily' attribute. + * + * + * @generated + * @ordered + */ + int CIS__DAILY = INCOME_TAX_CREDIT__DAILY; + + /** + * The feature id for the 'Id7' attribute. + * + * + * @generated + * @ordered + */ + int CIS__ID7 = INCOME_TAX_CREDIT__ID7; + + /** + * The feature id for the 'Taxation Frame' reference. + * + * + * @generated + * @ordered + */ + int CIS__TAXATION_FRAME = INCOME_TAX_CREDIT__TAXATION_FRAME; + + /** + * The number of structural features of the 'CIS' class. + * + * + * @generated + * @ordered + */ + int CIS_FEATURE_COUNT = INCOME_TAX_CREDIT_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'CIS' class. + * + * + * @generated + * @ordered + */ + int CIS_OPERATION_COUNT = INCOME_TAX_CREDIT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Professional_Expenses_DeductionImpl Professional Expenses Deduction}' class. + * + * + * @see Taxation.impl.Professional_Expenses_DeductionImpl + * @see Taxation.impl.TaxationPackageImpl#getProfessional_Expenses_Deduction() + * @generated + */ + int PROFESSIONAL_EXPENSES_DEDUCTION = 37; + + /** + * The number of structural features of the 'Professional Expenses Deduction' class. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT = 0; + + /** + * The number of operations of the 'Professional Expenses Deduction' class. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSES_DEDUCTION_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link Taxation.impl.FDImpl FD}' class. + * + * + * @see Taxation.impl.FDImpl + * @see Taxation.impl.TaxationPackageImpl#getFD() + * @generated + */ + int FD = 36; + + /** + * The feature id for the 'Distance declared in january' attribute. + * + * + * @generated + * @ordered + */ + int FD__DISTANCE_DECLARED_IN_JANUARY = PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Calculated distance' attribute. + * + * + * @generated + * @ordered + */ + int FD__CALCULATED_DISTANCE = PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'FD' class. + * + * + * @generated + * @ordered + */ + int FD_FEATURE_COUNT = PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'FD' class. + * + * + * @generated + * @ordered + */ + int FD_OPERATION_COUNT = PROFESSIONAL_EXPENSES_DEDUCTION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.FOImpl FO}' class. + * + * + * @see Taxation.impl.FOImpl + * @see Taxation.impl.TaxationPackageImpl#getFO() + * @generated + */ + int FO = 38; + + /** + * The feature id for the 'Rate type for FO' attribute. + * + * + * @generated + * @ordered + */ + int FO__RATE_TYPE_FOR_FO = PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'FO' class. + * + * + * @generated + * @ordered + */ + int FO_FEATURE_COUNT = PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'FO' class. + * + * + * @generated + * @ordered + */ + int FO_OPERATION_COUNT = PROFESSIONAL_EXPENSES_DEDUCTION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.DSImpl DS}' class. + * + * + * @see Taxation.impl.DSImpl + * @see Taxation.impl.TaxationPackageImpl#getDS() + * @generated + */ + int DS = 40; + + /** + * The feature id for the 'Maximum deductible amount' attribute. + * + * + * @generated + * @ordered + */ + int DS__MAXIMUM_DEDUCTIBLE_AMOUNT = 0; + + /** + * The feature id for the 'Id3' attribute. + * + * + * @generated + * @ordered + */ + int DS__ID3 = 1; + + /** + * The number of structural features of the 'DS' class. + * + * + * @generated + * @ordered + */ + int DS_FEATURE_COUNT = 2; + + /** + * The number of operations of the 'DS' class. + * + * + * @generated + * @ordered + */ + int DS_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link Taxation.impl.DS_for_Permanent_ExpenseImpl DS for Permanent Expense}' class. + * + * + * @see Taxation.impl.DS_for_Permanent_ExpenseImpl + * @see Taxation.impl.TaxationPackageImpl#getDS_for_Permanent_Expense() + * @generated + */ + int DS_FOR_PERMANENT_EXPENSE = 39; + + /** + * The feature id for the 'Maximum deductible amount' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_PERMANENT_EXPENSE__MAXIMUM_DEDUCTIBLE_AMOUNT = DS__MAXIMUM_DEDUCTIBLE_AMOUNT; + + /** + * The feature id for the 'Id3' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_PERMANENT_EXPENSE__ID3 = DS__ID3; + + /** + * The feature id for the 'Permanent expense category' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY = DS_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'DS for Permanent Expense' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_PERMANENT_EXPENSE_FEATURE_COUNT = DS_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'DS for Permanent Expense' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_PERMANENT_EXPENSE_OPERATION_COUNT = DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.DS_for_Interest_ExpenseImpl DS for Interest Expense}' class. + * + * + * @see Taxation.impl.DS_for_Interest_ExpenseImpl + * @see Taxation.impl.TaxationPackageImpl#getDS_for_Interest_Expense() + * @generated + */ + int DS_FOR_INTEREST_EXPENSE = 41; + + /** + * The feature id for the 'Maximum deductible amount' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_INTEREST_EXPENSE__MAXIMUM_DEDUCTIBLE_AMOUNT = DS__MAXIMUM_DEDUCTIBLE_AMOUNT; + + /** + * The feature id for the 'Id3' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_INTEREST_EXPENSE__ID3 = DS__ID3; + + /** + * The number of structural features of the 'DS for Interest Expense' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_INTEREST_EXPENSE_FEATURE_COUNT = DS_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'DS for Interest Expense' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_INTEREST_EXPENSE_OPERATION_COUNT = DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.DS_for_Health_and_Pension_InsuranceImpl DS for Health and Pension Insurance}' class. + * + * + * @see Taxation.impl.DS_for_Health_and_Pension_InsuranceImpl + * @see Taxation.impl.TaxationPackageImpl#getDS_for_Health_and_Pension_Insurance() + * @generated + */ + int DS_FOR_HEALTH_AND_PENSION_INSURANCE = 42; + + /** + * The feature id for the 'Maximum deductible amount' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_HEALTH_AND_PENSION_INSURANCE__MAXIMUM_DEDUCTIBLE_AMOUNT = DS__MAXIMUM_DEDUCTIBLE_AMOUNT; + + /** + * The feature id for the 'Id3' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_HEALTH_AND_PENSION_INSURANCE__ID3 = DS__ID3; + + /** + * The feature id for the 'Insurance category' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY = DS_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'DS for Health and Pension Insurance' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_HEALTH_AND_PENSION_INSURANCE_FEATURE_COUNT = DS_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'DS for Health and Pension Insurance' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_HEALTH_AND_PENSION_INSURANCE_OPERATION_COUNT = DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.DS_for_Private_Insurance_and_PlanImpl DS for Private Insurance and Plan}' class. + * + * + * @see Taxation.impl.DS_for_Private_Insurance_and_PlanImpl + * @see Taxation.impl.TaxationPackageImpl#getDS_for_Private_Insurance_and_Plan() + * @generated + */ + int DS_FOR_PRIVATE_INSURANCE_AND_PLAN = 43; + + /** + * The feature id for the 'Maximum deductible amount' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT = DS__MAXIMUM_DEDUCTIBLE_AMOUNT; + + /** + * The feature id for the 'Id3' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_PRIVATE_INSURANCE_AND_PLAN__ID3 = DS__ID3; + + /** + * The feature id for the 'Private insurance and plan category' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY = DS_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Increase for life insurance' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_PRIVATE_INSURANCE_AND_PLAN__INCREASE_FOR_LIFE_INSURANCE = DS_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Maximum deductible amount for private insurance' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE = DS_FEATURE_COUNT + 2; + + /** + * The feature id for the 'Maximum deductible amount for old age pension plan' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN = DS_FEATURE_COUNT + 3; + + /** + * The number of structural features of the 'DS for Private Insurance and Plan' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_PRIVATE_INSURANCE_AND_PLAN_FEATURE_COUNT = DS_FEATURE_COUNT + 4; + + /** + * The number of operations of the 'DS for Private Insurance and Plan' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_PRIVATE_INSURANCE_AND_PLAN_OPERATION_COUNT = DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.DS_for_Loss_CarryforwardImpl DS for Loss Carryforward}' class. + * + * + * @see Taxation.impl.DS_for_Loss_CarryforwardImpl + * @see Taxation.impl.TaxationPackageImpl#getDS_for_Loss_Carryforward() + * @generated + */ + int DS_FOR_LOSS_CARRYFORWARD = 44; + + /** + * The feature id for the 'Maximum deductible amount' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_LOSS_CARRYFORWARD__MAXIMUM_DEDUCTIBLE_AMOUNT = DS__MAXIMUM_DEDUCTIBLE_AMOUNT; + + /** + * The feature id for the 'Id3' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_LOSS_CARRYFORWARD__ID3 = DS__ID3; + + /** + * The number of structural features of the 'DS for Loss Carryforward' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_LOSS_CARRYFORWARD_FEATURE_COUNT = DS_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'DS for Loss Carryforward' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_LOSS_CARRYFORWARD_OPERATION_COUNT = DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.DS_for_DonationImpl DS for Donation}' class. + * + * + * @see Taxation.impl.DS_for_DonationImpl + * @see Taxation.impl.TaxationPackageImpl#getDS_for_Donation() + * @generated + */ + int DS_FOR_DONATION = 45; + + /** + * The feature id for the 'Maximum deductible amount' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_DONATION__MAXIMUM_DEDUCTIBLE_AMOUNT = DS__MAXIMUM_DEDUCTIBLE_AMOUNT; + + /** + * The feature id for the 'Id3' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_DONATION__ID3 = DS__ID3; + + /** + * The number of structural features of the 'DS for Donation' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_DONATION_FEATURE_COUNT = DS_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'DS for Donation' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_DONATION_OPERATION_COUNT = DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Special_Expense_DSImpl Special Expense DS}' class. + * + * + * @see Taxation.impl.Special_Expense_DSImpl + * @see Taxation.impl.TaxationPackageImpl#getSpecial_Expense_DS() + * @generated + */ + int SPECIAL_EXPENSE_DS = 47; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int SPECIAL_EXPENSE_DS__DECLARED_AMOUNT = EXPENSE__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int SPECIAL_EXPENSE_DS__EXPENSE_PURPOSE = EXPENSE__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int SPECIAL_EXPENSE_DS__DEPENDENT = EXPENSE__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int SPECIAL_EXPENSE_DS__FROM_AGENT = EXPENSE__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int SPECIAL_EXPENSE_DS__INCOME = EXPENSE__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int SPECIAL_EXPENSE_DS__ID4 = EXPENSE__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int SPECIAL_EXPENSE_DS__BENEFICIARY = EXPENSE__BENEFICIARY; + + /** + * The number of structural features of the 'Special Expense DS' class. + * + * + * @generated + * @ordered + */ + int SPECIAL_EXPENSE_DS_FEATURE_COUNT = EXPENSE_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Special Expense DS' class. + * + * + * @generated + * @ordered + */ + int SPECIAL_EXPENSE_DS_OPERATION_COUNT = EXPENSE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Permanent_ExpenseImpl Permanent Expense}' class. + * + * + * @see Taxation.impl.Permanent_ExpenseImpl + * @see Taxation.impl.TaxationPackageImpl#getPermanent_Expense() + * @generated + */ + int PERMANENT_EXPENSE = 46; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE__DECLARED_AMOUNT = SPECIAL_EXPENSE_DS__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE__EXPENSE_PURPOSE = SPECIAL_EXPENSE_DS__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE__DEPENDENT = SPECIAL_EXPENSE_DS__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE__FROM_AGENT = SPECIAL_EXPENSE_DS__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE__INCOME = SPECIAL_EXPENSE_DS__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE__ID4 = SPECIAL_EXPENSE_DS__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE__BENEFICIARY = SPECIAL_EXPENSE_DS__BENEFICIARY; + + /** + * The feature id for the 'Category' attribute. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE__CATEGORY = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Is eligible for deduction' attribute. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE__IS_ELIGIBLE_FOR_DEDUCTION = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Permanent Expense' class. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Permanent Expense' class. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE_OPERATION_COUNT = SPECIAL_EXPENSE_DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Interest_ExpenseImpl Interest Expense}' class. + * + * + * @see Taxation.impl.Interest_ExpenseImpl + * @see Taxation.impl.TaxationPackageImpl#getInterest_Expense() + * @generated + */ + int INTEREST_EXPENSE = 48; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int INTEREST_EXPENSE__DECLARED_AMOUNT = SPECIAL_EXPENSE_DS__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int INTEREST_EXPENSE__EXPENSE_PURPOSE = SPECIAL_EXPENSE_DS__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int INTEREST_EXPENSE__DEPENDENT = SPECIAL_EXPENSE_DS__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int INTEREST_EXPENSE__FROM_AGENT = SPECIAL_EXPENSE_DS__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int INTEREST_EXPENSE__INCOME = SPECIAL_EXPENSE_DS__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int INTEREST_EXPENSE__ID4 = SPECIAL_EXPENSE_DS__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int INTEREST_EXPENSE__BENEFICIARY = SPECIAL_EXPENSE_DS__BENEFICIARY; + + /** + * The number of structural features of the 'Interest Expense' class. + * + * + * @generated + * @ordered + */ + int INTEREST_EXPENSE_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Interest Expense' class. + * + * + * @generated + * @ordered + */ + int INTEREST_EXPENSE_OPERATION_COUNT = SPECIAL_EXPENSE_DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Private_Insurance_and_PlanImpl Private Insurance and Plan}' class. + * + * + * @see Taxation.impl.Private_Insurance_and_PlanImpl + * @see Taxation.impl.TaxationPackageImpl#getPrivate_Insurance_and_Plan() + * @generated + */ + int PRIVATE_INSURANCE_AND_PLAN = 49; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__DECLARED_AMOUNT = SPECIAL_EXPENSE_DS__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__EXPENSE_PURPOSE = SPECIAL_EXPENSE_DS__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__DEPENDENT = SPECIAL_EXPENSE_DS__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__FROM_AGENT = SPECIAL_EXPENSE_DS__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__INCOME = SPECIAL_EXPENSE_DS__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__ID4 = SPECIAL_EXPENSE_DS__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__BENEFICIARY = SPECIAL_EXPENSE_DS__BENEFICIARY; + + /** + * The feature id for the 'Category' attribute. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__CATEGORY = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Duration of contract' attribute. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Is private insurance and plan eligible for deduction' attribute. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 2; + + /** + * The number of structural features of the 'Private Insurance and Plan' class. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 3; + + /** + * The number of operations of the 'Private Insurance and Plan' class. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN_OPERATION_COUNT = SPECIAL_EXPENSE_DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Health_and_Pension_InsuranceImpl Health and Pension Insurance}' class. + * + * + * @see Taxation.impl.Health_and_Pension_InsuranceImpl + * @see Taxation.impl.TaxationPackageImpl#getHealth_and_Pension_Insurance() + * @generated + */ + int HEALTH_AND_PENSION_INSURANCE = 50; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE__DECLARED_AMOUNT = SPECIAL_EXPENSE_DS__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE__EXPENSE_PURPOSE = SPECIAL_EXPENSE_DS__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE__DEPENDENT = SPECIAL_EXPENSE_DS__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE__FROM_AGENT = SPECIAL_EXPENSE_DS__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE__INCOME = SPECIAL_EXPENSE_DS__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE__ID4 = SPECIAL_EXPENSE_DS__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE__BENEFICIARY = SPECIAL_EXPENSE_DS__BENEFICIARY; + + /** + * The feature id for the 'Category' attribute. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE__CATEGORY = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Is related to additional salary' attribute. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE__IS_RELATED_TO_ADDITIONAL_SALARY = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Health and Pension Insurance' class. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Health and Pension Insurance' class. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE_OPERATION_COUNT = SPECIAL_EXPENSE_DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.DonationImpl Donation}' class. + * + * + * @see Taxation.impl.DonationImpl + * @see Taxation.impl.TaxationPackageImpl#getDonation() + * @generated + */ + int DONATION = 51; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int DONATION__DECLARED_AMOUNT = SPECIAL_EXPENSE_DS__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int DONATION__EXPENSE_PURPOSE = SPECIAL_EXPENSE_DS__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int DONATION__DEPENDENT = SPECIAL_EXPENSE_DS__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int DONATION__FROM_AGENT = SPECIAL_EXPENSE_DS__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int DONATION__INCOME = SPECIAL_EXPENSE_DS__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int DONATION__ID4 = SPECIAL_EXPENSE_DS__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int DONATION__BENEFICIARY = SPECIAL_EXPENSE_DS__BENEFICIARY; + + /** + * The feature id for the 'Beneficiary1' attribute. + * + * + * @generated + * @ordered + */ + int DONATION__BENEFICIARY1 = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Is beneficiary eligible' attribute. + * + * + * @generated + * @ordered + */ + int DONATION__IS_BENEFICIARY_ELIGIBLE = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Is donation reported' attribute. + * + * + * @generated + * @ordered + */ + int DONATION__IS_DONATION_REPORTED = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 2; + + /** + * The number of structural features of the 'Donation' class. + * + * + * @generated + * @ordered + */ + int DONATION_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 3; + + /** + * The number of operations of the 'Donation' class. + * + * + * @generated + * @ordered + */ + int DONATION_OPERATION_COUNT = SPECIAL_EXPENSE_DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Loss_CarryforwardImpl Loss Carryforward}' class. + * + * + * @see Taxation.impl.Loss_CarryforwardImpl + * @see Taxation.impl.TaxationPackageImpl#getLoss_Carryforward() + * @generated + */ + int LOSS_CARRYFORWARD = 52; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD__DECLARED_AMOUNT = SPECIAL_EXPENSE_DS__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD__EXPENSE_PURPOSE = SPECIAL_EXPENSE_DS__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD__DEPENDENT = SPECIAL_EXPENSE_DS__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD__FROM_AGENT = SPECIAL_EXPENSE_DS__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD__INCOME = SPECIAL_EXPENSE_DS__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD__ID4 = SPECIAL_EXPENSE_DS__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD__BENEFICIARY = SPECIAL_EXPENSE_DS__BENEFICIARY; + + /** + * The feature id for the 'Regular accountability' attribute. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD__REGULAR_ACCOUNTABILITY = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Compensation by other means' attribute. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD__COMPENSATION_BY_OTHER_MEANS = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Tax payer has inherited business ownership' attribute. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD__TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 2; + + /** + * The feature id for the 'Tax payer has been partner in business' attribute. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD__TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 3; + + /** + * The number of structural features of the 'Loss Carryforward' class. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 4; + + /** + * The number of operations of the 'Loss Carryforward' class. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD_OPERATION_COUNT = SPECIAL_EXPENSE_DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Spousal_Expense_ACImpl Spousal Expense AC}' class. + * + * + * @see Taxation.impl.Spousal_Expense_ACImpl + * @see Taxation.impl.TaxationPackageImpl#getSpousal_Expense_AC() + * @generated + */ + int SPOUSAL_EXPENSE_AC = 53; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int SPOUSAL_EXPENSE_AC__DECLARED_AMOUNT = EXPENSE__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int SPOUSAL_EXPENSE_AC__EXPENSE_PURPOSE = EXPENSE__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int SPOUSAL_EXPENSE_AC__DEPENDENT = EXPENSE__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int SPOUSAL_EXPENSE_AC__FROM_AGENT = EXPENSE__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int SPOUSAL_EXPENSE_AC__INCOME = EXPENSE__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int SPOUSAL_EXPENSE_AC__ID4 = EXPENSE__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int SPOUSAL_EXPENSE_AC__BENEFICIARY = EXPENSE__BENEFICIARY; + + /** + * The number of structural features of the 'Spousal Expense AC' class. + * + * + * @generated + * @ordered + */ + int SPOUSAL_EXPENSE_AC_FEATURE_COUNT = EXPENSE_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Spousal Expense AC' class. + * + * + * @generated + * @ordered + */ + int SPOUSAL_EXPENSE_AC_OPERATION_COUNT = EXPENSE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Extraordinary_Expense_CEImpl Extraordinary Expense CE}' class. + * + * + * @see Taxation.impl.Extraordinary_Expense_CEImpl + * @see Taxation.impl.TaxationPackageImpl#getExtraordinary_Expense_CE() + * @generated + */ + int EXTRAORDINARY_EXPENSE_CE = 54; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE__DECLARED_AMOUNT = EXPENSE__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE__EXPENSE_PURPOSE = EXPENSE__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE__DEPENDENT = EXPENSE__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE__FROM_AGENT = EXPENSE__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE__INCOME = EXPENSE__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE__ID4 = EXPENSE__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE__BENEFICIARY = EXPENSE__BENEFICIARY; + + /** + * The feature id for the 'Thresholded deduction percentage' attribute. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE__THRESHOLDED_DEDUCTION_PERCENTAGE = EXPENSE_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Ce type' attribute. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE__CE_TYPE = EXPENSE_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Extraordinary Expense CE' class. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE_FEATURE_COUNT = EXPENSE_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Extraordinary Expense CE' class. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE_OPERATION_COUNT = EXPENSE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Professional_ExpenseImpl Professional Expense}' class. + * + * + * @see Taxation.impl.Professional_ExpenseImpl + * @see Taxation.impl.TaxationPackageImpl#getProfessional_Expense() + * @generated + */ + int PROFESSIONAL_EXPENSE = 56; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSE__DECLARED_AMOUNT = EXPENSE__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSE__EXPENSE_PURPOSE = EXPENSE__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSE__DEPENDENT = EXPENSE__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSE__FROM_AGENT = EXPENSE__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSE__INCOME = EXPENSE__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSE__ID4 = EXPENSE__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSE__BENEFICIARY = EXPENSE__BENEFICIARY; + + /** + * The number of structural features of the 'Professional Expense' class. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSE_FEATURE_COUNT = EXPENSE_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Professional Expense' class. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSE_OPERATION_COUNT = EXPENSE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Travel_Expense_FDImpl Travel Expense FD}' class. + * + * + * @see Taxation.impl.Travel_Expense_FDImpl + * @see Taxation.impl.TaxationPackageImpl#getTravel_Expense_FD() + * @generated + */ + int TRAVEL_EXPENSE_FD = 55; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int TRAVEL_EXPENSE_FD__DECLARED_AMOUNT = PROFESSIONAL_EXPENSE__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int TRAVEL_EXPENSE_FD__EXPENSE_PURPOSE = PROFESSIONAL_EXPENSE__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int TRAVEL_EXPENSE_FD__DEPENDENT = PROFESSIONAL_EXPENSE__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int TRAVEL_EXPENSE_FD__FROM_AGENT = PROFESSIONAL_EXPENSE__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int TRAVEL_EXPENSE_FD__INCOME = PROFESSIONAL_EXPENSE__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int TRAVEL_EXPENSE_FD__ID4 = PROFESSIONAL_EXPENSE__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int TRAVEL_EXPENSE_FD__BENEFICIARY = PROFESSIONAL_EXPENSE__BENEFICIARY; + + /** + * The number of structural features of the 'Travel Expense FD' class. + * + * + * @generated + * @ordered + */ + int TRAVEL_EXPENSE_FD_FEATURE_COUNT = PROFESSIONAL_EXPENSE_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Travel Expense FD' class. + * + * + * @generated + * @ordered + */ + int TRAVEL_EXPENSE_FD_OPERATION_COUNT = PROFESSIONAL_EXPENSE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.impl.Miscellaneous_Expense_FOImpl Miscellaneous Expense FO}' class. + * + * + * @see Taxation.impl.Miscellaneous_Expense_FOImpl + * @see Taxation.impl.TaxationPackageImpl#getMiscellaneous_Expense_FO() + * @generated + */ + int MISCELLANEOUS_EXPENSE_FO = 57; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int MISCELLANEOUS_EXPENSE_FO__DECLARED_AMOUNT = PROFESSIONAL_EXPENSE__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int MISCELLANEOUS_EXPENSE_FO__EXPENSE_PURPOSE = PROFESSIONAL_EXPENSE__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int MISCELLANEOUS_EXPENSE_FO__DEPENDENT = PROFESSIONAL_EXPENSE__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int MISCELLANEOUS_EXPENSE_FO__FROM_AGENT = PROFESSIONAL_EXPENSE__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int MISCELLANEOUS_EXPENSE_FO__INCOME = PROFESSIONAL_EXPENSE__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int MISCELLANEOUS_EXPENSE_FO__ID4 = PROFESSIONAL_EXPENSE__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int MISCELLANEOUS_EXPENSE_FO__BENEFICIARY = PROFESSIONAL_EXPENSE__BENEFICIARY; + + /** + * The number of structural features of the 'Miscellaneous Expense FO' class. + * + * + * @generated + * @ordered + */ + int MISCELLANEOUS_EXPENSE_FO_FEATURE_COUNT = PROFESSIONAL_EXPENSE_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Miscellaneous Expense FO' class. + * + * + * @generated + * @ordered + */ + int MISCELLANEOUS_EXPENSE_FO_OPERATION_COUNT = PROFESSIONAL_EXPENSE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link Taxation.Grantor Grantor}' enum. + * + * + * @see Taxation.Grantor + * @see Taxation.impl.TaxationPackageImpl#getGrantor() + * @generated + */ + int GRANTOR = 58; + + /** + * The meta object id for the '{@link Taxation.Disability_Types Disability Types}' enum. + * + * + * @see Taxation.Disability_Types + * @see Taxation.impl.TaxationPackageImpl#getDisability_Types() + * @generated + */ + int DISABILITY_TYPES = 59; + + /** + * The meta object id for the '{@link Taxation.Country Country}' enum. + * + * + * @see Taxation.Country + * @see Taxation.impl.TaxationPackageImpl#getCountry() + * @generated + */ + int COUNTRY = 60; + + /** + * The meta object id for the '{@link Taxation.Tax_Card_Type Tax Card Type}' enum. + * + * + * @see Taxation.Tax_Card_Type + * @see Taxation.impl.TaxationPackageImpl#getTax_Card_Type() + * @generated + */ + int TAX_CARD_TYPE = 61; + + /** + * The meta object id for the '{@link Taxation.Tax_Office Tax Office}' enum. + * + * + * @see Taxation.Tax_Office + * @see Taxation.impl.TaxationPackageImpl#getTax_Office() + * @generated + */ + int TAX_OFFICE = 62; + + /** + * The meta object id for the '{@link Taxation.Tax_Class_Category Tax Class Category}' enum. + * + * + * @see Taxation.Tax_Class_Category + * @see Taxation.impl.TaxationPackageImpl#getTax_Class_Category() + * @generated + */ + int TAX_CLASS_CATEGORY = 63; + + /** + * The meta object id for the '{@link Taxation.Job_Activity Job Activity}' enum. + * + * + * @see Taxation.Job_Activity + * @see Taxation.impl.TaxationPackageImpl#getJob_Activity() + * @generated + */ + int JOB_ACTIVITY = 64; + + /** + * The meta object id for the '{@link Taxation.Town Town}' enum. + * + * + * @see Taxation.Town + * @see Taxation.impl.TaxationPackageImpl#getTown() + * @generated + */ + int TOWN = 65; + + /** + * The meta object id for the '{@link Taxation.Type_of_Rate Type of Rate}' enum. + * + * + * @see Taxation.Type_of_Rate + * @see Taxation.impl.TaxationPackageImpl#getType_of_Rate() + * @generated + */ + int TYPE_OF_RATE = 66; + + /** + * The meta object id for the '{@link Taxation.CE_Type CE Type}' enum. + * + * + * @see Taxation.CE_Type + * @see Taxation.impl.TaxationPackageImpl#getCE_Type() + * @generated + */ + int CE_TYPE = 67; + + /** + * The meta object id for the '{@link Taxation.Expense_Purpose Expense Purpose}' enum. + * + * + * @see Taxation.Expense_Purpose + * @see Taxation.impl.TaxationPackageImpl#getExpense_Purpose() + * @generated + */ + int EXPENSE_PURPOSE = 68; + + /** + * The meta object id for the '{@link Taxation.Dependent_Type Dependent Type}' enum. + * + * + * @see Taxation.Dependent_Type + * @see Taxation.impl.TaxationPackageImpl#getDependent_Type() + * @generated + */ + int DEPENDENT_TYPE = 69; + + /** + * The meta object id for the '{@link Taxation.Separation_Causes Separation Causes}' enum. + * + * + * @see Taxation.Separation_Causes + * @see Taxation.impl.TaxationPackageImpl#getSeparation_Causes() + * @generated + */ + int SEPARATION_CAUSES = 70; + + /** + * The meta object id for the '{@link Taxation.Category_of_Permanent_Expense Category of Permanent Expense}' enum. + * + * + * @see Taxation.Category_of_Permanent_Expense + * @see Taxation.impl.TaxationPackageImpl#getCategory_of_Permanent_Expense() + * @generated + */ + int CATEGORY_OF_PERMANENT_EXPENSE = 71; + + /** + * The meta object id for the '{@link Taxation.Category_of_Health_and_Pension_Insurances Category of Health and Pension Insurances}' enum. + * + * + * @see Taxation.Category_of_Health_and_Pension_Insurances + * @see Taxation.impl.TaxationPackageImpl#getCategory_of_Health_and_Pension_Insurances() + * @generated + */ + int CATEGORY_OF_HEALTH_AND_PENSION_INSURANCES = 72; + + /** + * The meta object id for the '{@link Taxation.Category_of_Private_Insurance_and_Plan Category of Private Insurance and Plan}' enum. + * + * + * @see Taxation.Category_of_Private_Insurance_and_Plan + * @see Taxation.impl.TaxationPackageImpl#getCategory_of_Private_Insurance_and_Plan() + * @generated + */ + int CATEGORY_OF_PRIVATE_INSURANCE_AND_PLAN = 73; + + /** + * The meta object id for the '{@link Taxation.Legal_Union_Types Legal Union Types}' enum. + * + * + * @see Taxation.Legal_Union_Types + * @see Taxation.impl.TaxationPackageImpl#getLegal_Union_Types() + * @generated + */ + int LEGAL_UNION_TYPES = 74; + + + /** + * Returns the meta object for class '{@link Taxation.Constants Constants}'. + * + * + * @return the meta object for class 'Constants'. + * @see Taxation.Constants + * @generated + */ + EClass getConstants(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD}'. + * + * + * @return the meta object for the attribute 'MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD'. + * @see Taxation.Constants#getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE}'. + * + * + * @return the meta object for the attribute 'MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE'. + * @see Taxation.Constants#getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getMINIMUM_SALARY MINIMUM SALARY}'. + * + * + * @return the meta object for the attribute 'MINIMUM SALARY'. + * @see Taxation.Constants#getMINIMUM_SALARY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MINIMUM_SALARY(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION}'. + * + * + * @return the meta object for the attribute 'FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION'. + * @see Taxation.Constants#getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS}'. + * + * + * @return the meta object for the attribute 'MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS'. + * @see Taxation.Constants#getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS}'. + * + * + * @return the meta object for the attribute 'MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS'. + * @see Taxation.Constants#getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC}'. + * + * + * @return the meta object for the attribute 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC'. + * @see Taxation.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE}'. + * + * + * @return the meta object for the attribute 'MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE'. + * @see Taxation.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}'. + * + * + * @return the meta object for the attribute 'MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION'. + * @see Taxation.Constants#getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION}'. + * + * + * @return the meta object for the attribute 'MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION'. + * @see Taxation.Constants#getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}'. + * + * + * @return the meta object for the attribute 'MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION'. + * @see Taxation.Constants#getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getFLAT_RATE_CIM_DAILY FLAT RATE CIM DAILY}'. + * + * + * @return the meta object for the attribute 'FLAT RATE CIM DAILY'. + * @see Taxation.Constants#getFLAT_RATE_CIM_DAILY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_CIM_DAILY(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getFLAT_RATE_CIM_MONTHLY FLAT RATE CIM MONTHLY}'. + * + * + * @return the meta object for the attribute 'FLAT RATE CIM MONTHLY'. + * @see Taxation.Constants#getFLAT_RATE_CIM_MONTHLY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_CIM_MONTHLY(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getFLAT_RATE_CIM_YEARLY FLAT RATE CIM YEARLY}'. + * + * + * @return the meta object for the attribute 'FLAT RATE CIM YEARLY'. + * @see Taxation.Constants#getFLAT_RATE_CIM_YEARLY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_CIM_YEARLY(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getFLAT_RATE_CIP_DAILY FLAT RATE CIP DAILY}'. + * + * + * @return the meta object for the attribute 'FLAT RATE CIP DAILY'. + * @see Taxation.Constants#getFLAT_RATE_CIP_DAILY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_CIP_DAILY(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getFLAT_RATE_CIP_MONTHLY FLAT RATE CIP MONTHLY}'. + * + * + * @return the meta object for the attribute 'FLAT RATE CIP MONTHLY'. + * @see Taxation.Constants#getFLAT_RATE_CIP_MONTHLY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_CIP_MONTHLY(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getFLAT_RATE_CIP_YEARLY FLAT RATE CIP YEARLY}'. + * + * + * @return the meta object for the attribute 'FLAT RATE CIP YEARLY'. + * @see Taxation.Constants#getFLAT_RATE_CIP_YEARLY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_CIP_YEARLY(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getFLAT_RATE_CIS_DAILY FLAT RATE CIS DAILY}'. + * + * + * @return the meta object for the attribute 'FLAT RATE CIS DAILY'. + * @see Taxation.Constants#getFLAT_RATE_CIS_DAILY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_CIS_DAILY(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getFLAT_RATE_CIS_MONTHLY FLAT RATE CIS MONTHLY}'. + * + * + * @return the meta object for the attribute 'FLAT RATE CIS MONTHLY'. + * @see Taxation.Constants#getFLAT_RATE_CIS_MONTHLY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_CIS_MONTHLY(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getFLAT_RATE_CIS_YEARLY FLAT RATE CIS YEARLY}'. + * + * + * @return the meta object for the attribute 'FLAT RATE CIS YEARLY'. + * @see Taxation.Constants#getFLAT_RATE_CIS_YEARLY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_CIS_YEARLY(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT FLAT RATE FOR TRAVEL EXPENSE PER UNIT}'. + * + * + * @return the meta object for the attribute 'FLAT RATE FOR TRAVEL EXPENSE PER UNIT'. + * @see Taxation.Constants#getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS MAXIMUM DEDUCTIBLE AMOUNT FOR DS}'. + * + * + * @return the meta object for the attribute 'MAXIMUM DEDUCTIBLE AMOUNT FOR DS'. + * @see Taxation.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE FLAT RATE FOR MISCELLANEOUS EXPENSE}'. + * + * + * @return the meta object for the attribute 'FLAT RATE FOR MISCELLANEOUS EXPENSE'. + * @see Taxation.Constants#getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE}'. + * + * + * @return the meta object for the attribute 'DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE'. + * @see Taxation.Constants#getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE}'. + * + * + * @return the meta object for the attribute 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE'. + * @see Taxation.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE(); + + /** + * Returns the meta object for class '{@link Taxation.Income_Tax Income Tax}'. + * + * + * @return the meta object for class 'Income Tax'. + * @see Taxation.Income_Tax + * @generated + */ + EClass getIncome_Tax(); + + /** + * Returns the meta object for the reference '{@link Taxation.Income_Tax#getTaxPayer Tax Payer}'. + * + * + * @return the meta object for the reference 'Tax Payer'. + * @see Taxation.Income_Tax#getTaxPayer() + * @see #getIncome_Tax() + * @generated + */ + EReference getIncome_Tax_TaxPayer(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income_Tax#getTax_amount Tax amount}'. + * + * + * @return the meta object for the attribute 'Tax amount'. + * @see Taxation.Income_Tax#getTax_amount() + * @see #getIncome_Tax() + * @generated + */ + EAttribute getIncome_Tax_Tax_amount(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income_Tax#getTax_year Tax year}'. + * + * + * @return the meta object for the attribute 'Tax year'. + * @see Taxation.Income_Tax#getTax_year() + * @see #getIncome_Tax() + * @generated + */ + EAttribute getIncome_Tax_Tax_year(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income_Tax#getId6 Id6}'. + * + * + * @return the meta object for the attribute 'Id6'. + * @see Taxation.Income_Tax#getId6() + * @see #getIncome_Tax() + * @generated + */ + EAttribute getIncome_Tax_Id6(); + + /** + * Returns the meta object for class '{@link Taxation.Tax_Payer Tax Payer}'. + * + * + * @return the meta object for class 'Tax Payer'. + * @see Taxation.Tax_Payer + * @generated + */ + EClass getTax_Payer(); + + /** + * Returns the meta object for the containment reference list '{@link Taxation.Tax_Payer#getDependents Dependents}'. + * + * + * @return the meta object for the containment reference list 'Dependents'. + * @see Taxation.Tax_Payer#getDependents() + * @see #getTax_Payer() + * @generated + */ + EReference getTax_Payer_Dependents(); + + /** + * Returns the meta object for the containment reference '{@link Taxation.Tax_Payer#getFrom_agent From agent}'. + * + * + * @return the meta object for the containment reference 'From agent'. + * @see Taxation.Tax_Payer#getFrom_agent() + * @see #getTax_Payer() + * @generated + */ + EReference getTax_Payer_From_agent(); + + /** + * Returns the meta object for the containment reference list '{@link Taxation.Tax_Payer#getIncomes Incomes}'. + * + * + * @return the meta object for the containment reference list 'Incomes'. + * @see Taxation.Tax_Payer#getIncomes() + * @see #getTax_Payer() + * @generated + */ + EReference getTax_Payer_Incomes(); + + /** + * Returns the meta object for the containment reference '{@link Taxation.Tax_Payer#getFrom_law From law}'. + * + * + * @return the meta object for the containment reference 'From law'. + * @see Taxation.Tax_Payer#getFrom_law() + * @see #getTax_Payer() + * @generated + */ + EReference getTax_Payer_From_law(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Payer#getTaxesDue Taxes Due}'. + * + * + * @return the meta object for the attribute 'Taxes Due'. + * @see Taxation.Tax_Payer#getTaxesDue() + * @see #getTax_Payer() + * @generated + */ + EAttribute getTax_Payer_TaxesDue(); + + /** + * Returns the meta object for class '{@link Taxation.Physical_Person Physical Person}'. + * + * + * @return the meta object for class 'Physical Person'. + * @see Taxation.Physical_Person + * @generated + */ + EClass getPhysical_Person(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Physical_Person#isIs_assisting_spouse Is assisting spouse}'. + * + * + * @return the meta object for the attribute 'Is assisting spouse'. + * @see Taxation.Physical_Person#isIs_assisting_spouse() + * @see #getPhysical_Person() + * @generated + */ + EAttribute getPhysical_Person_Is_assisting_spouse(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Physical_Person#getSSNo SS No}'. + * + * + * @return the meta object for the attribute 'SS No'. + * @see Taxation.Physical_Person#getSSNo() + * @see #getPhysical_Person() + * @generated + */ + EAttribute getPhysical_Person_SSNo(); + + /** + * Returns the meta object for the reference list '{@link Taxation.Physical_Person#getAddresses Addresses}'. + * + * + * @return the meta object for the reference list 'Addresses'. + * @see Taxation.Physical_Person#getAddresses() + * @see #getPhysical_Person() + * @generated + */ + EReference getPhysical_Person_Addresses(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Physical_Person#getBirth_year Birth year}'. + * + * + * @return the meta object for the attribute 'Birth year'. + * @see Taxation.Physical_Person#getBirth_year() + * @see #getPhysical_Person() + * @generated + */ + EAttribute getPhysical_Person_Birth_year(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Physical_Person#getDisability_percentage Disability percentage}'. + * + * + * @return the meta object for the attribute 'Disability percentage'. + * @see Taxation.Physical_Person#getDisability_percentage() + * @see #getPhysical_Person() + * @generated + */ + EAttribute getPhysical_Person_Disability_percentage(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Physical_Person#getDisability_type Disability type}'. + * + * + * @return the meta object for the attribute 'Disability type'. + * @see Taxation.Physical_Person#getDisability_type() + * @see #getPhysical_Person() + * @generated + */ + EAttribute getPhysical_Person_Disability_type(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Physical_Person#isIs_affiliated_personnaly_to_social_security Is affiliated personnaly to social security}'. + * + * + * @return the meta object for the attribute 'Is affiliated personnaly to social security'. + * @see Taxation.Physical_Person#isIs_affiliated_personnaly_to_social_security() + * @see #getPhysical_Person() + * @generated + */ + EAttribute getPhysical_Person_Is_affiliated_personnaly_to_social_security(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Physical_Person#getBirth_month Birth month}'. + * + * + * @return the meta object for the attribute 'Birth month'. + * @see Taxation.Physical_Person#getBirth_month() + * @see #getPhysical_Person() + * @generated + */ + EAttribute getPhysical_Person_Birth_month(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Physical_Person#getBirth_day Birth day}'. + * + * + * @return the meta object for the attribute 'Birth day'. + * @see Taxation.Physical_Person#getBirth_day() + * @see #getPhysical_Person() + * @generated + */ + EAttribute getPhysical_Person_Birth_day(); + + /** + * Returns the meta object for the reference list '{@link Taxation.Physical_Person#getExpenses Expenses}'. + * + * + * @return the meta object for the reference list 'Expenses'. + * @see Taxation.Physical_Person#getExpenses() + * @see #getPhysical_Person() + * @generated + */ + EReference getPhysical_Person_Expenses(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Physical_Person#isIs_widower Is widower}'. + * + * + * @return the meta object for the attribute 'Is widower'. + * @see Taxation.Physical_Person#isIs_widower() + * @see #getPhysical_Person() + * @generated + */ + EAttribute getPhysical_Person_Is_widower(); + + /** + * Returns the meta object for the containment reference list '{@link Taxation.Physical_Person#getOwns_Address Owns Address}'. + * + * + * @return the meta object for the containment reference list 'Owns Address'. + * @see Taxation.Physical_Person#getOwns_Address() + * @see #getPhysical_Person() + * @generated + */ + EReference getPhysical_Person_Owns_Address(); + + /** + * Returns the meta object for class '{@link Taxation.Address Address}'. + * + * + * @return the meta object for class 'Address'. + * @see Taxation.Address + * @generated + */ + EClass getAddress(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Address#getCountry Country}'. + * + * + * @return the meta object for the attribute 'Country'. + * @see Taxation.Address#getCountry() + * @see #getAddress() + * @generated + */ + EAttribute getAddress_Country(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Address#getStreet Street}'. + * + * + * @return the meta object for the attribute 'Street'. + * @see Taxation.Address#getStreet() + * @see #getAddress() + * @generated + */ + EAttribute getAddress_Street(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Address#getZipCode Zip Code}'. + * + * + * @return the meta object for the attribute 'Zip Code'. + * @see Taxation.Address#getZipCode() + * @see #getAddress() + * @generated + */ + EAttribute getAddress_ZipCode(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Address#getCity City}'. + * + * + * @return the meta object for the attribute 'City'. + * @see Taxation.Address#getCity() + * @see #getAddress() + * @generated + */ + EAttribute getAddress_City(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Address#getId2 Id2}'. + * + * + * @return the meta object for the attribute 'Id2'. + * @see Taxation.Address#getId2() + * @see #getAddress() + * @generated + */ + EAttribute getAddress_Id2(); + + /** + * Returns the meta object for the reference list '{@link Taxation.Address#getTaxPayer Tax Payer}'. + * + * + * @return the meta object for the reference list 'Tax Payer'. + * @see Taxation.Address#getTaxPayer() + * @see #getAddress() + * @generated + */ + EReference getAddress_TaxPayer(); + + /** + * Returns the meta object for class '{@link Taxation.Expense Expense}'. + * + * + * @return the meta object for class 'Expense'. + * @see Taxation.Expense + * @generated + */ + EClass getExpense(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Expense#getDeclared_amount Declared amount}'. + * + * + * @return the meta object for the attribute 'Declared amount'. + * @see Taxation.Expense#getDeclared_amount() + * @see #getExpense() + * @generated + */ + EAttribute getExpense_Declared_amount(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Expense#getExpense_purpose Expense purpose}'. + * + * + * @return the meta object for the attribute 'Expense purpose'. + * @see Taxation.Expense#getExpense_purpose() + * @see #getExpense() + * @generated + */ + EAttribute getExpense_Expense_purpose(); + + /** + * Returns the meta object for the reference '{@link Taxation.Expense#getDependent Dependent}'. + * + * + * @return the meta object for the reference 'Dependent'. + * @see Taxation.Expense#getDependent() + * @see #getExpense() + * @generated + */ + EReference getExpense_Dependent(); + + /** + * Returns the meta object for the reference '{@link Taxation.Expense#getFrom_agent From agent}'. + * + * + * @return the meta object for the reference 'From agent'. + * @see Taxation.Expense#getFrom_agent() + * @see #getExpense() + * @generated + */ + EReference getExpense_From_agent(); + + /** + * Returns the meta object for the container reference '{@link Taxation.Expense#getIncome Income}'. + * + * + * @return the meta object for the container reference 'Income'. + * @see Taxation.Expense#getIncome() + * @see #getExpense() + * @generated + */ + EReference getExpense_Income(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Expense#getId4 Id4}'. + * + * + * @return the meta object for the attribute 'Id4'. + * @see Taxation.Expense#getId4() + * @see #getExpense() + * @generated + */ + EAttribute getExpense_Id4(); + + /** + * Returns the meta object for the reference '{@link Taxation.Expense#getBeneficiary Beneficiary}'. + * + * + * @return the meta object for the reference 'Beneficiary'. + * @see Taxation.Expense#getBeneficiary() + * @see #getExpense() + * @generated + */ + EReference getExpense_Beneficiary(); + + /** + * Returns the meta object for class '{@link Taxation.Dependent Dependent}'. + * + * + * @return the meta object for class 'Dependent'. + * @see Taxation.Dependent + * @generated + */ + EClass getDependent(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Dependent#getDependent_type Dependent type}'. + * + * + * @return the meta object for the attribute 'Dependent type'. + * @see Taxation.Dependent#getDependent_type() + * @see #getDependent() + * @generated + */ + EAttribute getDependent_Dependent_type(); + + /** + * Returns the meta object for the container reference '{@link Taxation.Dependent#getResponsible_person Responsible person}'. + * + * + * @return the meta object for the container reference 'Responsible person'. + * @see Taxation.Dependent#getResponsible_person() + * @see #getDependent() + * @generated + */ + EReference getDependent_Responsible_person(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Dependent#isContinued_studies Continued studies}'. + * + * + * @return the meta object for the attribute 'Continued studies'. + * @see Taxation.Dependent#isContinued_studies() + * @see #getDependent() + * @generated + */ + EAttribute getDependent_Continued_studies(); + + /** + * Returns the meta object for the containment reference '{@link Taxation.Dependent#getAllowances Allowances}'. + * + * + * @return the meta object for the containment reference 'Allowances'. + * @see Taxation.Dependent#getAllowances() + * @see #getDependent() + * @generated + */ + EReference getDependent_Allowances(); + + /** + * Returns the meta object for the container reference '{@link Taxation.Dependent#getHousehold Household}'. + * + * + * @return the meta object for the container reference 'Household'. + * @see Taxation.Dependent#getHousehold() + * @see #getDependent() + * @generated + */ + EReference getDependent_Household(); + + /** + * Returns the meta object for the reference '{@link Taxation.Dependent#getFrom_agent From agent}'. + * + * + * @return the meta object for the reference 'From agent'. + * @see Taxation.Dependent#getFrom_agent() + * @see #getDependent() + * @generated + */ + EReference getDependent_From_agent(); + + /** + * Returns the meta object for the reference list '{@link Taxation.Dependent#getExpense Expense}'. + * + * + * @return the meta object for the reference list 'Expense'. + * @see Taxation.Dependent#getExpense() + * @see #getDependent() + * @generated + */ + EReference getDependent_Expense(); + + /** + * Returns the meta object for class '{@link Taxation.External_Allowance External Allowance}'. + * + * + * @return the meta object for class 'External Allowance'. + * @see Taxation.External_Allowance + * @generated + */ + EClass getExternal_Allowance(); + + /** + * Returns the meta object for the attribute '{@link Taxation.External_Allowance#getAmount Amount}'. + * + * + * @return the meta object for the attribute 'Amount'. + * @see Taxation.External_Allowance#getAmount() + * @see #getExternal_Allowance() + * @generated + */ + EAttribute getExternal_Allowance_Amount(); + + /** + * Returns the meta object for the attribute '{@link Taxation.External_Allowance#getGrantor Grantor}'. + * + * + * @return the meta object for the attribute 'Grantor'. + * @see Taxation.External_Allowance#getGrantor() + * @see #getExternal_Allowance() + * @generated + */ + EAttribute getExternal_Allowance_Grantor(); + + /** + * Returns the meta object for the attribute '{@link Taxation.External_Allowance#getStarting_year Starting year}'. + * + * + * @return the meta object for the attribute 'Starting year'. + * @see Taxation.External_Allowance#getStarting_year() + * @see #getExternal_Allowance() + * @generated + */ + EAttribute getExternal_Allowance_Starting_year(); + + /** + * Returns the meta object for the attribute '{@link Taxation.External_Allowance#getEnding_year Ending year}'. + * + * + * @return the meta object for the attribute 'Ending year'. + * @see Taxation.External_Allowance#getEnding_year() + * @see #getExternal_Allowance() + * @generated + */ + EAttribute getExternal_Allowance_Ending_year(); + + /** + * Returns the meta object for the reference '{@link Taxation.External_Allowance#getReciver Reciver}'. + * + * + * @return the meta object for the reference 'Reciver'. + * @see Taxation.External_Allowance#getReciver() + * @see #getExternal_Allowance() + * @generated + */ + EReference getExternal_Allowance_Reciver(); + + /** + * Returns the meta object for the attribute '{@link Taxation.External_Allowance#getId5 Id5}'. + * + * + * @return the meta object for the attribute 'Id5'. + * @see Taxation.External_Allowance#getId5() + * @see #getExternal_Allowance() + * @generated + */ + EAttribute getExternal_Allowance_Id5(); + + /** + * Returns the meta object for the container reference '{@link Taxation.External_Allowance#getPerson Person}'. + * + * + * @return the meta object for the container reference 'Person'. + * @see Taxation.External_Allowance#getPerson() + * @see #getExternal_Allowance() + * @generated + */ + EReference getExternal_Allowance_Person(); + + /** + * Returns the meta object for class '{@link Taxation.Household Household}'. + * + * + * @return the meta object for class 'Household'. + * @see Taxation.Household + * @generated + */ + EClass getHousehold(); + + /** + * Returns the meta object for the containment reference '{@link Taxation.Household#getParents Parents}'. + * + * + * @return the meta object for the containment reference 'Parents'. + * @see Taxation.Household#getParents() + * @see #getHousehold() + * @generated + */ + EReference getHousehold_Parents(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Household#getId1 Id1}'. + * + * + * @return the meta object for the attribute 'Id1'. + * @see Taxation.Household#getId1() + * @see #getHousehold() + * @generated + */ + EAttribute getHousehold_Id1(); + + /** + * Returns the meta object for the containment reference list '{@link Taxation.Household#getChildren Children}'. + * + * + * @return the meta object for the containment reference list 'Children'. + * @see Taxation.Household#getChildren() + * @see #getHousehold() + * @generated + */ + EReference getHousehold_Children(); + + /** + * Returns the meta object for class '{@link Taxation.Legal_Union_Record Legal Union Record}'. + * + * + * @return the meta object for class 'Legal Union Record'. + * @see Taxation.Legal_Union_Record + * @generated + */ + EClass getLegal_Union_Record(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Legal_Union_Record#getStart_year Start year}'. + * + * + * @return the meta object for the attribute 'Start year'. + * @see Taxation.Legal_Union_Record#getStart_year() + * @see #getLegal_Union_Record() + * @generated + */ + EAttribute getLegal_Union_Record_Start_year(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Legal_Union_Record#getEnd_year End year}'. + * + * + * @return the meta object for the attribute 'End year'. + * @see Taxation.Legal_Union_Record#getEnd_year() + * @see #getLegal_Union_Record() + * @generated + */ + EAttribute getLegal_Union_Record_End_year(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Legal_Union_Record#getSeparation_cause Separation cause}'. + * + * + * @return the meta object for the attribute 'Separation cause'. + * @see Taxation.Legal_Union_Record#getSeparation_cause() + * @see #getLegal_Union_Record() + * @generated + */ + EAttribute getLegal_Union_Record_Separation_cause(); + + /** + * Returns the meta object for the containment reference '{@link Taxation.Legal_Union_Record#getIndividual_A Individual A}'. + * + * + * @return the meta object for the containment reference 'Individual A'. + * @see Taxation.Legal_Union_Record#getIndividual_A() + * @see #getLegal_Union_Record() + * @generated + */ + EReference getLegal_Union_Record_Individual_A(); + + /** + * Returns the meta object for the containment reference list '{@link Taxation.Legal_Union_Record#getIndividual_B Individual B}'. + * + * + * @return the meta object for the containment reference list 'Individual B'. + * @see Taxation.Legal_Union_Record#getIndividual_B() + * @see #getLegal_Union_Record() + * @generated + */ + EReference getLegal_Union_Record_Individual_B(); + + /** + * Returns the meta object for the containment reference list '{@link Taxation.Legal_Union_Record#getProperties Properties}'. + * + * + * @return the meta object for the containment reference list 'Properties'. + * @see Taxation.Legal_Union_Record#getProperties() + * @see #getLegal_Union_Record() + * @generated + */ + EReference getLegal_Union_Record_Properties(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Legal_Union_Record#isMutual_agreement Mutual agreement}'. + * + * + * @return the meta object for the attribute 'Mutual agreement'. + * @see Taxation.Legal_Union_Record#isMutual_agreement() + * @see #getLegal_Union_Record() + * @generated + */ + EAttribute getLegal_Union_Record_Mutual_agreement(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Legal_Union_Record#getId9 Id9}'. + * + * + * @return the meta object for the attribute 'Id9'. + * @see Taxation.Legal_Union_Record#getId9() + * @see #getLegal_Union_Record() + * @generated + */ + EAttribute getLegal_Union_Record_Id9(); + + /** + * Returns the meta object for the container reference '{@link Taxation.Legal_Union_Record#getHousehold Household}'. + * + * + * @return the meta object for the container reference 'Household'. + * @see Taxation.Legal_Union_Record#getHousehold() + * @see #getLegal_Union_Record() + * @generated + */ + EReference getLegal_Union_Record_Household(); + + /** + * Returns the meta object for class '{@link Taxation.Tax_Property Tax Property}'. + * + * + * @return the meta object for class 'Tax Property'. + * @see Taxation.Tax_Property + * @generated + */ + EClass getTax_Property(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Property#getStarting_year Starting year}'. + * + * + * @return the meta object for the attribute 'Starting year'. + * @see Taxation.Tax_Property#getStarting_year() + * @see #getTax_Property() + * @generated + */ + EAttribute getTax_Property_Starting_year(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Property#getId10 Id10}'. + * + * + * @return the meta object for the attribute 'Id10'. + * @see Taxation.Tax_Property#getId10() + * @see #getTax_Property() + * @generated + */ + EAttribute getTax_Property_Id10(); + + /** + * Returns the meta object for the container reference '{@link Taxation.Tax_Property#getUnion_record Union record}'. + * + * + * @return the meta object for the container reference 'Union record'. + * @see Taxation.Tax_Property#getUnion_record() + * @see #getTax_Property() + * @generated + */ + EReference getTax_Property_Union_record(); + + /** + * Returns the meta object for class '{@link Taxation.Tax_Case Tax Case}'. + * + * + * @return the meta object for class 'Tax Case'. + * @see Taxation.Tax_Case + * @generated + */ + EClass getTax_Case(); + + /** + * Returns the meta object for class '{@link Taxation.FromAgent From Agent}'. + * + * + * @return the meta object for class 'From Agent'. + * @see Taxation.FromAgent + * @generated + */ + EClass getFromAgent(); + + /** + * Returns the meta object for the container reference '{@link Taxation.FromAgent#getTaxPayer Tax Payer}'. + * + * + * @return the meta object for the container reference 'Tax Payer'. + * @see Taxation.FromAgent#getTaxPayer() + * @see #getFromAgent() + * @generated + */ + EReference getFromAgent_TaxPayer(); + + /** + * Returns the meta object for the attribute '{@link Taxation.FromAgent#isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care Is dependent eligible for CE Not In Houshold Children Care}'. + * + * + * @return the meta object for the attribute 'Is dependent eligible for CE Not In Houshold Children Care'. + * @see Taxation.FromAgent#isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care() + * @see #getFromAgent() + * @generated + */ + EAttribute getFromAgent_Is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care(); + + /** + * Returns the meta object for the reference '{@link Taxation.FromAgent#getExpense Expense}'. + * + * + * @return the meta object for the reference 'Expense'. + * @see Taxation.FromAgent#getExpense() + * @see #getFromAgent() + * @generated + */ + EReference getFromAgent_Expense(); + + /** + * Returns the meta object for the attribute '{@link Taxation.FromAgent#isIs_eligible_debt Is eligible debt}'. + * + * + * @return the meta object for the attribute 'Is eligible debt'. + * @see Taxation.FromAgent#isIs_eligible_debt() + * @see #getFromAgent() + * @generated + */ + EAttribute getFromAgent_Is_eligible_debt(); + + /** + * Returns the meta object for the reference '{@link Taxation.FromAgent#getDependent Dependent}'. + * + * + * @return the meta object for the reference 'Dependent'. + * @see Taxation.FromAgent#getDependent() + * @see #getFromAgent() + * @generated + */ + EReference getFromAgent_Dependent(); + + /** + * Returns the meta object for class '{@link Taxation.Income Income}'. + * + * + * @return the meta object for class 'Income'. + * @see Taxation.Income + * @generated + */ + EClass getIncome(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income#getIncome_amount Income amount}'. + * + * + * @return the meta object for the attribute 'Income amount'. + * @see Taxation.Income#getIncome_amount() + * @see #getIncome() + * @generated + */ + EAttribute getIncome_Income_amount(); + + /** + * Returns the meta object for the containment reference '{@link Taxation.Income#getIncome_type Income type}'. + * + * + * @return the meta object for the containment reference 'Income type'. + * @see Taxation.Income#getIncome_type() + * @see #getIncome() + * @generated + */ + EReference getIncome_Income_type(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income#getStart_date_within_taxation_year Start date within taxation year}'. + * + * + * @return the meta object for the attribute 'Start date within taxation year'. + * @see Taxation.Income#getStart_date_within_taxation_year() + * @see #getIncome() + * @generated + */ + EAttribute getIncome_Start_date_within_taxation_year(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income#getStart_date_of_contract Start date of contract}'. + * + * + * @return the meta object for the attribute 'Start date of contract'. + * @see Taxation.Income#getStart_date_of_contract() + * @see #getIncome() + * @generated + */ + EAttribute getIncome_Start_date_of_contract(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income#getEnd_date_within_taxation_year End date within taxation year}'. + * + * + * @return the meta object for the attribute 'End date within taxation year'. + * @see Taxation.Income#getEnd_date_within_taxation_year() + * @see #getIncome() + * @generated + */ + EAttribute getIncome_End_date_within_taxation_year(); + + /** + * Returns the meta object for the containment reference '{@link Taxation.Income#getTax_card Tax card}'. + * + * + * @return the meta object for the containment reference 'Tax card'. + * @see Taxation.Income#getTax_card() + * @see #getIncome() + * @generated + */ + EReference getIncome_Tax_card(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income#getTax_liability Tax liability}'. + * + * + * @return the meta object for the attribute 'Tax liability'. + * @see Taxation.Income#getTax_liability() + * @see #getIncome() + * @generated + */ + EAttribute getIncome_Tax_liability(); + + /** + * Returns the meta object for the container reference '{@link Taxation.Income#getTaxPayer Tax Payer}'. + * + * + * @return the meta object for the container reference 'Tax Payer'. + * @see Taxation.Income#getTaxPayer() + * @see #getIncome() + * @generated + */ + EReference getIncome_TaxPayer(); + + /** + * Returns the meta object for the containment reference list '{@link Taxation.Income#getDetails Details}'. + * + * + * @return the meta object for the containment reference list 'Details'. + * @see Taxation.Income#getDetails() + * @see #getIncome() + * @generated + */ + EReference getIncome_Details(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income#getNum Num}'. + * + * + * @return the meta object for the attribute 'Num'. + * @see Taxation.Income#getNum() + * @see #getIncome() + * @generated + */ + EAttribute getIncome_Num(); + + /** + * Returns the meta object for the containment reference list '{@link Taxation.Income#getExpenses Expenses}'. + * + * + * @return the meta object for the containment reference list 'Expenses'. + * @see Taxation.Income#getExpenses() + * @see #getIncome() + * @generated + */ + EReference getIncome_Expenses(); + + /** + * Returns the meta object for class '{@link Taxation.Income_Type Income Type}'. + * + * + * @return the meta object for class 'Income Type'. + * @see Taxation.Income_Type + * @generated + */ + EClass getIncome_Type(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income_Type#isSubjectToWithholdingTax Subject To Withholding Tax}'. + * + * + * @return the meta object for the attribute 'Subject To Withholding Tax'. + * @see Taxation.Income_Type#isSubjectToWithholdingTax() + * @see #getIncome_Type() + * @generated + */ + EAttribute getIncome_Type_SubjectToWithholdingTax(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income_Type#getId8 Id8}'. + * + * + * @return the meta object for the attribute 'Id8'. + * @see Taxation.Income_Type#getId8() + * @see #getIncome_Type() + * @generated + */ + EAttribute getIncome_Type_Id8(); + + /** + * Returns the meta object for the container reference '{@link Taxation.Income_Type#getIncome Income}'. + * + * + * @return the meta object for the container reference 'Income'. + * @see Taxation.Income_Type#getIncome() + * @see #getIncome_Type() + * @generated + */ + EReference getIncome_Type_Income(); + + /** + * Returns the meta object for class '{@link Taxation.Tax_Card Tax Card}'. + * + * + * @return the meta object for class 'Tax Card'. + * @see Taxation.Tax_Card + * @generated + */ + EClass getTax_Card(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getCard_identifier Card identifier}'. + * + * + * @return the meta object for the attribute 'Card identifier'. + * @see Taxation.Tax_Card#getCard_identifier() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Card_identifier(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getTax_card_type Tax card type}'. + * + * + * @return the meta object for the attribute 'Tax card type'. + * @see Taxation.Tax_Card#getTax_card_type() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Tax_card_type(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getTax_office Tax office}'. + * + * + * @return the meta object for the attribute 'Tax office'. + * @see Taxation.Tax_Card#getTax_office() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Tax_office(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getValid_from_date Valid from date}'. + * + * + * @return the meta object for the attribute 'Valid from date'. + * @see Taxation.Tax_Card#getValid_from_date() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Valid_from_date(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getValid_until_date Valid until date}'. + * + * + * @return the meta object for the attribute 'Valid until date'. + * @see Taxation.Tax_Card#getValid_until_date() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Valid_until_date(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getPercentage_of_witholding Percentage of witholding}'. + * + * + * @return the meta object for the attribute 'Percentage of witholding'. + * @see Taxation.Tax_Card#getPercentage_of_witholding() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Percentage_of_witholding(); + + /** + * Returns the meta object for the attribute list '{@link Taxation.Tax_Card#getTax_payers_name_surname Tax payers name surname}'. + * + * + * @return the meta object for the attribute list 'Tax payers name surname'. + * @see Taxation.Tax_Card#getTax_payers_name_surname() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Tax_payers_name_surname(); + + /** + * Returns the meta object for the attribute list '{@link Taxation.Tax_Card#getTax_payers_partner_name_surname Tax payers partner name surname}'. + * + * + * @return the meta object for the attribute list 'Tax payers partner name surname'. + * @see Taxation.Tax_Card#getTax_payers_partner_name_surname() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Tax_payers_partner_name_surname(); + + /** + * Returns the meta object for the reference '{@link Taxation.Tax_Card#getTax_payers_address Tax payers address}'. + * + * + * @return the meta object for the reference 'Tax payers address'. + * @see Taxation.Tax_Card#getTax_payers_address() + * @see #getTax_Card() + * @generated + */ + EReference getTax_Card_Tax_payers_address(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getJobs_Employer_SSNo Jobs Employer SS No}'. + * + * + * @return the meta object for the attribute 'Jobs Employer SS No'. + * @see Taxation.Tax_Card#getJobs_Employer_SSNo() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Jobs_Employer_SSNo(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getJobs_employers_name Jobs employers name}'. + * + * + * @return the meta object for the attribute 'Jobs employers name'. + * @see Taxation.Tax_Card#getJobs_employers_name() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Jobs_employers_name(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getJobs_activity_type Jobs activity type}'. + * + * + * @return the meta object for the attribute 'Jobs activity type'. + * @see Taxation.Tax_Card#getJobs_activity_type() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Jobs_activity_type(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getJobs_place_of_work Jobs place of work}'. + * + * + * @return the meta object for the attribute 'Jobs place of work'. + * @see Taxation.Tax_Card#getJobs_place_of_work() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Jobs_place_of_work(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getDeduction_FD_daily Deduction FD daily}'. + * + * + * @return the meta object for the attribute 'Deduction FD daily'. + * @see Taxation.Tax_Card#getDeduction_FD_daily() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_FD_daily(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getDeduction_FD_monthly Deduction FD monthly}'. + * + * + * @return the meta object for the attribute 'Deduction FD monthly'. + * @see Taxation.Tax_Card#getDeduction_FD_monthly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_FD_monthly(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getDeduction_AC_daily Deduction AC daily}'. + * + * + * @return the meta object for the attribute 'Deduction AC daily'. + * @see Taxation.Tax_Card#getDeduction_AC_daily() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_AC_daily(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getDeduction_AC_monthly Deduction AC monthly}'. + * + * + * @return the meta object for the attribute 'Deduction AC monthly'. + * @see Taxation.Tax_Card#getDeduction_AC_monthly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_AC_monthly(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getDeduction_AC_yearly Deduction AC yearly}'. + * + * + * @return the meta object for the attribute 'Deduction AC yearly'. + * @see Taxation.Tax_Card#getDeduction_AC_yearly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_AC_yearly(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getDeduction_CE_daily Deduction CE daily}'. + * + * + * @return the meta object for the attribute 'Deduction CE daily'. + * @see Taxation.Tax_Card#getDeduction_CE_daily() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_CE_daily(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getDeduction_CE_monthly Deduction CE monthly}'. + * + * + * @return the meta object for the attribute 'Deduction CE monthly'. + * @see Taxation.Tax_Card#getDeduction_CE_monthly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_CE_monthly(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getDeduction_CE_yearly Deduction CE yearly}'. + * + * + * @return the meta object for the attribute 'Deduction CE yearly'. + * @see Taxation.Tax_Card#getDeduction_CE_yearly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_CE_yearly(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getDeduction_DS_daily Deduction DS daily}'. + * + * + * @return the meta object for the attribute 'Deduction DS daily'. + * @see Taxation.Tax_Card#getDeduction_DS_daily() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_DS_daily(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getDeduction_DS_monthly Deduction DS monthly}'. + * + * + * @return the meta object for the attribute 'Deduction DS monthly'. + * @see Taxation.Tax_Card#getDeduction_DS_monthly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_DS_monthly(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getDeduction_FO_daily Deduction FO daily}'. + * + * + * @return the meta object for the attribute 'Deduction FO daily'. + * @see Taxation.Tax_Card#getDeduction_FO_daily() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_FO_daily(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getDeduction_FO_monthly Deduction FO monthly}'. + * + * + * @return the meta object for the attribute 'Deduction FO monthly'. + * @see Taxation.Tax_Card#getDeduction_FO_monthly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_FO_monthly(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getDeduction_FO_yearly Deduction FO yearly}'. + * + * + * @return the meta object for the attribute 'Deduction FO yearly'. + * @see Taxation.Tax_Card#getDeduction_FO_yearly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_FO_yearly(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getCredit_CIS_daily Credit CIS daily}'. + * + * + * @return the meta object for the attribute 'Credit CIS daily'. + * @see Taxation.Tax_Card#getCredit_CIS_daily() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Credit_CIS_daily(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getCredit_CIS_monthly Credit CIS monthly}'. + * + * + * @return the meta object for the attribute 'Credit CIS monthly'. + * @see Taxation.Tax_Card#getCredit_CIS_monthly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Credit_CIS_monthly(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getCredit_CIM_daily Credit CIM daily}'. + * + * + * @return the meta object for the attribute 'Credit CIM daily'. + * @see Taxation.Tax_Card#getCredit_CIM_daily() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Credit_CIM_daily(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#isValidity Validity}'. + * + * + * @return the meta object for the attribute 'Validity'. + * @see Taxation.Tax_Card#isValidity() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Validity(); + + /** + * Returns the meta object for the reference list '{@link Taxation.Tax_Card#getIncome_Tax_Credit Income Tax Credit}'. + * + * + * @return the meta object for the reference list 'Income Tax Credit'. + * @see Taxation.Tax_Card#getIncome_Tax_Credit() + * @see #getTax_Card() + * @generated + */ + EReference getTax_Card_Income_Tax_Credit(); + + /** + * Returns the meta object for the reference '{@link Taxation.Tax_Card#getPrevious Previous}'. + * + * + * @return the meta object for the reference 'Previous'. + * @see Taxation.Tax_Card#getPrevious() + * @see #getTax_Card() + * @generated + */ + EReference getTax_Card_Previous(); + + /** + * Returns the meta object for the reference '{@link Taxation.Tax_Card#getCurrent_tax_card Current tax card}'. + * + * + * @return the meta object for the reference 'Current tax card'. + * @see Taxation.Tax_Card#getCurrent_tax_card() + * @see #getTax_Card() + * @generated + */ + EReference getTax_Card_Current_tax_card(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getCredit_CIM_yearly Credit CIM yearly}'. + * + * + * @return the meta object for the attribute 'Credit CIM yearly'. + * @see Taxation.Tax_Card#getCredit_CIM_yearly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Credit_CIM_yearly(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getDeduction_DS_Alimony_yearly Deduction DS Alimony yearly}'. + * + * + * @return the meta object for the attribute 'Deduction DS Alimony yearly'. + * @see Taxation.Tax_Card#getDeduction_DS_Alimony_yearly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_DS_Alimony_yearly(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getDeduction_DS_Debt_yearly Deduction DS Debt yearly}'. + * + * + * @return the meta object for the attribute 'Deduction DS Debt yearly'. + * @see Taxation.Tax_Card#getDeduction_DS_Debt_yearly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_DS_Debt_yearly(); + + /** + * Returns the meta object for the container reference '{@link Taxation.Tax_Card#getIncome Income}'. + * + * + * @return the meta object for the container reference 'Income'. + * @see Taxation.Tax_Card#getIncome() + * @see #getTax_Card() + * @generated + */ + EReference getTax_Card_Income(); + + /** + * Returns the meta object for class '{@link Taxation.Income_Tax_Credit Income Tax Credit}'. + * + * + * @return the meta object for class 'Income Tax Credit'. + * @see Taxation.Income_Tax_Credit + * @generated + */ + EClass getIncome_Tax_Credit(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income_Tax_Credit#getGrantedBy Granted By}'. + * + * + * @return the meta object for the attribute 'Granted By'. + * @see Taxation.Income_Tax_Credit#getGrantedBy() + * @see #getIncome_Tax_Credit() + * @generated + */ + EAttribute getIncome_Tax_Credit_GrantedBy(); + + /** + * Returns the meta object for the reference '{@link Taxation.Income_Tax_Credit#getTaxPayer Tax Payer}'. + * + * + * @return the meta object for the reference 'Tax Payer'. + * @see Taxation.Income_Tax_Credit#getTaxPayer() + * @see #getIncome_Tax_Credit() + * @generated + */ + EReference getIncome_Tax_Credit_TaxPayer(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income_Tax_Credit#getTax_year Tax year}'. + * + * + * @return the meta object for the attribute 'Tax year'. + * @see Taxation.Income_Tax_Credit#getTax_year() + * @see #getIncome_Tax_Credit() + * @generated + */ + EAttribute getIncome_Tax_Credit_Tax_year(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income_Tax_Credit#getYearly Yearly}'. + * + * + * @return the meta object for the attribute 'Yearly'. + * @see Taxation.Income_Tax_Credit#getYearly() + * @see #getIncome_Tax_Credit() + * @generated + */ + EAttribute getIncome_Tax_Credit_Yearly(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income_Tax_Credit#getMonthly Monthly}'. + * + * + * @return the meta object for the attribute 'Monthly'. + * @see Taxation.Income_Tax_Credit#getMonthly() + * @see #getIncome_Tax_Credit() + * @generated + */ + EAttribute getIncome_Tax_Credit_Monthly(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income_Tax_Credit#getDaily Daily}'. + * + * + * @return the meta object for the attribute 'Daily'. + * @see Taxation.Income_Tax_Credit#getDaily() + * @see #getIncome_Tax_Credit() + * @generated + */ + EAttribute getIncome_Tax_Credit_Daily(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income_Tax_Credit#getId7 Id7}'. + * + * + * @return the meta object for the attribute 'Id7'. + * @see Taxation.Income_Tax_Credit#getId7() + * @see #getIncome_Tax_Credit() + * @generated + */ + EAttribute getIncome_Tax_Credit_Id7(); + + /** + * Returns the meta object for the reference '{@link Taxation.Income_Tax_Credit#getTaxation_Frame Taxation Frame}'. + * + * + * @return the meta object for the reference 'Taxation Frame'. + * @see Taxation.Income_Tax_Credit#getTaxation_Frame() + * @see #getIncome_Tax_Credit() + * @generated + */ + EReference getIncome_Tax_Credit_Taxation_Frame(); + + /** + * Returns the meta object for class '{@link Taxation.Income_Detail Income Detail}'. + * + * + * @return the meta object for class 'Income Detail'. + * @see Taxation.Income_Detail + * @generated + */ + EClass getIncome_Detail(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income_Detail#getAmount Amount}'. + * + * + * @return the meta object for the attribute 'Amount'. + * @see Taxation.Income_Detail#getAmount() + * @see #getIncome_Detail() + * @generated + */ + EAttribute getIncome_Detail_Amount(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income_Detail#isIs_worked Is worked}'. + * + * + * @return the meta object for the attribute 'Is worked'. + * @see Taxation.Income_Detail#isIs_worked() + * @see #getIncome_Detail() + * @generated + */ + EAttribute getIncome_Detail_Is_worked(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income_Detail#getDistance Distance}'. + * + * + * @return the meta object for the attribute 'Distance'. + * @see Taxation.Income_Detail#getDistance() + * @see #getIncome_Detail() + * @generated + */ + EAttribute getIncome_Detail_Distance(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income_Detail#getWorked_days Worked days}'. + * + * + * @return the meta object for the attribute 'Worked days'. + * @see Taxation.Income_Detail#getWorked_days() + * @see #getIncome_Detail() + * @generated + */ + EAttribute getIncome_Detail_Worked_days(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income_Detail#isIs_contributing_CNS Is contributing CNS}'. + * + * + * @return the meta object for the attribute 'Is contributing CNS'. + * @see Taxation.Income_Detail#isIs_contributing_CNS() + * @see #getIncome_Detail() + * @generated + */ + EAttribute getIncome_Detail_Is_contributing_CNS(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Income_Detail#getId5 Id5}'. + * + * + * @return the meta object for the attribute 'Id5'. + * @see Taxation.Income_Detail#getId5() + * @see #getIncome_Detail() + * @generated + */ + EAttribute getIncome_Detail_Id5(); + + /** + * Returns the meta object for the container reference '{@link Taxation.Income_Detail#getIncome Income}'. + * + * + * @return the meta object for the container reference 'Income'. + * @see Taxation.Income_Detail#getIncome() + * @see #getIncome_Detail() + * @generated + */ + EReference getIncome_Detail_Income(); + + /** + * Returns the meta object for class '{@link Taxation.FromLaw From Law}'. + * + * + * @return the meta object for class 'From Law'. + * @see Taxation.FromLaw + * @generated + */ + EClass getFromLaw(); + + /** + * Returns the meta object for the attribute '{@link Taxation.FromLaw#getId Id}'. + * + * + * @return the meta object for the attribute 'Id'. + * @see Taxation.FromLaw#getId() + * @see #getFromLaw() + * @generated + */ + EAttribute getFromLaw_Id(); + + /** + * Returns the meta object for the container reference '{@link Taxation.FromLaw#getTaxPayer Tax Payer}'. + * + * + * @return the meta object for the container reference 'Tax Payer'. + * @see Taxation.FromLaw#getTaxPayer() + * @see #getFromLaw() + * @generated + */ + EReference getFromLaw_TaxPayer(); + + /** + * Returns the meta object for class '{@link Taxation.Fiscal_Address Fiscal Address}'. + * + * + * @return the meta object for class 'Fiscal Address'. + * @see Taxation.Fiscal_Address + * @generated + */ + EClass getFiscal_Address(); + + /** + * Returns the meta object for class '{@link Taxation.Habitual_Address Habitual Address}'. + * + * + * @return the meta object for class 'Habitual Address'. + * @see Taxation.Habitual_Address + * @generated + */ + EClass getHabitual_Address(); + + /** + * Returns the meta object for class '{@link Taxation.Marriage_Record Marriage Record}'. + * + * + * @return the meta object for class 'Marriage Record'. + * @see Taxation.Marriage_Record + * @generated + */ + EClass getMarriage_Record(); + + /** + * Returns the meta object for class '{@link Taxation.Non_Resident_Tax_Payer Non Resident Tax Payer}'. + * + * + * @return the meta object for class 'Non Resident Tax Payer'. + * @see Taxation.Non_Resident_Tax_Payer + * @generated + */ + EClass getNon_Resident_Tax_Payer(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Non_Resident_Tax_Payer#isIs_assimilated_to_resident Is assimilated to resident}'. + * + * + * @return the meta object for the attribute 'Is assimilated to resident'. + * @see Taxation.Non_Resident_Tax_Payer#isIs_assimilated_to_resident() + * @see #getNon_Resident_Tax_Payer() + * @generated + */ + EAttribute getNon_Resident_Tax_Payer_Is_assimilated_to_resident(); + + /** + * Returns the meta object for class '{@link Taxation.Partnership_Record Partnership Record}'. + * + * + * @return the meta object for class 'Partnership Record'. + * @see Taxation.Partnership_Record + * @generated + */ + EClass getPartnership_Record(); + + /** + * Returns the meta object for class '{@link Taxation.Resident_Tax_Payer Resident Tax Payer}'. + * + * + * @return the meta object for class 'Resident Tax Payer'. + * @see Taxation.Resident_Tax_Payer + * @generated + */ + EClass getResident_Tax_Payer(); + + /** + * Returns the meta object for class '{@link Taxation.Trade_and_Business_Income Trade and Business Income}'. + * + * + * @return the meta object for class 'Trade and Business Income'. + * @see Taxation.Trade_and_Business_Income + * @generated + */ + EClass getTrade_and_Business_Income(); + + /** + * Returns the meta object for class '{@link Taxation.Agriculture_and_Forestry_Income Agriculture and Forestry Income}'. + * + * + * @return the meta object for class 'Agriculture and Forestry Income'. + * @see Taxation.Agriculture_and_Forestry_Income + * @generated + */ + EClass getAgriculture_and_Forestry_Income(); + + /** + * Returns the meta object for class '{@link Taxation.Pensions_and_Annuities_Income Pensions and Annuities Income}'. + * + * + * @return the meta object for class 'Pensions and Annuities Income'. + * @see Taxation.Pensions_and_Annuities_Income + * @generated + */ + EClass getPensions_and_Annuities_Income(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Pensions_and_Annuities_Income#isOccasional_payement Occasional payement}'. + * + * + * @return the meta object for the attribute 'Occasional payement'. + * @see Taxation.Pensions_and_Annuities_Income#isOccasional_payement() + * @see #getPensions_and_Annuities_Income() + * @generated + */ + EAttribute getPensions_and_Annuities_Income_Occasional_payement(); + + /** + * Returns the meta object for class '{@link Taxation.Capital_and_Investments_Income Capital and Investments Income}'. + * + * + * @return the meta object for class 'Capital and Investments Income'. + * @see Taxation.Capital_and_Investments_Income + * @generated + */ + EClass getCapital_and_Investments_Income(); + + /** + * Returns the meta object for class '{@link Taxation.Employment_Income Employment Income}'. + * + * + * @return the meta object for class 'Employment Income'. + * @see Taxation.Employment_Income + * @generated + */ + EClass getEmployment_Income(); + + /** + * Returns the meta object for class '{@link Taxation.Rentals_and_Leases_Income Rentals and Leases Income}'. + * + * + * @return the meta object for class 'Rentals and Leases Income'. + * @see Taxation.Rentals_and_Leases_Income + * @generated + */ + EClass getRentals_and_Leases_Income(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Rentals_and_Leases_Income#isIs_periodic Is periodic}'. + * + * + * @return the meta object for the attribute 'Is periodic'. + * @see Taxation.Rentals_and_Leases_Income#isIs_periodic() + * @see #getRentals_and_Leases_Income() + * @generated + */ + EAttribute getRentals_and_Leases_Income_Is_periodic(); + + /** + * Returns the meta object for class '{@link Taxation.Foreign_Income Foreign Income}'. + * + * + * @return the meta object for class 'Foreign Income'. + * @see Taxation.Foreign_Income + * @generated + */ + EClass getForeign_Income(); + + /** + * Returns the meta object for class '{@link Taxation.Local_Income Local Income}'. + * + * + * @return the meta object for class 'Local Income'. + * @see Taxation.Local_Income + * @generated + */ + EClass getLocal_Income(); + + /** + * Returns the meta object for class '{@link Taxation.CIM CIM}'. + * + * + * @return the meta object for class 'CIM'. + * @see Taxation.CIM + * @generated + */ + EClass getCIM(); + + /** + * Returns the meta object for class '{@link Taxation.CIP CIP}'. + * + * + * @return the meta object for class 'CIP'. + * @see Taxation.CIP + * @generated + */ + EClass getCIP(); + + /** + * Returns the meta object for class '{@link Taxation.CIS CIS}'. + * + * + * @return the meta object for class 'CIS'. + * @see Taxation.CIS + * @generated + */ + EClass getCIS(); + + /** + * Returns the meta object for class '{@link Taxation.FD FD}'. + * + * + * @return the meta object for class 'FD'. + * @see Taxation.FD + * @generated + */ + EClass getFD(); + + /** + * Returns the meta object for the attribute '{@link Taxation.FD#getDistance_declared_in_january Distance declared in january}'. + * + * + * @return the meta object for the attribute 'Distance declared in january'. + * @see Taxation.FD#getDistance_declared_in_january() + * @see #getFD() + * @generated + */ + EAttribute getFD_Distance_declared_in_january(); + + /** + * Returns the meta object for the attribute '{@link Taxation.FD#getCalculated_distance Calculated distance}'. + * + * + * @return the meta object for the attribute 'Calculated distance'. + * @see Taxation.FD#getCalculated_distance() + * @see #getFD() + * @generated + */ + EAttribute getFD_Calculated_distance(); + + /** + * Returns the meta object for class '{@link Taxation.Professional_Expenses_Deduction Professional Expenses Deduction}'. + * + * + * @return the meta object for class 'Professional Expenses Deduction'. + * @see Taxation.Professional_Expenses_Deduction + * @generated + */ + EClass getProfessional_Expenses_Deduction(); + + /** + * Returns the meta object for class '{@link Taxation.FO FO}'. + * + * + * @return the meta object for class 'FO'. + * @see Taxation.FO + * @generated + */ + EClass getFO(); + + /** + * Returns the meta object for the attribute '{@link Taxation.FO#getRate_type_for_FO Rate type for FO}'. + * + * + * @return the meta object for the attribute 'Rate type for FO'. + * @see Taxation.FO#getRate_type_for_FO() + * @see #getFO() + * @generated + */ + EAttribute getFO_Rate_type_for_FO(); + + /** + * Returns the meta object for class '{@link Taxation.DS_for_Permanent_Expense DS for Permanent Expense}'. + * + * + * @return the meta object for class 'DS for Permanent Expense'. + * @see Taxation.DS_for_Permanent_Expense + * @generated + */ + EClass getDS_for_Permanent_Expense(); + + /** + * Returns the meta object for the attribute '{@link Taxation.DS_for_Permanent_Expense#getPermanent_expense_category Permanent expense category}'. + * + * + * @return the meta object for the attribute 'Permanent expense category'. + * @see Taxation.DS_for_Permanent_Expense#getPermanent_expense_category() + * @see #getDS_for_Permanent_Expense() + * @generated + */ + EAttribute getDS_for_Permanent_Expense_Permanent_expense_category(); + + /** + * Returns the meta object for class '{@link Taxation.DS DS}'. + * + * + * @return the meta object for class 'DS'. + * @see Taxation.DS + * @generated + */ + EClass getDS(); + + /** + * Returns the meta object for the attribute '{@link Taxation.DS#getMaximum_deductible_amount Maximum deductible amount}'. + * + * + * @return the meta object for the attribute 'Maximum deductible amount'. + * @see Taxation.DS#getMaximum_deductible_amount() + * @see #getDS() + * @generated + */ + EAttribute getDS_Maximum_deductible_amount(); + + /** + * Returns the meta object for the attribute '{@link Taxation.DS#getId3 Id3}'. + * + * + * @return the meta object for the attribute 'Id3'. + * @see Taxation.DS#getId3() + * @see #getDS() + * @generated + */ + EAttribute getDS_Id3(); + + /** + * Returns the meta object for class '{@link Taxation.DS_for_Interest_Expense DS for Interest Expense}'. + * + * + * @return the meta object for class 'DS for Interest Expense'. + * @see Taxation.DS_for_Interest_Expense + * @generated + */ + EClass getDS_for_Interest_Expense(); + + /** + * Returns the meta object for class '{@link Taxation.DS_for_Health_and_Pension_Insurance DS for Health and Pension Insurance}'. + * + * + * @return the meta object for class 'DS for Health and Pension Insurance'. + * @see Taxation.DS_for_Health_and_Pension_Insurance + * @generated + */ + EClass getDS_for_Health_and_Pension_Insurance(); + + /** + * Returns the meta object for the attribute '{@link Taxation.DS_for_Health_and_Pension_Insurance#getInsurance_category Insurance category}'. + * + * + * @return the meta object for the attribute 'Insurance category'. + * @see Taxation.DS_for_Health_and_Pension_Insurance#getInsurance_category() + * @see #getDS_for_Health_and_Pension_Insurance() + * @generated + */ + EAttribute getDS_for_Health_and_Pension_Insurance_Insurance_category(); + + /** + * Returns the meta object for class '{@link Taxation.DS_for_Private_Insurance_and_Plan DS for Private Insurance and Plan}'. + * + * + * @return the meta object for class 'DS for Private Insurance and Plan'. + * @see Taxation.DS_for_Private_Insurance_and_Plan + * @generated + */ + EClass getDS_for_Private_Insurance_and_Plan(); + + /** + * Returns the meta object for the attribute '{@link Taxation.DS_for_Private_Insurance_and_Plan#getPrivate_insurance_and_plan_category Private insurance and plan category}'. + * + * + * @return the meta object for the attribute 'Private insurance and plan category'. + * @see Taxation.DS_for_Private_Insurance_and_Plan#getPrivate_insurance_and_plan_category() + * @see #getDS_for_Private_Insurance_and_Plan() + * @generated + */ + EAttribute getDS_for_Private_Insurance_and_Plan_Private_insurance_and_plan_category(); + + /** + * Returns the meta object for the attribute '{@link Taxation.DS_for_Private_Insurance_and_Plan#getIncrease_for_life_insurance Increase for life insurance}'. + * + * + * @return the meta object for the attribute 'Increase for life insurance'. + * @see Taxation.DS_for_Private_Insurance_and_Plan#getIncrease_for_life_insurance() + * @see #getDS_for_Private_Insurance_and_Plan() + * @generated + */ + EAttribute getDS_for_Private_Insurance_and_Plan_Increase_for_life_insurance(); + + /** + * Returns the meta object for the attribute '{@link Taxation.DS_for_Private_Insurance_and_Plan#getMaximum_deductible_amount_for_private_insurance Maximum deductible amount for private insurance}'. + * + * + * @return the meta object for the attribute 'Maximum deductible amount for private insurance'. + * @see Taxation.DS_for_Private_Insurance_and_Plan#getMaximum_deductible_amount_for_private_insurance() + * @see #getDS_for_Private_Insurance_and_Plan() + * @generated + */ + EAttribute getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_private_insurance(); + + /** + * Returns the meta object for the attribute '{@link Taxation.DS_for_Private_Insurance_and_Plan#getMaximum_deductible_amount_for_old_age_pension_plan Maximum deductible amount for old age pension plan}'. + * + * + * @return the meta object for the attribute 'Maximum deductible amount for old age pension plan'. + * @see Taxation.DS_for_Private_Insurance_and_Plan#getMaximum_deductible_amount_for_old_age_pension_plan() + * @see #getDS_for_Private_Insurance_and_Plan() + * @generated + */ + EAttribute getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_old_age_pension_plan(); + + /** + * Returns the meta object for class '{@link Taxation.DS_for_Loss_Carryforward DS for Loss Carryforward}'. + * + * + * @return the meta object for class 'DS for Loss Carryforward'. + * @see Taxation.DS_for_Loss_Carryforward + * @generated + */ + EClass getDS_for_Loss_Carryforward(); + + /** + * Returns the meta object for class '{@link Taxation.DS_for_Donation DS for Donation}'. + * + * + * @return the meta object for class 'DS for Donation'. + * @see Taxation.DS_for_Donation + * @generated + */ + EClass getDS_for_Donation(); + + /** + * Returns the meta object for class '{@link Taxation.Permanent_Expense Permanent Expense}'. + * + * + * @return the meta object for class 'Permanent Expense'. + * @see Taxation.Permanent_Expense + * @generated + */ + EClass getPermanent_Expense(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Permanent_Expense#getCategory Category}'. + * + * + * @return the meta object for the attribute 'Category'. + * @see Taxation.Permanent_Expense#getCategory() + * @see #getPermanent_Expense() + * @generated + */ + EAttribute getPermanent_Expense_Category(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Permanent_Expense#isIs_eligible_for_deduction Is eligible for deduction}'. + * + * + * @return the meta object for the attribute 'Is eligible for deduction'. + * @see Taxation.Permanent_Expense#isIs_eligible_for_deduction() + * @see #getPermanent_Expense() + * @generated + */ + EAttribute getPermanent_Expense_Is_eligible_for_deduction(); + + /** + * Returns the meta object for class '{@link Taxation.Special_Expense_DS Special Expense DS}'. + * + * + * @return the meta object for class 'Special Expense DS'. + * @see Taxation.Special_Expense_DS + * @generated + */ + EClass getSpecial_Expense_DS(); + + /** + * Returns the meta object for class '{@link Taxation.Interest_Expense Interest Expense}'. + * + * + * @return the meta object for class 'Interest Expense'. + * @see Taxation.Interest_Expense + * @generated + */ + EClass getInterest_Expense(); + + /** + * Returns the meta object for class '{@link Taxation.Private_Insurance_and_Plan Private Insurance and Plan}'. + * + * + * @return the meta object for class 'Private Insurance and Plan'. + * @see Taxation.Private_Insurance_and_Plan + * @generated + */ + EClass getPrivate_Insurance_and_Plan(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Private_Insurance_and_Plan#getCategory Category}'. + * + * + * @return the meta object for the attribute 'Category'. + * @see Taxation.Private_Insurance_and_Plan#getCategory() + * @see #getPrivate_Insurance_and_Plan() + * @generated + */ + EAttribute getPrivate_Insurance_and_Plan_Category(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Private_Insurance_and_Plan#getDuration_of_contract Duration of contract}'. + * + * + * @return the meta object for the attribute 'Duration of contract'. + * @see Taxation.Private_Insurance_and_Plan#getDuration_of_contract() + * @see #getPrivate_Insurance_and_Plan() + * @generated + */ + EAttribute getPrivate_Insurance_and_Plan_Duration_of_contract(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Private_Insurance_and_Plan#isIs_private_insurance_and_plan_eligible_for_deduction Is private insurance and plan eligible for deduction}'. + * + * + * @return the meta object for the attribute 'Is private insurance and plan eligible for deduction'. + * @see Taxation.Private_Insurance_and_Plan#isIs_private_insurance_and_plan_eligible_for_deduction() + * @see #getPrivate_Insurance_and_Plan() + * @generated + */ + EAttribute getPrivate_Insurance_and_Plan_Is_private_insurance_and_plan_eligible_for_deduction(); + + /** + * Returns the meta object for class '{@link Taxation.Health_and_Pension_Insurance Health and Pension Insurance}'. + * + * + * @return the meta object for class 'Health and Pension Insurance'. + * @see Taxation.Health_and_Pension_Insurance + * @generated + */ + EClass getHealth_and_Pension_Insurance(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Health_and_Pension_Insurance#getCategory Category}'. + * + * + * @return the meta object for the attribute 'Category'. + * @see Taxation.Health_and_Pension_Insurance#getCategory() + * @see #getHealth_and_Pension_Insurance() + * @generated + */ + EAttribute getHealth_and_Pension_Insurance_Category(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Health_and_Pension_Insurance#isIs_related_to_additional_salary Is related to additional salary}'. + * + * + * @return the meta object for the attribute 'Is related to additional salary'. + * @see Taxation.Health_and_Pension_Insurance#isIs_related_to_additional_salary() + * @see #getHealth_and_Pension_Insurance() + * @generated + */ + EAttribute getHealth_and_Pension_Insurance_Is_related_to_additional_salary(); + + /** + * Returns the meta object for class '{@link Taxation.Donation Donation}'. + * + * + * @return the meta object for class 'Donation'. + * @see Taxation.Donation + * @generated + */ + EClass getDonation(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Donation#getBeneficiary1 Beneficiary1}'. + * + * + * @return the meta object for the attribute 'Beneficiary1'. + * @see Taxation.Donation#getBeneficiary1() + * @see #getDonation() + * @generated + */ + EAttribute getDonation_Beneficiary1(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Donation#isIs_beneficiary_eligible Is beneficiary eligible}'. + * + * + * @return the meta object for the attribute 'Is beneficiary eligible'. + * @see Taxation.Donation#isIs_beneficiary_eligible() + * @see #getDonation() + * @generated + */ + EAttribute getDonation_Is_beneficiary_eligible(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Donation#isIs_donation_reported Is donation reported}'. + * + * + * @return the meta object for the attribute 'Is donation reported'. + * @see Taxation.Donation#isIs_donation_reported() + * @see #getDonation() + * @generated + */ + EAttribute getDonation_Is_donation_reported(); + + /** + * Returns the meta object for class '{@link Taxation.Loss_Carryforward Loss Carryforward}'. + * + * + * @return the meta object for class 'Loss Carryforward'. + * @see Taxation.Loss_Carryforward + * @generated + */ + EClass getLoss_Carryforward(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Loss_Carryforward#isRegular_accountability Regular accountability}'. + * + * + * @return the meta object for the attribute 'Regular accountability'. + * @see Taxation.Loss_Carryforward#isRegular_accountability() + * @see #getLoss_Carryforward() + * @generated + */ + EAttribute getLoss_Carryforward_Regular_accountability(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Loss_Carryforward#isCompensation_by_other_means Compensation by other means}'. + * + * + * @return the meta object for the attribute 'Compensation by other means'. + * @see Taxation.Loss_Carryforward#isCompensation_by_other_means() + * @see #getLoss_Carryforward() + * @generated + */ + EAttribute getLoss_Carryforward_Compensation_by_other_means(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Loss_Carryforward#isTax_payer_has_inherited_business_ownership Tax payer has inherited business ownership}'. + * + * + * @return the meta object for the attribute 'Tax payer has inherited business ownership'. + * @see Taxation.Loss_Carryforward#isTax_payer_has_inherited_business_ownership() + * @see #getLoss_Carryforward() + * @generated + */ + EAttribute getLoss_Carryforward_Tax_payer_has_inherited_business_ownership(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Loss_Carryforward#isTax_payer_has_been_partner_in_business Tax payer has been partner in business}'. + * + * + * @return the meta object for the attribute 'Tax payer has been partner in business'. + * @see Taxation.Loss_Carryforward#isTax_payer_has_been_partner_in_business() + * @see #getLoss_Carryforward() + * @generated + */ + EAttribute getLoss_Carryforward_Tax_payer_has_been_partner_in_business(); + + /** + * Returns the meta object for class '{@link Taxation.Spousal_Expense_AC Spousal Expense AC}'. + * + * + * @return the meta object for class 'Spousal Expense AC'. + * @see Taxation.Spousal_Expense_AC + * @generated + */ + EClass getSpousal_Expense_AC(); + + /** + * Returns the meta object for class '{@link Taxation.Extraordinary_Expense_CE Extraordinary Expense CE}'. + * + * + * @return the meta object for class 'Extraordinary Expense CE'. + * @see Taxation.Extraordinary_Expense_CE + * @generated + */ + EClass getExtraordinary_Expense_CE(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Extraordinary_Expense_CE#getThresholded_deduction_percentage Thresholded deduction percentage}'. + * + * + * @return the meta object for the attribute 'Thresholded deduction percentage'. + * @see Taxation.Extraordinary_Expense_CE#getThresholded_deduction_percentage() + * @see #getExtraordinary_Expense_CE() + * @generated + */ + EAttribute getExtraordinary_Expense_CE_Thresholded_deduction_percentage(); + + /** + * Returns the meta object for the attribute '{@link Taxation.Extraordinary_Expense_CE#getCe_type Ce type}'. + * + * + * @return the meta object for the attribute 'Ce type'. + * @see Taxation.Extraordinary_Expense_CE#getCe_type() + * @see #getExtraordinary_Expense_CE() + * @generated + */ + EAttribute getExtraordinary_Expense_CE_Ce_type(); + + /** + * Returns the meta object for class '{@link Taxation.Travel_Expense_FD Travel Expense FD}'. + * + * + * @return the meta object for class 'Travel Expense FD'. + * @see Taxation.Travel_Expense_FD + * @generated + */ + EClass getTravel_Expense_FD(); + + /** + * Returns the meta object for class '{@link Taxation.Professional_Expense Professional Expense}'. + * + * + * @return the meta object for class 'Professional Expense'. + * @see Taxation.Professional_Expense + * @generated + */ + EClass getProfessional_Expense(); + + /** + * Returns the meta object for class '{@link Taxation.Miscellaneous_Expense_FO Miscellaneous Expense FO}'. + * + * + * @return the meta object for class 'Miscellaneous Expense FO'. + * @see Taxation.Miscellaneous_Expense_FO + * @generated + */ + EClass getMiscellaneous_Expense_FO(); + + /** + * Returns the meta object for enum '{@link Taxation.Grantor Grantor}'. + * + * + * @return the meta object for enum 'Grantor'. + * @see Taxation.Grantor + * @generated + */ + EEnum getGrantor(); + + /** + * Returns the meta object for enum '{@link Taxation.Disability_Types Disability Types}'. + * + * + * @return the meta object for enum 'Disability Types'. + * @see Taxation.Disability_Types + * @generated + */ + EEnum getDisability_Types(); + + /** + * Returns the meta object for enum '{@link Taxation.Country Country}'. + * + * + * @return the meta object for enum 'Country'. + * @see Taxation.Country + * @generated + */ + EEnum getCountry(); + + /** + * Returns the meta object for enum '{@link Taxation.Tax_Card_Type Tax Card Type}'. + * + * + * @return the meta object for enum 'Tax Card Type'. + * @see Taxation.Tax_Card_Type + * @generated + */ + EEnum getTax_Card_Type(); + + /** + * Returns the meta object for enum '{@link Taxation.Tax_Office Tax Office}'. + * + * + * @return the meta object for enum 'Tax Office'. + * @see Taxation.Tax_Office + * @generated + */ + EEnum getTax_Office(); + + /** + * Returns the meta object for enum '{@link Taxation.Tax_Class_Category Tax Class Category}'. + * + * + * @return the meta object for enum 'Tax Class Category'. + * @see Taxation.Tax_Class_Category + * @generated + */ + EEnum getTax_Class_Category(); + + /** + * Returns the meta object for enum '{@link Taxation.Job_Activity Job Activity}'. + * + * + * @return the meta object for enum 'Job Activity'. + * @see Taxation.Job_Activity + * @generated + */ + EEnum getJob_Activity(); + + /** + * Returns the meta object for enum '{@link Taxation.Town Town}'. + * + * + * @return the meta object for enum 'Town'. + * @see Taxation.Town + * @generated + */ + EEnum getTown(); + + /** + * Returns the meta object for enum '{@link Taxation.Type_of_Rate Type of Rate}'. + * + * + * @return the meta object for enum 'Type of Rate'. + * @see Taxation.Type_of_Rate + * @generated + */ + EEnum getType_of_Rate(); + + /** + * Returns the meta object for enum '{@link Taxation.CE_Type CE Type}'. + * + * + * @return the meta object for enum 'CE Type'. + * @see Taxation.CE_Type + * @generated + */ + EEnum getCE_Type(); + + /** + * Returns the meta object for enum '{@link Taxation.Expense_Purpose Expense Purpose}'. + * + * + * @return the meta object for enum 'Expense Purpose'. + * @see Taxation.Expense_Purpose + * @generated + */ + EEnum getExpense_Purpose(); + + /** + * Returns the meta object for enum '{@link Taxation.Dependent_Type Dependent Type}'. + * + * + * @return the meta object for enum 'Dependent Type'. + * @see Taxation.Dependent_Type + * @generated + */ + EEnum getDependent_Type(); + + /** + * Returns the meta object for enum '{@link Taxation.Separation_Causes Separation Causes}'. + * + * + * @return the meta object for enum 'Separation Causes'. + * @see Taxation.Separation_Causes + * @generated + */ + EEnum getSeparation_Causes(); + + /** + * Returns the meta object for enum '{@link Taxation.Category_of_Permanent_Expense Category of Permanent Expense}'. + * + * + * @return the meta object for enum 'Category of Permanent Expense'. + * @see Taxation.Category_of_Permanent_Expense + * @generated + */ + EEnum getCategory_of_Permanent_Expense(); + + /** + * Returns the meta object for enum '{@link Taxation.Category_of_Health_and_Pension_Insurances Category of Health and Pension Insurances}'. + * + * + * @return the meta object for enum 'Category of Health and Pension Insurances'. + * @see Taxation.Category_of_Health_and_Pension_Insurances + * @generated + */ + EEnum getCategory_of_Health_and_Pension_Insurances(); + + /** + * Returns the meta object for enum '{@link Taxation.Category_of_Private_Insurance_and_Plan Category of Private Insurance and Plan}'. + * + * + * @return the meta object for enum 'Category of Private Insurance and Plan'. + * @see Taxation.Category_of_Private_Insurance_and_Plan + * @generated + */ + EEnum getCategory_of_Private_Insurance_and_Plan(); + + /** + * Returns the meta object for enum '{@link Taxation.Legal_Union_Types Legal Union Types}'. + * + * + * @return the meta object for enum 'Legal Union Types'. + * @see Taxation.Legal_Union_Types + * @generated + */ + EEnum getLegal_Union_Types(); + + /** + * Returns the factory that creates the instances of the model. + * + * + * @return the factory that creates the instances of the model. + * @generated + */ + TaxationFactory getTaxationFactory(); + + /** + * + * Defines literals for the meta objects that represent + *
    + *
  • each class,
  • + *
  • each feature of each class,
  • + *
  • each operation of each class,
  • + *
  • each enum,
  • + *
  • and each data type
  • + *
+ * + * @generated + */ + interface Literals { + /** + * The meta object literal for the '{@link Taxation.impl.ConstantsImpl Constants}' class. + * + * + * @see Taxation.impl.ConstantsImpl + * @see Taxation.impl.TaxationPackageImpl#getConstants() + * @generated + */ + EClass CONSTANTS = eINSTANCE.getConstants(); + + /** + * The meta object literal for the 'MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD = eINSTANCE.getConstants_MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD(); + + /** + * The meta object literal for the 'MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE = eINSTANCE.getConstants_MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE(); + + /** + * The meta object literal for the 'MINIMUM SALARY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MINIMUM_SALARY = eINSTANCE.getConstants_MINIMUM_SALARY(); + + /** + * The meta object literal for the 'FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION = eINSTANCE.getConstants_FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION(); + + /** + * The meta object literal for the 'MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS = eINSTANCE.getConstants_MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS(); + + /** + * The meta object literal for the 'MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS = eINSTANCE.getConstants_MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS(); + + /** + * The meta object literal for the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC = eINSTANCE.getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC(); + + /** + * The meta object literal for the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE = eINSTANCE.getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE(); + + /** + * The meta object literal for the 'MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = eINSTANCE.getConstants_MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + + /** + * The meta object literal for the 'MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = eINSTANCE.getConstants_MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + + /** + * The meta object literal for the 'MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = eINSTANCE.getConstants_MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + + /** + * The meta object literal for the 'FLAT RATE CIM DAILY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_CIM_DAILY = eINSTANCE.getConstants_FLAT_RATE_CIM_DAILY(); + + /** + * The meta object literal for the 'FLAT RATE CIM MONTHLY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_CIM_MONTHLY = eINSTANCE.getConstants_FLAT_RATE_CIM_MONTHLY(); + + /** + * The meta object literal for the 'FLAT RATE CIM YEARLY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_CIM_YEARLY = eINSTANCE.getConstants_FLAT_RATE_CIM_YEARLY(); + + /** + * The meta object literal for the 'FLAT RATE CIP DAILY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_CIP_DAILY = eINSTANCE.getConstants_FLAT_RATE_CIP_DAILY(); + + /** + * The meta object literal for the 'FLAT RATE CIP MONTHLY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_CIP_MONTHLY = eINSTANCE.getConstants_FLAT_RATE_CIP_MONTHLY(); + + /** + * The meta object literal for the 'FLAT RATE CIP YEARLY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_CIP_YEARLY = eINSTANCE.getConstants_FLAT_RATE_CIP_YEARLY(); + + /** + * The meta object literal for the 'FLAT RATE CIS DAILY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_CIS_DAILY = eINSTANCE.getConstants_FLAT_RATE_CIS_DAILY(); + + /** + * The meta object literal for the 'FLAT RATE CIS MONTHLY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_CIS_MONTHLY = eINSTANCE.getConstants_FLAT_RATE_CIS_MONTHLY(); + + /** + * The meta object literal for the 'FLAT RATE CIS YEARLY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_CIS_YEARLY = eINSTANCE.getConstants_FLAT_RATE_CIS_YEARLY(); + + /** + * The meta object literal for the 'FLAT RATE FOR TRAVEL EXPENSE PER UNIT' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT = eINSTANCE.getConstants_FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT(); + + /** + * The meta object literal for the 'MAXIMUM DEDUCTIBLE AMOUNT FOR DS' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS = eINSTANCE.getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS(); + + /** + * The meta object literal for the 'FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE = eINSTANCE.getConstants_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(); + + /** + * The meta object literal for the 'DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE = eINSTANCE.getConstants_DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(); + + /** + * The meta object literal for the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE = eINSTANCE.getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE(); + + /** + * The meta object literal for the '{@link Taxation.impl.Income_TaxImpl Income Tax}' class. + * + * + * @see Taxation.impl.Income_TaxImpl + * @see Taxation.impl.TaxationPackageImpl#getIncome_Tax() + * @generated + */ + EClass INCOME_TAX = eINSTANCE.getIncome_Tax(); + + /** + * The meta object literal for the 'Tax Payer' reference feature. + * + * + * @generated + */ + EReference INCOME_TAX__TAX_PAYER = eINSTANCE.getIncome_Tax_TaxPayer(); + + /** + * The meta object literal for the 'Tax amount' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TAX__TAX_AMOUNT = eINSTANCE.getIncome_Tax_Tax_amount(); + + /** + * The meta object literal for the 'Tax year' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TAX__TAX_YEAR = eINSTANCE.getIncome_Tax_Tax_year(); + + /** + * The meta object literal for the 'Id6' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TAX__ID6 = eINSTANCE.getIncome_Tax_Id6(); + + /** + * The meta object literal for the '{@link Taxation.impl.Tax_PayerImpl Tax Payer}' class. + * + * + * @see Taxation.impl.Tax_PayerImpl + * @see Taxation.impl.TaxationPackageImpl#getTax_Payer() + * @generated + */ + EClass TAX_PAYER = eINSTANCE.getTax_Payer(); + + /** + * The meta object literal for the 'Dependents' containment reference list feature. + * + * + * @generated + */ + EReference TAX_PAYER__DEPENDENTS = eINSTANCE.getTax_Payer_Dependents(); + + /** + * The meta object literal for the 'From agent' containment reference feature. + * + * + * @generated + */ + EReference TAX_PAYER__FROM_AGENT = eINSTANCE.getTax_Payer_From_agent(); + + /** + * The meta object literal for the 'Incomes' containment reference list feature. + * + * + * @generated + */ + EReference TAX_PAYER__INCOMES = eINSTANCE.getTax_Payer_Incomes(); + + /** + * The meta object literal for the 'From law' containment reference feature. + * + * + * @generated + */ + EReference TAX_PAYER__FROM_LAW = eINSTANCE.getTax_Payer_From_law(); + + /** + * The meta object literal for the 'Taxes Due' attribute feature. + * + * + * @generated + */ + EAttribute TAX_PAYER__TAXES_DUE = eINSTANCE.getTax_Payer_TaxesDue(); + + /** + * The meta object literal for the '{@link Taxation.impl.Physical_PersonImpl Physical Person}' class. + * + * + * @see Taxation.impl.Physical_PersonImpl + * @see Taxation.impl.TaxationPackageImpl#getPhysical_Person() + * @generated + */ + EClass PHYSICAL_PERSON = eINSTANCE.getPhysical_Person(); + + /** + * The meta object literal for the 'Is assisting spouse' attribute feature. + * + * + * @generated + */ + EAttribute PHYSICAL_PERSON__IS_ASSISTING_SPOUSE = eINSTANCE.getPhysical_Person_Is_assisting_spouse(); + + /** + * The meta object literal for the 'SS No' attribute feature. + * + * + * @generated + */ + EAttribute PHYSICAL_PERSON__SS_NO = eINSTANCE.getPhysical_Person_SSNo(); + + /** + * The meta object literal for the 'Addresses' reference list feature. + * + * + * @generated + */ + EReference PHYSICAL_PERSON__ADDRESSES = eINSTANCE.getPhysical_Person_Addresses(); + + /** + * The meta object literal for the 'Birth year' attribute feature. + * + * + * @generated + */ + EAttribute PHYSICAL_PERSON__BIRTH_YEAR = eINSTANCE.getPhysical_Person_Birth_year(); + + /** + * The meta object literal for the 'Disability percentage' attribute feature. + * + * + * @generated + */ + EAttribute PHYSICAL_PERSON__DISABILITY_PERCENTAGE = eINSTANCE.getPhysical_Person_Disability_percentage(); + + /** + * The meta object literal for the 'Disability type' attribute feature. + * + * + * @generated + */ + EAttribute PHYSICAL_PERSON__DISABILITY_TYPE = eINSTANCE.getPhysical_Person_Disability_type(); + + /** + * The meta object literal for the 'Is affiliated personnaly to social security' attribute feature. + * + * + * @generated + */ + EAttribute PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY = eINSTANCE.getPhysical_Person_Is_affiliated_personnaly_to_social_security(); + + /** + * The meta object literal for the 'Birth month' attribute feature. + * + * + * @generated + */ + EAttribute PHYSICAL_PERSON__BIRTH_MONTH = eINSTANCE.getPhysical_Person_Birth_month(); + + /** + * The meta object literal for the 'Birth day' attribute feature. + * + * + * @generated + */ + EAttribute PHYSICAL_PERSON__BIRTH_DAY = eINSTANCE.getPhysical_Person_Birth_day(); + + /** + * The meta object literal for the 'Expenses' reference list feature. + * + * + * @generated + */ + EReference PHYSICAL_PERSON__EXPENSES = eINSTANCE.getPhysical_Person_Expenses(); + + /** + * The meta object literal for the 'Is widower' attribute feature. + * + * + * @generated + */ + EAttribute PHYSICAL_PERSON__IS_WIDOWER = eINSTANCE.getPhysical_Person_Is_widower(); + + /** + * The meta object literal for the 'Owns Address' containment reference list feature. + * + * + * @generated + */ + EReference PHYSICAL_PERSON__OWNS_ADDRESS = eINSTANCE.getPhysical_Person_Owns_Address(); + + /** + * The meta object literal for the '{@link Taxation.impl.AddressImpl Address}' class. + * + * + * @see Taxation.impl.AddressImpl + * @see Taxation.impl.TaxationPackageImpl#getAddress() + * @generated + */ + EClass ADDRESS = eINSTANCE.getAddress(); + + /** + * The meta object literal for the 'Country' attribute feature. + * + * + * @generated + */ + EAttribute ADDRESS__COUNTRY = eINSTANCE.getAddress_Country(); + + /** + * The meta object literal for the 'Street' attribute feature. + * + * + * @generated + */ + EAttribute ADDRESS__STREET = eINSTANCE.getAddress_Street(); + + /** + * The meta object literal for the 'Zip Code' attribute feature. + * + * + * @generated + */ + EAttribute ADDRESS__ZIP_CODE = eINSTANCE.getAddress_ZipCode(); + + /** + * The meta object literal for the 'City' attribute feature. + * + * + * @generated + */ + EAttribute ADDRESS__CITY = eINSTANCE.getAddress_City(); + + /** + * The meta object literal for the 'Id2' attribute feature. + * + * + * @generated + */ + EAttribute ADDRESS__ID2 = eINSTANCE.getAddress_Id2(); + + /** + * The meta object literal for the 'Tax Payer' reference list feature. + * + * + * @generated + */ + EReference ADDRESS__TAX_PAYER = eINSTANCE.getAddress_TaxPayer(); + + /** + * The meta object literal for the '{@link Taxation.impl.ExpenseImpl Expense}' class. + * + * + * @see Taxation.impl.ExpenseImpl + * @see Taxation.impl.TaxationPackageImpl#getExpense() + * @generated + */ + EClass EXPENSE = eINSTANCE.getExpense(); + + /** + * The meta object literal for the 'Declared amount' attribute feature. + * + * + * @generated + */ + EAttribute EXPENSE__DECLARED_AMOUNT = eINSTANCE.getExpense_Declared_amount(); + + /** + * The meta object literal for the 'Expense purpose' attribute feature. + * + * + * @generated + */ + EAttribute EXPENSE__EXPENSE_PURPOSE = eINSTANCE.getExpense_Expense_purpose(); + + /** + * The meta object literal for the 'Dependent' reference feature. + * + * + * @generated + */ + EReference EXPENSE__DEPENDENT = eINSTANCE.getExpense_Dependent(); + + /** + * The meta object literal for the 'From agent' reference feature. + * + * + * @generated + */ + EReference EXPENSE__FROM_AGENT = eINSTANCE.getExpense_From_agent(); + + /** + * The meta object literal for the 'Income' container reference feature. + * + * + * @generated + */ + EReference EXPENSE__INCOME = eINSTANCE.getExpense_Income(); + + /** + * The meta object literal for the 'Id4' attribute feature. + * + * + * @generated + */ + EAttribute EXPENSE__ID4 = eINSTANCE.getExpense_Id4(); + + /** + * The meta object literal for the 'Beneficiary' reference feature. + * + * + * @generated + */ + EReference EXPENSE__BENEFICIARY = eINSTANCE.getExpense_Beneficiary(); + + /** + * The meta object literal for the '{@link Taxation.impl.DependentImpl Dependent}' class. + * + * + * @see Taxation.impl.DependentImpl + * @see Taxation.impl.TaxationPackageImpl#getDependent() + * @generated + */ + EClass DEPENDENT = eINSTANCE.getDependent(); + + /** + * The meta object literal for the 'Dependent type' attribute feature. + * + * + * @generated + */ + EAttribute DEPENDENT__DEPENDENT_TYPE = eINSTANCE.getDependent_Dependent_type(); + + /** + * The meta object literal for the 'Responsible person' container reference feature. + * + * + * @generated + */ + EReference DEPENDENT__RESPONSIBLE_PERSON = eINSTANCE.getDependent_Responsible_person(); + + /** + * The meta object literal for the 'Continued studies' attribute feature. + * + * + * @generated + */ + EAttribute DEPENDENT__CONTINUED_STUDIES = eINSTANCE.getDependent_Continued_studies(); + + /** + * The meta object literal for the 'Allowances' containment reference feature. + * + * + * @generated + */ + EReference DEPENDENT__ALLOWANCES = eINSTANCE.getDependent_Allowances(); + + /** + * The meta object literal for the 'Household' container reference feature. + * + * + * @generated + */ + EReference DEPENDENT__HOUSEHOLD = eINSTANCE.getDependent_Household(); + + /** + * The meta object literal for the 'From agent' reference feature. + * + * + * @generated + */ + EReference DEPENDENT__FROM_AGENT = eINSTANCE.getDependent_From_agent(); + + /** + * The meta object literal for the 'Expense' reference list feature. + * + * + * @generated + */ + EReference DEPENDENT__EXPENSE = eINSTANCE.getDependent_Expense(); + + /** + * The meta object literal for the '{@link Taxation.impl.External_AllowanceImpl External Allowance}' class. + * + * + * @see Taxation.impl.External_AllowanceImpl + * @see Taxation.impl.TaxationPackageImpl#getExternal_Allowance() + * @generated + */ + EClass EXTERNAL_ALLOWANCE = eINSTANCE.getExternal_Allowance(); + + /** + * The meta object literal for the 'Amount' attribute feature. + * + * + * @generated + */ + EAttribute EXTERNAL_ALLOWANCE__AMOUNT = eINSTANCE.getExternal_Allowance_Amount(); + + /** + * The meta object literal for the 'Grantor' attribute feature. + * + * + * @generated + */ + EAttribute EXTERNAL_ALLOWANCE__GRANTOR = eINSTANCE.getExternal_Allowance_Grantor(); + + /** + * The meta object literal for the 'Starting year' attribute feature. + * + * + * @generated + */ + EAttribute EXTERNAL_ALLOWANCE__STARTING_YEAR = eINSTANCE.getExternal_Allowance_Starting_year(); + + /** + * The meta object literal for the 'Ending year' attribute feature. + * + * + * @generated + */ + EAttribute EXTERNAL_ALLOWANCE__ENDING_YEAR = eINSTANCE.getExternal_Allowance_Ending_year(); + + /** + * The meta object literal for the 'Reciver' reference feature. + * + * + * @generated + */ + EReference EXTERNAL_ALLOWANCE__RECIVER = eINSTANCE.getExternal_Allowance_Reciver(); + + /** + * The meta object literal for the 'Id5' attribute feature. + * + * + * @generated + */ + EAttribute EXTERNAL_ALLOWANCE__ID5 = eINSTANCE.getExternal_Allowance_Id5(); + + /** + * The meta object literal for the 'Person' container reference feature. + * + * + * @generated + */ + EReference EXTERNAL_ALLOWANCE__PERSON = eINSTANCE.getExternal_Allowance_Person(); + + /** + * The meta object literal for the '{@link Taxation.impl.HouseholdImpl Household}' class. + * + * + * @see Taxation.impl.HouseholdImpl + * @see Taxation.impl.TaxationPackageImpl#getHousehold() + * @generated + */ + EClass HOUSEHOLD = eINSTANCE.getHousehold(); + + /** + * The meta object literal for the 'Parents' containment reference feature. + * + * + * @generated + */ + EReference HOUSEHOLD__PARENTS = eINSTANCE.getHousehold_Parents(); + + /** + * The meta object literal for the 'Id1' attribute feature. + * + * + * @generated + */ + EAttribute HOUSEHOLD__ID1 = eINSTANCE.getHousehold_Id1(); + + /** + * The meta object literal for the 'Children' containment reference list feature. + * + * + * @generated + */ + EReference HOUSEHOLD__CHILDREN = eINSTANCE.getHousehold_Children(); + + /** + * The meta object literal for the '{@link Taxation.impl.Legal_Union_RecordImpl Legal Union Record}' class. + * + * + * @see Taxation.impl.Legal_Union_RecordImpl + * @see Taxation.impl.TaxationPackageImpl#getLegal_Union_Record() + * @generated + */ + EClass LEGAL_UNION_RECORD = eINSTANCE.getLegal_Union_Record(); + + /** + * The meta object literal for the 'Start year' attribute feature. + * + * + * @generated + */ + EAttribute LEGAL_UNION_RECORD__START_YEAR = eINSTANCE.getLegal_Union_Record_Start_year(); + + /** + * The meta object literal for the 'End year' attribute feature. + * + * + * @generated + */ + EAttribute LEGAL_UNION_RECORD__END_YEAR = eINSTANCE.getLegal_Union_Record_End_year(); + + /** + * The meta object literal for the 'Separation cause' attribute feature. + * + * + * @generated + */ + EAttribute LEGAL_UNION_RECORD__SEPARATION_CAUSE = eINSTANCE.getLegal_Union_Record_Separation_cause(); + + /** + * The meta object literal for the 'Individual A' containment reference feature. + * + * + * @generated + */ + EReference LEGAL_UNION_RECORD__INDIVIDUAL_A = eINSTANCE.getLegal_Union_Record_Individual_A(); + + /** + * The meta object literal for the 'Individual B' containment reference list feature. + * + * + * @generated + */ + EReference LEGAL_UNION_RECORD__INDIVIDUAL_B = eINSTANCE.getLegal_Union_Record_Individual_B(); + + /** + * The meta object literal for the 'Properties' containment reference list feature. + * + * + * @generated + */ + EReference LEGAL_UNION_RECORD__PROPERTIES = eINSTANCE.getLegal_Union_Record_Properties(); + + /** + * The meta object literal for the 'Mutual agreement' attribute feature. + * + * + * @generated + */ + EAttribute LEGAL_UNION_RECORD__MUTUAL_AGREEMENT = eINSTANCE.getLegal_Union_Record_Mutual_agreement(); + + /** + * The meta object literal for the 'Id9' attribute feature. + * + * + * @generated + */ + EAttribute LEGAL_UNION_RECORD__ID9 = eINSTANCE.getLegal_Union_Record_Id9(); + + /** + * The meta object literal for the 'Household' container reference feature. + * + * + * @generated + */ + EReference LEGAL_UNION_RECORD__HOUSEHOLD = eINSTANCE.getLegal_Union_Record_Household(); + + /** + * The meta object literal for the '{@link Taxation.impl.Tax_PropertyImpl Tax Property}' class. + * + * + * @see Taxation.impl.Tax_PropertyImpl + * @see Taxation.impl.TaxationPackageImpl#getTax_Property() + * @generated + */ + EClass TAX_PROPERTY = eINSTANCE.getTax_Property(); + + /** + * The meta object literal for the 'Starting year' attribute feature. + * + * + * @generated + */ + EAttribute TAX_PROPERTY__STARTING_YEAR = eINSTANCE.getTax_Property_Starting_year(); + + /** + * The meta object literal for the 'Id10' attribute feature. + * + * + * @generated + */ + EAttribute TAX_PROPERTY__ID10 = eINSTANCE.getTax_Property_Id10(); + + /** + * The meta object literal for the 'Union record' container reference feature. + * + * + * @generated + */ + EReference TAX_PROPERTY__UNION_RECORD = eINSTANCE.getTax_Property_Union_record(); + + /** + * The meta object literal for the '{@link Taxation.Tax_Case Tax Case}' class. + * + * + * @see Taxation.Tax_Case + * @see Taxation.impl.TaxationPackageImpl#getTax_Case() + * @generated + */ + EClass TAX_CASE = eINSTANCE.getTax_Case(); + + /** + * The meta object literal for the '{@link Taxation.impl.FromAgentImpl From Agent}' class. + * + * + * @see Taxation.impl.FromAgentImpl + * @see Taxation.impl.TaxationPackageImpl#getFromAgent() + * @generated + */ + EClass FROM_AGENT = eINSTANCE.getFromAgent(); + + /** + * The meta object literal for the 'Tax Payer' container reference feature. + * + * + * @generated + */ + EReference FROM_AGENT__TAX_PAYER = eINSTANCE.getFromAgent_TaxPayer(); + + /** + * The meta object literal for the 'Is dependent eligible for CE Not In Houshold Children Care' attribute feature. + * + * + * @generated + */ + EAttribute FROM_AGENT__IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE = eINSTANCE.getFromAgent_Is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care(); + + /** + * The meta object literal for the 'Expense' reference feature. + * + * + * @generated + */ + EReference FROM_AGENT__EXPENSE = eINSTANCE.getFromAgent_Expense(); + + /** + * The meta object literal for the 'Is eligible debt' attribute feature. + * + * + * @generated + */ + EAttribute FROM_AGENT__IS_ELIGIBLE_DEBT = eINSTANCE.getFromAgent_Is_eligible_debt(); + + /** + * The meta object literal for the 'Dependent' reference feature. + * + * + * @generated + */ + EReference FROM_AGENT__DEPENDENT = eINSTANCE.getFromAgent_Dependent(); + + /** + * The meta object literal for the '{@link Taxation.impl.IncomeImpl Income}' class. + * + * + * @see Taxation.impl.IncomeImpl + * @see Taxation.impl.TaxationPackageImpl#getIncome() + * @generated + */ + EClass INCOME = eINSTANCE.getIncome(); + + /** + * The meta object literal for the 'Income amount' attribute feature. + * + * + * @generated + */ + EAttribute INCOME__INCOME_AMOUNT = eINSTANCE.getIncome_Income_amount(); + + /** + * The meta object literal for the 'Income type' containment reference feature. + * + * + * @generated + */ + EReference INCOME__INCOME_TYPE = eINSTANCE.getIncome_Income_type(); + + /** + * The meta object literal for the 'Start date within taxation year' attribute feature. + * + * + * @generated + */ + EAttribute INCOME__START_DATE_WITHIN_TAXATION_YEAR = eINSTANCE.getIncome_Start_date_within_taxation_year(); + + /** + * The meta object literal for the 'Start date of contract' attribute feature. + * + * + * @generated + */ + EAttribute INCOME__START_DATE_OF_CONTRACT = eINSTANCE.getIncome_Start_date_of_contract(); + + /** + * The meta object literal for the 'End date within taxation year' attribute feature. + * + * + * @generated + */ + EAttribute INCOME__END_DATE_WITHIN_TAXATION_YEAR = eINSTANCE.getIncome_End_date_within_taxation_year(); + + /** + * The meta object literal for the 'Tax card' containment reference feature. + * + * + * @generated + */ + EReference INCOME__TAX_CARD = eINSTANCE.getIncome_Tax_card(); + + /** + * The meta object literal for the 'Tax liability' attribute feature. + * + * + * @generated + */ + EAttribute INCOME__TAX_LIABILITY = eINSTANCE.getIncome_Tax_liability(); + + /** + * The meta object literal for the 'Tax Payer' container reference feature. + * + * + * @generated + */ + EReference INCOME__TAX_PAYER = eINSTANCE.getIncome_TaxPayer(); + + /** + * The meta object literal for the 'Details' containment reference list feature. + * + * + * @generated + */ + EReference INCOME__DETAILS = eINSTANCE.getIncome_Details(); + + /** + * The meta object literal for the 'Num' attribute feature. + * + * + * @generated + */ + EAttribute INCOME__NUM = eINSTANCE.getIncome_Num(); + + /** + * The meta object literal for the 'Expenses' containment reference list feature. + * + * + * @generated + */ + EReference INCOME__EXPENSES = eINSTANCE.getIncome_Expenses(); + + /** + * The meta object literal for the '{@link Taxation.impl.Income_TypeImpl Income Type}' class. + * + * + * @see Taxation.impl.Income_TypeImpl + * @see Taxation.impl.TaxationPackageImpl#getIncome_Type() + * @generated + */ + EClass INCOME_TYPE = eINSTANCE.getIncome_Type(); + + /** + * The meta object literal for the 'Subject To Withholding Tax' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX = eINSTANCE.getIncome_Type_SubjectToWithholdingTax(); + + /** + * The meta object literal for the 'Id8' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TYPE__ID8 = eINSTANCE.getIncome_Type_Id8(); + + /** + * The meta object literal for the 'Income' container reference feature. + * + * + * @generated + */ + EReference INCOME_TYPE__INCOME = eINSTANCE.getIncome_Type_Income(); + + /** + * The meta object literal for the '{@link Taxation.impl.Tax_CardImpl Tax Card}' class. + * + * + * @see Taxation.impl.Tax_CardImpl + * @see Taxation.impl.TaxationPackageImpl#getTax_Card() + * @generated + */ + EClass TAX_CARD = eINSTANCE.getTax_Card(); + + /** + * The meta object literal for the 'Card identifier' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__CARD_IDENTIFIER = eINSTANCE.getTax_Card_Card_identifier(); + + /** + * The meta object literal for the 'Tax card type' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__TAX_CARD_TYPE = eINSTANCE.getTax_Card_Tax_card_type(); + + /** + * The meta object literal for the 'Tax office' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__TAX_OFFICE = eINSTANCE.getTax_Card_Tax_office(); + + /** + * The meta object literal for the 'Valid from date' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__VALID_FROM_DATE = eINSTANCE.getTax_Card_Valid_from_date(); + + /** + * The meta object literal for the 'Valid until date' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__VALID_UNTIL_DATE = eINSTANCE.getTax_Card_Valid_until_date(); + + /** + * The meta object literal for the 'Percentage of witholding' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__PERCENTAGE_OF_WITHOLDING = eINSTANCE.getTax_Card_Percentage_of_witholding(); + + /** + * The meta object literal for the 'Tax payers name surname' attribute list feature. + * + * + * @generated + */ + EAttribute TAX_CARD__TAX_PAYERS_NAME_SURNAME = eINSTANCE.getTax_Card_Tax_payers_name_surname(); + + /** + * The meta object literal for the 'Tax payers partner name surname' attribute list feature. + * + * + * @generated + */ + EAttribute TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME = eINSTANCE.getTax_Card_Tax_payers_partner_name_surname(); + + /** + * The meta object literal for the 'Tax payers address' reference feature. + * + * + * @generated + */ + EReference TAX_CARD__TAX_PAYERS_ADDRESS = eINSTANCE.getTax_Card_Tax_payers_address(); + + /** + * The meta object literal for the 'Jobs Employer SS No' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__JOBS_EMPLOYER_SS_NO = eINSTANCE.getTax_Card_Jobs_Employer_SSNo(); + + /** + * The meta object literal for the 'Jobs employers name' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__JOBS_EMPLOYERS_NAME = eINSTANCE.getTax_Card_Jobs_employers_name(); + + /** + * The meta object literal for the 'Jobs activity type' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__JOBS_ACTIVITY_TYPE = eINSTANCE.getTax_Card_Jobs_activity_type(); + + /** + * The meta object literal for the 'Jobs place of work' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__JOBS_PLACE_OF_WORK = eINSTANCE.getTax_Card_Jobs_place_of_work(); + + /** + * The meta object literal for the 'Deduction FD daily' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_FD_DAILY = eINSTANCE.getTax_Card_Deduction_FD_daily(); + + /** + * The meta object literal for the 'Deduction FD monthly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_FD_MONTHLY = eINSTANCE.getTax_Card_Deduction_FD_monthly(); + + /** + * The meta object literal for the 'Deduction AC daily' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_AC_DAILY = eINSTANCE.getTax_Card_Deduction_AC_daily(); + + /** + * The meta object literal for the 'Deduction AC monthly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_AC_MONTHLY = eINSTANCE.getTax_Card_Deduction_AC_monthly(); + + /** + * The meta object literal for the 'Deduction AC yearly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_AC_YEARLY = eINSTANCE.getTax_Card_Deduction_AC_yearly(); + + /** + * The meta object literal for the 'Deduction CE daily' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_CE_DAILY = eINSTANCE.getTax_Card_Deduction_CE_daily(); + + /** + * The meta object literal for the 'Deduction CE monthly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_CE_MONTHLY = eINSTANCE.getTax_Card_Deduction_CE_monthly(); + + /** + * The meta object literal for the 'Deduction CE yearly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_CE_YEARLY = eINSTANCE.getTax_Card_Deduction_CE_yearly(); + + /** + * The meta object literal for the 'Deduction DS daily' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_DS_DAILY = eINSTANCE.getTax_Card_Deduction_DS_daily(); + + /** + * The meta object literal for the 'Deduction DS monthly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_DS_MONTHLY = eINSTANCE.getTax_Card_Deduction_DS_monthly(); + + /** + * The meta object literal for the 'Deduction FO daily' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_FO_DAILY = eINSTANCE.getTax_Card_Deduction_FO_daily(); + + /** + * The meta object literal for the 'Deduction FO monthly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_FO_MONTHLY = eINSTANCE.getTax_Card_Deduction_FO_monthly(); + + /** + * The meta object literal for the 'Deduction FO yearly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_FO_YEARLY = eINSTANCE.getTax_Card_Deduction_FO_yearly(); + + /** + * The meta object literal for the 'Credit CIS daily' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__CREDIT_CIS_DAILY = eINSTANCE.getTax_Card_Credit_CIS_daily(); + + /** + * The meta object literal for the 'Credit CIS monthly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__CREDIT_CIS_MONTHLY = eINSTANCE.getTax_Card_Credit_CIS_monthly(); + + /** + * The meta object literal for the 'Credit CIM daily' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__CREDIT_CIM_DAILY = eINSTANCE.getTax_Card_Credit_CIM_daily(); + + /** + * The meta object literal for the 'Validity' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__VALIDITY = eINSTANCE.getTax_Card_Validity(); + + /** + * The meta object literal for the 'Income Tax Credit' reference list feature. + * + * + * @generated + */ + EReference TAX_CARD__INCOME_TAX_CREDIT = eINSTANCE.getTax_Card_Income_Tax_Credit(); + + /** + * The meta object literal for the 'Previous' reference feature. + * + * + * @generated + */ + EReference TAX_CARD__PREVIOUS = eINSTANCE.getTax_Card_Previous(); + + /** + * The meta object literal for the 'Current tax card' reference feature. + * + * + * @generated + */ + EReference TAX_CARD__CURRENT_TAX_CARD = eINSTANCE.getTax_Card_Current_tax_card(); + + /** + * The meta object literal for the 'Credit CIM yearly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__CREDIT_CIM_YEARLY = eINSTANCE.getTax_Card_Credit_CIM_yearly(); + + /** + * The meta object literal for the 'Deduction DS Alimony yearly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY = eINSTANCE.getTax_Card_Deduction_DS_Alimony_yearly(); + + /** + * The meta object literal for the 'Deduction DS Debt yearly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_DS_DEBT_YEARLY = eINSTANCE.getTax_Card_Deduction_DS_Debt_yearly(); + + /** + * The meta object literal for the 'Income' container reference feature. + * + * + * @generated + */ + EReference TAX_CARD__INCOME = eINSTANCE.getTax_Card_Income(); + + /** + * The meta object literal for the '{@link Taxation.impl.Income_Tax_CreditImpl Income Tax Credit}' class. + * + * + * @see Taxation.impl.Income_Tax_CreditImpl + * @see Taxation.impl.TaxationPackageImpl#getIncome_Tax_Credit() + * @generated + */ + EClass INCOME_TAX_CREDIT = eINSTANCE.getIncome_Tax_Credit(); + + /** + * The meta object literal for the 'Granted By' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TAX_CREDIT__GRANTED_BY = eINSTANCE.getIncome_Tax_Credit_GrantedBy(); + + /** + * The meta object literal for the 'Tax Payer' reference feature. + * + * + * @generated + */ + EReference INCOME_TAX_CREDIT__TAX_PAYER = eINSTANCE.getIncome_Tax_Credit_TaxPayer(); + + /** + * The meta object literal for the 'Tax year' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TAX_CREDIT__TAX_YEAR = eINSTANCE.getIncome_Tax_Credit_Tax_year(); + + /** + * The meta object literal for the 'Yearly' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TAX_CREDIT__YEARLY = eINSTANCE.getIncome_Tax_Credit_Yearly(); + + /** + * The meta object literal for the 'Monthly' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TAX_CREDIT__MONTHLY = eINSTANCE.getIncome_Tax_Credit_Monthly(); + + /** + * The meta object literal for the 'Daily' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TAX_CREDIT__DAILY = eINSTANCE.getIncome_Tax_Credit_Daily(); + + /** + * The meta object literal for the 'Id7' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TAX_CREDIT__ID7 = eINSTANCE.getIncome_Tax_Credit_Id7(); + + /** + * The meta object literal for the 'Taxation Frame' reference feature. + * + * + * @generated + */ + EReference INCOME_TAX_CREDIT__TAXATION_FRAME = eINSTANCE.getIncome_Tax_Credit_Taxation_Frame(); + + /** + * The meta object literal for the '{@link Taxation.impl.Income_DetailImpl Income Detail}' class. + * + * + * @see Taxation.impl.Income_DetailImpl + * @see Taxation.impl.TaxationPackageImpl#getIncome_Detail() + * @generated + */ + EClass INCOME_DETAIL = eINSTANCE.getIncome_Detail(); + + /** + * The meta object literal for the 'Amount' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_DETAIL__AMOUNT = eINSTANCE.getIncome_Detail_Amount(); + + /** + * The meta object literal for the 'Is worked' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_DETAIL__IS_WORKED = eINSTANCE.getIncome_Detail_Is_worked(); + + /** + * The meta object literal for the 'Distance' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_DETAIL__DISTANCE = eINSTANCE.getIncome_Detail_Distance(); + + /** + * The meta object literal for the 'Worked days' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_DETAIL__WORKED_DAYS = eINSTANCE.getIncome_Detail_Worked_days(); + + /** + * The meta object literal for the 'Is contributing CNS' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_DETAIL__IS_CONTRIBUTING_CNS = eINSTANCE.getIncome_Detail_Is_contributing_CNS(); + + /** + * The meta object literal for the 'Id5' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_DETAIL__ID5 = eINSTANCE.getIncome_Detail_Id5(); + + /** + * The meta object literal for the 'Income' container reference feature. + * + * + * @generated + */ + EReference INCOME_DETAIL__INCOME = eINSTANCE.getIncome_Detail_Income(); + + /** + * The meta object literal for the '{@link Taxation.impl.FromLawImpl From Law}' class. + * + * + * @see Taxation.impl.FromLawImpl + * @see Taxation.impl.TaxationPackageImpl#getFromLaw() + * @generated + */ + EClass FROM_LAW = eINSTANCE.getFromLaw(); + + /** + * The meta object literal for the 'Id' attribute feature. + * + * + * @generated + */ + EAttribute FROM_LAW__ID = eINSTANCE.getFromLaw_Id(); + + /** + * The meta object literal for the 'Tax Payer' container reference feature. + * + * + * @generated + */ + EReference FROM_LAW__TAX_PAYER = eINSTANCE.getFromLaw_TaxPayer(); + + /** + * The meta object literal for the '{@link Taxation.impl.Fiscal_AddressImpl Fiscal Address}' class. + * + * + * @see Taxation.impl.Fiscal_AddressImpl + * @see Taxation.impl.TaxationPackageImpl#getFiscal_Address() + * @generated + */ + EClass FISCAL_ADDRESS = eINSTANCE.getFiscal_Address(); + + /** + * The meta object literal for the '{@link Taxation.impl.Habitual_AddressImpl Habitual Address}' class. + * + * + * @see Taxation.impl.Habitual_AddressImpl + * @see Taxation.impl.TaxationPackageImpl#getHabitual_Address() + * @generated + */ + EClass HABITUAL_ADDRESS = eINSTANCE.getHabitual_Address(); + + /** + * The meta object literal for the '{@link Taxation.impl.Marriage_RecordImpl Marriage Record}' class. + * + * + * @see Taxation.impl.Marriage_RecordImpl + * @see Taxation.impl.TaxationPackageImpl#getMarriage_Record() + * @generated + */ + EClass MARRIAGE_RECORD = eINSTANCE.getMarriage_Record(); + + /** + * The meta object literal for the '{@link Taxation.impl.Non_Resident_Tax_PayerImpl Non Resident Tax Payer}' class. + * + * + * @see Taxation.impl.Non_Resident_Tax_PayerImpl + * @see Taxation.impl.TaxationPackageImpl#getNon_Resident_Tax_Payer() + * @generated + */ + EClass NON_RESIDENT_TAX_PAYER = eINSTANCE.getNon_Resident_Tax_Payer(); + + /** + * The meta object literal for the 'Is assimilated to resident' attribute feature. + * + * + * @generated + */ + EAttribute NON_RESIDENT_TAX_PAYER__IS_ASSIMILATED_TO_RESIDENT = eINSTANCE.getNon_Resident_Tax_Payer_Is_assimilated_to_resident(); + + /** + * The meta object literal for the '{@link Taxation.impl.Partnership_RecordImpl Partnership Record}' class. + * + * + * @see Taxation.impl.Partnership_RecordImpl + * @see Taxation.impl.TaxationPackageImpl#getPartnership_Record() + * @generated + */ + EClass PARTNERSHIP_RECORD = eINSTANCE.getPartnership_Record(); + + /** + * The meta object literal for the '{@link Taxation.impl.Resident_Tax_PayerImpl Resident Tax Payer}' class. + * + * + * @see Taxation.impl.Resident_Tax_PayerImpl + * @see Taxation.impl.TaxationPackageImpl#getResident_Tax_Payer() + * @generated + */ + EClass RESIDENT_TAX_PAYER = eINSTANCE.getResident_Tax_Payer(); + + /** + * The meta object literal for the '{@link Taxation.impl.Trade_and_Business_IncomeImpl Trade and Business Income}' class. + * + * + * @see Taxation.impl.Trade_and_Business_IncomeImpl + * @see Taxation.impl.TaxationPackageImpl#getTrade_and_Business_Income() + * @generated + */ + EClass TRADE_AND_BUSINESS_INCOME = eINSTANCE.getTrade_and_Business_Income(); + + /** + * The meta object literal for the '{@link Taxation.impl.Agriculture_and_Forestry_IncomeImpl Agriculture and Forestry Income}' class. + * + * + * @see Taxation.impl.Agriculture_and_Forestry_IncomeImpl + * @see Taxation.impl.TaxationPackageImpl#getAgriculture_and_Forestry_Income() + * @generated + */ + EClass AGRICULTURE_AND_FORESTRY_INCOME = eINSTANCE.getAgriculture_and_Forestry_Income(); + + /** + * The meta object literal for the '{@link Taxation.impl.Pensions_and_Annuities_IncomeImpl Pensions and Annuities Income}' class. + * + * + * @see Taxation.impl.Pensions_and_Annuities_IncomeImpl + * @see Taxation.impl.TaxationPackageImpl#getPensions_and_Annuities_Income() + * @generated + */ + EClass PENSIONS_AND_ANNUITIES_INCOME = eINSTANCE.getPensions_and_Annuities_Income(); + + /** + * The meta object literal for the 'Occasional payement' attribute feature. + * + * + * @generated + */ + EAttribute PENSIONS_AND_ANNUITIES_INCOME__OCCASIONAL_PAYEMENT = eINSTANCE.getPensions_and_Annuities_Income_Occasional_payement(); + + /** + * The meta object literal for the '{@link Taxation.impl.Capital_and_Investments_IncomeImpl Capital and Investments Income}' class. + * + * + * @see Taxation.impl.Capital_and_Investments_IncomeImpl + * @see Taxation.impl.TaxationPackageImpl#getCapital_and_Investments_Income() + * @generated + */ + EClass CAPITAL_AND_INVESTMENTS_INCOME = eINSTANCE.getCapital_and_Investments_Income(); + + /** + * The meta object literal for the '{@link Taxation.impl.Employment_IncomeImpl Employment Income}' class. + * + * + * @see Taxation.impl.Employment_IncomeImpl + * @see Taxation.impl.TaxationPackageImpl#getEmployment_Income() + * @generated + */ + EClass EMPLOYMENT_INCOME = eINSTANCE.getEmployment_Income(); + + /** + * The meta object literal for the '{@link Taxation.impl.Rentals_and_Leases_IncomeImpl Rentals and Leases Income}' class. + * + * + * @see Taxation.impl.Rentals_and_Leases_IncomeImpl + * @see Taxation.impl.TaxationPackageImpl#getRentals_and_Leases_Income() + * @generated + */ + EClass RENTALS_AND_LEASES_INCOME = eINSTANCE.getRentals_and_Leases_Income(); + + /** + * The meta object literal for the 'Is periodic' attribute feature. + * + * + * @generated + */ + EAttribute RENTALS_AND_LEASES_INCOME__IS_PERIODIC = eINSTANCE.getRentals_and_Leases_Income_Is_periodic(); + + /** + * The meta object literal for the '{@link Taxation.impl.Foreign_IncomeImpl Foreign Income}' class. + * + * + * @see Taxation.impl.Foreign_IncomeImpl + * @see Taxation.impl.TaxationPackageImpl#getForeign_Income() + * @generated + */ + EClass FOREIGN_INCOME = eINSTANCE.getForeign_Income(); + + /** + * The meta object literal for the '{@link Taxation.impl.Local_IncomeImpl Local Income}' class. + * + * + * @see Taxation.impl.Local_IncomeImpl + * @see Taxation.impl.TaxationPackageImpl#getLocal_Income() + * @generated + */ + EClass LOCAL_INCOME = eINSTANCE.getLocal_Income(); + + /** + * The meta object literal for the '{@link Taxation.impl.CIMImpl CIM}' class. + * + * + * @see Taxation.impl.CIMImpl + * @see Taxation.impl.TaxationPackageImpl#getCIM() + * @generated + */ + EClass CIM = eINSTANCE.getCIM(); + + /** + * The meta object literal for the '{@link Taxation.impl.CIPImpl CIP}' class. + * + * + * @see Taxation.impl.CIPImpl + * @see Taxation.impl.TaxationPackageImpl#getCIP() + * @generated + */ + EClass CIP = eINSTANCE.getCIP(); + + /** + * The meta object literal for the '{@link Taxation.impl.CISImpl CIS}' class. + * + * + * @see Taxation.impl.CISImpl + * @see Taxation.impl.TaxationPackageImpl#getCIS() + * @generated + */ + EClass CIS = eINSTANCE.getCIS(); + + /** + * The meta object literal for the '{@link Taxation.impl.FDImpl FD}' class. + * + * + * @see Taxation.impl.FDImpl + * @see Taxation.impl.TaxationPackageImpl#getFD() + * @generated + */ + EClass FD = eINSTANCE.getFD(); + + /** + * The meta object literal for the 'Distance declared in january' attribute feature. + * + * + * @generated + */ + EAttribute FD__DISTANCE_DECLARED_IN_JANUARY = eINSTANCE.getFD_Distance_declared_in_january(); + + /** + * The meta object literal for the 'Calculated distance' attribute feature. + * + * + * @generated + */ + EAttribute FD__CALCULATED_DISTANCE = eINSTANCE.getFD_Calculated_distance(); + + /** + * The meta object literal for the '{@link Taxation.impl.Professional_Expenses_DeductionImpl Professional Expenses Deduction}' class. + * + * + * @see Taxation.impl.Professional_Expenses_DeductionImpl + * @see Taxation.impl.TaxationPackageImpl#getProfessional_Expenses_Deduction() + * @generated + */ + EClass PROFESSIONAL_EXPENSES_DEDUCTION = eINSTANCE.getProfessional_Expenses_Deduction(); + + /** + * The meta object literal for the '{@link Taxation.impl.FOImpl FO}' class. + * + * + * @see Taxation.impl.FOImpl + * @see Taxation.impl.TaxationPackageImpl#getFO() + * @generated + */ + EClass FO = eINSTANCE.getFO(); + + /** + * The meta object literal for the 'Rate type for FO' attribute feature. + * + * + * @generated + */ + EAttribute FO__RATE_TYPE_FOR_FO = eINSTANCE.getFO_Rate_type_for_FO(); + + /** + * The meta object literal for the '{@link Taxation.impl.DS_for_Permanent_ExpenseImpl DS for Permanent Expense}' class. + * + * + * @see Taxation.impl.DS_for_Permanent_ExpenseImpl + * @see Taxation.impl.TaxationPackageImpl#getDS_for_Permanent_Expense() + * @generated + */ + EClass DS_FOR_PERMANENT_EXPENSE = eINSTANCE.getDS_for_Permanent_Expense(); + + /** + * The meta object literal for the 'Permanent expense category' attribute feature. + * + * + * @generated + */ + EAttribute DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY = eINSTANCE.getDS_for_Permanent_Expense_Permanent_expense_category(); + + /** + * The meta object literal for the '{@link Taxation.impl.DSImpl DS}' class. + * + * + * @see Taxation.impl.DSImpl + * @see Taxation.impl.TaxationPackageImpl#getDS() + * @generated + */ + EClass DS = eINSTANCE.getDS(); + + /** + * The meta object literal for the 'Maximum deductible amount' attribute feature. + * + * + * @generated + */ + EAttribute DS__MAXIMUM_DEDUCTIBLE_AMOUNT = eINSTANCE.getDS_Maximum_deductible_amount(); + + /** + * The meta object literal for the 'Id3' attribute feature. + * + * + * @generated + */ + EAttribute DS__ID3 = eINSTANCE.getDS_Id3(); + + /** + * The meta object literal for the '{@link Taxation.impl.DS_for_Interest_ExpenseImpl DS for Interest Expense}' class. + * + * + * @see Taxation.impl.DS_for_Interest_ExpenseImpl + * @see Taxation.impl.TaxationPackageImpl#getDS_for_Interest_Expense() + * @generated + */ + EClass DS_FOR_INTEREST_EXPENSE = eINSTANCE.getDS_for_Interest_Expense(); + + /** + * The meta object literal for the '{@link Taxation.impl.DS_for_Health_and_Pension_InsuranceImpl DS for Health and Pension Insurance}' class. + * + * + * @see Taxation.impl.DS_for_Health_and_Pension_InsuranceImpl + * @see Taxation.impl.TaxationPackageImpl#getDS_for_Health_and_Pension_Insurance() + * @generated + */ + EClass DS_FOR_HEALTH_AND_PENSION_INSURANCE = eINSTANCE.getDS_for_Health_and_Pension_Insurance(); + + /** + * The meta object literal for the 'Insurance category' attribute feature. + * + * + * @generated + */ + EAttribute DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY = eINSTANCE.getDS_for_Health_and_Pension_Insurance_Insurance_category(); + + /** + * The meta object literal for the '{@link Taxation.impl.DS_for_Private_Insurance_and_PlanImpl DS for Private Insurance and Plan}' class. + * + * + * @see Taxation.impl.DS_for_Private_Insurance_and_PlanImpl + * @see Taxation.impl.TaxationPackageImpl#getDS_for_Private_Insurance_and_Plan() + * @generated + */ + EClass DS_FOR_PRIVATE_INSURANCE_AND_PLAN = eINSTANCE.getDS_for_Private_Insurance_and_Plan(); + + /** + * The meta object literal for the 'Private insurance and plan category' attribute feature. + * + * + * @generated + */ + EAttribute DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY = eINSTANCE.getDS_for_Private_Insurance_and_Plan_Private_insurance_and_plan_category(); + + /** + * The meta object literal for the 'Increase for life insurance' attribute feature. + * + * + * @generated + */ + EAttribute DS_FOR_PRIVATE_INSURANCE_AND_PLAN__INCREASE_FOR_LIFE_INSURANCE = eINSTANCE.getDS_for_Private_Insurance_and_Plan_Increase_for_life_insurance(); + + /** + * The meta object literal for the 'Maximum deductible amount for private insurance' attribute feature. + * + * + * @generated + */ + EAttribute DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE = eINSTANCE.getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_private_insurance(); + + /** + * The meta object literal for the 'Maximum deductible amount for old age pension plan' attribute feature. + * + * + * @generated + */ + EAttribute DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN = eINSTANCE.getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_old_age_pension_plan(); + + /** + * The meta object literal for the '{@link Taxation.impl.DS_for_Loss_CarryforwardImpl DS for Loss Carryforward}' class. + * + * + * @see Taxation.impl.DS_for_Loss_CarryforwardImpl + * @see Taxation.impl.TaxationPackageImpl#getDS_for_Loss_Carryforward() + * @generated + */ + EClass DS_FOR_LOSS_CARRYFORWARD = eINSTANCE.getDS_for_Loss_Carryforward(); + + /** + * The meta object literal for the '{@link Taxation.impl.DS_for_DonationImpl DS for Donation}' class. + * + * + * @see Taxation.impl.DS_for_DonationImpl + * @see Taxation.impl.TaxationPackageImpl#getDS_for_Donation() + * @generated + */ + EClass DS_FOR_DONATION = eINSTANCE.getDS_for_Donation(); + + /** + * The meta object literal for the '{@link Taxation.impl.Permanent_ExpenseImpl Permanent Expense}' class. + * + * + * @see Taxation.impl.Permanent_ExpenseImpl + * @see Taxation.impl.TaxationPackageImpl#getPermanent_Expense() + * @generated + */ + EClass PERMANENT_EXPENSE = eINSTANCE.getPermanent_Expense(); + + /** + * The meta object literal for the 'Category' attribute feature. + * + * + * @generated + */ + EAttribute PERMANENT_EXPENSE__CATEGORY = eINSTANCE.getPermanent_Expense_Category(); + + /** + * The meta object literal for the 'Is eligible for deduction' attribute feature. + * + * + * @generated + */ + EAttribute PERMANENT_EXPENSE__IS_ELIGIBLE_FOR_DEDUCTION = eINSTANCE.getPermanent_Expense_Is_eligible_for_deduction(); + + /** + * The meta object literal for the '{@link Taxation.impl.Special_Expense_DSImpl Special Expense DS}' class. + * + * + * @see Taxation.impl.Special_Expense_DSImpl + * @see Taxation.impl.TaxationPackageImpl#getSpecial_Expense_DS() + * @generated + */ + EClass SPECIAL_EXPENSE_DS = eINSTANCE.getSpecial_Expense_DS(); + + /** + * The meta object literal for the '{@link Taxation.impl.Interest_ExpenseImpl Interest Expense}' class. + * + * + * @see Taxation.impl.Interest_ExpenseImpl + * @see Taxation.impl.TaxationPackageImpl#getInterest_Expense() + * @generated + */ + EClass INTEREST_EXPENSE = eINSTANCE.getInterest_Expense(); + + /** + * The meta object literal for the '{@link Taxation.impl.Private_Insurance_and_PlanImpl Private Insurance and Plan}' class. + * + * + * @see Taxation.impl.Private_Insurance_and_PlanImpl + * @see Taxation.impl.TaxationPackageImpl#getPrivate_Insurance_and_Plan() + * @generated + */ + EClass PRIVATE_INSURANCE_AND_PLAN = eINSTANCE.getPrivate_Insurance_and_Plan(); + + /** + * The meta object literal for the 'Category' attribute feature. + * + * + * @generated + */ + EAttribute PRIVATE_INSURANCE_AND_PLAN__CATEGORY = eINSTANCE.getPrivate_Insurance_and_Plan_Category(); + + /** + * The meta object literal for the 'Duration of contract' attribute feature. + * + * + * @generated + */ + EAttribute PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT = eINSTANCE.getPrivate_Insurance_and_Plan_Duration_of_contract(); + + /** + * The meta object literal for the 'Is private insurance and plan eligible for deduction' attribute feature. + * + * + * @generated + */ + EAttribute PRIVATE_INSURANCE_AND_PLAN__IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION = eINSTANCE.getPrivate_Insurance_and_Plan_Is_private_insurance_and_plan_eligible_for_deduction(); + + /** + * The meta object literal for the '{@link Taxation.impl.Health_and_Pension_InsuranceImpl Health and Pension Insurance}' class. + * + * + * @see Taxation.impl.Health_and_Pension_InsuranceImpl + * @see Taxation.impl.TaxationPackageImpl#getHealth_and_Pension_Insurance() + * @generated + */ + EClass HEALTH_AND_PENSION_INSURANCE = eINSTANCE.getHealth_and_Pension_Insurance(); + + /** + * The meta object literal for the 'Category' attribute feature. + * + * + * @generated + */ + EAttribute HEALTH_AND_PENSION_INSURANCE__CATEGORY = eINSTANCE.getHealth_and_Pension_Insurance_Category(); + + /** + * The meta object literal for the 'Is related to additional salary' attribute feature. + * + * + * @generated + */ + EAttribute HEALTH_AND_PENSION_INSURANCE__IS_RELATED_TO_ADDITIONAL_SALARY = eINSTANCE.getHealth_and_Pension_Insurance_Is_related_to_additional_salary(); + + /** + * The meta object literal for the '{@link Taxation.impl.DonationImpl Donation}' class. + * + * + * @see Taxation.impl.DonationImpl + * @see Taxation.impl.TaxationPackageImpl#getDonation() + * @generated + */ + EClass DONATION = eINSTANCE.getDonation(); + + /** + * The meta object literal for the 'Beneficiary1' attribute feature. + * + * + * @generated + */ + EAttribute DONATION__BENEFICIARY1 = eINSTANCE.getDonation_Beneficiary1(); + + /** + * The meta object literal for the 'Is beneficiary eligible' attribute feature. + * + * + * @generated + */ + EAttribute DONATION__IS_BENEFICIARY_ELIGIBLE = eINSTANCE.getDonation_Is_beneficiary_eligible(); + + /** + * The meta object literal for the 'Is donation reported' attribute feature. + * + * + * @generated + */ + EAttribute DONATION__IS_DONATION_REPORTED = eINSTANCE.getDonation_Is_donation_reported(); + + /** + * The meta object literal for the '{@link Taxation.impl.Loss_CarryforwardImpl Loss Carryforward}' class. + * + * + * @see Taxation.impl.Loss_CarryforwardImpl + * @see Taxation.impl.TaxationPackageImpl#getLoss_Carryforward() + * @generated + */ + EClass LOSS_CARRYFORWARD = eINSTANCE.getLoss_Carryforward(); + + /** + * The meta object literal for the 'Regular accountability' attribute feature. + * + * + * @generated + */ + EAttribute LOSS_CARRYFORWARD__REGULAR_ACCOUNTABILITY = eINSTANCE.getLoss_Carryforward_Regular_accountability(); + + /** + * The meta object literal for the 'Compensation by other means' attribute feature. + * + * + * @generated + */ + EAttribute LOSS_CARRYFORWARD__COMPENSATION_BY_OTHER_MEANS = eINSTANCE.getLoss_Carryforward_Compensation_by_other_means(); + + /** + * The meta object literal for the 'Tax payer has inherited business ownership' attribute feature. + * + * + * @generated + */ + EAttribute LOSS_CARRYFORWARD__TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP = eINSTANCE.getLoss_Carryforward_Tax_payer_has_inherited_business_ownership(); + + /** + * The meta object literal for the 'Tax payer has been partner in business' attribute feature. + * + * + * @generated + */ + EAttribute LOSS_CARRYFORWARD__TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS = eINSTANCE.getLoss_Carryforward_Tax_payer_has_been_partner_in_business(); + + /** + * The meta object literal for the '{@link Taxation.impl.Spousal_Expense_ACImpl Spousal Expense AC}' class. + * + * + * @see Taxation.impl.Spousal_Expense_ACImpl + * @see Taxation.impl.TaxationPackageImpl#getSpousal_Expense_AC() + * @generated + */ + EClass SPOUSAL_EXPENSE_AC = eINSTANCE.getSpousal_Expense_AC(); + + /** + * The meta object literal for the '{@link Taxation.impl.Extraordinary_Expense_CEImpl Extraordinary Expense CE}' class. + * + * + * @see Taxation.impl.Extraordinary_Expense_CEImpl + * @see Taxation.impl.TaxationPackageImpl#getExtraordinary_Expense_CE() + * @generated + */ + EClass EXTRAORDINARY_EXPENSE_CE = eINSTANCE.getExtraordinary_Expense_CE(); + + /** + * The meta object literal for the 'Thresholded deduction percentage' attribute feature. + * + * + * @generated + */ + EAttribute EXTRAORDINARY_EXPENSE_CE__THRESHOLDED_DEDUCTION_PERCENTAGE = eINSTANCE.getExtraordinary_Expense_CE_Thresholded_deduction_percentage(); + + /** + * The meta object literal for the 'Ce type' attribute feature. + * + * + * @generated + */ + EAttribute EXTRAORDINARY_EXPENSE_CE__CE_TYPE = eINSTANCE.getExtraordinary_Expense_CE_Ce_type(); + + /** + * The meta object literal for the '{@link Taxation.impl.Travel_Expense_FDImpl Travel Expense FD}' class. + * + * + * @see Taxation.impl.Travel_Expense_FDImpl + * @see Taxation.impl.TaxationPackageImpl#getTravel_Expense_FD() + * @generated + */ + EClass TRAVEL_EXPENSE_FD = eINSTANCE.getTravel_Expense_FD(); + + /** + * The meta object literal for the '{@link Taxation.impl.Professional_ExpenseImpl Professional Expense}' class. + * + * + * @see Taxation.impl.Professional_ExpenseImpl + * @see Taxation.impl.TaxationPackageImpl#getProfessional_Expense() + * @generated + */ + EClass PROFESSIONAL_EXPENSE = eINSTANCE.getProfessional_Expense(); + + /** + * The meta object literal for the '{@link Taxation.impl.Miscellaneous_Expense_FOImpl Miscellaneous Expense FO}' class. + * + * + * @see Taxation.impl.Miscellaneous_Expense_FOImpl + * @see Taxation.impl.TaxationPackageImpl#getMiscellaneous_Expense_FO() + * @generated + */ + EClass MISCELLANEOUS_EXPENSE_FO = eINSTANCE.getMiscellaneous_Expense_FO(); + + /** + * The meta object literal for the '{@link Taxation.Grantor Grantor}' enum. + * + * + * @see Taxation.Grantor + * @see Taxation.impl.TaxationPackageImpl#getGrantor() + * @generated + */ + EEnum GRANTOR = eINSTANCE.getGrantor(); + + /** + * The meta object literal for the '{@link Taxation.Disability_Types Disability Types}' enum. + * + * + * @see Taxation.Disability_Types + * @see Taxation.impl.TaxationPackageImpl#getDisability_Types() + * @generated + */ + EEnum DISABILITY_TYPES = eINSTANCE.getDisability_Types(); + + /** + * The meta object literal for the '{@link Taxation.Country Country}' enum. + * + * + * @see Taxation.Country + * @see Taxation.impl.TaxationPackageImpl#getCountry() + * @generated + */ + EEnum COUNTRY = eINSTANCE.getCountry(); + + /** + * The meta object literal for the '{@link Taxation.Tax_Card_Type Tax Card Type}' enum. + * + * + * @see Taxation.Tax_Card_Type + * @see Taxation.impl.TaxationPackageImpl#getTax_Card_Type() + * @generated + */ + EEnum TAX_CARD_TYPE = eINSTANCE.getTax_Card_Type(); + + /** + * The meta object literal for the '{@link Taxation.Tax_Office Tax Office}' enum. + * + * + * @see Taxation.Tax_Office + * @see Taxation.impl.TaxationPackageImpl#getTax_Office() + * @generated + */ + EEnum TAX_OFFICE = eINSTANCE.getTax_Office(); + + /** + * The meta object literal for the '{@link Taxation.Tax_Class_Category Tax Class Category}' enum. + * + * + * @see Taxation.Tax_Class_Category + * @see Taxation.impl.TaxationPackageImpl#getTax_Class_Category() + * @generated + */ + EEnum TAX_CLASS_CATEGORY = eINSTANCE.getTax_Class_Category(); + + /** + * The meta object literal for the '{@link Taxation.Job_Activity Job Activity}' enum. + * + * + * @see Taxation.Job_Activity + * @see Taxation.impl.TaxationPackageImpl#getJob_Activity() + * @generated + */ + EEnum JOB_ACTIVITY = eINSTANCE.getJob_Activity(); + + /** + * The meta object literal for the '{@link Taxation.Town Town}' enum. + * + * + * @see Taxation.Town + * @see Taxation.impl.TaxationPackageImpl#getTown() + * @generated + */ + EEnum TOWN = eINSTANCE.getTown(); + + /** + * The meta object literal for the '{@link Taxation.Type_of_Rate Type of Rate}' enum. + * + * + * @see Taxation.Type_of_Rate + * @see Taxation.impl.TaxationPackageImpl#getType_of_Rate() + * @generated + */ + EEnum TYPE_OF_RATE = eINSTANCE.getType_of_Rate(); + + /** + * The meta object literal for the '{@link Taxation.CE_Type CE Type}' enum. + * + * + * @see Taxation.CE_Type + * @see Taxation.impl.TaxationPackageImpl#getCE_Type() + * @generated + */ + EEnum CE_TYPE = eINSTANCE.getCE_Type(); + + /** + * The meta object literal for the '{@link Taxation.Expense_Purpose Expense Purpose}' enum. + * + * + * @see Taxation.Expense_Purpose + * @see Taxation.impl.TaxationPackageImpl#getExpense_Purpose() + * @generated + */ + EEnum EXPENSE_PURPOSE = eINSTANCE.getExpense_Purpose(); + + /** + * The meta object literal for the '{@link Taxation.Dependent_Type Dependent Type}' enum. + * + * + * @see Taxation.Dependent_Type + * @see Taxation.impl.TaxationPackageImpl#getDependent_Type() + * @generated + */ + EEnum DEPENDENT_TYPE = eINSTANCE.getDependent_Type(); + + /** + * The meta object literal for the '{@link Taxation.Separation_Causes Separation Causes}' enum. + * + * + * @see Taxation.Separation_Causes + * @see Taxation.impl.TaxationPackageImpl#getSeparation_Causes() + * @generated + */ + EEnum SEPARATION_CAUSES = eINSTANCE.getSeparation_Causes(); + + /** + * The meta object literal for the '{@link Taxation.Category_of_Permanent_Expense Category of Permanent Expense}' enum. + * + * + * @see Taxation.Category_of_Permanent_Expense + * @see Taxation.impl.TaxationPackageImpl#getCategory_of_Permanent_Expense() + * @generated + */ + EEnum CATEGORY_OF_PERMANENT_EXPENSE = eINSTANCE.getCategory_of_Permanent_Expense(); + + /** + * The meta object literal for the '{@link Taxation.Category_of_Health_and_Pension_Insurances Category of Health and Pension Insurances}' enum. + * + * + * @see Taxation.Category_of_Health_and_Pension_Insurances + * @see Taxation.impl.TaxationPackageImpl#getCategory_of_Health_and_Pension_Insurances() + * @generated + */ + EEnum CATEGORY_OF_HEALTH_AND_PENSION_INSURANCES = eINSTANCE.getCategory_of_Health_and_Pension_Insurances(); + + /** + * The meta object literal for the '{@link Taxation.Category_of_Private_Insurance_and_Plan Category of Private Insurance and Plan}' enum. + * + * + * @see Taxation.Category_of_Private_Insurance_and_Plan + * @see Taxation.impl.TaxationPackageImpl#getCategory_of_Private_Insurance_and_Plan() + * @generated + */ + EEnum CATEGORY_OF_PRIVATE_INSURANCE_AND_PLAN = eINSTANCE.getCategory_of_Private_Insurance_and_Plan(); + + /** + * The meta object literal for the '{@link Taxation.Legal_Union_Types Legal Union Types}' enum. + * + * + * @see Taxation.Legal_Union_Types + * @see Taxation.impl.TaxationPackageImpl#getLegal_Union_Types() + * @generated + */ + EEnum LEGAL_UNION_TYPES = eINSTANCE.getLegal_Union_Types(); + + } + +} //TaxationPackage diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Town.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Town.java new file mode 100644 index 00000000..2ca64b95 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Town.java @@ -0,0 +1,278 @@ +/** + */ +package Taxation; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Town', + * and utility methods for working with them. + * + * @see Taxation.TaxationPackage#getTown() + * @model + * @generated + */ +public enum Town implements Enumerator { + /** + * The 'LL' literal object. + * + * + * @see #LL_VALUE + * @generated + * @ordered + */ + LL(0, "LL", "LL"), + + /** + * The 'BB' literal object. + * + * + * @see #BB_VALUE + * @generated + * @ordered + */ + BB(1, "BB", "BB"), + + /** + * The 'SS' literal object. + * + * + * @see #SS_VALUE + * @generated + * @ordered + */ + SS(2, "SS", "SS"), + + /** + * The 'TT' literal object. + * + * + * @see #TT_VALUE + * @generated + * @ordered + */ + TT(3, "TT", "TT"), + + /** + * The 'Other' literal object. + * + * + * @see #OTHER_VALUE + * @generated + * @ordered + */ + OTHER(4, "Other", "Other"); + + /** + * The 'LL' literal value. + * + * + * @see #LL + * @model + * @generated + * @ordered + */ + public static final int LL_VALUE = 0; + + /** + * The 'BB' literal value. + * + * + * @see #BB + * @model + * @generated + * @ordered + */ + public static final int BB_VALUE = 1; + + /** + * The 'SS' literal value. + * + * + * @see #SS + * @model + * @generated + * @ordered + */ + public static final int SS_VALUE = 2; + + /** + * The 'TT' literal value. + * + * + * @see #TT + * @model + * @generated + * @ordered + */ + public static final int TT_VALUE = 3; + + /** + * The 'Other' literal value. + * + * + * @see #OTHER + * @model name="Other" + * @generated + * @ordered + */ + public static final int OTHER_VALUE = 4; + + /** + * An array of all the 'Town' enumerators. + * + * + * @generated + */ + private static final Town[] VALUES_ARRAY = + new Town[] { + LL, + BB, + SS, + TT, + OTHER, + }; + + /** + * A public read-only list of all the 'Town' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Town' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Town get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Town result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Town' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Town getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Town result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Town' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Town get(int value) { + switch (value) { + case LL_VALUE: return LL; + case BB_VALUE: return BB; + case SS_VALUE: return SS; + case TT_VALUE: return TT; + case OTHER_VALUE: return OTHER; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Town(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Town diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Trade_and_Business_Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Trade_and_Business_Income.java new file mode 100644 index 00000000..3f949ac1 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Trade_and_Business_Income.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Trade and Business Income'. + * + * + * + * @see Taxation.TaxationPackage#getTrade_and_Business_Income() + * @model + * @generated + */ +public interface Trade_and_Business_Income extends Income_Type { +} // Trade_and_Business_Income diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Travel_Expense_FD.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Travel_Expense_FD.java new file mode 100644 index 00000000..72fd7aa6 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Travel_Expense_FD.java @@ -0,0 +1,17 @@ +/** + */ +package Taxation; + + +/** + * + * A representation of the model object 'Travel Expense FD'. + * + * + * + * @see Taxation.TaxationPackage#getTravel_Expense_FD() + * @model + * @generated + */ +public interface Travel_Expense_FD extends Professional_Expense { +} // Travel_Expense_FD diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Type_of_Rate.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Type_of_Rate.java new file mode 100644 index 00000000..4e21ec74 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Type_of_Rate.java @@ -0,0 +1,209 @@ +/** + */ +package Taxation; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Type of Rate', + * and utility methods for working with them. + * + * @see Taxation.TaxationPackage#getType_of_Rate() + * @model + * @generated + */ +public enum Type_of_Rate implements Enumerator { + /** + * The 'REGULAR' literal object. + * + * + * @see #REGULAR_VALUE + * @generated + * @ordered + */ + REGULAR(0, "REGULAR", "REGULAR"), + + /** + * The 'REAL COST' literal object. + * + * + * @see #REAL_COST_VALUE + * @generated + * @ordered + */ + REAL_COST(1, "REAL_COST", "REAL_COST"); + + /** + * The 'REGULAR' literal value. + * + * + * @see #REGULAR + * @model + * @generated + * @ordered + */ + public static final int REGULAR_VALUE = 0; + + /** + * The 'REAL COST' literal value. + * + * + * @see #REAL_COST + * @model + * @generated + * @ordered + */ + public static final int REAL_COST_VALUE = 1; + + /** + * An array of all the 'Type of Rate' enumerators. + * + * + * @generated + */ + private static final Type_of_Rate[] VALUES_ARRAY = + new Type_of_Rate[] { + REGULAR, + REAL_COST, + }; + + /** + * A public read-only list of all the 'Type of Rate' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Type of Rate' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Type_of_Rate get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Type_of_Rate result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Type of Rate' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Type_of_Rate getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Type_of_Rate result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Type of Rate' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Type_of_Rate get(int value) { + switch (value) { + case REGULAR_VALUE: return REGULAR; + case REAL_COST_VALUE: return REAL_COST; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Type_of_Rate(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Type_of_Rate diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/AddressImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/AddressImpl.java new file mode 100644 index 00000000..79ec4dec --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/AddressImpl.java @@ -0,0 +1,465 @@ +/** + */ +package Taxation.impl; + +import Taxation.Address; +import Taxation.Country; +import Taxation.Physical_Person; +import Taxation.TaxationPackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'Address'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.AddressImpl#getCountry Country}
  • + *
  • {@link Taxation.impl.AddressImpl#getStreet Street}
  • + *
  • {@link Taxation.impl.AddressImpl#getZipCode Zip Code}
  • + *
  • {@link Taxation.impl.AddressImpl#getCity City}
  • + *
  • {@link Taxation.impl.AddressImpl#getId2 Id2}
  • + *
  • {@link Taxation.impl.AddressImpl#getTaxPayer Tax Payer}
  • + *
+ * + * @generated + */ +public class AddressImpl extends MinimalEObjectImpl.Container implements Address { + /** + * The default value of the '{@link #getCountry() Country}' attribute. + * + * + * @see #getCountry() + * @generated + * @ordered + */ + protected static final Country COUNTRY_EDEFAULT = Country.ZZ; + + /** + * The cached value of the '{@link #getCountry() Country}' attribute. + * + * + * @see #getCountry() + * @generated + * @ordered + */ + protected Country country = COUNTRY_EDEFAULT; + + /** + * The default value of the '{@link #getStreet() Street}' attribute. + * + * + * @see #getStreet() + * @generated + * @ordered + */ + protected static final String STREET_EDEFAULT = null; + + /** + * The cached value of the '{@link #getStreet() Street}' attribute. + * + * + * @see #getStreet() + * @generated + * @ordered + */ + protected String street = STREET_EDEFAULT; + + /** + * The default value of the '{@link #getZipCode() Zip Code}' attribute. + * + * + * @see #getZipCode() + * @generated + * @ordered + */ + protected static final String ZIP_CODE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getZipCode() Zip Code}' attribute. + * + * + * @see #getZipCode() + * @generated + * @ordered + */ + protected String zipCode = ZIP_CODE_EDEFAULT; + + /** + * The default value of the '{@link #getCity() City}' attribute. + * + * + * @see #getCity() + * @generated + * @ordered + */ + protected static final String CITY_EDEFAULT = null; + + /** + * The cached value of the '{@link #getCity() City}' attribute. + * + * + * @see #getCity() + * @generated + * @ordered + */ + protected String city = CITY_EDEFAULT; + + /** + * The default value of the '{@link #getId2() Id2}' attribute. + * + * + * @see #getId2() + * @generated + * @ordered + */ + protected static final String ID2_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId2() Id2}' attribute. + * + * + * @see #getId2() + * @generated + * @ordered + */ + protected String id2 = ID2_EDEFAULT; + + /** + * The cached value of the '{@link #getTaxPayer() Tax Payer}' reference list. + * + * + * @see #getTaxPayer() + * @generated + * @ordered + */ + protected EList taxPayer; + + /** + * + * + * @generated + */ + protected AddressImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.ADDRESS; + } + + /** + * + * + * @generated + */ + @Override + public Country getCountry() { + return country; + } + + /** + * + * + * @generated + */ + @Override + public void setCountry(Country newCountry) { + Country oldCountry = country; + country = newCountry == null ? COUNTRY_EDEFAULT : newCountry; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.ADDRESS__COUNTRY, oldCountry, country)); + } + + /** + * + * + * @generated + */ + @Override + public String getStreet() { + return street; + } + + /** + * + * + * @generated + */ + @Override + public void setStreet(String newStreet) { + String oldStreet = street; + street = newStreet; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.ADDRESS__STREET, oldStreet, street)); + } + + /** + * + * + * @generated + */ + @Override + public String getZipCode() { + return zipCode; + } + + /** + * + * + * @generated + */ + @Override + public void setZipCode(String newZipCode) { + String oldZipCode = zipCode; + zipCode = newZipCode; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.ADDRESS__ZIP_CODE, oldZipCode, zipCode)); + } + + /** + * + * + * @generated + */ + @Override + public String getCity() { + return city; + } + + /** + * + * + * @generated + */ + @Override + public void setCity(String newCity) { + String oldCity = city; + city = newCity; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.ADDRESS__CITY, oldCity, city)); + } + + /** + * + * + * @generated + */ + @Override + public String getId2() { + return id2; + } + + /** + * + * + * @generated + */ + @Override + public void setId2(String newId2) { + String oldId2 = id2; + id2 = newId2; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.ADDRESS__ID2, oldId2, id2)); + } + + /** + * + * + * @generated + */ + @Override + public EList getTaxPayer() { + if (taxPayer == null) { + taxPayer = new EObjectWithInverseResolvingEList.ManyInverse(Physical_Person.class, this, TaxationPackage.ADDRESS__TAX_PAYER, TaxationPackage.PHYSICAL_PERSON__ADDRESSES); + } + return taxPayer; + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.ADDRESS__TAX_PAYER: + return ((InternalEList)(InternalEList)getTaxPayer()).basicAdd(otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.ADDRESS__TAX_PAYER: + return ((InternalEList)getTaxPayer()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.ADDRESS__COUNTRY: + return getCountry(); + case TaxationPackage.ADDRESS__STREET: + return getStreet(); + case TaxationPackage.ADDRESS__ZIP_CODE: + return getZipCode(); + case TaxationPackage.ADDRESS__CITY: + return getCity(); + case TaxationPackage.ADDRESS__ID2: + return getId2(); + case TaxationPackage.ADDRESS__TAX_PAYER: + return getTaxPayer(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.ADDRESS__COUNTRY: + setCountry((Country)newValue); + return; + case TaxationPackage.ADDRESS__STREET: + setStreet((String)newValue); + return; + case TaxationPackage.ADDRESS__ZIP_CODE: + setZipCode((String)newValue); + return; + case TaxationPackage.ADDRESS__CITY: + setCity((String)newValue); + return; + case TaxationPackage.ADDRESS__ID2: + setId2((String)newValue); + return; + case TaxationPackage.ADDRESS__TAX_PAYER: + getTaxPayer().clear(); + getTaxPayer().addAll((Collection)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.ADDRESS__COUNTRY: + setCountry(COUNTRY_EDEFAULT); + return; + case TaxationPackage.ADDRESS__STREET: + setStreet(STREET_EDEFAULT); + return; + case TaxationPackage.ADDRESS__ZIP_CODE: + setZipCode(ZIP_CODE_EDEFAULT); + return; + case TaxationPackage.ADDRESS__CITY: + setCity(CITY_EDEFAULT); + return; + case TaxationPackage.ADDRESS__ID2: + setId2(ID2_EDEFAULT); + return; + case TaxationPackage.ADDRESS__TAX_PAYER: + getTaxPayer().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.ADDRESS__COUNTRY: + return country != COUNTRY_EDEFAULT; + case TaxationPackage.ADDRESS__STREET: + return STREET_EDEFAULT == null ? street != null : !STREET_EDEFAULT.equals(street); + case TaxationPackage.ADDRESS__ZIP_CODE: + return ZIP_CODE_EDEFAULT == null ? zipCode != null : !ZIP_CODE_EDEFAULT.equals(zipCode); + case TaxationPackage.ADDRESS__CITY: + return CITY_EDEFAULT == null ? city != null : !CITY_EDEFAULT.equals(city); + case TaxationPackage.ADDRESS__ID2: + return ID2_EDEFAULT == null ? id2 != null : !ID2_EDEFAULT.equals(id2); + case TaxationPackage.ADDRESS__TAX_PAYER: + return taxPayer != null && !taxPayer.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (country: "); + result.append(country); + result.append(", street: "); + result.append(street); + result.append(", zipCode: "); + result.append(zipCode); + result.append(", city: "); + result.append(city); + result.append(", id2: "); + result.append(id2); + result.append(')'); + return result.toString(); + } + +} //AddressImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Agriculture_and_Forestry_IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Agriculture_and_Forestry_IncomeImpl.java new file mode 100644 index 00000000..15d08db7 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Agriculture_and_Forestry_IncomeImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.Agriculture_and_Forestry_Income; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Agriculture and Forestry Income'. + * + * + * @generated + */ +public class Agriculture_and_Forestry_IncomeImpl extends Income_TypeImpl implements Agriculture_and_Forestry_Income { + /** + * + * + * @generated + */ + protected Agriculture_and_Forestry_IncomeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.AGRICULTURE_AND_FORESTRY_INCOME; + } + +} //Agriculture_and_Forestry_IncomeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/CIMImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/CIMImpl.java new file mode 100644 index 00000000..111a8206 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/CIMImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.CIM; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'CIM'. + * + * + * @generated + */ +public class CIMImpl extends Income_Tax_CreditImpl implements CIM { + /** + * + * + * @generated + */ + protected CIMImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.CIM; + } + +} //CIMImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/CIPImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/CIPImpl.java new file mode 100644 index 00000000..f49e1aa3 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/CIPImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.CIP; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'CIP'. + * + * + * @generated + */ +public class CIPImpl extends Income_Tax_CreditImpl implements CIP { + /** + * + * + * @generated + */ + protected CIPImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.CIP; + } + +} //CIPImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/CISImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/CISImpl.java new file mode 100644 index 00000000..48634ccc --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/CISImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.CIS; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'CIS'. + * + * + * @generated + */ +public class CISImpl extends Income_Tax_CreditImpl implements CIS { + /** + * + * + * @generated + */ + protected CISImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.CIS; + } + +} //CISImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Capital_and_Investments_IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Capital_and_Investments_IncomeImpl.java new file mode 100644 index 00000000..0ff20fed --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Capital_and_Investments_IncomeImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.Capital_and_Investments_Income; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Capital and Investments Income'. + * + * + * @generated + */ +public class Capital_and_Investments_IncomeImpl extends Income_TypeImpl implements Capital_and_Investments_Income { + /** + * + * + * @generated + */ + protected Capital_and_Investments_IncomeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.CAPITAL_AND_INVESTMENTS_INCOME; + } + +} //Capital_and_Investments_IncomeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/ConstantsImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/ConstantsImpl.java new file mode 100644 index 00000000..f73c31e6 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/ConstantsImpl.java @@ -0,0 +1,1509 @@ +/** + */ +package Taxation.impl; + +import Taxation.Constants; +import Taxation.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * + * An implementation of the model object 'Constants'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.ConstantsImpl#getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getMINIMUM_SALARY MINIMUM SALARY}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getFLAT_RATE_CIM_DAILY FLAT RATE CIM DAILY}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getFLAT_RATE_CIM_MONTHLY FLAT RATE CIM MONTHLY}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getFLAT_RATE_CIM_YEARLY FLAT RATE CIM YEARLY}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getFLAT_RATE_CIP_DAILY FLAT RATE CIP DAILY}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getFLAT_RATE_CIP_MONTHLY FLAT RATE CIP MONTHLY}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getFLAT_RATE_CIP_YEARLY FLAT RATE CIP YEARLY}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getFLAT_RATE_CIS_DAILY FLAT RATE CIS DAILY}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getFLAT_RATE_CIS_MONTHLY FLAT RATE CIS MONTHLY}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getFLAT_RATE_CIS_YEARLY FLAT RATE CIS YEARLY}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT FLAT RATE FOR TRAVEL EXPENSE PER UNIT}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS MAXIMUM DEDUCTIBLE AMOUNT FOR DS}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE FLAT RATE FOR MISCELLANEOUS EXPENSE}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE}
  • + *
  • {@link Taxation.impl.ConstantsImpl#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE}
  • + *
+ * + * @generated + */ +public abstract class ConstantsImpl extends MinimalEObjectImpl.Container implements Constants { + /** + * The default value of the '{@link #getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD() MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD}' attribute. + * + * + * @see #getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD() + * @generated + * @ordered + */ + protected static final double MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD_EDEFAULT = 3480.0; + + /** + * The cached value of the '{@link #getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD() MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD}' attribute. + * + * + * @see #getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD() + * @generated + * @ordered + */ + protected double maximuM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD = MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD_EDEFAULT; + + /** + * The default value of the '{@link #getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE() MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE}' attribute. + * + * + * @see #getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE() + * @generated + * @ordered + */ + protected static final double MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE_EDEFAULT = 3600.0; + + /** + * The cached value of the '{@link #getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE() MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE}' attribute. + * + * + * @see #getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE() + * @generated + * @ordered + */ + protected double maximuM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE = MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE_EDEFAULT; + + /** + * The default value of the '{@link #getMINIMUM_SALARY() MINIMUM SALARY}' attribute. + * + * + * @see #getMINIMUM_SALARY() + * @generated + * @ordered + */ + protected static final double MINIMUM_SALARY_EDEFAULT = 1500.0; + + /** + * The cached value of the '{@link #getMINIMUM_SALARY() MINIMUM SALARY}' attribute. + * + * + * @see #getMINIMUM_SALARY() + * @generated + * @ordered + */ + protected double minimuM_SALARY = MINIMUM_SALARY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION() FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION}' attribute. + * + * + * @see #getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION_EDEFAULT = 4500.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION() FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION}' attribute. + * + * + * @see #getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION() + * @generated + * @ordered + */ + protected double flaT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION = FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION_EDEFAULT; + + /** + * The default value of the '{@link #getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS() MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS() + * @generated + * @ordered + */ + protected static final double MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS_EDEFAULT = 20.0; + + /** + * The cached value of the '{@link #getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS() MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS() + * @generated + * @ordered + */ + protected double maximuM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS = MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS_EDEFAULT; + + /** + * The default value of the '{@link #getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS() MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS}' attribute. + * + * + * @see #getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS() + * @generated + * @ordered + */ + protected static final double MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS_EDEFAULT = 120.0; + + /** + * The cached value of the '{@link #getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS() MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS}' attribute. + * + * + * @see #getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS() + * @generated + * @ordered + */ + protected double minimuM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS = MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS_EDEFAULT; + + /** + * The default value of the '{@link #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC() MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC() + * @generated + * @ordered + */ + protected static final double MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC() MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC() + * @generated + * @ordered + */ + protected double maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC = MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC_EDEFAULT; + + /** + * The default value of the '{@link #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE() MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE() + * @generated + * @ordered + */ + protected static final double MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE_EDEFAULT = 24000.0; + + /** + * The cached value of the '{@link #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE() MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE() + * @generated + * @ordered + */ + protected double maximuM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE = MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE_EDEFAULT; + + /** + * The default value of the '{@link #getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}' attribute. + * + * + * @see #getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @generated + * @ordered + */ + protected static final double MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT = 99.0; + + /** + * The cached value of the '{@link #getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}' attribute. + * + * + * @see #getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @generated + * @ordered + */ + protected double maximaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT; + + /** + * The default value of the '{@link #getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION}' attribute. + * + * + * @see #getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @generated + * @ordered + */ + protected static final double MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT = 30.0; + + /** + * The cached value of the '{@link #getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION}' attribute. + * + * + * @see #getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @generated + * @ordered + */ + protected double maximaL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT; + + /** + * The default value of the '{@link #getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}' attribute. + * + * + * @see #getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @generated + * @ordered + */ + protected static final double MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT = 4.0; + + /** + * The cached value of the '{@link #getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}' attribute. + * + * + * @see #getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @generated + * @ordered + */ + protected double minimaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_CIM_DAILY() FLAT RATE CIM DAILY}' attribute. + * + * + * @see #getFLAT_RATE_CIM_DAILY() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_CIM_DAILY_EDEFAULT = 2.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_CIM_DAILY() FLAT RATE CIM DAILY}' attribute. + * + * + * @see #getFLAT_RATE_CIM_DAILY() + * @generated + * @ordered + */ + protected double flaT_RATE_CIM_DAILY = FLAT_RATE_CIM_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_CIM_MONTHLY() FLAT RATE CIM MONTHLY}' attribute. + * + * + * @see #getFLAT_RATE_CIM_MONTHLY() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_CIM_MONTHLY_EDEFAULT = 62.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_CIM_MONTHLY() FLAT RATE CIM MONTHLY}' attribute. + * + * + * @see #getFLAT_RATE_CIM_MONTHLY() + * @generated + * @ordered + */ + protected double flaT_RATE_CIM_MONTHLY = FLAT_RATE_CIM_MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_CIM_YEARLY() FLAT RATE CIM YEARLY}' attribute. + * + * + * @see #getFLAT_RATE_CIM_YEARLY() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_CIM_YEARLY_EDEFAULT = 750.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_CIM_YEARLY() FLAT RATE CIM YEARLY}' attribute. + * + * + * @see #getFLAT_RATE_CIM_YEARLY() + * @generated + * @ordered + */ + protected double flaT_RATE_CIM_YEARLY = FLAT_RATE_CIM_YEARLY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_CIP_DAILY() FLAT RATE CIP DAILY}' attribute. + * + * + * @see #getFLAT_RATE_CIP_DAILY() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_CIP_DAILY_EDEFAULT = 1.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_CIP_DAILY() FLAT RATE CIP DAILY}' attribute. + * + * + * @see #getFLAT_RATE_CIP_DAILY() + * @generated + * @ordered + */ + protected double flaT_RATE_CIP_DAILY = FLAT_RATE_CIP_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_CIP_MONTHLY() FLAT RATE CIP MONTHLY}' attribute. + * + * + * @see #getFLAT_RATE_CIP_MONTHLY() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_CIP_MONTHLY_EDEFAULT = 25.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_CIP_MONTHLY() FLAT RATE CIP MONTHLY}' attribute. + * + * + * @see #getFLAT_RATE_CIP_MONTHLY() + * @generated + * @ordered + */ + protected double flaT_RATE_CIP_MONTHLY = FLAT_RATE_CIP_MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_CIP_YEARLY() FLAT RATE CIP YEARLY}' attribute. + * + * + * @see #getFLAT_RATE_CIP_YEARLY() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_CIP_YEARLY_EDEFAULT = 30.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_CIP_YEARLY() FLAT RATE CIP YEARLY}' attribute. + * + * + * @see #getFLAT_RATE_CIP_YEARLY() + * @generated + * @ordered + */ + protected double flaT_RATE_CIP_YEARLY = FLAT_RATE_CIP_YEARLY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_CIS_DAILY() FLAT RATE CIS DAILY}' attribute. + * + * + * @see #getFLAT_RATE_CIS_DAILY() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_CIS_DAILY_EDEFAULT = 1.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_CIS_DAILY() FLAT RATE CIS DAILY}' attribute. + * + * + * @see #getFLAT_RATE_CIS_DAILY() + * @generated + * @ordered + */ + protected double flaT_RATE_CIS_DAILY = FLAT_RATE_CIS_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_CIS_MONTHLY() FLAT RATE CIS MONTHLY}' attribute. + * + * + * @see #getFLAT_RATE_CIS_MONTHLY() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_CIS_MONTHLY_EDEFAULT = 25.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_CIS_MONTHLY() FLAT RATE CIS MONTHLY}' attribute. + * + * + * @see #getFLAT_RATE_CIS_MONTHLY() + * @generated + * @ordered + */ + protected double flaT_RATE_CIS_MONTHLY = FLAT_RATE_CIS_MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_CIS_YEARLY() FLAT RATE CIS YEARLY}' attribute. + * + * + * @see #getFLAT_RATE_CIS_YEARLY() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_CIS_YEARLY_EDEFAULT = 300.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_CIS_YEARLY() FLAT RATE CIS YEARLY}' attribute. + * + * + * @see #getFLAT_RATE_CIS_YEARLY() + * @generated + * @ordered + */ + protected double flaT_RATE_CIS_YEARLY = FLAT_RATE_CIS_YEARLY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT() FLAT RATE FOR TRAVEL EXPENSE PER UNIT}' attribute. + * + * + * @see #getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT_EDEFAULT = 99.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT() FLAT RATE FOR TRAVEL EXPENSE PER UNIT}' attribute. + * + * + * @see #getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT() + * @generated + * @ordered + */ + protected double flaT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT = FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT_EDEFAULT; + + /** + * The default value of the '{@link #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS() MAXIMUM DEDUCTIBLE AMOUNT FOR DS}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS() + * @generated + * @ordered + */ + protected static final double MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS() MAXIMUM DEDUCTIBLE AMOUNT FOR DS}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS() + * @generated + * @ordered + */ + protected double maximuM_DEDUCTIBLE_AMOUNT_FOR_DS = MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() FLAT RATE FOR MISCELLANEOUS EXPENSE}' attribute. + * + * + * @see #getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() FLAT RATE FOR MISCELLANEOUS EXPENSE}' attribute. + * + * + * @see #getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @generated + * @ordered + */ + protected double flaT_RATE_FOR_MISCELLANEOUS_EXPENSE = FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE_EDEFAULT; + + /** + * The default value of the '{@link #getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE}' attribute. + * + * + * @see #getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @generated + * @ordered + */ + protected static final double DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE}' attribute. + * + * + * @see #getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @generated + * @ordered + */ + protected double disabilitY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE = DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE_EDEFAULT; + + /** + * The default value of the '{@link #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE() MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE() + * @generated + * @ordered + */ + protected static final double MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE() MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE() + * @generated + * @ordered + */ + protected double maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE = MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE_EDEFAULT; + + /** + * + * + * @generated + */ + protected ConstantsImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.CONSTANTS; + } + + /** + * + * + * @generated + */ + @Override + public double getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD() { + return maximuM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD; + } + + /** + * + * + * @generated + */ + @Override + public void setMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD(double newMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD) { + double oldMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD = maximuM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD; + maximuM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD = newMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD, oldMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD, maximuM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD)); + } + + /** + * + * + * @generated + */ + @Override + public double getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE() { + return maximuM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE; + } + + /** + * + * + * @generated + */ + @Override + public void setMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE(double newMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE) { + double oldMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE = maximuM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE; + maximuM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE = newMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE, oldMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE, maximuM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE)); + } + + /** + * + * + * @generated + */ + @Override + public double getMINIMUM_SALARY() { + return minimuM_SALARY; + } + + /** + * + * + * @generated + */ + @Override + public void setMINIMUM_SALARY(double newMINIMUM_SALARY) { + double oldMINIMUM_SALARY = minimuM_SALARY; + minimuM_SALARY = newMINIMUM_SALARY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MINIMUM_SALARY, oldMINIMUM_SALARY, minimuM_SALARY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION() { + return flaT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION(double newFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION) { + double oldFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION = flaT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION; + flaT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION = newFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION, oldFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION, flaT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION)); + } + + /** + * + * + * @generated + */ + @Override + public double getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS() { + return maximuM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS; + } + + /** + * + * + * @generated + */ + @Override + public void setMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS(double newMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS) { + double oldMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS = maximuM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS; + maximuM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS = newMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS, oldMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS, maximuM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS)); + } + + /** + * + * + * @generated + */ + @Override + public double getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS() { + return minimuM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS; + } + + /** + * + * + * @generated + */ + @Override + public void setMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS(double newMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS) { + double oldMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS = minimuM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS; + minimuM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS = newMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS, oldMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS, minimuM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS)); + } + + /** + * + * + * @generated + */ + @Override + public double getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC() { + return maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC; + } + + /** + * + * + * @generated + */ + @Override + public void setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC(double newMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC) { + double oldMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC = maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC; + maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC = newMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC, oldMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC, maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC)); + } + + /** + * + * + * @generated + */ + @Override + public double getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE() { + return maximuM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE; + } + + /** + * + * + * @generated + */ + @Override + public void setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE(double newMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE) { + double oldMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE = maximuM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE; + maximuM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE = newMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE, oldMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE, maximuM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE)); + } + + /** + * + * + * @generated + */ + @Override + public double getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() { + return maximaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION; + } + + /** + * + * + * @generated + */ + @Override + public void setMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(double newMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION) { + double oldMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = maximaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION; + maximaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = newMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION, oldMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION, maximaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION)); + } + + /** + * + * + * @generated + */ + @Override + public double getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() { + return maximaL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION; + } + + /** + * + * + * @generated + */ + @Override + public void setMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(double newMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION) { + double oldMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = maximaL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION; + maximaL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = newMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION, oldMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION, maximaL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION)); + } + + /** + * + * + * @generated + */ + @Override + public double getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() { + return minimaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION; + } + + /** + * + * + * @generated + */ + @Override + public void setMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(double newMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION) { + double oldMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = minimaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION; + minimaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = newMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION, oldMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION, minimaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_CIM_DAILY() { + return flaT_RATE_CIM_DAILY; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_CIM_DAILY(double newFLAT_RATE_CIM_DAILY) { + double oldFLAT_RATE_CIM_DAILY = flaT_RATE_CIM_DAILY; + flaT_RATE_CIM_DAILY = newFLAT_RATE_CIM_DAILY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_CIM_DAILY, oldFLAT_RATE_CIM_DAILY, flaT_RATE_CIM_DAILY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_CIM_MONTHLY() { + return flaT_RATE_CIM_MONTHLY; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_CIM_MONTHLY(double newFLAT_RATE_CIM_MONTHLY) { + double oldFLAT_RATE_CIM_MONTHLY = flaT_RATE_CIM_MONTHLY; + flaT_RATE_CIM_MONTHLY = newFLAT_RATE_CIM_MONTHLY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_CIM_MONTHLY, oldFLAT_RATE_CIM_MONTHLY, flaT_RATE_CIM_MONTHLY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_CIM_YEARLY() { + return flaT_RATE_CIM_YEARLY; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_CIM_YEARLY(double newFLAT_RATE_CIM_YEARLY) { + double oldFLAT_RATE_CIM_YEARLY = flaT_RATE_CIM_YEARLY; + flaT_RATE_CIM_YEARLY = newFLAT_RATE_CIM_YEARLY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_CIM_YEARLY, oldFLAT_RATE_CIM_YEARLY, flaT_RATE_CIM_YEARLY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_CIP_DAILY() { + return flaT_RATE_CIP_DAILY; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_CIP_DAILY(double newFLAT_RATE_CIP_DAILY) { + double oldFLAT_RATE_CIP_DAILY = flaT_RATE_CIP_DAILY; + flaT_RATE_CIP_DAILY = newFLAT_RATE_CIP_DAILY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_CIP_DAILY, oldFLAT_RATE_CIP_DAILY, flaT_RATE_CIP_DAILY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_CIP_MONTHLY() { + return flaT_RATE_CIP_MONTHLY; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_CIP_MONTHLY(double newFLAT_RATE_CIP_MONTHLY) { + double oldFLAT_RATE_CIP_MONTHLY = flaT_RATE_CIP_MONTHLY; + flaT_RATE_CIP_MONTHLY = newFLAT_RATE_CIP_MONTHLY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_CIP_MONTHLY, oldFLAT_RATE_CIP_MONTHLY, flaT_RATE_CIP_MONTHLY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_CIP_YEARLY() { + return flaT_RATE_CIP_YEARLY; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_CIP_YEARLY(double newFLAT_RATE_CIP_YEARLY) { + double oldFLAT_RATE_CIP_YEARLY = flaT_RATE_CIP_YEARLY; + flaT_RATE_CIP_YEARLY = newFLAT_RATE_CIP_YEARLY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_CIP_YEARLY, oldFLAT_RATE_CIP_YEARLY, flaT_RATE_CIP_YEARLY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_CIS_DAILY() { + return flaT_RATE_CIS_DAILY; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_CIS_DAILY(double newFLAT_RATE_CIS_DAILY) { + double oldFLAT_RATE_CIS_DAILY = flaT_RATE_CIS_DAILY; + flaT_RATE_CIS_DAILY = newFLAT_RATE_CIS_DAILY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_CIS_DAILY, oldFLAT_RATE_CIS_DAILY, flaT_RATE_CIS_DAILY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_CIS_MONTHLY() { + return flaT_RATE_CIS_MONTHLY; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_CIS_MONTHLY(double newFLAT_RATE_CIS_MONTHLY) { + double oldFLAT_RATE_CIS_MONTHLY = flaT_RATE_CIS_MONTHLY; + flaT_RATE_CIS_MONTHLY = newFLAT_RATE_CIS_MONTHLY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_CIS_MONTHLY, oldFLAT_RATE_CIS_MONTHLY, flaT_RATE_CIS_MONTHLY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_CIS_YEARLY() { + return flaT_RATE_CIS_YEARLY; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_CIS_YEARLY(double newFLAT_RATE_CIS_YEARLY) { + double oldFLAT_RATE_CIS_YEARLY = flaT_RATE_CIS_YEARLY; + flaT_RATE_CIS_YEARLY = newFLAT_RATE_CIS_YEARLY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_CIS_YEARLY, oldFLAT_RATE_CIS_YEARLY, flaT_RATE_CIS_YEARLY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT() { + return flaT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT(double newFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT) { + double oldFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT = flaT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT; + flaT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT = newFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT, oldFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT, flaT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT)); + } + + /** + * + * + * @generated + */ + @Override + public double getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS() { + return maximuM_DEDUCTIBLE_AMOUNT_FOR_DS; + } + + /** + * + * + * @generated + */ + @Override + public void setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS(double newMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS) { + double oldMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS = maximuM_DEDUCTIBLE_AMOUNT_FOR_DS; + maximuM_DEDUCTIBLE_AMOUNT_FOR_DS = newMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS, oldMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS, maximuM_DEDUCTIBLE_AMOUNT_FOR_DS)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() { + return flaT_RATE_FOR_MISCELLANEOUS_EXPENSE; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(double newFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE) { + double oldFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE = flaT_RATE_FOR_MISCELLANEOUS_EXPENSE; + flaT_RATE_FOR_MISCELLANEOUS_EXPENSE = newFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE, oldFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE, flaT_RATE_FOR_MISCELLANEOUS_EXPENSE)); + } + + /** + * + * + * @generated + */ + @Override + public double getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() { + return disabilitY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE; + } + + /** + * + * + * @generated + */ + @Override + public void setDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(double newDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE) { + double oldDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE = disabilitY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE; + disabilitY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE = newDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE, oldDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE, disabilitY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE)); + } + + /** + * + * + * @generated + */ + @Override + public double getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE() { + return maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE; + } + + /** + * + * + * @generated + */ + @Override + public void setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE(double newMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE) { + double oldMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE = maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE; + maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE = newMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE, oldMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE, maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD: + return getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD(); + case TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE: + return getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE(); + case TaxationPackage.CONSTANTS__MINIMUM_SALARY: + return getMINIMUM_SALARY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION: + return getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION(); + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS: + return getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS(); + case TaxationPackage.CONSTANTS__MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS: + return getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS(); + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC: + return getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC(); + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE: + return getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE(); + case TaxationPackage.CONSTANTS__MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + return getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + case TaxationPackage.CONSTANTS__MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + return getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + case TaxationPackage.CONSTANTS__MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + return getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_DAILY: + return getFLAT_RATE_CIM_DAILY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_MONTHLY: + return getFLAT_RATE_CIM_MONTHLY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_YEARLY: + return getFLAT_RATE_CIM_YEARLY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_DAILY: + return getFLAT_RATE_CIP_DAILY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_MONTHLY: + return getFLAT_RATE_CIP_MONTHLY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_YEARLY: + return getFLAT_RATE_CIP_YEARLY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_DAILY: + return getFLAT_RATE_CIS_DAILY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_MONTHLY: + return getFLAT_RATE_CIS_MONTHLY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_YEARLY: + return getFLAT_RATE_CIS_YEARLY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT: + return getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT(); + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS: + return getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS(); + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: + return getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(); + case TaxationPackage.CONSTANTS__DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: + return getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(); + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE: + return getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD: + setMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE: + setMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MINIMUM_SALARY: + setMINIMUM_SALARY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION: + setFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS: + setMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS: + setMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC: + setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE: + setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + setMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + setMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + setMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_DAILY: + setFLAT_RATE_CIM_DAILY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_MONTHLY: + setFLAT_RATE_CIM_MONTHLY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_YEARLY: + setFLAT_RATE_CIM_YEARLY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_DAILY: + setFLAT_RATE_CIP_DAILY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_MONTHLY: + setFLAT_RATE_CIP_MONTHLY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_YEARLY: + setFLAT_RATE_CIP_YEARLY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_DAILY: + setFLAT_RATE_CIS_DAILY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_MONTHLY: + setFLAT_RATE_CIS_MONTHLY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_YEARLY: + setFLAT_RATE_CIS_YEARLY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT: + setFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS: + setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: + setFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE((Double)newValue); + return; + case TaxationPackage.CONSTANTS__DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: + setDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE: + setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE((Double)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD: + setMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD(MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE: + setMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE(MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MINIMUM_SALARY: + setMINIMUM_SALARY(MINIMUM_SALARY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION: + setFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION(FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS: + setMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS(MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS: + setMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS(MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC: + setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC(MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE: + setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE(MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + setMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + setMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + setMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_DAILY: + setFLAT_RATE_CIM_DAILY(FLAT_RATE_CIM_DAILY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_MONTHLY: + setFLAT_RATE_CIM_MONTHLY(FLAT_RATE_CIM_MONTHLY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_YEARLY: + setFLAT_RATE_CIM_YEARLY(FLAT_RATE_CIM_YEARLY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_DAILY: + setFLAT_RATE_CIP_DAILY(FLAT_RATE_CIP_DAILY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_MONTHLY: + setFLAT_RATE_CIP_MONTHLY(FLAT_RATE_CIP_MONTHLY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_YEARLY: + setFLAT_RATE_CIP_YEARLY(FLAT_RATE_CIP_YEARLY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_DAILY: + setFLAT_RATE_CIS_DAILY(FLAT_RATE_CIS_DAILY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_MONTHLY: + setFLAT_RATE_CIS_MONTHLY(FLAT_RATE_CIS_MONTHLY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_YEARLY: + setFLAT_RATE_CIS_YEARLY(FLAT_RATE_CIS_YEARLY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT: + setFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT(FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS: + setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS(MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: + setFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: + setDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE: + setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE(MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD: + return maximuM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD != MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD_EDEFAULT; + case TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE: + return maximuM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE != MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE_EDEFAULT; + case TaxationPackage.CONSTANTS__MINIMUM_SALARY: + return minimuM_SALARY != MINIMUM_SALARY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION: + return flaT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION != FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION_EDEFAULT; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS: + return maximuM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS != MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS_EDEFAULT; + case TaxationPackage.CONSTANTS__MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS: + return minimuM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS != MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS_EDEFAULT; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC: + return maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC != MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC_EDEFAULT; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE: + return maximuM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE != MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE_EDEFAULT; + case TaxationPackage.CONSTANTS__MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + return maximaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION != MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT; + case TaxationPackage.CONSTANTS__MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + return maximaL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION != MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT; + case TaxationPackage.CONSTANTS__MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + return minimaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION != MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_DAILY: + return flaT_RATE_CIM_DAILY != FLAT_RATE_CIM_DAILY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_MONTHLY: + return flaT_RATE_CIM_MONTHLY != FLAT_RATE_CIM_MONTHLY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_YEARLY: + return flaT_RATE_CIM_YEARLY != FLAT_RATE_CIM_YEARLY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_DAILY: + return flaT_RATE_CIP_DAILY != FLAT_RATE_CIP_DAILY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_MONTHLY: + return flaT_RATE_CIP_MONTHLY != FLAT_RATE_CIP_MONTHLY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_YEARLY: + return flaT_RATE_CIP_YEARLY != FLAT_RATE_CIP_YEARLY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_DAILY: + return flaT_RATE_CIS_DAILY != FLAT_RATE_CIS_DAILY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_MONTHLY: + return flaT_RATE_CIS_MONTHLY != FLAT_RATE_CIS_MONTHLY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_YEARLY: + return flaT_RATE_CIS_YEARLY != FLAT_RATE_CIS_YEARLY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT: + return flaT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT != FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT_EDEFAULT; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS: + return maximuM_DEDUCTIBLE_AMOUNT_FOR_DS != MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: + return flaT_RATE_FOR_MISCELLANEOUS_EXPENSE != FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE_EDEFAULT; + case TaxationPackage.CONSTANTS__DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: + return disabilitY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE != DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE_EDEFAULT; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE: + return maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE != MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD: "); + result.append(maximuM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD); + result.append(", MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE: "); + result.append(maximuM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE); + result.append(", MINIMUM_SALARY: "); + result.append(minimuM_SALARY); + result.append(", FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION: "); + result.append(flaT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION); + result.append(", MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS: "); + result.append(maximuM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS); + result.append(", MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS: "); + result.append(minimuM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS); + result.append(", MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC: "); + result.append(maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC); + result.append(", MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE: "); + result.append(maximuM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE); + result.append(", MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: "); + result.append(maximaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION); + result.append(", MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: "); + result.append(maximaL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION); + result.append(", MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: "); + result.append(minimaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION); + result.append(", FLAT_RATE_CIM_DAILY: "); + result.append(flaT_RATE_CIM_DAILY); + result.append(", FLAT_RATE_CIM_MONTHLY: "); + result.append(flaT_RATE_CIM_MONTHLY); + result.append(", FLAT_RATE_CIM_YEARLY: "); + result.append(flaT_RATE_CIM_YEARLY); + result.append(", FLAT_RATE_CIP_DAILY: "); + result.append(flaT_RATE_CIP_DAILY); + result.append(", FLAT_RATE_CIP_MONTHLY: "); + result.append(flaT_RATE_CIP_MONTHLY); + result.append(", FLAT_RATE_CIP_YEARLY: "); + result.append(flaT_RATE_CIP_YEARLY); + result.append(", FLAT_RATE_CIS_DAILY: "); + result.append(flaT_RATE_CIS_DAILY); + result.append(", FLAT_RATE_CIS_MONTHLY: "); + result.append(flaT_RATE_CIS_MONTHLY); + result.append(", FLAT_RATE_CIS_YEARLY: "); + result.append(flaT_RATE_CIS_YEARLY); + result.append(", FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT: "); + result.append(flaT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT); + result.append(", MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS: "); + result.append(maximuM_DEDUCTIBLE_AMOUNT_FOR_DS); + result.append(", FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: "); + result.append(flaT_RATE_FOR_MISCELLANEOUS_EXPENSE); + result.append(", DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: "); + result.append(disabilitY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE); + result.append(", MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE: "); + result.append(maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE); + result.append(')'); + return result.toString(); + } + +} //ConstantsImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DSImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DSImpl.java new file mode 100644 index 00000000..6b696ea2 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DSImpl.java @@ -0,0 +1,221 @@ +/** + */ +package Taxation.impl; + +import Taxation.DS; +import Taxation.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * + * An implementation of the model object 'DS'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.DSImpl#getMaximum_deductible_amount Maximum deductible amount}
  • + *
  • {@link Taxation.impl.DSImpl#getId3 Id3}
  • + *
+ * + * @generated + */ +public class DSImpl extends MinimalEObjectImpl.Container implements DS { + /** + * The default value of the '{@link #getMaximum_deductible_amount() Maximum deductible amount}' attribute. + * + * + * @see #getMaximum_deductible_amount() + * @generated + * @ordered + */ + protected static final double MAXIMUM_DEDUCTIBLE_AMOUNT_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getMaximum_deductible_amount() Maximum deductible amount}' attribute. + * + * + * @see #getMaximum_deductible_amount() + * @generated + * @ordered + */ + protected double maximum_deductible_amount = MAXIMUM_DEDUCTIBLE_AMOUNT_EDEFAULT; + + /** + * The default value of the '{@link #getId3() Id3}' attribute. + * + * + * @see #getId3() + * @generated + * @ordered + */ + protected static final String ID3_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId3() Id3}' attribute. + * + * + * @see #getId3() + * @generated + * @ordered + */ + protected String id3 = ID3_EDEFAULT; + + /** + * + * + * @generated + */ + protected DSImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.DS; + } + + /** + * + * + * @generated + */ + @Override + public double getMaximum_deductible_amount() { + return maximum_deductible_amount; + } + + /** + * + * + * @generated + */ + @Override + public void setMaximum_deductible_amount(double newMaximum_deductible_amount) { + double oldMaximum_deductible_amount = maximum_deductible_amount; + maximum_deductible_amount = newMaximum_deductible_amount; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS__MAXIMUM_DEDUCTIBLE_AMOUNT, oldMaximum_deductible_amount, maximum_deductible_amount)); + } + + /** + * + * + * @generated + */ + @Override + public String getId3() { + return id3; + } + + /** + * + * + * @generated + */ + @Override + public void setId3(String newId3) { + String oldId3 = id3; + id3 = newId3; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS__ID3, oldId3, id3)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.DS__MAXIMUM_DEDUCTIBLE_AMOUNT: + return getMaximum_deductible_amount(); + case TaxationPackage.DS__ID3: + return getId3(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.DS__MAXIMUM_DEDUCTIBLE_AMOUNT: + setMaximum_deductible_amount((Double)newValue); + return; + case TaxationPackage.DS__ID3: + setId3((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.DS__MAXIMUM_DEDUCTIBLE_AMOUNT: + setMaximum_deductible_amount(MAXIMUM_DEDUCTIBLE_AMOUNT_EDEFAULT); + return; + case TaxationPackage.DS__ID3: + setId3(ID3_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.DS__MAXIMUM_DEDUCTIBLE_AMOUNT: + return maximum_deductible_amount != MAXIMUM_DEDUCTIBLE_AMOUNT_EDEFAULT; + case TaxationPackage.DS__ID3: + return ID3_EDEFAULT == null ? id3 != null : !ID3_EDEFAULT.equals(id3); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (maximum_deductible_amount: "); + result.append(maximum_deductible_amount); + result.append(", id3: "); + result.append(id3); + result.append(')'); + return result.toString(); + } + +} //DSImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_DonationImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_DonationImpl.java new file mode 100644 index 00000000..9cd390b5 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_DonationImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.DS_for_Donation; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'DS for Donation'. + * + * + * @generated + */ +public class DS_for_DonationImpl extends DSImpl implements DS_for_Donation { + /** + * + * + * @generated + */ + protected DS_for_DonationImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.DS_FOR_DONATION; + } + +} //DS_for_DonationImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Health_and_Pension_InsuranceImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Health_and_Pension_InsuranceImpl.java new file mode 100644 index 00000000..11a07c5a --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Health_and_Pension_InsuranceImpl.java @@ -0,0 +1,165 @@ +/** + */ +package Taxation.impl; + +import Taxation.Category_of_Health_and_Pension_Insurances; +import Taxation.DS_for_Health_and_Pension_Insurance; +import Taxation.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'DS for Health and Pension Insurance'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.DS_for_Health_and_Pension_InsuranceImpl#getInsurance_category Insurance category}
  • + *
+ * + * @generated + */ +public class DS_for_Health_and_Pension_InsuranceImpl extends DSImpl implements DS_for_Health_and_Pension_Insurance { + /** + * The default value of the '{@link #getInsurance_category() Insurance category}' attribute. + * + * + * @see #getInsurance_category() + * @generated + * @ordered + */ + protected static final Category_of_Health_and_Pension_Insurances INSURANCE_CATEGORY_EDEFAULT = Category_of_Health_and_Pension_Insurances.MANDATORY_HEALTH_AND_PENSION_INSURANCE; + + /** + * The cached value of the '{@link #getInsurance_category() Insurance category}' attribute. + * + * + * @see #getInsurance_category() + * @generated + * @ordered + */ + protected Category_of_Health_and_Pension_Insurances insurance_category = INSURANCE_CATEGORY_EDEFAULT; + + /** + * + * + * @generated + */ + protected DS_for_Health_and_Pension_InsuranceImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.DS_FOR_HEALTH_AND_PENSION_INSURANCE; + } + + /** + * + * + * @generated + */ + @Override + public Category_of_Health_and_Pension_Insurances getInsurance_category() { + return insurance_category; + } + + /** + * + * + * @generated + */ + @Override + public void setInsurance_category(Category_of_Health_and_Pension_Insurances newInsurance_category) { + Category_of_Health_and_Pension_Insurances oldInsurance_category = insurance_category; + insurance_category = newInsurance_category == null ? INSURANCE_CATEGORY_EDEFAULT : newInsurance_category; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY, oldInsurance_category, insurance_category)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY: + return getInsurance_category(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY: + setInsurance_category((Category_of_Health_and_Pension_Insurances)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY: + setInsurance_category(INSURANCE_CATEGORY_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY: + return insurance_category != INSURANCE_CATEGORY_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (insurance_category: "); + result.append(insurance_category); + result.append(')'); + return result.toString(); + } + +} //DS_for_Health_and_Pension_InsuranceImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Interest_ExpenseImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Interest_ExpenseImpl.java new file mode 100644 index 00000000..a4cf9cc1 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Interest_ExpenseImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.DS_for_Interest_Expense; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'DS for Interest Expense'. + * + * + * @generated + */ +public class DS_for_Interest_ExpenseImpl extends DSImpl implements DS_for_Interest_Expense { + /** + * + * + * @generated + */ + protected DS_for_Interest_ExpenseImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.DS_FOR_INTEREST_EXPENSE; + } + +} //DS_for_Interest_ExpenseImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Loss_CarryforwardImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Loss_CarryforwardImpl.java new file mode 100644 index 00000000..344ba90d --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Loss_CarryforwardImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.DS_for_Loss_Carryforward; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'DS for Loss Carryforward'. + * + * + * @generated + */ +public class DS_for_Loss_CarryforwardImpl extends DSImpl implements DS_for_Loss_Carryforward { + /** + * + * + * @generated + */ + protected DS_for_Loss_CarryforwardImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.DS_FOR_LOSS_CARRYFORWARD; + } + +} //DS_for_Loss_CarryforwardImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Permanent_ExpenseImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Permanent_ExpenseImpl.java new file mode 100644 index 00000000..d2172f09 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Permanent_ExpenseImpl.java @@ -0,0 +1,165 @@ +/** + */ +package Taxation.impl; + +import Taxation.Category_of_Permanent_Expense; +import Taxation.DS_for_Permanent_Expense; +import Taxation.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'DS for Permanent Expense'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.DS_for_Permanent_ExpenseImpl#getPermanent_expense_category Permanent expense category}
  • + *
+ * + * @generated + */ +public class DS_for_Permanent_ExpenseImpl extends DSImpl implements DS_for_Permanent_Expense { + /** + * The default value of the '{@link #getPermanent_expense_category() Permanent expense category}' attribute. + * + * + * @see #getPermanent_expense_category() + * @generated + * @ordered + */ + protected static final Category_of_Permanent_Expense PERMANENT_EXPENSE_CATEGORY_EDEFAULT = Category_of_Permanent_Expense.MISCELLANEOUS_DEBT; + + /** + * The cached value of the '{@link #getPermanent_expense_category() Permanent expense category}' attribute. + * + * + * @see #getPermanent_expense_category() + * @generated + * @ordered + */ + protected Category_of_Permanent_Expense permanent_expense_category = PERMANENT_EXPENSE_CATEGORY_EDEFAULT; + + /** + * + * + * @generated + */ + protected DS_for_Permanent_ExpenseImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.DS_FOR_PERMANENT_EXPENSE; + } + + /** + * + * + * @generated + */ + @Override + public Category_of_Permanent_Expense getPermanent_expense_category() { + return permanent_expense_category; + } + + /** + * + * + * @generated + */ + @Override + public void setPermanent_expense_category(Category_of_Permanent_Expense newPermanent_expense_category) { + Category_of_Permanent_Expense oldPermanent_expense_category = permanent_expense_category; + permanent_expense_category = newPermanent_expense_category == null ? PERMANENT_EXPENSE_CATEGORY_EDEFAULT : newPermanent_expense_category; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY, oldPermanent_expense_category, permanent_expense_category)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY: + return getPermanent_expense_category(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY: + setPermanent_expense_category((Category_of_Permanent_Expense)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY: + setPermanent_expense_category(PERMANENT_EXPENSE_CATEGORY_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY: + return permanent_expense_category != PERMANENT_EXPENSE_CATEGORY_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (permanent_expense_category: "); + result.append(permanent_expense_category); + result.append(')'); + return result.toString(); + } + +} //DS_for_Permanent_ExpenseImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Private_Insurance_and_PlanImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Private_Insurance_and_PlanImpl.java new file mode 100644 index 00000000..d33beb48 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Private_Insurance_and_PlanImpl.java @@ -0,0 +1,333 @@ +/** + */ +package Taxation.impl; + +import Taxation.Category_of_Private_Insurance_and_Plan; +import Taxation.DS_for_Private_Insurance_and_Plan; +import Taxation.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'DS for Private Insurance and Plan'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.DS_for_Private_Insurance_and_PlanImpl#getPrivate_insurance_and_plan_category Private insurance and plan category}
  • + *
  • {@link Taxation.impl.DS_for_Private_Insurance_and_PlanImpl#getIncrease_for_life_insurance Increase for life insurance}
  • + *
  • {@link Taxation.impl.DS_for_Private_Insurance_and_PlanImpl#getMaximum_deductible_amount_for_private_insurance Maximum deductible amount for private insurance}
  • + *
  • {@link Taxation.impl.DS_for_Private_Insurance_and_PlanImpl#getMaximum_deductible_amount_for_old_age_pension_plan Maximum deductible amount for old age pension plan}
  • + *
+ * + * @generated + */ +public class DS_for_Private_Insurance_and_PlanImpl extends DSImpl implements DS_for_Private_Insurance_and_Plan { + /** + * The default value of the '{@link #getPrivate_insurance_and_plan_category() Private insurance and plan category}' attribute. + * + * + * @see #getPrivate_insurance_and_plan_category() + * @generated + * @ordered + */ + protected static final Category_of_Private_Insurance_and_Plan PRIVATE_INSURANCE_AND_PLAN_CATEGORY_EDEFAULT = Category_of_Private_Insurance_and_Plan.PRIVATE_INSURANCE; + + /** + * The cached value of the '{@link #getPrivate_insurance_and_plan_category() Private insurance and plan category}' attribute. + * + * + * @see #getPrivate_insurance_and_plan_category() + * @generated + * @ordered + */ + protected Category_of_Private_Insurance_and_Plan private_insurance_and_plan_category = PRIVATE_INSURANCE_AND_PLAN_CATEGORY_EDEFAULT; + + /** + * The default value of the '{@link #getIncrease_for_life_insurance() Increase for life insurance}' attribute. + * + * + * @see #getIncrease_for_life_insurance() + * @generated + * @ordered + */ + protected static final double INCREASE_FOR_LIFE_INSURANCE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getIncrease_for_life_insurance() Increase for life insurance}' attribute. + * + * + * @see #getIncrease_for_life_insurance() + * @generated + * @ordered + */ + protected double increase_for_life_insurance = INCREASE_FOR_LIFE_INSURANCE_EDEFAULT; + + /** + * The default value of the '{@link #getMaximum_deductible_amount_for_private_insurance() Maximum deductible amount for private insurance}' attribute. + * + * + * @see #getMaximum_deductible_amount_for_private_insurance() + * @generated + * @ordered + */ + protected static final double MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getMaximum_deductible_amount_for_private_insurance() Maximum deductible amount for private insurance}' attribute. + * + * + * @see #getMaximum_deductible_amount_for_private_insurance() + * @generated + * @ordered + */ + protected double maximum_deductible_amount_for_private_insurance = MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE_EDEFAULT; + + /** + * The default value of the '{@link #getMaximum_deductible_amount_for_old_age_pension_plan() Maximum deductible amount for old age pension plan}' attribute. + * + * + * @see #getMaximum_deductible_amount_for_old_age_pension_plan() + * @generated + * @ordered + */ + protected static final double MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getMaximum_deductible_amount_for_old_age_pension_plan() Maximum deductible amount for old age pension plan}' attribute. + * + * + * @see #getMaximum_deductible_amount_for_old_age_pension_plan() + * @generated + * @ordered + */ + protected double maximum_deductible_amount_for_old_age_pension_plan = MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN_EDEFAULT; + + /** + * + * + * @generated + */ + protected DS_for_Private_Insurance_and_PlanImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.DS_FOR_PRIVATE_INSURANCE_AND_PLAN; + } + + /** + * + * + * @generated + */ + @Override + public Category_of_Private_Insurance_and_Plan getPrivate_insurance_and_plan_category() { + return private_insurance_and_plan_category; + } + + /** + * + * + * @generated + */ + @Override + public void setPrivate_insurance_and_plan_category(Category_of_Private_Insurance_and_Plan newPrivate_insurance_and_plan_category) { + Category_of_Private_Insurance_and_Plan oldPrivate_insurance_and_plan_category = private_insurance_and_plan_category; + private_insurance_and_plan_category = newPrivate_insurance_and_plan_category == null ? PRIVATE_INSURANCE_AND_PLAN_CATEGORY_EDEFAULT : newPrivate_insurance_and_plan_category; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY, oldPrivate_insurance_and_plan_category, private_insurance_and_plan_category)); + } + + /** + * + * + * @generated + */ + @Override + public double getIncrease_for_life_insurance() { + return increase_for_life_insurance; + } + + /** + * + * + * @generated + */ + @Override + public void setIncrease_for_life_insurance(double newIncrease_for_life_insurance) { + double oldIncrease_for_life_insurance = increase_for_life_insurance; + increase_for_life_insurance = newIncrease_for_life_insurance; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__INCREASE_FOR_LIFE_INSURANCE, oldIncrease_for_life_insurance, increase_for_life_insurance)); + } + + /** + * + * + * @generated + */ + @Override + public double getMaximum_deductible_amount_for_private_insurance() { + return maximum_deductible_amount_for_private_insurance; + } + + /** + * + * + * @generated + */ + @Override + public void setMaximum_deductible_amount_for_private_insurance(double newMaximum_deductible_amount_for_private_insurance) { + double oldMaximum_deductible_amount_for_private_insurance = maximum_deductible_amount_for_private_insurance; + maximum_deductible_amount_for_private_insurance = newMaximum_deductible_amount_for_private_insurance; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE, oldMaximum_deductible_amount_for_private_insurance, maximum_deductible_amount_for_private_insurance)); + } + + /** + * + * + * @generated + */ + @Override + public double getMaximum_deductible_amount_for_old_age_pension_plan() { + return maximum_deductible_amount_for_old_age_pension_plan; + } + + /** + * + * + * @generated + */ + @Override + public void setMaximum_deductible_amount_for_old_age_pension_plan(double newMaximum_deductible_amount_for_old_age_pension_plan) { + double oldMaximum_deductible_amount_for_old_age_pension_plan = maximum_deductible_amount_for_old_age_pension_plan; + maximum_deductible_amount_for_old_age_pension_plan = newMaximum_deductible_amount_for_old_age_pension_plan; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN, oldMaximum_deductible_amount_for_old_age_pension_plan, maximum_deductible_amount_for_old_age_pension_plan)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY: + return getPrivate_insurance_and_plan_category(); + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__INCREASE_FOR_LIFE_INSURANCE: + return getIncrease_for_life_insurance(); + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE: + return getMaximum_deductible_amount_for_private_insurance(); + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN: + return getMaximum_deductible_amount_for_old_age_pension_plan(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY: + setPrivate_insurance_and_plan_category((Category_of_Private_Insurance_and_Plan)newValue); + return; + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__INCREASE_FOR_LIFE_INSURANCE: + setIncrease_for_life_insurance((Double)newValue); + return; + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE: + setMaximum_deductible_amount_for_private_insurance((Double)newValue); + return; + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN: + setMaximum_deductible_amount_for_old_age_pension_plan((Double)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY: + setPrivate_insurance_and_plan_category(PRIVATE_INSURANCE_AND_PLAN_CATEGORY_EDEFAULT); + return; + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__INCREASE_FOR_LIFE_INSURANCE: + setIncrease_for_life_insurance(INCREASE_FOR_LIFE_INSURANCE_EDEFAULT); + return; + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE: + setMaximum_deductible_amount_for_private_insurance(MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE_EDEFAULT); + return; + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN: + setMaximum_deductible_amount_for_old_age_pension_plan(MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY: + return private_insurance_and_plan_category != PRIVATE_INSURANCE_AND_PLAN_CATEGORY_EDEFAULT; + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__INCREASE_FOR_LIFE_INSURANCE: + return increase_for_life_insurance != INCREASE_FOR_LIFE_INSURANCE_EDEFAULT; + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE: + return maximum_deductible_amount_for_private_insurance != MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE_EDEFAULT; + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN: + return maximum_deductible_amount_for_old_age_pension_plan != MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (private_insurance_and_plan_category: "); + result.append(private_insurance_and_plan_category); + result.append(", increase_for_life_insurance: "); + result.append(increase_for_life_insurance); + result.append(", maximum_deductible_amount_for_private_insurance: "); + result.append(maximum_deductible_amount_for_private_insurance); + result.append(", maximum_deductible_amount_for_old_age_pension_plan: "); + result.append(maximum_deductible_amount_for_old_age_pension_plan); + result.append(')'); + return result.toString(); + } + +} //DS_for_Private_Insurance_and_PlanImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DependentImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DependentImpl.java new file mode 100644 index 00000000..0732ae44 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DependentImpl.java @@ -0,0 +1,598 @@ +/** + */ +package Taxation.impl; + +import Taxation.Dependent; +import Taxation.Dependent_Type; +import Taxation.Expense; +import Taxation.External_Allowance; +import Taxation.FromAgent; +import Taxation.Household; +import Taxation.Tax_Payer; +import Taxation.TaxationPackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'Dependent'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.DependentImpl#getDependent_type Dependent type}
  • + *
  • {@link Taxation.impl.DependentImpl#getResponsible_person Responsible person}
  • + *
  • {@link Taxation.impl.DependentImpl#isContinued_studies Continued studies}
  • + *
  • {@link Taxation.impl.DependentImpl#getAllowances Allowances}
  • + *
  • {@link Taxation.impl.DependentImpl#getHousehold Household}
  • + *
  • {@link Taxation.impl.DependentImpl#getFrom_agent From agent}
  • + *
  • {@link Taxation.impl.DependentImpl#getExpense Expense}
  • + *
+ * + * @generated + */ +public class DependentImpl extends Physical_PersonImpl implements Dependent { + /** + * The default value of the '{@link #getDependent_type() Dependent type}' attribute. + * + * + * @see #getDependent_type() + * @generated + * @ordered + */ + protected static final Dependent_Type DEPENDENT_TYPE_EDEFAULT = Dependent_Type.CHILD; + + /** + * The cached value of the '{@link #getDependent_type() Dependent type}' attribute. + * + * + * @see #getDependent_type() + * @generated + * @ordered + */ + protected Dependent_Type dependent_type = DEPENDENT_TYPE_EDEFAULT; + + /** + * The default value of the '{@link #isContinued_studies() Continued studies}' attribute. + * + * + * @see #isContinued_studies() + * @generated + * @ordered + */ + protected static final boolean CONTINUED_STUDIES_EDEFAULT = false; + + /** + * The cached value of the '{@link #isContinued_studies() Continued studies}' attribute. + * + * + * @see #isContinued_studies() + * @generated + * @ordered + */ + protected boolean continued_studies = CONTINUED_STUDIES_EDEFAULT; + + /** + * The cached value of the '{@link #getAllowances() Allowances}' containment reference. + * + * + * @see #getAllowances() + * @generated + * @ordered + */ + protected External_Allowance allowances; + + /** + * The cached value of the '{@link #getFrom_agent() From agent}' reference. + * + * + * @see #getFrom_agent() + * @generated + * @ordered + */ + protected FromAgent from_agent; + + /** + * The cached value of the '{@link #getExpense() Expense}' reference list. + * + * + * @see #getExpense() + * @generated + * @ordered + */ + protected EList expense; + + /** + * + * + * @generated + */ + protected DependentImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.DEPENDENT; + } + + /** + * + * + * @generated + */ + @Override + public Dependent_Type getDependent_type() { + return dependent_type; + } + + /** + * + * + * @generated + */ + @Override + public void setDependent_type(Dependent_Type newDependent_type) { + Dependent_Type oldDependent_type = dependent_type; + dependent_type = newDependent_type == null ? DEPENDENT_TYPE_EDEFAULT : newDependent_type; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DEPENDENT__DEPENDENT_TYPE, oldDependent_type, dependent_type)); + } + + /** + * + * + * @generated + */ + @Override + public Tax_Payer getResponsible_person() { + if (eContainerFeatureID() != TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON) return null; + return (Tax_Payer)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetResponsible_person(Tax_Payer newResponsible_person, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newResponsible_person, TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setResponsible_person(Tax_Payer newResponsible_person) { + if (newResponsible_person != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON && newResponsible_person != null)) { + if (EcoreUtil.isAncestor(this, newResponsible_person)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newResponsible_person != null) + msgs = ((InternalEObject)newResponsible_person).eInverseAdd(this, TaxationPackage.TAX_PAYER__DEPENDENTS, Tax_Payer.class, msgs); + msgs = basicSetResponsible_person(newResponsible_person, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON, newResponsible_person, newResponsible_person)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isContinued_studies() { + return continued_studies; + } + + /** + * + * + * @generated + */ + @Override + public void setContinued_studies(boolean newContinued_studies) { + boolean oldContinued_studies = continued_studies; + continued_studies = newContinued_studies; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DEPENDENT__CONTINUED_STUDIES, oldContinued_studies, continued_studies)); + } + + /** + * + * + * @generated + */ + @Override + public External_Allowance getAllowances() { + return allowances; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetAllowances(External_Allowance newAllowances, NotificationChain msgs) { + External_Allowance oldAllowances = allowances; + allowances = newAllowances; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.DEPENDENT__ALLOWANCES, oldAllowances, newAllowances); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setAllowances(External_Allowance newAllowances) { + if (newAllowances != allowances) { + NotificationChain msgs = null; + if (allowances != null) + msgs = ((InternalEObject)allowances).eInverseRemove(this, TaxationPackage.EXTERNAL_ALLOWANCE__PERSON, External_Allowance.class, msgs); + if (newAllowances != null) + msgs = ((InternalEObject)newAllowances).eInverseAdd(this, TaxationPackage.EXTERNAL_ALLOWANCE__PERSON, External_Allowance.class, msgs); + msgs = basicSetAllowances(newAllowances, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DEPENDENT__ALLOWANCES, newAllowances, newAllowances)); + } + + /** + * + * + * @generated + */ + @Override + public Household getHousehold() { + if (eContainerFeatureID() != TaxationPackage.DEPENDENT__HOUSEHOLD) return null; + return (Household)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetHousehold(Household newHousehold, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newHousehold, TaxationPackage.DEPENDENT__HOUSEHOLD, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setHousehold(Household newHousehold) { + if (newHousehold != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.DEPENDENT__HOUSEHOLD && newHousehold != null)) { + if (EcoreUtil.isAncestor(this, newHousehold)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newHousehold != null) + msgs = ((InternalEObject)newHousehold).eInverseAdd(this, TaxationPackage.HOUSEHOLD__CHILDREN, Household.class, msgs); + msgs = basicSetHousehold(newHousehold, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DEPENDENT__HOUSEHOLD, newHousehold, newHousehold)); + } + + /** + * + * + * @generated + */ + @Override + public FromAgent getFrom_agent() { + if (from_agent != null && from_agent.eIsProxy()) { + InternalEObject oldFrom_agent = (InternalEObject)from_agent; + from_agent = (FromAgent)eResolveProxy(oldFrom_agent); + if (from_agent != oldFrom_agent) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.DEPENDENT__FROM_AGENT, oldFrom_agent, from_agent)); + } + } + return from_agent; + } + + /** + * + * + * @generated + */ + public FromAgent basicGetFrom_agent() { + return from_agent; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetFrom_agent(FromAgent newFrom_agent, NotificationChain msgs) { + FromAgent oldFrom_agent = from_agent; + from_agent = newFrom_agent; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.DEPENDENT__FROM_AGENT, oldFrom_agent, newFrom_agent); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setFrom_agent(FromAgent newFrom_agent) { + if (newFrom_agent != from_agent) { + NotificationChain msgs = null; + if (from_agent != null) + msgs = ((InternalEObject)from_agent).eInverseRemove(this, TaxationPackage.FROM_AGENT__DEPENDENT, FromAgent.class, msgs); + if (newFrom_agent != null) + msgs = ((InternalEObject)newFrom_agent).eInverseAdd(this, TaxationPackage.FROM_AGENT__DEPENDENT, FromAgent.class, msgs); + msgs = basicSetFrom_agent(newFrom_agent, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DEPENDENT__FROM_AGENT, newFrom_agent, newFrom_agent)); + } + + /** + * + * + * @generated + */ + @Override + public EList getExpense() { + if (expense == null) { + expense = new EObjectWithInverseResolvingEList(Expense.class, this, TaxationPackage.DEPENDENT__EXPENSE, TaxationPackage.EXPENSE__DEPENDENT); + } + return expense; + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetResponsible_person((Tax_Payer)otherEnd, msgs); + case TaxationPackage.DEPENDENT__ALLOWANCES: + if (allowances != null) + msgs = ((InternalEObject)allowances).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - TaxationPackage.DEPENDENT__ALLOWANCES, null, msgs); + return basicSetAllowances((External_Allowance)otherEnd, msgs); + case TaxationPackage.DEPENDENT__HOUSEHOLD: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetHousehold((Household)otherEnd, msgs); + case TaxationPackage.DEPENDENT__FROM_AGENT: + if (from_agent != null) + msgs = ((InternalEObject)from_agent).eInverseRemove(this, TaxationPackage.FROM_AGENT__DEPENDENT, FromAgent.class, msgs); + return basicSetFrom_agent((FromAgent)otherEnd, msgs); + case TaxationPackage.DEPENDENT__EXPENSE: + return ((InternalEList)(InternalEList)getExpense()).basicAdd(otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON: + return basicSetResponsible_person(null, msgs); + case TaxationPackage.DEPENDENT__ALLOWANCES: + return basicSetAllowances(null, msgs); + case TaxationPackage.DEPENDENT__HOUSEHOLD: + return basicSetHousehold(null, msgs); + case TaxationPackage.DEPENDENT__FROM_AGENT: + return basicSetFrom_agent(null, msgs); + case TaxationPackage.DEPENDENT__EXPENSE: + return ((InternalEList)getExpense()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON: + return eInternalContainer().eInverseRemove(this, TaxationPackage.TAX_PAYER__DEPENDENTS, Tax_Payer.class, msgs); + case TaxationPackage.DEPENDENT__HOUSEHOLD: + return eInternalContainer().eInverseRemove(this, TaxationPackage.HOUSEHOLD__CHILDREN, Household.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.DEPENDENT__DEPENDENT_TYPE: + return getDependent_type(); + case TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON: + return getResponsible_person(); + case TaxationPackage.DEPENDENT__CONTINUED_STUDIES: + return isContinued_studies(); + case TaxationPackage.DEPENDENT__ALLOWANCES: + return getAllowances(); + case TaxationPackage.DEPENDENT__HOUSEHOLD: + return getHousehold(); + case TaxationPackage.DEPENDENT__FROM_AGENT: + if (resolve) return getFrom_agent(); + return basicGetFrom_agent(); + case TaxationPackage.DEPENDENT__EXPENSE: + return getExpense(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.DEPENDENT__DEPENDENT_TYPE: + setDependent_type((Dependent_Type)newValue); + return; + case TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON: + setResponsible_person((Tax_Payer)newValue); + return; + case TaxationPackage.DEPENDENT__CONTINUED_STUDIES: + setContinued_studies((Boolean)newValue); + return; + case TaxationPackage.DEPENDENT__ALLOWANCES: + setAllowances((External_Allowance)newValue); + return; + case TaxationPackage.DEPENDENT__HOUSEHOLD: + setHousehold((Household)newValue); + return; + case TaxationPackage.DEPENDENT__FROM_AGENT: + setFrom_agent((FromAgent)newValue); + return; + case TaxationPackage.DEPENDENT__EXPENSE: + getExpense().clear(); + getExpense().addAll((Collection)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.DEPENDENT__DEPENDENT_TYPE: + setDependent_type(DEPENDENT_TYPE_EDEFAULT); + return; + case TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON: + setResponsible_person((Tax_Payer)null); + return; + case TaxationPackage.DEPENDENT__CONTINUED_STUDIES: + setContinued_studies(CONTINUED_STUDIES_EDEFAULT); + return; + case TaxationPackage.DEPENDENT__ALLOWANCES: + setAllowances((External_Allowance)null); + return; + case TaxationPackage.DEPENDENT__HOUSEHOLD: + setHousehold((Household)null); + return; + case TaxationPackage.DEPENDENT__FROM_AGENT: + setFrom_agent((FromAgent)null); + return; + case TaxationPackage.DEPENDENT__EXPENSE: + getExpense().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.DEPENDENT__DEPENDENT_TYPE: + return dependent_type != DEPENDENT_TYPE_EDEFAULT; + case TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON: + return getResponsible_person() != null; + case TaxationPackage.DEPENDENT__CONTINUED_STUDIES: + return continued_studies != CONTINUED_STUDIES_EDEFAULT; + case TaxationPackage.DEPENDENT__ALLOWANCES: + return allowances != null; + case TaxationPackage.DEPENDENT__HOUSEHOLD: + return getHousehold() != null; + case TaxationPackage.DEPENDENT__FROM_AGENT: + return from_agent != null; + case TaxationPackage.DEPENDENT__EXPENSE: + return expense != null && !expense.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (dependent_type: "); + result.append(dependent_type); + result.append(", continued_studies: "); + result.append(continued_studies); + result.append(')'); + return result.toString(); + } + +} //DependentImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DonationImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DonationImpl.java new file mode 100644 index 00000000..e631901a --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DonationImpl.java @@ -0,0 +1,276 @@ +/** + */ +package Taxation.impl; + +import Taxation.Donation; +import Taxation.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Donation'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.DonationImpl#getBeneficiary1 Beneficiary1}
  • + *
  • {@link Taxation.impl.DonationImpl#isIs_beneficiary_eligible Is beneficiary eligible}
  • + *
  • {@link Taxation.impl.DonationImpl#isIs_donation_reported Is donation reported}
  • + *
+ * + * @generated + */ +public class DonationImpl extends Special_Expense_DSImpl implements Donation { + /** + * The default value of the '{@link #getBeneficiary1() Beneficiary1}' attribute. + * + * + * @see #getBeneficiary1() + * @generated + * @ordered + */ + protected static final String BENEFICIARY1_EDEFAULT = null; + + /** + * The cached value of the '{@link #getBeneficiary1() Beneficiary1}' attribute. + * + * + * @see #getBeneficiary1() + * @generated + * @ordered + */ + protected String beneficiary1 = BENEFICIARY1_EDEFAULT; + + /** + * The default value of the '{@link #isIs_beneficiary_eligible() Is beneficiary eligible}' attribute. + * + * + * @see #isIs_beneficiary_eligible() + * @generated + * @ordered + */ + protected static final boolean IS_BENEFICIARY_ELIGIBLE_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_beneficiary_eligible() Is beneficiary eligible}' attribute. + * + * + * @see #isIs_beneficiary_eligible() + * @generated + * @ordered + */ + protected boolean is_beneficiary_eligible = IS_BENEFICIARY_ELIGIBLE_EDEFAULT; + + /** + * The default value of the '{@link #isIs_donation_reported() Is donation reported}' attribute. + * + * + * @see #isIs_donation_reported() + * @generated + * @ordered + */ + protected static final boolean IS_DONATION_REPORTED_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_donation_reported() Is donation reported}' attribute. + * + * + * @see #isIs_donation_reported() + * @generated + * @ordered + */ + protected boolean is_donation_reported = IS_DONATION_REPORTED_EDEFAULT; + + /** + * + * + * @generated + */ + protected DonationImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.DONATION; + } + + /** + * + * + * @generated + */ + @Override + public String getBeneficiary1() { + return beneficiary1; + } + + /** + * + * + * @generated + */ + @Override + public void setBeneficiary1(String newBeneficiary1) { + String oldBeneficiary1 = beneficiary1; + beneficiary1 = newBeneficiary1; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DONATION__BENEFICIARY1, oldBeneficiary1, beneficiary1)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_beneficiary_eligible() { + return is_beneficiary_eligible; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_beneficiary_eligible(boolean newIs_beneficiary_eligible) { + boolean oldIs_beneficiary_eligible = is_beneficiary_eligible; + is_beneficiary_eligible = newIs_beneficiary_eligible; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DONATION__IS_BENEFICIARY_ELIGIBLE, oldIs_beneficiary_eligible, is_beneficiary_eligible)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_donation_reported() { + return is_donation_reported; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_donation_reported(boolean newIs_donation_reported) { + boolean oldIs_donation_reported = is_donation_reported; + is_donation_reported = newIs_donation_reported; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DONATION__IS_DONATION_REPORTED, oldIs_donation_reported, is_donation_reported)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.DONATION__BENEFICIARY1: + return getBeneficiary1(); + case TaxationPackage.DONATION__IS_BENEFICIARY_ELIGIBLE: + return isIs_beneficiary_eligible(); + case TaxationPackage.DONATION__IS_DONATION_REPORTED: + return isIs_donation_reported(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.DONATION__BENEFICIARY1: + setBeneficiary1((String)newValue); + return; + case TaxationPackage.DONATION__IS_BENEFICIARY_ELIGIBLE: + setIs_beneficiary_eligible((Boolean)newValue); + return; + case TaxationPackage.DONATION__IS_DONATION_REPORTED: + setIs_donation_reported((Boolean)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.DONATION__BENEFICIARY1: + setBeneficiary1(BENEFICIARY1_EDEFAULT); + return; + case TaxationPackage.DONATION__IS_BENEFICIARY_ELIGIBLE: + setIs_beneficiary_eligible(IS_BENEFICIARY_ELIGIBLE_EDEFAULT); + return; + case TaxationPackage.DONATION__IS_DONATION_REPORTED: + setIs_donation_reported(IS_DONATION_REPORTED_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.DONATION__BENEFICIARY1: + return BENEFICIARY1_EDEFAULT == null ? beneficiary1 != null : !BENEFICIARY1_EDEFAULT.equals(beneficiary1); + case TaxationPackage.DONATION__IS_BENEFICIARY_ELIGIBLE: + return is_beneficiary_eligible != IS_BENEFICIARY_ELIGIBLE_EDEFAULT; + case TaxationPackage.DONATION__IS_DONATION_REPORTED: + return is_donation_reported != IS_DONATION_REPORTED_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (beneficiary1: "); + result.append(beneficiary1); + result.append(", is_beneficiary_eligible: "); + result.append(is_beneficiary_eligible); + result.append(", is_donation_reported: "); + result.append(is_donation_reported); + result.append(')'); + return result.toString(); + } + +} //DonationImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Employment_IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Employment_IncomeImpl.java new file mode 100644 index 00000000..3cdce780 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Employment_IncomeImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.Employment_Income; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Employment Income'. + * + * + * @generated + */ +public class Employment_IncomeImpl extends Income_TypeImpl implements Employment_Income { + /** + * + * + * @generated + */ + protected Employment_IncomeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.EMPLOYMENT_INCOME; + } + +} //Employment_IncomeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/ExpenseImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/ExpenseImpl.java new file mode 100644 index 00000000..70dfc53e --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/ExpenseImpl.java @@ -0,0 +1,653 @@ +/** + */ +package Taxation.impl; + +import Taxation.Dependent; +import Taxation.Expense; +import Taxation.Expense_Purpose; +import Taxation.FromAgent; +import Taxation.Income; +import Taxation.Physical_Person; +import Taxation.TaxationPackage; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EcoreUtil; + +/** + * + * An implementation of the model object 'Expense'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.ExpenseImpl#getDeclared_amount Declared amount}
  • + *
  • {@link Taxation.impl.ExpenseImpl#getExpense_purpose Expense purpose}
  • + *
  • {@link Taxation.impl.ExpenseImpl#getDependent Dependent}
  • + *
  • {@link Taxation.impl.ExpenseImpl#getFrom_agent From agent}
  • + *
  • {@link Taxation.impl.ExpenseImpl#getIncome Income}
  • + *
  • {@link Taxation.impl.ExpenseImpl#getId4 Id4}
  • + *
  • {@link Taxation.impl.ExpenseImpl#getBeneficiary Beneficiary}
  • + *
+ * + * @generated + */ +public class ExpenseImpl extends MinimalEObjectImpl.Container implements Expense { + /** + * The default value of the '{@link #getDeclared_amount() Declared amount}' attribute. + * + * + * @see #getDeclared_amount() + * @generated + * @ordered + */ + protected static final double DECLARED_AMOUNT_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeclared_amount() Declared amount}' attribute. + * + * + * @see #getDeclared_amount() + * @generated + * @ordered + */ + protected double declared_amount = DECLARED_AMOUNT_EDEFAULT; + + /** + * The default value of the '{@link #getExpense_purpose() Expense purpose}' attribute. + * + * + * @see #getExpense_purpose() + * @generated + * @ordered + */ + protected static final Expense_Purpose EXPENSE_PURPOSE_EDEFAULT = Expense_Purpose.OTHER; + + /** + * The cached value of the '{@link #getExpense_purpose() Expense purpose}' attribute. + * + * + * @see #getExpense_purpose() + * @generated + * @ordered + */ + protected Expense_Purpose expense_purpose = EXPENSE_PURPOSE_EDEFAULT; + + /** + * The cached value of the '{@link #getDependent() Dependent}' reference. + * + * + * @see #getDependent() + * @generated + * @ordered + */ + protected Dependent dependent; + + /** + * The cached value of the '{@link #getFrom_agent() From agent}' reference. + * + * + * @see #getFrom_agent() + * @generated + * @ordered + */ + protected FromAgent from_agent; + + /** + * The default value of the '{@link #getId4() Id4}' attribute. + * + * + * @see #getId4() + * @generated + * @ordered + */ + protected static final String ID4_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId4() Id4}' attribute. + * + * + * @see #getId4() + * @generated + * @ordered + */ + protected String id4 = ID4_EDEFAULT; + + /** + * The cached value of the '{@link #getBeneficiary() Beneficiary}' reference. + * + * + * @see #getBeneficiary() + * @generated + * @ordered + */ + protected Physical_Person beneficiary; + + /** + * + * + * @generated + */ + protected ExpenseImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.EXPENSE; + } + + /** + * + * + * @generated + */ + @Override + public double getDeclared_amount() { + return declared_amount; + } + + /** + * + * + * @generated + */ + @Override + public void setDeclared_amount(double newDeclared_amount) { + double oldDeclared_amount = declared_amount; + declared_amount = newDeclared_amount; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__DECLARED_AMOUNT, oldDeclared_amount, declared_amount)); + } + + /** + * + * + * @generated + */ + @Override + public Expense_Purpose getExpense_purpose() { + return expense_purpose; + } + + /** + * + * + * @generated + */ + @Override + public void setExpense_purpose(Expense_Purpose newExpense_purpose) { + Expense_Purpose oldExpense_purpose = expense_purpose; + expense_purpose = newExpense_purpose == null ? EXPENSE_PURPOSE_EDEFAULT : newExpense_purpose; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__EXPENSE_PURPOSE, oldExpense_purpose, expense_purpose)); + } + + /** + * + * + * @generated + */ + @Override + public Dependent getDependent() { + if (dependent != null && dependent.eIsProxy()) { + InternalEObject oldDependent = (InternalEObject)dependent; + dependent = (Dependent)eResolveProxy(oldDependent); + if (dependent != oldDependent) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.EXPENSE__DEPENDENT, oldDependent, dependent)); + } + } + return dependent; + } + + /** + * + * + * @generated + */ + public Dependent basicGetDependent() { + return dependent; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetDependent(Dependent newDependent, NotificationChain msgs) { + Dependent oldDependent = dependent; + dependent = newDependent; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__DEPENDENT, oldDependent, newDependent); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setDependent(Dependent newDependent) { + if (newDependent != dependent) { + NotificationChain msgs = null; + if (dependent != null) + msgs = ((InternalEObject)dependent).eInverseRemove(this, TaxationPackage.DEPENDENT__EXPENSE, Dependent.class, msgs); + if (newDependent != null) + msgs = ((InternalEObject)newDependent).eInverseAdd(this, TaxationPackage.DEPENDENT__EXPENSE, Dependent.class, msgs); + msgs = basicSetDependent(newDependent, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__DEPENDENT, newDependent, newDependent)); + } + + /** + * + * + * @generated + */ + @Override + public FromAgent getFrom_agent() { + if (from_agent != null && from_agent.eIsProxy()) { + InternalEObject oldFrom_agent = (InternalEObject)from_agent; + from_agent = (FromAgent)eResolveProxy(oldFrom_agent); + if (from_agent != oldFrom_agent) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.EXPENSE__FROM_AGENT, oldFrom_agent, from_agent)); + } + } + return from_agent; + } + + /** + * + * + * @generated + */ + public FromAgent basicGetFrom_agent() { + return from_agent; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetFrom_agent(FromAgent newFrom_agent, NotificationChain msgs) { + FromAgent oldFrom_agent = from_agent; + from_agent = newFrom_agent; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__FROM_AGENT, oldFrom_agent, newFrom_agent); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setFrom_agent(FromAgent newFrom_agent) { + if (newFrom_agent != from_agent) { + NotificationChain msgs = null; + if (from_agent != null) + msgs = ((InternalEObject)from_agent).eInverseRemove(this, TaxationPackage.FROM_AGENT__EXPENSE, FromAgent.class, msgs); + if (newFrom_agent != null) + msgs = ((InternalEObject)newFrom_agent).eInverseAdd(this, TaxationPackage.FROM_AGENT__EXPENSE, FromAgent.class, msgs); + msgs = basicSetFrom_agent(newFrom_agent, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__FROM_AGENT, newFrom_agent, newFrom_agent)); + } + + /** + * + * + * @generated + */ + @Override + public Income getIncome() { + if (eContainerFeatureID() != TaxationPackage.EXPENSE__INCOME) return null; + return (Income)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetIncome(Income newIncome, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newIncome, TaxationPackage.EXPENSE__INCOME, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setIncome(Income newIncome) { + if (newIncome != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.EXPENSE__INCOME && newIncome != null)) { + if (EcoreUtil.isAncestor(this, newIncome)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newIncome != null) + msgs = ((InternalEObject)newIncome).eInverseAdd(this, TaxationPackage.INCOME__EXPENSES, Income.class, msgs); + msgs = basicSetIncome(newIncome, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__INCOME, newIncome, newIncome)); + } + + /** + * + * + * @generated + */ + @Override + public String getId4() { + return id4; + } + + /** + * + * + * @generated + */ + @Override + public void setId4(String newId4) { + String oldId4 = id4; + id4 = newId4; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__ID4, oldId4, id4)); + } + + /** + * + * + * @generated + */ + @Override + public Physical_Person getBeneficiary() { + if (beneficiary != null && beneficiary.eIsProxy()) { + InternalEObject oldBeneficiary = (InternalEObject)beneficiary; + beneficiary = (Physical_Person)eResolveProxy(oldBeneficiary); + if (beneficiary != oldBeneficiary) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.EXPENSE__BENEFICIARY, oldBeneficiary, beneficiary)); + } + } + return beneficiary; + } + + /** + * + * + * @generated + */ + public Physical_Person basicGetBeneficiary() { + return beneficiary; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetBeneficiary(Physical_Person newBeneficiary, NotificationChain msgs) { + Physical_Person oldBeneficiary = beneficiary; + beneficiary = newBeneficiary; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__BENEFICIARY, oldBeneficiary, newBeneficiary); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setBeneficiary(Physical_Person newBeneficiary) { + if (newBeneficiary != beneficiary) { + NotificationChain msgs = null; + if (beneficiary != null) + msgs = ((InternalEObject)beneficiary).eInverseRemove(this, TaxationPackage.PHYSICAL_PERSON__EXPENSES, Physical_Person.class, msgs); + if (newBeneficiary != null) + msgs = ((InternalEObject)newBeneficiary).eInverseAdd(this, TaxationPackage.PHYSICAL_PERSON__EXPENSES, Physical_Person.class, msgs); + msgs = basicSetBeneficiary(newBeneficiary, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__BENEFICIARY, newBeneficiary, newBeneficiary)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.EXPENSE__DEPENDENT: + if (dependent != null) + msgs = ((InternalEObject)dependent).eInverseRemove(this, TaxationPackage.DEPENDENT__EXPENSE, Dependent.class, msgs); + return basicSetDependent((Dependent)otherEnd, msgs); + case TaxationPackage.EXPENSE__FROM_AGENT: + if (from_agent != null) + msgs = ((InternalEObject)from_agent).eInverseRemove(this, TaxationPackage.FROM_AGENT__EXPENSE, FromAgent.class, msgs); + return basicSetFrom_agent((FromAgent)otherEnd, msgs); + case TaxationPackage.EXPENSE__INCOME: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetIncome((Income)otherEnd, msgs); + case TaxationPackage.EXPENSE__BENEFICIARY: + if (beneficiary != null) + msgs = ((InternalEObject)beneficiary).eInverseRemove(this, TaxationPackage.PHYSICAL_PERSON__EXPENSES, Physical_Person.class, msgs); + return basicSetBeneficiary((Physical_Person)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.EXPENSE__DEPENDENT: + return basicSetDependent(null, msgs); + case TaxationPackage.EXPENSE__FROM_AGENT: + return basicSetFrom_agent(null, msgs); + case TaxationPackage.EXPENSE__INCOME: + return basicSetIncome(null, msgs); + case TaxationPackage.EXPENSE__BENEFICIARY: + return basicSetBeneficiary(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.EXPENSE__INCOME: + return eInternalContainer().eInverseRemove(this, TaxationPackage.INCOME__EXPENSES, Income.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.EXPENSE__DECLARED_AMOUNT: + return getDeclared_amount(); + case TaxationPackage.EXPENSE__EXPENSE_PURPOSE: + return getExpense_purpose(); + case TaxationPackage.EXPENSE__DEPENDENT: + if (resolve) return getDependent(); + return basicGetDependent(); + case TaxationPackage.EXPENSE__FROM_AGENT: + if (resolve) return getFrom_agent(); + return basicGetFrom_agent(); + case TaxationPackage.EXPENSE__INCOME: + return getIncome(); + case TaxationPackage.EXPENSE__ID4: + return getId4(); + case TaxationPackage.EXPENSE__BENEFICIARY: + if (resolve) return getBeneficiary(); + return basicGetBeneficiary(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.EXPENSE__DECLARED_AMOUNT: + setDeclared_amount((Double)newValue); + return; + case TaxationPackage.EXPENSE__EXPENSE_PURPOSE: + setExpense_purpose((Expense_Purpose)newValue); + return; + case TaxationPackage.EXPENSE__DEPENDENT: + setDependent((Dependent)newValue); + return; + case TaxationPackage.EXPENSE__FROM_AGENT: + setFrom_agent((FromAgent)newValue); + return; + case TaxationPackage.EXPENSE__INCOME: + setIncome((Income)newValue); + return; + case TaxationPackage.EXPENSE__ID4: + setId4((String)newValue); + return; + case TaxationPackage.EXPENSE__BENEFICIARY: + setBeneficiary((Physical_Person)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.EXPENSE__DECLARED_AMOUNT: + setDeclared_amount(DECLARED_AMOUNT_EDEFAULT); + return; + case TaxationPackage.EXPENSE__EXPENSE_PURPOSE: + setExpense_purpose(EXPENSE_PURPOSE_EDEFAULT); + return; + case TaxationPackage.EXPENSE__DEPENDENT: + setDependent((Dependent)null); + return; + case TaxationPackage.EXPENSE__FROM_AGENT: + setFrom_agent((FromAgent)null); + return; + case TaxationPackage.EXPENSE__INCOME: + setIncome((Income)null); + return; + case TaxationPackage.EXPENSE__ID4: + setId4(ID4_EDEFAULT); + return; + case TaxationPackage.EXPENSE__BENEFICIARY: + setBeneficiary((Physical_Person)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.EXPENSE__DECLARED_AMOUNT: + return declared_amount != DECLARED_AMOUNT_EDEFAULT; + case TaxationPackage.EXPENSE__EXPENSE_PURPOSE: + return expense_purpose != EXPENSE_PURPOSE_EDEFAULT; + case TaxationPackage.EXPENSE__DEPENDENT: + return dependent != null; + case TaxationPackage.EXPENSE__FROM_AGENT: + return from_agent != null; + case TaxationPackage.EXPENSE__INCOME: + return getIncome() != null; + case TaxationPackage.EXPENSE__ID4: + return ID4_EDEFAULT == null ? id4 != null : !ID4_EDEFAULT.equals(id4); + case TaxationPackage.EXPENSE__BENEFICIARY: + return beneficiary != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (declared_amount: "); + result.append(declared_amount); + result.append(", expense_purpose: "); + result.append(expense_purpose); + result.append(", id4: "); + result.append(id4); + result.append(')'); + return result.toString(); + } + +} //ExpenseImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/External_AllowanceImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/External_AllowanceImpl.java new file mode 100644 index 00000000..0d0119a5 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/External_AllowanceImpl.java @@ -0,0 +1,555 @@ +/** + */ +package Taxation.impl; + +import Taxation.Dependent; +import Taxation.External_Allowance; +import Taxation.Grantor; +import Taxation.Physical_Person; +import Taxation.TaxationPackage; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EcoreUtil; + +/** + * + * An implementation of the model object 'External Allowance'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.External_AllowanceImpl#getAmount Amount}
  • + *
  • {@link Taxation.impl.External_AllowanceImpl#getGrantor Grantor}
  • + *
  • {@link Taxation.impl.External_AllowanceImpl#getStarting_year Starting year}
  • + *
  • {@link Taxation.impl.External_AllowanceImpl#getEnding_year Ending year}
  • + *
  • {@link Taxation.impl.External_AllowanceImpl#getReciver Reciver}
  • + *
  • {@link Taxation.impl.External_AllowanceImpl#getId5 Id5}
  • + *
  • {@link Taxation.impl.External_AllowanceImpl#getPerson Person}
  • + *
+ * + * @generated + */ +public class External_AllowanceImpl extends MinimalEObjectImpl.Container implements External_Allowance { + /** + * The default value of the '{@link #getAmount() Amount}' attribute. + * + * + * @see #getAmount() + * @generated + * @ordered + */ + protected static final double AMOUNT_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getAmount() Amount}' attribute. + * + * + * @see #getAmount() + * @generated + * @ordered + */ + protected double amount = AMOUNT_EDEFAULT; + + /** + * The default value of the '{@link #getGrantor() Grantor}' attribute. + * + * + * @see #getGrantor() + * @generated + * @ordered + */ + protected static final Grantor GRANTOR_EDEFAULT = Grantor.WWW; + + /** + * The cached value of the '{@link #getGrantor() Grantor}' attribute. + * + * + * @see #getGrantor() + * @generated + * @ordered + */ + protected Grantor grantor = GRANTOR_EDEFAULT; + + /** + * The default value of the '{@link #getStarting_year() Starting year}' attribute. + * + * + * @see #getStarting_year() + * @generated + * @ordered + */ + protected static final int STARTING_YEAR_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getStarting_year() Starting year}' attribute. + * + * + * @see #getStarting_year() + * @generated + * @ordered + */ + protected int starting_year = STARTING_YEAR_EDEFAULT; + + /** + * The default value of the '{@link #getEnding_year() Ending year}' attribute. + * + * + * @see #getEnding_year() + * @generated + * @ordered + */ + protected static final int ENDING_YEAR_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getEnding_year() Ending year}' attribute. + * + * + * @see #getEnding_year() + * @generated + * @ordered + */ + protected int ending_year = ENDING_YEAR_EDEFAULT; + + /** + * The cached value of the '{@link #getReciver() Reciver}' reference. + * + * + * @see #getReciver() + * @generated + * @ordered + */ + protected Physical_Person reciver; + + /** + * The default value of the '{@link #getId5() Id5}' attribute. + * + * + * @see #getId5() + * @generated + * @ordered + */ + protected static final String ID5_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId5() Id5}' attribute. + * + * + * @see #getId5() + * @generated + * @ordered + */ + protected String id5 = ID5_EDEFAULT; + + /** + * + * + * @generated + */ + protected External_AllowanceImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.EXTERNAL_ALLOWANCE; + } + + /** + * + * + * @generated + */ + @Override + public double getAmount() { + return amount; + } + + /** + * + * + * @generated + */ + @Override + public void setAmount(double newAmount) { + double oldAmount = amount; + amount = newAmount; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXTERNAL_ALLOWANCE__AMOUNT, oldAmount, amount)); + } + + /** + * + * + * @generated + */ + @Override + public Grantor getGrantor() { + return grantor; + } + + /** + * + * + * @generated + */ + @Override + public void setGrantor(Grantor newGrantor) { + Grantor oldGrantor = grantor; + grantor = newGrantor == null ? GRANTOR_EDEFAULT : newGrantor; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXTERNAL_ALLOWANCE__GRANTOR, oldGrantor, grantor)); + } + + /** + * + * + * @generated + */ + @Override + public int getStarting_year() { + return starting_year; + } + + /** + * + * + * @generated + */ + @Override + public void setStarting_year(int newStarting_year) { + int oldStarting_year = starting_year; + starting_year = newStarting_year; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXTERNAL_ALLOWANCE__STARTING_YEAR, oldStarting_year, starting_year)); + } + + /** + * + * + * @generated + */ + @Override + public int getEnding_year() { + return ending_year; + } + + /** + * + * + * @generated + */ + @Override + public void setEnding_year(int newEnding_year) { + int oldEnding_year = ending_year; + ending_year = newEnding_year; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXTERNAL_ALLOWANCE__ENDING_YEAR, oldEnding_year, ending_year)); + } + + /** + * + * + * @generated + */ + @Override + public Physical_Person getReciver() { + if (reciver != null && reciver.eIsProxy()) { + InternalEObject oldReciver = (InternalEObject)reciver; + reciver = (Physical_Person)eResolveProxy(oldReciver); + if (reciver != oldReciver) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.EXTERNAL_ALLOWANCE__RECIVER, oldReciver, reciver)); + } + } + return reciver; + } + + /** + * + * + * @generated + */ + public Physical_Person basicGetReciver() { + return reciver; + } + + /** + * + * + * @generated + */ + @Override + public void setReciver(Physical_Person newReciver) { + Physical_Person oldReciver = reciver; + reciver = newReciver; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXTERNAL_ALLOWANCE__RECIVER, oldReciver, reciver)); + } + + /** + * + * + * @generated + */ + @Override + public String getId5() { + return id5; + } + + /** + * + * + * @generated + */ + @Override + public void setId5(String newId5) { + String oldId5 = id5; + id5 = newId5; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXTERNAL_ALLOWANCE__ID5, oldId5, id5)); + } + + /** + * + * + * @generated + */ + @Override + public Dependent getPerson() { + if (eContainerFeatureID() != TaxationPackage.EXTERNAL_ALLOWANCE__PERSON) return null; + return (Dependent)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetPerson(Dependent newPerson, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newPerson, TaxationPackage.EXTERNAL_ALLOWANCE__PERSON, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setPerson(Dependent newPerson) { + if (newPerson != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.EXTERNAL_ALLOWANCE__PERSON && newPerson != null)) { + if (EcoreUtil.isAncestor(this, newPerson)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newPerson != null) + msgs = ((InternalEObject)newPerson).eInverseAdd(this, TaxationPackage.DEPENDENT__ALLOWANCES, Dependent.class, msgs); + msgs = basicSetPerson(newPerson, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXTERNAL_ALLOWANCE__PERSON, newPerson, newPerson)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.EXTERNAL_ALLOWANCE__PERSON: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetPerson((Dependent)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.EXTERNAL_ALLOWANCE__PERSON: + return basicSetPerson(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.EXTERNAL_ALLOWANCE__PERSON: + return eInternalContainer().eInverseRemove(this, TaxationPackage.DEPENDENT__ALLOWANCES, Dependent.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.EXTERNAL_ALLOWANCE__AMOUNT: + return getAmount(); + case TaxationPackage.EXTERNAL_ALLOWANCE__GRANTOR: + return getGrantor(); + case TaxationPackage.EXTERNAL_ALLOWANCE__STARTING_YEAR: + return getStarting_year(); + case TaxationPackage.EXTERNAL_ALLOWANCE__ENDING_YEAR: + return getEnding_year(); + case TaxationPackage.EXTERNAL_ALLOWANCE__RECIVER: + if (resolve) return getReciver(); + return basicGetReciver(); + case TaxationPackage.EXTERNAL_ALLOWANCE__ID5: + return getId5(); + case TaxationPackage.EXTERNAL_ALLOWANCE__PERSON: + return getPerson(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.EXTERNAL_ALLOWANCE__AMOUNT: + setAmount((Double)newValue); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__GRANTOR: + setGrantor((Grantor)newValue); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__STARTING_YEAR: + setStarting_year((Integer)newValue); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__ENDING_YEAR: + setEnding_year((Integer)newValue); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__RECIVER: + setReciver((Physical_Person)newValue); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__ID5: + setId5((String)newValue); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__PERSON: + setPerson((Dependent)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.EXTERNAL_ALLOWANCE__AMOUNT: + setAmount(AMOUNT_EDEFAULT); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__GRANTOR: + setGrantor(GRANTOR_EDEFAULT); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__STARTING_YEAR: + setStarting_year(STARTING_YEAR_EDEFAULT); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__ENDING_YEAR: + setEnding_year(ENDING_YEAR_EDEFAULT); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__RECIVER: + setReciver((Physical_Person)null); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__ID5: + setId5(ID5_EDEFAULT); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__PERSON: + setPerson((Dependent)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.EXTERNAL_ALLOWANCE__AMOUNT: + return amount != AMOUNT_EDEFAULT; + case TaxationPackage.EXTERNAL_ALLOWANCE__GRANTOR: + return grantor != GRANTOR_EDEFAULT; + case TaxationPackage.EXTERNAL_ALLOWANCE__STARTING_YEAR: + return starting_year != STARTING_YEAR_EDEFAULT; + case TaxationPackage.EXTERNAL_ALLOWANCE__ENDING_YEAR: + return ending_year != ENDING_YEAR_EDEFAULT; + case TaxationPackage.EXTERNAL_ALLOWANCE__RECIVER: + return reciver != null; + case TaxationPackage.EXTERNAL_ALLOWANCE__ID5: + return ID5_EDEFAULT == null ? id5 != null : !ID5_EDEFAULT.equals(id5); + case TaxationPackage.EXTERNAL_ALLOWANCE__PERSON: + return getPerson() != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (amount: "); + result.append(amount); + result.append(", grantor: "); + result.append(grantor); + result.append(", starting_year: "); + result.append(starting_year); + result.append(", ending_year: "); + result.append(ending_year); + result.append(", id5: "); + result.append(id5); + result.append(')'); + return result.toString(); + } + +} //External_AllowanceImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Extraordinary_Expense_CEImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Extraordinary_Expense_CEImpl.java new file mode 100644 index 00000000..ce69931c --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Extraordinary_Expense_CEImpl.java @@ -0,0 +1,221 @@ +/** + */ +package Taxation.impl; + +import Taxation.CE_Type; +import Taxation.Extraordinary_Expense_CE; +import Taxation.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Extraordinary Expense CE'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.Extraordinary_Expense_CEImpl#getThresholded_deduction_percentage Thresholded deduction percentage}
  • + *
  • {@link Taxation.impl.Extraordinary_Expense_CEImpl#getCe_type Ce type}
  • + *
+ * + * @generated + */ +public class Extraordinary_Expense_CEImpl extends ExpenseImpl implements Extraordinary_Expense_CE { + /** + * The default value of the '{@link #getThresholded_deduction_percentage() Thresholded deduction percentage}' attribute. + * + * + * @see #getThresholded_deduction_percentage() + * @generated + * @ordered + */ + protected static final double THRESHOLDED_DEDUCTION_PERCENTAGE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getThresholded_deduction_percentage() Thresholded deduction percentage}' attribute. + * + * + * @see #getThresholded_deduction_percentage() + * @generated + * @ordered + */ + protected double thresholded_deduction_percentage = THRESHOLDED_DEDUCTION_PERCENTAGE_EDEFAULT; + + /** + * The default value of the '{@link #getCe_type() Ce type}' attribute. + * + * + * @see #getCe_type() + * @generated + * @ordered + */ + protected static final CE_Type CE_TYPE_EDEFAULT = CE_Type.INALIDITY_AND_INFIRMITY; + + /** + * The cached value of the '{@link #getCe_type() Ce type}' attribute. + * + * + * @see #getCe_type() + * @generated + * @ordered + */ + protected CE_Type ce_type = CE_TYPE_EDEFAULT; + + /** + * + * + * @generated + */ + protected Extraordinary_Expense_CEImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.EXTRAORDINARY_EXPENSE_CE; + } + + /** + * + * + * @generated + */ + @Override + public double getThresholded_deduction_percentage() { + return thresholded_deduction_percentage; + } + + /** + * + * + * @generated + */ + @Override + public void setThresholded_deduction_percentage(double newThresholded_deduction_percentage) { + double oldThresholded_deduction_percentage = thresholded_deduction_percentage; + thresholded_deduction_percentage = newThresholded_deduction_percentage; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXTRAORDINARY_EXPENSE_CE__THRESHOLDED_DEDUCTION_PERCENTAGE, oldThresholded_deduction_percentage, thresholded_deduction_percentage)); + } + + /** + * + * + * @generated + */ + @Override + public CE_Type getCe_type() { + return ce_type; + } + + /** + * + * + * @generated + */ + @Override + public void setCe_type(CE_Type newCe_type) { + CE_Type oldCe_type = ce_type; + ce_type = newCe_type == null ? CE_TYPE_EDEFAULT : newCe_type; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXTRAORDINARY_EXPENSE_CE__CE_TYPE, oldCe_type, ce_type)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE__THRESHOLDED_DEDUCTION_PERCENTAGE: + return getThresholded_deduction_percentage(); + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE__CE_TYPE: + return getCe_type(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE__THRESHOLDED_DEDUCTION_PERCENTAGE: + setThresholded_deduction_percentage((Double)newValue); + return; + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE__CE_TYPE: + setCe_type((CE_Type)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE__THRESHOLDED_DEDUCTION_PERCENTAGE: + setThresholded_deduction_percentage(THRESHOLDED_DEDUCTION_PERCENTAGE_EDEFAULT); + return; + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE__CE_TYPE: + setCe_type(CE_TYPE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE__THRESHOLDED_DEDUCTION_PERCENTAGE: + return thresholded_deduction_percentage != THRESHOLDED_DEDUCTION_PERCENTAGE_EDEFAULT; + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE__CE_TYPE: + return ce_type != CE_TYPE_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (thresholded_deduction_percentage: "); + result.append(thresholded_deduction_percentage); + result.append(", ce_type: "); + result.append(ce_type); + result.append(')'); + return result.toString(); + } + +} //Extraordinary_Expense_CEImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FDImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FDImpl.java new file mode 100644 index 00000000..70b890f3 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FDImpl.java @@ -0,0 +1,220 @@ +/** + */ +package Taxation.impl; + +import Taxation.FD; +import Taxation.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'FD'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.FDImpl#getDistance_declared_in_january Distance declared in january}
  • + *
  • {@link Taxation.impl.FDImpl#getCalculated_distance Calculated distance}
  • + *
+ * + * @generated + */ +public class FDImpl extends Professional_Expenses_DeductionImpl implements FD { + /** + * The default value of the '{@link #getDistance_declared_in_january() Distance declared in january}' attribute. + * + * + * @see #getDistance_declared_in_january() + * @generated + * @ordered + */ + protected static final double DISTANCE_DECLARED_IN_JANUARY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDistance_declared_in_january() Distance declared in january}' attribute. + * + * + * @see #getDistance_declared_in_january() + * @generated + * @ordered + */ + protected double distance_declared_in_january = DISTANCE_DECLARED_IN_JANUARY_EDEFAULT; + + /** + * The default value of the '{@link #getCalculated_distance() Calculated distance}' attribute. + * + * + * @see #getCalculated_distance() + * @generated + * @ordered + */ + protected static final double CALCULATED_DISTANCE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getCalculated_distance() Calculated distance}' attribute. + * + * + * @see #getCalculated_distance() + * @generated + * @ordered + */ + protected double calculated_distance = CALCULATED_DISTANCE_EDEFAULT; + + /** + * + * + * @generated + */ + protected FDImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.FD; + } + + /** + * + * + * @generated + */ + @Override + public double getDistance_declared_in_january() { + return distance_declared_in_january; + } + + /** + * + * + * @generated + */ + @Override + public void setDistance_declared_in_january(double newDistance_declared_in_january) { + double oldDistance_declared_in_january = distance_declared_in_january; + distance_declared_in_january = newDistance_declared_in_january; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY, oldDistance_declared_in_january, distance_declared_in_january)); + } + + /** + * + * + * @generated + */ + @Override + public double getCalculated_distance() { + return calculated_distance; + } + + /** + * + * + * @generated + */ + @Override + public void setCalculated_distance(double newCalculated_distance) { + double oldCalculated_distance = calculated_distance; + calculated_distance = newCalculated_distance; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FD__CALCULATED_DISTANCE, oldCalculated_distance, calculated_distance)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY: + return getDistance_declared_in_january(); + case TaxationPackage.FD__CALCULATED_DISTANCE: + return getCalculated_distance(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY: + setDistance_declared_in_january((Double)newValue); + return; + case TaxationPackage.FD__CALCULATED_DISTANCE: + setCalculated_distance((Double)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY: + setDistance_declared_in_january(DISTANCE_DECLARED_IN_JANUARY_EDEFAULT); + return; + case TaxationPackage.FD__CALCULATED_DISTANCE: + setCalculated_distance(CALCULATED_DISTANCE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY: + return distance_declared_in_january != DISTANCE_DECLARED_IN_JANUARY_EDEFAULT; + case TaxationPackage.FD__CALCULATED_DISTANCE: + return calculated_distance != CALCULATED_DISTANCE_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (distance_declared_in_january: "); + result.append(distance_declared_in_january); + result.append(", calculated_distance: "); + result.append(calculated_distance); + result.append(')'); + return result.toString(); + } + +} //FDImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FOImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FOImpl.java new file mode 100644 index 00000000..d03ee8bc --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FOImpl.java @@ -0,0 +1,165 @@ +/** + */ +package Taxation.impl; + +import Taxation.FO; +import Taxation.TaxationPackage; +import Taxation.Type_of_Rate; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'FO'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.FOImpl#getRate_type_for_FO Rate type for FO}
  • + *
+ * + * @generated + */ +public class FOImpl extends Professional_Expenses_DeductionImpl implements FO { + /** + * The default value of the '{@link #getRate_type_for_FO() Rate type for FO}' attribute. + * + * + * @see #getRate_type_for_FO() + * @generated + * @ordered + */ + protected static final Type_of_Rate RATE_TYPE_FOR_FO_EDEFAULT = Type_of_Rate.REGULAR; + + /** + * The cached value of the '{@link #getRate_type_for_FO() Rate type for FO}' attribute. + * + * + * @see #getRate_type_for_FO() + * @generated + * @ordered + */ + protected Type_of_Rate rate_type_for_FO = RATE_TYPE_FOR_FO_EDEFAULT; + + /** + * + * + * @generated + */ + protected FOImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.FO; + } + + /** + * + * + * @generated + */ + @Override + public Type_of_Rate getRate_type_for_FO() { + return rate_type_for_FO; + } + + /** + * + * + * @generated + */ + @Override + public void setRate_type_for_FO(Type_of_Rate newRate_type_for_FO) { + Type_of_Rate oldRate_type_for_FO = rate_type_for_FO; + rate_type_for_FO = newRate_type_for_FO == null ? RATE_TYPE_FOR_FO_EDEFAULT : newRate_type_for_FO; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FO__RATE_TYPE_FOR_FO, oldRate_type_for_FO, rate_type_for_FO)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.FO__RATE_TYPE_FOR_FO: + return getRate_type_for_FO(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.FO__RATE_TYPE_FOR_FO: + setRate_type_for_FO((Type_of_Rate)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.FO__RATE_TYPE_FOR_FO: + setRate_type_for_FO(RATE_TYPE_FOR_FO_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.FO__RATE_TYPE_FOR_FO: + return rate_type_for_FO != RATE_TYPE_FOR_FO_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (rate_type_for_FO: "); + result.append(rate_type_for_FO); + result.append(')'); + return result.toString(); + } + +} //FOImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Fiscal_AddressImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Fiscal_AddressImpl.java new file mode 100644 index 00000000..70fa328e --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Fiscal_AddressImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.Fiscal_Address; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Fiscal Address'. + * + * + * @generated + */ +public class Fiscal_AddressImpl extends AddressImpl implements Fiscal_Address { + /** + * + * + * @generated + */ + protected Fiscal_AddressImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.FISCAL_ADDRESS; + } + +} //Fiscal_AddressImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Foreign_IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Foreign_IncomeImpl.java new file mode 100644 index 00000000..64c4e9b8 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Foreign_IncomeImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.Foreign_Income; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Foreign Income'. + * + * + * @generated + */ +public class Foreign_IncomeImpl extends IncomeImpl implements Foreign_Income { + /** + * + * + * @generated + */ + protected Foreign_IncomeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.FOREIGN_INCOME; + } + +} //Foreign_IncomeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FromAgentImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FromAgentImpl.java new file mode 100644 index 00000000..930a23de --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FromAgentImpl.java @@ -0,0 +1,505 @@ +/** + */ +package Taxation.impl; + +import Taxation.Dependent; +import Taxation.Expense; +import Taxation.FromAgent; +import Taxation.Tax_Payer; +import Taxation.TaxationPackage; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EcoreUtil; + +/** + * + * An implementation of the model object 'From Agent'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.FromAgentImpl#getTaxPayer Tax Payer}
  • + *
  • {@link Taxation.impl.FromAgentImpl#isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care Is dependent eligible for CE Not In Houshold Children Care}
  • + *
  • {@link Taxation.impl.FromAgentImpl#getExpense Expense}
  • + *
  • {@link Taxation.impl.FromAgentImpl#isIs_eligible_debt Is eligible debt}
  • + *
  • {@link Taxation.impl.FromAgentImpl#getDependent Dependent}
  • + *
+ * + * @generated + */ +public class FromAgentImpl extends MinimalEObjectImpl.Container implements FromAgent { + /** + * The default value of the '{@link #isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care() Is dependent eligible for CE Not In Houshold Children Care}' attribute. + * + * + * @see #isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care() + * @generated + * @ordered + */ + protected static final boolean IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care() Is dependent eligible for CE Not In Houshold Children Care}' attribute. + * + * + * @see #isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care() + * @generated + * @ordered + */ + protected boolean is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care = IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE_EDEFAULT; + + /** + * The cached value of the '{@link #getExpense() Expense}' reference. + * + * + * @see #getExpense() + * @generated + * @ordered + */ + protected Expense expense; + + /** + * The default value of the '{@link #isIs_eligible_debt() Is eligible debt}' attribute. + * + * + * @see #isIs_eligible_debt() + * @generated + * @ordered + */ + protected static final boolean IS_ELIGIBLE_DEBT_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_eligible_debt() Is eligible debt}' attribute. + * + * + * @see #isIs_eligible_debt() + * @generated + * @ordered + */ + protected boolean is_eligible_debt = IS_ELIGIBLE_DEBT_EDEFAULT; + + /** + * The cached value of the '{@link #getDependent() Dependent}' reference. + * + * + * @see #getDependent() + * @generated + * @ordered + */ + protected Dependent dependent; + + /** + * + * + * @generated + */ + protected FromAgentImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.FROM_AGENT; + } + + /** + * + * + * @generated + */ + @Override + public Tax_Payer getTaxPayer() { + if (eContainerFeatureID() != TaxationPackage.FROM_AGENT__TAX_PAYER) return null; + return (Tax_Payer)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetTaxPayer(Tax_Payer newTaxPayer, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newTaxPayer, TaxationPackage.FROM_AGENT__TAX_PAYER, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setTaxPayer(Tax_Payer newTaxPayer) { + if (newTaxPayer != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.FROM_AGENT__TAX_PAYER && newTaxPayer != null)) { + if (EcoreUtil.isAncestor(this, newTaxPayer)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newTaxPayer != null) + msgs = ((InternalEObject)newTaxPayer).eInverseAdd(this, TaxationPackage.TAX_PAYER__FROM_AGENT, Tax_Payer.class, msgs); + msgs = basicSetTaxPayer(newTaxPayer, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FROM_AGENT__TAX_PAYER, newTaxPayer, newTaxPayer)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care() { + return is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care(boolean newIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care) { + boolean oldIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care = is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care; + is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care = newIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FROM_AGENT__IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE, oldIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care, is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care)); + } + + /** + * + * + * @generated + */ + @Override + public Expense getExpense() { + if (expense != null && expense.eIsProxy()) { + InternalEObject oldExpense = (InternalEObject)expense; + expense = (Expense)eResolveProxy(oldExpense); + if (expense != oldExpense) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.FROM_AGENT__EXPENSE, oldExpense, expense)); + } + } + return expense; + } + + /** + * + * + * @generated + */ + public Expense basicGetExpense() { + return expense; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetExpense(Expense newExpense, NotificationChain msgs) { + Expense oldExpense = expense; + expense = newExpense; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.FROM_AGENT__EXPENSE, oldExpense, newExpense); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setExpense(Expense newExpense) { + if (newExpense != expense) { + NotificationChain msgs = null; + if (expense != null) + msgs = ((InternalEObject)expense).eInverseRemove(this, TaxationPackage.EXPENSE__FROM_AGENT, Expense.class, msgs); + if (newExpense != null) + msgs = ((InternalEObject)newExpense).eInverseAdd(this, TaxationPackage.EXPENSE__FROM_AGENT, Expense.class, msgs); + msgs = basicSetExpense(newExpense, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FROM_AGENT__EXPENSE, newExpense, newExpense)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_eligible_debt() { + return is_eligible_debt; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_eligible_debt(boolean newIs_eligible_debt) { + boolean oldIs_eligible_debt = is_eligible_debt; + is_eligible_debt = newIs_eligible_debt; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FROM_AGENT__IS_ELIGIBLE_DEBT, oldIs_eligible_debt, is_eligible_debt)); + } + + /** + * + * + * @generated + */ + @Override + public Dependent getDependent() { + if (dependent != null && dependent.eIsProxy()) { + InternalEObject oldDependent = (InternalEObject)dependent; + dependent = (Dependent)eResolveProxy(oldDependent); + if (dependent != oldDependent) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.FROM_AGENT__DEPENDENT, oldDependent, dependent)); + } + } + return dependent; + } + + /** + * + * + * @generated + */ + public Dependent basicGetDependent() { + return dependent; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetDependent(Dependent newDependent, NotificationChain msgs) { + Dependent oldDependent = dependent; + dependent = newDependent; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.FROM_AGENT__DEPENDENT, oldDependent, newDependent); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setDependent(Dependent newDependent) { + if (newDependent != dependent) { + NotificationChain msgs = null; + if (dependent != null) + msgs = ((InternalEObject)dependent).eInverseRemove(this, TaxationPackage.DEPENDENT__FROM_AGENT, Dependent.class, msgs); + if (newDependent != null) + msgs = ((InternalEObject)newDependent).eInverseAdd(this, TaxationPackage.DEPENDENT__FROM_AGENT, Dependent.class, msgs); + msgs = basicSetDependent(newDependent, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FROM_AGENT__DEPENDENT, newDependent, newDependent)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.FROM_AGENT__TAX_PAYER: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetTaxPayer((Tax_Payer)otherEnd, msgs); + case TaxationPackage.FROM_AGENT__EXPENSE: + if (expense != null) + msgs = ((InternalEObject)expense).eInverseRemove(this, TaxationPackage.EXPENSE__FROM_AGENT, Expense.class, msgs); + return basicSetExpense((Expense)otherEnd, msgs); + case TaxationPackage.FROM_AGENT__DEPENDENT: + if (dependent != null) + msgs = ((InternalEObject)dependent).eInverseRemove(this, TaxationPackage.DEPENDENT__FROM_AGENT, Dependent.class, msgs); + return basicSetDependent((Dependent)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.FROM_AGENT__TAX_PAYER: + return basicSetTaxPayer(null, msgs); + case TaxationPackage.FROM_AGENT__EXPENSE: + return basicSetExpense(null, msgs); + case TaxationPackage.FROM_AGENT__DEPENDENT: + return basicSetDependent(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.FROM_AGENT__TAX_PAYER: + return eInternalContainer().eInverseRemove(this, TaxationPackage.TAX_PAYER__FROM_AGENT, Tax_Payer.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.FROM_AGENT__TAX_PAYER: + return getTaxPayer(); + case TaxationPackage.FROM_AGENT__IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE: + return isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care(); + case TaxationPackage.FROM_AGENT__EXPENSE: + if (resolve) return getExpense(); + return basicGetExpense(); + case TaxationPackage.FROM_AGENT__IS_ELIGIBLE_DEBT: + return isIs_eligible_debt(); + case TaxationPackage.FROM_AGENT__DEPENDENT: + if (resolve) return getDependent(); + return basicGetDependent(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.FROM_AGENT__TAX_PAYER: + setTaxPayer((Tax_Payer)newValue); + return; + case TaxationPackage.FROM_AGENT__IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE: + setIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care((Boolean)newValue); + return; + case TaxationPackage.FROM_AGENT__EXPENSE: + setExpense((Expense)newValue); + return; + case TaxationPackage.FROM_AGENT__IS_ELIGIBLE_DEBT: + setIs_eligible_debt((Boolean)newValue); + return; + case TaxationPackage.FROM_AGENT__DEPENDENT: + setDependent((Dependent)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.FROM_AGENT__TAX_PAYER: + setTaxPayer((Tax_Payer)null); + return; + case TaxationPackage.FROM_AGENT__IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE: + setIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care(IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE_EDEFAULT); + return; + case TaxationPackage.FROM_AGENT__EXPENSE: + setExpense((Expense)null); + return; + case TaxationPackage.FROM_AGENT__IS_ELIGIBLE_DEBT: + setIs_eligible_debt(IS_ELIGIBLE_DEBT_EDEFAULT); + return; + case TaxationPackage.FROM_AGENT__DEPENDENT: + setDependent((Dependent)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.FROM_AGENT__TAX_PAYER: + return getTaxPayer() != null; + case TaxationPackage.FROM_AGENT__IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE: + return is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care != IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE_EDEFAULT; + case TaxationPackage.FROM_AGENT__EXPENSE: + return expense != null; + case TaxationPackage.FROM_AGENT__IS_ELIGIBLE_DEBT: + return is_eligible_debt != IS_ELIGIBLE_DEBT_EDEFAULT; + case TaxationPackage.FROM_AGENT__DEPENDENT: + return dependent != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care: "); + result.append(is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care); + result.append(", is_eligible_debt: "); + result.append(is_eligible_debt); + result.append(')'); + return result.toString(); + } + +} //FromAgentImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FromLawImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FromLawImpl.java new file mode 100644 index 00000000..8a6a16c7 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FromLawImpl.java @@ -0,0 +1,268 @@ +/** + */ +package Taxation.impl; + +import Taxation.FromLaw; +import Taxation.Tax_Payer; +import Taxation.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EcoreUtil; + +/** + * + * An implementation of the model object 'From Law'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.FromLawImpl#getId Id}
  • + *
  • {@link Taxation.impl.FromLawImpl#getTaxPayer Tax Payer}
  • + *
+ * + * @generated + */ +public class FromLawImpl extends MinimalEObjectImpl.Container implements FromLaw { + /** + * The default value of the '{@link #getId() Id}' attribute. + * + * + * @see #getId() + * @generated + * @ordered + */ + protected static final String ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId() Id}' attribute. + * + * + * @see #getId() + * @generated + * @ordered + */ + protected String id = ID_EDEFAULT; + + /** + * + * + * @generated + */ + protected FromLawImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.FROM_LAW; + } + + /** + * + * + * @generated + */ + @Override + public String getId() { + return id; + } + + /** + * + * + * @generated + */ + @Override + public void setId(String newId) { + String oldId = id; + id = newId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FROM_LAW__ID, oldId, id)); + } + + /** + * + * + * @generated + */ + @Override + public Tax_Payer getTaxPayer() { + if (eContainerFeatureID() != TaxationPackage.FROM_LAW__TAX_PAYER) return null; + return (Tax_Payer)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetTaxPayer(Tax_Payer newTaxPayer, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newTaxPayer, TaxationPackage.FROM_LAW__TAX_PAYER, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setTaxPayer(Tax_Payer newTaxPayer) { + if (newTaxPayer != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.FROM_LAW__TAX_PAYER && newTaxPayer != null)) { + if (EcoreUtil.isAncestor(this, newTaxPayer)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newTaxPayer != null) + msgs = ((InternalEObject)newTaxPayer).eInverseAdd(this, TaxationPackage.TAX_PAYER__FROM_LAW, Tax_Payer.class, msgs); + msgs = basicSetTaxPayer(newTaxPayer, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FROM_LAW__TAX_PAYER, newTaxPayer, newTaxPayer)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.FROM_LAW__TAX_PAYER: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetTaxPayer((Tax_Payer)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.FROM_LAW__TAX_PAYER: + return basicSetTaxPayer(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.FROM_LAW__TAX_PAYER: + return eInternalContainer().eInverseRemove(this, TaxationPackage.TAX_PAYER__FROM_LAW, Tax_Payer.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.FROM_LAW__ID: + return getId(); + case TaxationPackage.FROM_LAW__TAX_PAYER: + return getTaxPayer(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.FROM_LAW__ID: + setId((String)newValue); + return; + case TaxationPackage.FROM_LAW__TAX_PAYER: + setTaxPayer((Tax_Payer)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.FROM_LAW__ID: + setId(ID_EDEFAULT); + return; + case TaxationPackage.FROM_LAW__TAX_PAYER: + setTaxPayer((Tax_Payer)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.FROM_LAW__ID: + return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id); + case TaxationPackage.FROM_LAW__TAX_PAYER: + return getTaxPayer() != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (id: "); + result.append(id); + result.append(')'); + return result.toString(); + } + +} //FromLawImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Habitual_AddressImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Habitual_AddressImpl.java new file mode 100644 index 00000000..9c759b8a --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Habitual_AddressImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.Habitual_Address; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Habitual Address'. + * + * + * @generated + */ +public class Habitual_AddressImpl extends AddressImpl implements Habitual_Address { + /** + * + * + * @generated + */ + protected Habitual_AddressImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.HABITUAL_ADDRESS; + } + +} //Habitual_AddressImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Health_and_Pension_InsuranceImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Health_and_Pension_InsuranceImpl.java new file mode 100644 index 00000000..bbf21e82 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Health_and_Pension_InsuranceImpl.java @@ -0,0 +1,221 @@ +/** + */ +package Taxation.impl; + +import Taxation.Category_of_Health_and_Pension_Insurances; +import Taxation.Health_and_Pension_Insurance; +import Taxation.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Health and Pension Insurance'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.Health_and_Pension_InsuranceImpl#getCategory Category}
  • + *
  • {@link Taxation.impl.Health_and_Pension_InsuranceImpl#isIs_related_to_additional_salary Is related to additional salary}
  • + *
+ * + * @generated + */ +public class Health_and_Pension_InsuranceImpl extends Special_Expense_DSImpl implements Health_and_Pension_Insurance { + /** + * The default value of the '{@link #getCategory() Category}' attribute. + * + * + * @see #getCategory() + * @generated + * @ordered + */ + protected static final Category_of_Health_and_Pension_Insurances CATEGORY_EDEFAULT = Category_of_Health_and_Pension_Insurances.MANDATORY_HEALTH_AND_PENSION_INSURANCE; + + /** + * The cached value of the '{@link #getCategory() Category}' attribute. + * + * + * @see #getCategory() + * @generated + * @ordered + */ + protected Category_of_Health_and_Pension_Insurances category = CATEGORY_EDEFAULT; + + /** + * The default value of the '{@link #isIs_related_to_additional_salary() Is related to additional salary}' attribute. + * + * + * @see #isIs_related_to_additional_salary() + * @generated + * @ordered + */ + protected static final boolean IS_RELATED_TO_ADDITIONAL_SALARY_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_related_to_additional_salary() Is related to additional salary}' attribute. + * + * + * @see #isIs_related_to_additional_salary() + * @generated + * @ordered + */ + protected boolean is_related_to_additional_salary = IS_RELATED_TO_ADDITIONAL_SALARY_EDEFAULT; + + /** + * + * + * @generated + */ + protected Health_and_Pension_InsuranceImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.HEALTH_AND_PENSION_INSURANCE; + } + + /** + * + * + * @generated + */ + @Override + public Category_of_Health_and_Pension_Insurances getCategory() { + return category; + } + + /** + * + * + * @generated + */ + @Override + public void setCategory(Category_of_Health_and_Pension_Insurances newCategory) { + Category_of_Health_and_Pension_Insurances oldCategory = category; + category = newCategory == null ? CATEGORY_EDEFAULT : newCategory; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.HEALTH_AND_PENSION_INSURANCE__CATEGORY, oldCategory, category)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_related_to_additional_salary() { + return is_related_to_additional_salary; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_related_to_additional_salary(boolean newIs_related_to_additional_salary) { + boolean oldIs_related_to_additional_salary = is_related_to_additional_salary; + is_related_to_additional_salary = newIs_related_to_additional_salary; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.HEALTH_AND_PENSION_INSURANCE__IS_RELATED_TO_ADDITIONAL_SALARY, oldIs_related_to_additional_salary, is_related_to_additional_salary)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE__CATEGORY: + return getCategory(); + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE__IS_RELATED_TO_ADDITIONAL_SALARY: + return isIs_related_to_additional_salary(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE__CATEGORY: + setCategory((Category_of_Health_and_Pension_Insurances)newValue); + return; + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE__IS_RELATED_TO_ADDITIONAL_SALARY: + setIs_related_to_additional_salary((Boolean)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE__CATEGORY: + setCategory(CATEGORY_EDEFAULT); + return; + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE__IS_RELATED_TO_ADDITIONAL_SALARY: + setIs_related_to_additional_salary(IS_RELATED_TO_ADDITIONAL_SALARY_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE__CATEGORY: + return category != CATEGORY_EDEFAULT; + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE__IS_RELATED_TO_ADDITIONAL_SALARY: + return is_related_to_additional_salary != IS_RELATED_TO_ADDITIONAL_SALARY_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (category: "); + result.append(category); + result.append(", is_related_to_additional_salary: "); + result.append(is_related_to_additional_salary); + result.append(')'); + return result.toString(); + } + +} //Health_and_Pension_InsuranceImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/HouseholdImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/HouseholdImpl.java new file mode 100644 index 00000000..8c3cb920 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/HouseholdImpl.java @@ -0,0 +1,313 @@ +/** + */ +package Taxation.impl; + +import Taxation.Dependent; +import Taxation.Household; +import Taxation.Legal_Union_Record; +import Taxation.TaxationPackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'Household'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.HouseholdImpl#getParents Parents}
  • + *
  • {@link Taxation.impl.HouseholdImpl#getId1 Id1}
  • + *
  • {@link Taxation.impl.HouseholdImpl#getChildren Children}
  • + *
+ * + * @generated + */ +public class HouseholdImpl extends MinimalEObjectImpl.Container implements Household { + /** + * The cached value of the '{@link #getParents() Parents}' containment reference. + * + * + * @see #getParents() + * @generated + * @ordered + */ + protected Legal_Union_Record parents; + + /** + * The default value of the '{@link #getId1() Id1}' attribute. + * + * + * @see #getId1() + * @generated + * @ordered + */ + protected static final String ID1_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId1() Id1}' attribute. + * + * + * @see #getId1() + * @generated + * @ordered + */ + protected String id1 = ID1_EDEFAULT; + + /** + * The cached value of the '{@link #getChildren() Children}' containment reference list. + * + * + * @see #getChildren() + * @generated + * @ordered + */ + protected EList children; + + /** + * + * + * @generated + */ + protected HouseholdImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.HOUSEHOLD; + } + + /** + * + * + * @generated + */ + @Override + public Legal_Union_Record getParents() { + return parents; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetParents(Legal_Union_Record newParents, NotificationChain msgs) { + Legal_Union_Record oldParents = parents; + parents = newParents; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.HOUSEHOLD__PARENTS, oldParents, newParents); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setParents(Legal_Union_Record newParents) { + if (newParents != parents) { + NotificationChain msgs = null; + if (parents != null) + msgs = ((InternalEObject)parents).eInverseRemove(this, TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD, Legal_Union_Record.class, msgs); + if (newParents != null) + msgs = ((InternalEObject)newParents).eInverseAdd(this, TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD, Legal_Union_Record.class, msgs); + msgs = basicSetParents(newParents, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.HOUSEHOLD__PARENTS, newParents, newParents)); + } + + /** + * + * + * @generated + */ + @Override + public String getId1() { + return id1; + } + + /** + * + * + * @generated + */ + @Override + public void setId1(String newId1) { + String oldId1 = id1; + id1 = newId1; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.HOUSEHOLD__ID1, oldId1, id1)); + } + + /** + * + * + * @generated + */ + @Override + public EList getChildren() { + if (children == null) { + children = new EObjectContainmentWithInverseEList(Dependent.class, this, TaxationPackage.HOUSEHOLD__CHILDREN, TaxationPackage.DEPENDENT__HOUSEHOLD); + } + return children; + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.HOUSEHOLD__PARENTS: + if (parents != null) + msgs = ((InternalEObject)parents).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - TaxationPackage.HOUSEHOLD__PARENTS, null, msgs); + return basicSetParents((Legal_Union_Record)otherEnd, msgs); + case TaxationPackage.HOUSEHOLD__CHILDREN: + return ((InternalEList)(InternalEList)getChildren()).basicAdd(otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.HOUSEHOLD__PARENTS: + return basicSetParents(null, msgs); + case TaxationPackage.HOUSEHOLD__CHILDREN: + return ((InternalEList)getChildren()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.HOUSEHOLD__PARENTS: + return getParents(); + case TaxationPackage.HOUSEHOLD__ID1: + return getId1(); + case TaxationPackage.HOUSEHOLD__CHILDREN: + return getChildren(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.HOUSEHOLD__PARENTS: + setParents((Legal_Union_Record)newValue); + return; + case TaxationPackage.HOUSEHOLD__ID1: + setId1((String)newValue); + return; + case TaxationPackage.HOUSEHOLD__CHILDREN: + getChildren().clear(); + getChildren().addAll((Collection)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.HOUSEHOLD__PARENTS: + setParents((Legal_Union_Record)null); + return; + case TaxationPackage.HOUSEHOLD__ID1: + setId1(ID1_EDEFAULT); + return; + case TaxationPackage.HOUSEHOLD__CHILDREN: + getChildren().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.HOUSEHOLD__PARENTS: + return parents != null; + case TaxationPackage.HOUSEHOLD__ID1: + return ID1_EDEFAULT == null ? id1 != null : !ID1_EDEFAULT.equals(id1); + case TaxationPackage.HOUSEHOLD__CHILDREN: + return children != null && !children.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (id1: "); + result.append(id1); + result.append(')'); + return result.toString(); + } + +} //HouseholdImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/IncomeImpl.java new file mode 100644 index 00000000..233d467c --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/IncomeImpl.java @@ -0,0 +1,782 @@ +/** + */ +package Taxation.impl; + +import Taxation.Expense; +import Taxation.Income; +import Taxation.Income_Detail; +import Taxation.Income_Type; +import Taxation.Tax_Card; +import Taxation.Tax_Payer; +import Taxation.TaxationPackage; +import java.util.Collection; +import java.util.Date; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'Income'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.IncomeImpl#getIncome_amount Income amount}
  • + *
  • {@link Taxation.impl.IncomeImpl#getIncome_type Income type}
  • + *
  • {@link Taxation.impl.IncomeImpl#getStart_date_within_taxation_year Start date within taxation year}
  • + *
  • {@link Taxation.impl.IncomeImpl#getStart_date_of_contract Start date of contract}
  • + *
  • {@link Taxation.impl.IncomeImpl#getEnd_date_within_taxation_year End date within taxation year}
  • + *
  • {@link Taxation.impl.IncomeImpl#getTax_card Tax card}
  • + *
  • {@link Taxation.impl.IncomeImpl#getTax_liability Tax liability}
  • + *
  • {@link Taxation.impl.IncomeImpl#getTaxPayer Tax Payer}
  • + *
  • {@link Taxation.impl.IncomeImpl#getDetails Details}
  • + *
  • {@link Taxation.impl.IncomeImpl#getNum Num}
  • + *
  • {@link Taxation.impl.IncomeImpl#getExpenses Expenses}
  • + *
+ * + * @generated + */ +public abstract class IncomeImpl extends MinimalEObjectImpl.Container implements Income { + /** + * The default value of the '{@link #getIncome_amount() Income amount}' attribute. + * + * + * @see #getIncome_amount() + * @generated + * @ordered + */ + protected static final double INCOME_AMOUNT_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getIncome_amount() Income amount}' attribute. + * + * + * @see #getIncome_amount() + * @generated + * @ordered + */ + protected double income_amount = INCOME_AMOUNT_EDEFAULT; + + /** + * The cached value of the '{@link #getIncome_type() Income type}' containment reference. + * + * + * @see #getIncome_type() + * @generated + * @ordered + */ + protected Income_Type income_type; + + /** + * The default value of the '{@link #getStart_date_within_taxation_year() Start date within taxation year}' attribute. + * + * + * @see #getStart_date_within_taxation_year() + * @generated + * @ordered + */ + protected static final Date START_DATE_WITHIN_TAXATION_YEAR_EDEFAULT = null; + + /** + * The cached value of the '{@link #getStart_date_within_taxation_year() Start date within taxation year}' attribute. + * + * + * @see #getStart_date_within_taxation_year() + * @generated + * @ordered + */ + protected Date start_date_within_taxation_year = START_DATE_WITHIN_TAXATION_YEAR_EDEFAULT; + + /** + * The default value of the '{@link #getStart_date_of_contract() Start date of contract}' attribute. + * + * + * @see #getStart_date_of_contract() + * @generated + * @ordered + */ + protected static final Date START_DATE_OF_CONTRACT_EDEFAULT = null; + + /** + * The cached value of the '{@link #getStart_date_of_contract() Start date of contract}' attribute. + * + * + * @see #getStart_date_of_contract() + * @generated + * @ordered + */ + protected Date start_date_of_contract = START_DATE_OF_CONTRACT_EDEFAULT; + + /** + * The default value of the '{@link #getEnd_date_within_taxation_year() End date within taxation year}' attribute. + * + * + * @see #getEnd_date_within_taxation_year() + * @generated + * @ordered + */ + protected static final Date END_DATE_WITHIN_TAXATION_YEAR_EDEFAULT = null; + + /** + * The cached value of the '{@link #getEnd_date_within_taxation_year() End date within taxation year}' attribute. + * + * + * @see #getEnd_date_within_taxation_year() + * @generated + * @ordered + */ + protected Date end_date_within_taxation_year = END_DATE_WITHIN_TAXATION_YEAR_EDEFAULT; + + /** + * The cached value of the '{@link #getTax_card() Tax card}' containment reference. + * + * + * @see #getTax_card() + * @generated + * @ordered + */ + protected Tax_Card tax_card; + + /** + * The default value of the '{@link #getTax_liability() Tax liability}' attribute. + * + * + * @see #getTax_liability() + * @generated + * @ordered + */ + protected static final double TAX_LIABILITY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getTax_liability() Tax liability}' attribute. + * + * + * @see #getTax_liability() + * @generated + * @ordered + */ + protected double tax_liability = TAX_LIABILITY_EDEFAULT; + + /** + * The cached value of the '{@link #getDetails() Details}' containment reference list. + * + * + * @see #getDetails() + * @generated + * @ordered + */ + protected EList details; + + /** + * The default value of the '{@link #getNum() Num}' attribute. + * + * + * @see #getNum() + * @generated + * @ordered + */ + protected static final int NUM_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getNum() Num}' attribute. + * + * + * @see #getNum() + * @generated + * @ordered + */ + protected int num = NUM_EDEFAULT; + + /** + * The cached value of the '{@link #getExpenses() Expenses}' containment reference list. + * + * + * @see #getExpenses() + * @generated + * @ordered + */ + protected EList expenses; + + /** + * + * + * @generated + */ + protected IncomeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.INCOME; + } + + /** + * + * + * @generated + */ + @Override + public double getIncome_amount() { + return income_amount; + } + + /** + * + * + * @generated + */ + @Override + public void setIncome_amount(double newIncome_amount) { + double oldIncome_amount = income_amount; + income_amount = newIncome_amount; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__INCOME_AMOUNT, oldIncome_amount, income_amount)); + } + + /** + * + * + * @generated + */ + @Override + public Income_Type getIncome_type() { + return income_type; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetIncome_type(Income_Type newIncome_type, NotificationChain msgs) { + Income_Type oldIncome_type = income_type; + income_type = newIncome_type; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__INCOME_TYPE, oldIncome_type, newIncome_type); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setIncome_type(Income_Type newIncome_type) { + if (newIncome_type != income_type) { + NotificationChain msgs = null; + if (income_type != null) + msgs = ((InternalEObject)income_type).eInverseRemove(this, TaxationPackage.INCOME_TYPE__INCOME, Income_Type.class, msgs); + if (newIncome_type != null) + msgs = ((InternalEObject)newIncome_type).eInverseAdd(this, TaxationPackage.INCOME_TYPE__INCOME, Income_Type.class, msgs); + msgs = basicSetIncome_type(newIncome_type, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__INCOME_TYPE, newIncome_type, newIncome_type)); + } + + /** + * + * + * @generated + */ + @Override + public Date getStart_date_within_taxation_year() { + return start_date_within_taxation_year; + } + + /** + * + * + * @generated + */ + @Override + public void setStart_date_within_taxation_year(Date newStart_date_within_taxation_year) { + Date oldStart_date_within_taxation_year = start_date_within_taxation_year; + start_date_within_taxation_year = newStart_date_within_taxation_year; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__START_DATE_WITHIN_TAXATION_YEAR, oldStart_date_within_taxation_year, start_date_within_taxation_year)); + } + + /** + * + * + * @generated + */ + @Override + public Date getStart_date_of_contract() { + return start_date_of_contract; + } + + /** + * + * + * @generated + */ + @Override + public void setStart_date_of_contract(Date newStart_date_of_contract) { + Date oldStart_date_of_contract = start_date_of_contract; + start_date_of_contract = newStart_date_of_contract; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__START_DATE_OF_CONTRACT, oldStart_date_of_contract, start_date_of_contract)); + } + + /** + * + * + * @generated + */ + @Override + public Date getEnd_date_within_taxation_year() { + return end_date_within_taxation_year; + } + + /** + * + * + * @generated + */ + @Override + public void setEnd_date_within_taxation_year(Date newEnd_date_within_taxation_year) { + Date oldEnd_date_within_taxation_year = end_date_within_taxation_year; + end_date_within_taxation_year = newEnd_date_within_taxation_year; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__END_DATE_WITHIN_TAXATION_YEAR, oldEnd_date_within_taxation_year, end_date_within_taxation_year)); + } + + /** + * + * + * @generated + */ + @Override + public Tax_Card getTax_card() { + return tax_card; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetTax_card(Tax_Card newTax_card, NotificationChain msgs) { + Tax_Card oldTax_card = tax_card; + tax_card = newTax_card; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__TAX_CARD, oldTax_card, newTax_card); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setTax_card(Tax_Card newTax_card) { + if (newTax_card != tax_card) { + NotificationChain msgs = null; + if (tax_card != null) + msgs = ((InternalEObject)tax_card).eInverseRemove(this, TaxationPackage.TAX_CARD__INCOME, Tax_Card.class, msgs); + if (newTax_card != null) + msgs = ((InternalEObject)newTax_card).eInverseAdd(this, TaxationPackage.TAX_CARD__INCOME, Tax_Card.class, msgs); + msgs = basicSetTax_card(newTax_card, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__TAX_CARD, newTax_card, newTax_card)); + } + + /** + * + * + * @generated + */ + @Override + public double getTax_liability() { + return tax_liability; + } + + /** + * + * + * @generated + */ + @Override + public void setTax_liability(double newTax_liability) { + double oldTax_liability = tax_liability; + tax_liability = newTax_liability; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__TAX_LIABILITY, oldTax_liability, tax_liability)); + } + + /** + * + * + * @generated + */ + @Override + public Tax_Payer getTaxPayer() { + if (eContainerFeatureID() != TaxationPackage.INCOME__TAX_PAYER) return null; + return (Tax_Payer)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetTaxPayer(Tax_Payer newTaxPayer, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newTaxPayer, TaxationPackage.INCOME__TAX_PAYER, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setTaxPayer(Tax_Payer newTaxPayer) { + if (newTaxPayer != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.INCOME__TAX_PAYER && newTaxPayer != null)) { + if (EcoreUtil.isAncestor(this, newTaxPayer)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newTaxPayer != null) + msgs = ((InternalEObject)newTaxPayer).eInverseAdd(this, TaxationPackage.TAX_PAYER__INCOMES, Tax_Payer.class, msgs); + msgs = basicSetTaxPayer(newTaxPayer, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__TAX_PAYER, newTaxPayer, newTaxPayer)); + } + + /** + * + * + * @generated + */ + @Override + public EList getDetails() { + if (details == null) { + details = new EObjectContainmentWithInverseEList(Income_Detail.class, this, TaxationPackage.INCOME__DETAILS, TaxationPackage.INCOME_DETAIL__INCOME); + } + return details; + } + + /** + * + * + * @generated + */ + @Override + public int getNum() { + return num; + } + + /** + * + * + * @generated + */ + @Override + public void setNum(int newNum) { + int oldNum = num; + num = newNum; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__NUM, oldNum, num)); + } + + /** + * + * + * @generated + */ + @Override + public EList getExpenses() { + if (expenses == null) { + expenses = new EObjectContainmentWithInverseEList(Expense.class, this, TaxationPackage.INCOME__EXPENSES, TaxationPackage.EXPENSE__INCOME); + } + return expenses; + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.INCOME__INCOME_TYPE: + if (income_type != null) + msgs = ((InternalEObject)income_type).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - TaxationPackage.INCOME__INCOME_TYPE, null, msgs); + return basicSetIncome_type((Income_Type)otherEnd, msgs); + case TaxationPackage.INCOME__TAX_CARD: + if (tax_card != null) + msgs = ((InternalEObject)tax_card).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - TaxationPackage.INCOME__TAX_CARD, null, msgs); + return basicSetTax_card((Tax_Card)otherEnd, msgs); + case TaxationPackage.INCOME__TAX_PAYER: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetTaxPayer((Tax_Payer)otherEnd, msgs); + case TaxationPackage.INCOME__DETAILS: + return ((InternalEList)(InternalEList)getDetails()).basicAdd(otherEnd, msgs); + case TaxationPackage.INCOME__EXPENSES: + return ((InternalEList)(InternalEList)getExpenses()).basicAdd(otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.INCOME__INCOME_TYPE: + return basicSetIncome_type(null, msgs); + case TaxationPackage.INCOME__TAX_CARD: + return basicSetTax_card(null, msgs); + case TaxationPackage.INCOME__TAX_PAYER: + return basicSetTaxPayer(null, msgs); + case TaxationPackage.INCOME__DETAILS: + return ((InternalEList)getDetails()).basicRemove(otherEnd, msgs); + case TaxationPackage.INCOME__EXPENSES: + return ((InternalEList)getExpenses()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.INCOME__TAX_PAYER: + return eInternalContainer().eInverseRemove(this, TaxationPackage.TAX_PAYER__INCOMES, Tax_Payer.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.INCOME__INCOME_AMOUNT: + return getIncome_amount(); + case TaxationPackage.INCOME__INCOME_TYPE: + return getIncome_type(); + case TaxationPackage.INCOME__START_DATE_WITHIN_TAXATION_YEAR: + return getStart_date_within_taxation_year(); + case TaxationPackage.INCOME__START_DATE_OF_CONTRACT: + return getStart_date_of_contract(); + case TaxationPackage.INCOME__END_DATE_WITHIN_TAXATION_YEAR: + return getEnd_date_within_taxation_year(); + case TaxationPackage.INCOME__TAX_CARD: + return getTax_card(); + case TaxationPackage.INCOME__TAX_LIABILITY: + return getTax_liability(); + case TaxationPackage.INCOME__TAX_PAYER: + return getTaxPayer(); + case TaxationPackage.INCOME__DETAILS: + return getDetails(); + case TaxationPackage.INCOME__NUM: + return getNum(); + case TaxationPackage.INCOME__EXPENSES: + return getExpenses(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.INCOME__INCOME_AMOUNT: + setIncome_amount((Double)newValue); + return; + case TaxationPackage.INCOME__INCOME_TYPE: + setIncome_type((Income_Type)newValue); + return; + case TaxationPackage.INCOME__START_DATE_WITHIN_TAXATION_YEAR: + setStart_date_within_taxation_year((Date)newValue); + return; + case TaxationPackage.INCOME__START_DATE_OF_CONTRACT: + setStart_date_of_contract((Date)newValue); + return; + case TaxationPackage.INCOME__END_DATE_WITHIN_TAXATION_YEAR: + setEnd_date_within_taxation_year((Date)newValue); + return; + case TaxationPackage.INCOME__TAX_CARD: + setTax_card((Tax_Card)newValue); + return; + case TaxationPackage.INCOME__TAX_LIABILITY: + setTax_liability((Double)newValue); + return; + case TaxationPackage.INCOME__TAX_PAYER: + setTaxPayer((Tax_Payer)newValue); + return; + case TaxationPackage.INCOME__DETAILS: + getDetails().clear(); + getDetails().addAll((Collection)newValue); + return; + case TaxationPackage.INCOME__NUM: + setNum((Integer)newValue); + return; + case TaxationPackage.INCOME__EXPENSES: + getExpenses().clear(); + getExpenses().addAll((Collection)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME__INCOME_AMOUNT: + setIncome_amount(INCOME_AMOUNT_EDEFAULT); + return; + case TaxationPackage.INCOME__INCOME_TYPE: + setIncome_type((Income_Type)null); + return; + case TaxationPackage.INCOME__START_DATE_WITHIN_TAXATION_YEAR: + setStart_date_within_taxation_year(START_DATE_WITHIN_TAXATION_YEAR_EDEFAULT); + return; + case TaxationPackage.INCOME__START_DATE_OF_CONTRACT: + setStart_date_of_contract(START_DATE_OF_CONTRACT_EDEFAULT); + return; + case TaxationPackage.INCOME__END_DATE_WITHIN_TAXATION_YEAR: + setEnd_date_within_taxation_year(END_DATE_WITHIN_TAXATION_YEAR_EDEFAULT); + return; + case TaxationPackage.INCOME__TAX_CARD: + setTax_card((Tax_Card)null); + return; + case TaxationPackage.INCOME__TAX_LIABILITY: + setTax_liability(TAX_LIABILITY_EDEFAULT); + return; + case TaxationPackage.INCOME__TAX_PAYER: + setTaxPayer((Tax_Payer)null); + return; + case TaxationPackage.INCOME__DETAILS: + getDetails().clear(); + return; + case TaxationPackage.INCOME__NUM: + setNum(NUM_EDEFAULT); + return; + case TaxationPackage.INCOME__EXPENSES: + getExpenses().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME__INCOME_AMOUNT: + return income_amount != INCOME_AMOUNT_EDEFAULT; + case TaxationPackage.INCOME__INCOME_TYPE: + return income_type != null; + case TaxationPackage.INCOME__START_DATE_WITHIN_TAXATION_YEAR: + return START_DATE_WITHIN_TAXATION_YEAR_EDEFAULT == null ? start_date_within_taxation_year != null : !START_DATE_WITHIN_TAXATION_YEAR_EDEFAULT.equals(start_date_within_taxation_year); + case TaxationPackage.INCOME__START_DATE_OF_CONTRACT: + return START_DATE_OF_CONTRACT_EDEFAULT == null ? start_date_of_contract != null : !START_DATE_OF_CONTRACT_EDEFAULT.equals(start_date_of_contract); + case TaxationPackage.INCOME__END_DATE_WITHIN_TAXATION_YEAR: + return END_DATE_WITHIN_TAXATION_YEAR_EDEFAULT == null ? end_date_within_taxation_year != null : !END_DATE_WITHIN_TAXATION_YEAR_EDEFAULT.equals(end_date_within_taxation_year); + case TaxationPackage.INCOME__TAX_CARD: + return tax_card != null; + case TaxationPackage.INCOME__TAX_LIABILITY: + return tax_liability != TAX_LIABILITY_EDEFAULT; + case TaxationPackage.INCOME__TAX_PAYER: + return getTaxPayer() != null; + case TaxationPackage.INCOME__DETAILS: + return details != null && !details.isEmpty(); + case TaxationPackage.INCOME__NUM: + return num != NUM_EDEFAULT; + case TaxationPackage.INCOME__EXPENSES: + return expenses != null && !expenses.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (income_amount: "); + result.append(income_amount); + result.append(", start_date_within_taxation_year: "); + result.append(start_date_within_taxation_year); + result.append(", start_date_of_contract: "); + result.append(start_date_of_contract); + result.append(", end_date_within_taxation_year: "); + result.append(end_date_within_taxation_year); + result.append(", tax_liability: "); + result.append(tax_liability); + result.append(", num: "); + result.append(num); + result.append(')'); + return result.toString(); + } + +} //IncomeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_DetailImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_DetailImpl.java new file mode 100644 index 00000000..ff882fd5 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_DetailImpl.java @@ -0,0 +1,547 @@ +/** + */ +package Taxation.impl; + +import Taxation.Income; +import Taxation.Income_Detail; +import Taxation.TaxationPackage; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EcoreUtil; + +/** + * + * An implementation of the model object 'Income Detail'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.Income_DetailImpl#getAmount Amount}
  • + *
  • {@link Taxation.impl.Income_DetailImpl#isIs_worked Is worked}
  • + *
  • {@link Taxation.impl.Income_DetailImpl#getDistance Distance}
  • + *
  • {@link Taxation.impl.Income_DetailImpl#getWorked_days Worked days}
  • + *
  • {@link Taxation.impl.Income_DetailImpl#isIs_contributing_CNS Is contributing CNS}
  • + *
  • {@link Taxation.impl.Income_DetailImpl#getId5 Id5}
  • + *
  • {@link Taxation.impl.Income_DetailImpl#getIncome Income}
  • + *
+ * + * @generated + */ +public class Income_DetailImpl extends MinimalEObjectImpl.Container implements Income_Detail { + /** + * The default value of the '{@link #getAmount() Amount}' attribute. + * + * + * @see #getAmount() + * @generated + * @ordered + */ + protected static final double AMOUNT_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getAmount() Amount}' attribute. + * + * + * @see #getAmount() + * @generated + * @ordered + */ + protected double amount = AMOUNT_EDEFAULT; + + /** + * The default value of the '{@link #isIs_worked() Is worked}' attribute. + * + * + * @see #isIs_worked() + * @generated + * @ordered + */ + protected static final boolean IS_WORKED_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_worked() Is worked}' attribute. + * + * + * @see #isIs_worked() + * @generated + * @ordered + */ + protected boolean is_worked = IS_WORKED_EDEFAULT; + + /** + * The default value of the '{@link #getDistance() Distance}' attribute. + * + * + * @see #getDistance() + * @generated + * @ordered + */ + protected static final double DISTANCE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDistance() Distance}' attribute. + * + * + * @see #getDistance() + * @generated + * @ordered + */ + protected double distance = DISTANCE_EDEFAULT; + + /** + * The default value of the '{@link #getWorked_days() Worked days}' attribute. + * + * + * @see #getWorked_days() + * @generated + * @ordered + */ + protected static final int WORKED_DAYS_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getWorked_days() Worked days}' attribute. + * + * + * @see #getWorked_days() + * @generated + * @ordered + */ + protected int worked_days = WORKED_DAYS_EDEFAULT; + + /** + * The default value of the '{@link #isIs_contributing_CNS() Is contributing CNS}' attribute. + * + * + * @see #isIs_contributing_CNS() + * @generated + * @ordered + */ + protected static final boolean IS_CONTRIBUTING_CNS_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_contributing_CNS() Is contributing CNS}' attribute. + * + * + * @see #isIs_contributing_CNS() + * @generated + * @ordered + */ + protected boolean is_contributing_CNS = IS_CONTRIBUTING_CNS_EDEFAULT; + + /** + * The default value of the '{@link #getId5() Id5}' attribute. + * + * + * @see #getId5() + * @generated + * @ordered + */ + protected static final String ID5_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId5() Id5}' attribute. + * + * + * @see #getId5() + * @generated + * @ordered + */ + protected String id5 = ID5_EDEFAULT; + + /** + * + * + * @generated + */ + protected Income_DetailImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.INCOME_DETAIL; + } + + /** + * + * + * @generated + */ + @Override + public double getAmount() { + return amount; + } + + /** + * + * + * @generated + */ + @Override + public void setAmount(double newAmount) { + double oldAmount = amount; + amount = newAmount; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_DETAIL__AMOUNT, oldAmount, amount)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_worked() { + return is_worked; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_worked(boolean newIs_worked) { + boolean oldIs_worked = is_worked; + is_worked = newIs_worked; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_DETAIL__IS_WORKED, oldIs_worked, is_worked)); + } + + /** + * + * + * @generated + */ + @Override + public double getDistance() { + return distance; + } + + /** + * + * + * @generated + */ + @Override + public void setDistance(double newDistance) { + double oldDistance = distance; + distance = newDistance; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_DETAIL__DISTANCE, oldDistance, distance)); + } + + /** + * + * + * @generated + */ + @Override + public int getWorked_days() { + return worked_days; + } + + /** + * + * + * @generated + */ + @Override + public void setWorked_days(int newWorked_days) { + int oldWorked_days = worked_days; + worked_days = newWorked_days; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_DETAIL__WORKED_DAYS, oldWorked_days, worked_days)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_contributing_CNS() { + return is_contributing_CNS; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_contributing_CNS(boolean newIs_contributing_CNS) { + boolean oldIs_contributing_CNS = is_contributing_CNS; + is_contributing_CNS = newIs_contributing_CNS; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_DETAIL__IS_CONTRIBUTING_CNS, oldIs_contributing_CNS, is_contributing_CNS)); + } + + /** + * + * + * @generated + */ + @Override + public String getId5() { + return id5; + } + + /** + * + * + * @generated + */ + @Override + public void setId5(String newId5) { + String oldId5 = id5; + id5 = newId5; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_DETAIL__ID5, oldId5, id5)); + } + + /** + * + * + * @generated + */ + @Override + public Income getIncome() { + if (eContainerFeatureID() != TaxationPackage.INCOME_DETAIL__INCOME) return null; + return (Income)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetIncome(Income newIncome, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newIncome, TaxationPackage.INCOME_DETAIL__INCOME, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setIncome(Income newIncome) { + if (newIncome != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.INCOME_DETAIL__INCOME && newIncome != null)) { + if (EcoreUtil.isAncestor(this, newIncome)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newIncome != null) + msgs = ((InternalEObject)newIncome).eInverseAdd(this, TaxationPackage.INCOME__DETAILS, Income.class, msgs); + msgs = basicSetIncome(newIncome, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_DETAIL__INCOME, newIncome, newIncome)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.INCOME_DETAIL__INCOME: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetIncome((Income)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.INCOME_DETAIL__INCOME: + return basicSetIncome(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.INCOME_DETAIL__INCOME: + return eInternalContainer().eInverseRemove(this, TaxationPackage.INCOME__DETAILS, Income.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.INCOME_DETAIL__AMOUNT: + return getAmount(); + case TaxationPackage.INCOME_DETAIL__IS_WORKED: + return isIs_worked(); + case TaxationPackage.INCOME_DETAIL__DISTANCE: + return getDistance(); + case TaxationPackage.INCOME_DETAIL__WORKED_DAYS: + return getWorked_days(); + case TaxationPackage.INCOME_DETAIL__IS_CONTRIBUTING_CNS: + return isIs_contributing_CNS(); + case TaxationPackage.INCOME_DETAIL__ID5: + return getId5(); + case TaxationPackage.INCOME_DETAIL__INCOME: + return getIncome(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.INCOME_DETAIL__AMOUNT: + setAmount((Double)newValue); + return; + case TaxationPackage.INCOME_DETAIL__IS_WORKED: + setIs_worked((Boolean)newValue); + return; + case TaxationPackage.INCOME_DETAIL__DISTANCE: + setDistance((Double)newValue); + return; + case TaxationPackage.INCOME_DETAIL__WORKED_DAYS: + setWorked_days((Integer)newValue); + return; + case TaxationPackage.INCOME_DETAIL__IS_CONTRIBUTING_CNS: + setIs_contributing_CNS((Boolean)newValue); + return; + case TaxationPackage.INCOME_DETAIL__ID5: + setId5((String)newValue); + return; + case TaxationPackage.INCOME_DETAIL__INCOME: + setIncome((Income)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME_DETAIL__AMOUNT: + setAmount(AMOUNT_EDEFAULT); + return; + case TaxationPackage.INCOME_DETAIL__IS_WORKED: + setIs_worked(IS_WORKED_EDEFAULT); + return; + case TaxationPackage.INCOME_DETAIL__DISTANCE: + setDistance(DISTANCE_EDEFAULT); + return; + case TaxationPackage.INCOME_DETAIL__WORKED_DAYS: + setWorked_days(WORKED_DAYS_EDEFAULT); + return; + case TaxationPackage.INCOME_DETAIL__IS_CONTRIBUTING_CNS: + setIs_contributing_CNS(IS_CONTRIBUTING_CNS_EDEFAULT); + return; + case TaxationPackage.INCOME_DETAIL__ID5: + setId5(ID5_EDEFAULT); + return; + case TaxationPackage.INCOME_DETAIL__INCOME: + setIncome((Income)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME_DETAIL__AMOUNT: + return amount != AMOUNT_EDEFAULT; + case TaxationPackage.INCOME_DETAIL__IS_WORKED: + return is_worked != IS_WORKED_EDEFAULT; + case TaxationPackage.INCOME_DETAIL__DISTANCE: + return distance != DISTANCE_EDEFAULT; + case TaxationPackage.INCOME_DETAIL__WORKED_DAYS: + return worked_days != WORKED_DAYS_EDEFAULT; + case TaxationPackage.INCOME_DETAIL__IS_CONTRIBUTING_CNS: + return is_contributing_CNS != IS_CONTRIBUTING_CNS_EDEFAULT; + case TaxationPackage.INCOME_DETAIL__ID5: + return ID5_EDEFAULT == null ? id5 != null : !ID5_EDEFAULT.equals(id5); + case TaxationPackage.INCOME_DETAIL__INCOME: + return getIncome() != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (amount: "); + result.append(amount); + result.append(", is_worked: "); + result.append(is_worked); + result.append(", distance: "); + result.append(distance); + result.append(", worked_days: "); + result.append(worked_days); + result.append(", is_contributing_CNS: "); + result.append(is_contributing_CNS); + result.append(", id5: "); + result.append(id5); + result.append(')'); + return result.toString(); + } + +} //Income_DetailImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_TaxImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_TaxImpl.java new file mode 100644 index 00000000..3083b3fa --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_TaxImpl.java @@ -0,0 +1,340 @@ +/** + */ +package Taxation.impl; + +import Taxation.Income_Tax; +import Taxation.Tax_Payer; +import Taxation.TaxationPackage; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * + * An implementation of the model object 'Income Tax'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.Income_TaxImpl#getTaxPayer Tax Payer}
  • + *
  • {@link Taxation.impl.Income_TaxImpl#getTax_amount Tax amount}
  • + *
  • {@link Taxation.impl.Income_TaxImpl#getTax_year Tax year}
  • + *
  • {@link Taxation.impl.Income_TaxImpl#getId6 Id6}
  • + *
+ * + * @generated + */ +public class Income_TaxImpl extends MinimalEObjectImpl.Container implements Income_Tax { + /** + * The cached value of the '{@link #getTaxPayer() Tax Payer}' reference. + * + * + * @see #getTaxPayer() + * @generated + * @ordered + */ + protected Tax_Payer taxPayer; + + /** + * The default value of the '{@link #getTax_amount() Tax amount}' attribute. + * + * + * @see #getTax_amount() + * @generated + * @ordered + */ + protected static final double TAX_AMOUNT_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getTax_amount() Tax amount}' attribute. + * + * + * @see #getTax_amount() + * @generated + * @ordered + */ + protected double tax_amount = TAX_AMOUNT_EDEFAULT; + + /** + * The default value of the '{@link #getTax_year() Tax year}' attribute. + * + * + * @see #getTax_year() + * @generated + * @ordered + */ + protected static final int TAX_YEAR_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getTax_year() Tax year}' attribute. + * + * + * @see #getTax_year() + * @generated + * @ordered + */ + protected int tax_year = TAX_YEAR_EDEFAULT; + + /** + * The default value of the '{@link #getId6() Id6}' attribute. + * + * + * @see #getId6() + * @generated + * @ordered + */ + protected static final String ID6_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId6() Id6}' attribute. + * + * + * @see #getId6() + * @generated + * @ordered + */ + protected String id6 = ID6_EDEFAULT; + + /** + * + * + * @generated + */ + protected Income_TaxImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.INCOME_TAX; + } + + /** + * + * + * @generated + */ + @Override + public Tax_Payer getTaxPayer() { + if (taxPayer != null && taxPayer.eIsProxy()) { + InternalEObject oldTaxPayer = (InternalEObject)taxPayer; + taxPayer = (Tax_Payer)eResolveProxy(oldTaxPayer); + if (taxPayer != oldTaxPayer) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.INCOME_TAX__TAX_PAYER, oldTaxPayer, taxPayer)); + } + } + return taxPayer; + } + + /** + * + * + * @generated + */ + public Tax_Payer basicGetTaxPayer() { + return taxPayer; + } + + /** + * + * + * @generated + */ + @Override + public void setTaxPayer(Tax_Payer newTaxPayer) { + Tax_Payer oldTaxPayer = taxPayer; + taxPayer = newTaxPayer; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX__TAX_PAYER, oldTaxPayer, taxPayer)); + } + + /** + * + * + * @generated + */ + @Override + public double getTax_amount() { + return tax_amount; + } + + /** + * + * + * @generated + */ + @Override + public void setTax_amount(double newTax_amount) { + double oldTax_amount = tax_amount; + tax_amount = newTax_amount; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX__TAX_AMOUNT, oldTax_amount, tax_amount)); + } + + /** + * + * + * @generated + */ + @Override + public int getTax_year() { + return tax_year; + } + + /** + * + * + * @generated + */ + @Override + public void setTax_year(int newTax_year) { + int oldTax_year = tax_year; + tax_year = newTax_year; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX__TAX_YEAR, oldTax_year, tax_year)); + } + + /** + * + * + * @generated + */ + @Override + public String getId6() { + return id6; + } + + /** + * + * + * @generated + */ + @Override + public void setId6(String newId6) { + String oldId6 = id6; + id6 = newId6; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX__ID6, oldId6, id6)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.INCOME_TAX__TAX_PAYER: + if (resolve) return getTaxPayer(); + return basicGetTaxPayer(); + case TaxationPackage.INCOME_TAX__TAX_AMOUNT: + return getTax_amount(); + case TaxationPackage.INCOME_TAX__TAX_YEAR: + return getTax_year(); + case TaxationPackage.INCOME_TAX__ID6: + return getId6(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.INCOME_TAX__TAX_PAYER: + setTaxPayer((Tax_Payer)newValue); + return; + case TaxationPackage.INCOME_TAX__TAX_AMOUNT: + setTax_amount((Double)newValue); + return; + case TaxationPackage.INCOME_TAX__TAX_YEAR: + setTax_year((Integer)newValue); + return; + case TaxationPackage.INCOME_TAX__ID6: + setId6((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME_TAX__TAX_PAYER: + setTaxPayer((Tax_Payer)null); + return; + case TaxationPackage.INCOME_TAX__TAX_AMOUNT: + setTax_amount(TAX_AMOUNT_EDEFAULT); + return; + case TaxationPackage.INCOME_TAX__TAX_YEAR: + setTax_year(TAX_YEAR_EDEFAULT); + return; + case TaxationPackage.INCOME_TAX__ID6: + setId6(ID6_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME_TAX__TAX_PAYER: + return taxPayer != null; + case TaxationPackage.INCOME_TAX__TAX_AMOUNT: + return tax_amount != TAX_AMOUNT_EDEFAULT; + case TaxationPackage.INCOME_TAX__TAX_YEAR: + return tax_year != TAX_YEAR_EDEFAULT; + case TaxationPackage.INCOME_TAX__ID6: + return ID6_EDEFAULT == null ? id6 != null : !ID6_EDEFAULT.equals(id6); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (tax_amount: "); + result.append(tax_amount); + result.append(", tax_year: "); + result.append(tax_year); + result.append(", id6: "); + result.append(id6); + result.append(')'); + return result.toString(); + } + +} //Income_TaxImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_Tax_CreditImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_Tax_CreditImpl.java new file mode 100644 index 00000000..0dbd6e21 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_Tax_CreditImpl.java @@ -0,0 +1,625 @@ +/** + */ +package Taxation.impl; + +import Taxation.Grantor; +import Taxation.Income_Tax_Credit; +import Taxation.Tax_Card; +import Taxation.Tax_Payer; +import Taxation.TaxationPackage; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * + * An implementation of the model object 'Income Tax Credit'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.Income_Tax_CreditImpl#getGrantedBy Granted By}
  • + *
  • {@link Taxation.impl.Income_Tax_CreditImpl#getTaxPayer Tax Payer}
  • + *
  • {@link Taxation.impl.Income_Tax_CreditImpl#getTax_year Tax year}
  • + *
  • {@link Taxation.impl.Income_Tax_CreditImpl#getYearly Yearly}
  • + *
  • {@link Taxation.impl.Income_Tax_CreditImpl#getMonthly Monthly}
  • + *
  • {@link Taxation.impl.Income_Tax_CreditImpl#getDaily Daily}
  • + *
  • {@link Taxation.impl.Income_Tax_CreditImpl#getId7 Id7}
  • + *
  • {@link Taxation.impl.Income_Tax_CreditImpl#getTaxation_Frame Taxation Frame}
  • + *
+ * + * @generated + */ +public class Income_Tax_CreditImpl extends MinimalEObjectImpl.Container implements Income_Tax_Credit { + /** + * The default value of the '{@link #getGrantedBy() Granted By}' attribute. + * + * + * @see #getGrantedBy() + * @generated + * @ordered + */ + protected static final Grantor GRANTED_BY_EDEFAULT = Grantor.WWW; + + /** + * The cached value of the '{@link #getGrantedBy() Granted By}' attribute. + * + * + * @see #getGrantedBy() + * @generated + * @ordered + */ + protected Grantor grantedBy = GRANTED_BY_EDEFAULT; + + /** + * The cached value of the '{@link #getTaxPayer() Tax Payer}' reference. + * + * + * @see #getTaxPayer() + * @generated + * @ordered + */ + protected Tax_Payer taxPayer; + + /** + * The default value of the '{@link #getTax_year() Tax year}' attribute. + * + * + * @see #getTax_year() + * @generated + * @ordered + */ + protected static final int TAX_YEAR_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getTax_year() Tax year}' attribute. + * + * + * @see #getTax_year() + * @generated + * @ordered + */ + protected int tax_year = TAX_YEAR_EDEFAULT; + + /** + * The default value of the '{@link #getYearly() Yearly}' attribute. + * + * + * @see #getYearly() + * @generated + * @ordered + */ + protected static final double YEARLY_EDEFAULT = 300.0; + + /** + * The cached value of the '{@link #getYearly() Yearly}' attribute. + * + * + * @see #getYearly() + * @generated + * @ordered + */ + protected double yearly = YEARLY_EDEFAULT; + + /** + * The default value of the '{@link #getMonthly() Monthly}' attribute. + * + * + * @see #getMonthly() + * @generated + * @ordered + */ + protected static final double MONTHLY_EDEFAULT = 25.0; + + /** + * The cached value of the '{@link #getMonthly() Monthly}' attribute. + * + * + * @see #getMonthly() + * @generated + * @ordered + */ + protected double monthly = MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getDaily() Daily}' attribute. + * + * + * @see #getDaily() + * @generated + * @ordered + */ + protected static final double DAILY_EDEFAULT = 1.0; + + /** + * The cached value of the '{@link #getDaily() Daily}' attribute. + * + * + * @see #getDaily() + * @generated + * @ordered + */ + protected double daily = DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getId7() Id7}' attribute. + * + * + * @see #getId7() + * @generated + * @ordered + */ + protected static final String ID7_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId7() Id7}' attribute. + * + * + * @see #getId7() + * @generated + * @ordered + */ + protected String id7 = ID7_EDEFAULT; + + /** + * The cached value of the '{@link #getTaxation_Frame() Taxation Frame}' reference. + * + * + * @see #getTaxation_Frame() + * @generated + * @ordered + */ + protected Tax_Card taxation_Frame; + + /** + * + * + * @generated + */ + protected Income_Tax_CreditImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.INCOME_TAX_CREDIT; + } + + /** + * + * + * @generated + */ + @Override + public Grantor getGrantedBy() { + return grantedBy; + } + + /** + * + * + * @generated + */ + @Override + public void setGrantedBy(Grantor newGrantedBy) { + Grantor oldGrantedBy = grantedBy; + grantedBy = newGrantedBy == null ? GRANTED_BY_EDEFAULT : newGrantedBy; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX_CREDIT__GRANTED_BY, oldGrantedBy, grantedBy)); + } + + /** + * + * + * @generated + */ + @Override + public Tax_Payer getTaxPayer() { + if (taxPayer != null && taxPayer.eIsProxy()) { + InternalEObject oldTaxPayer = (InternalEObject)taxPayer; + taxPayer = (Tax_Payer)eResolveProxy(oldTaxPayer); + if (taxPayer != oldTaxPayer) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.INCOME_TAX_CREDIT__TAX_PAYER, oldTaxPayer, taxPayer)); + } + } + return taxPayer; + } + + /** + * + * + * @generated + */ + public Tax_Payer basicGetTaxPayer() { + return taxPayer; + } + + /** + * + * + * @generated + */ + @Override + public void setTaxPayer(Tax_Payer newTaxPayer) { + Tax_Payer oldTaxPayer = taxPayer; + taxPayer = newTaxPayer; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX_CREDIT__TAX_PAYER, oldTaxPayer, taxPayer)); + } + + /** + * + * + * @generated + */ + @Override + public int getTax_year() { + return tax_year; + } + + /** + * + * + * @generated + */ + @Override + public void setTax_year(int newTax_year) { + int oldTax_year = tax_year; + tax_year = newTax_year; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX_CREDIT__TAX_YEAR, oldTax_year, tax_year)); + } + + /** + * + * + * @generated + */ + @Override + public double getYearly() { + return yearly; + } + + /** + * + * + * @generated + */ + @Override + public void setYearly(double newYearly) { + double oldYearly = yearly; + yearly = newYearly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX_CREDIT__YEARLY, oldYearly, yearly)); + } + + /** + * + * + * @generated + */ + @Override + public double getMonthly() { + return monthly; + } + + /** + * + * + * @generated + */ + @Override + public void setMonthly(double newMonthly) { + double oldMonthly = monthly; + monthly = newMonthly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX_CREDIT__MONTHLY, oldMonthly, monthly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDaily() { + return daily; + } + + /** + * + * + * @generated + */ + @Override + public void setDaily(double newDaily) { + double oldDaily = daily; + daily = newDaily; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX_CREDIT__DAILY, oldDaily, daily)); + } + + /** + * + * + * @generated + */ + @Override + public String getId7() { + return id7; + } + + /** + * + * + * @generated + */ + @Override + public void setId7(String newId7) { + String oldId7 = id7; + id7 = newId7; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX_CREDIT__ID7, oldId7, id7)); + } + + /** + * + * + * @generated + */ + @Override + public Tax_Card getTaxation_Frame() { + if (taxation_Frame != null && taxation_Frame.eIsProxy()) { + InternalEObject oldTaxation_Frame = (InternalEObject)taxation_Frame; + taxation_Frame = (Tax_Card)eResolveProxy(oldTaxation_Frame); + if (taxation_Frame != oldTaxation_Frame) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME, oldTaxation_Frame, taxation_Frame)); + } + } + return taxation_Frame; + } + + /** + * + * + * @generated + */ + public Tax_Card basicGetTaxation_Frame() { + return taxation_Frame; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetTaxation_Frame(Tax_Card newTaxation_Frame, NotificationChain msgs) { + Tax_Card oldTaxation_Frame = taxation_Frame; + taxation_Frame = newTaxation_Frame; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME, oldTaxation_Frame, newTaxation_Frame); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setTaxation_Frame(Tax_Card newTaxation_Frame) { + if (newTaxation_Frame != taxation_Frame) { + NotificationChain msgs = null; + if (taxation_Frame != null) + msgs = ((InternalEObject)taxation_Frame).eInverseRemove(this, TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT, Tax_Card.class, msgs); + if (newTaxation_Frame != null) + msgs = ((InternalEObject)newTaxation_Frame).eInverseAdd(this, TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT, Tax_Card.class, msgs); + msgs = basicSetTaxation_Frame(newTaxation_Frame, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME, newTaxation_Frame, newTaxation_Frame)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME: + if (taxation_Frame != null) + msgs = ((InternalEObject)taxation_Frame).eInverseRemove(this, TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT, Tax_Card.class, msgs); + return basicSetTaxation_Frame((Tax_Card)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME: + return basicSetTaxation_Frame(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.INCOME_TAX_CREDIT__GRANTED_BY: + return getGrantedBy(); + case TaxationPackage.INCOME_TAX_CREDIT__TAX_PAYER: + if (resolve) return getTaxPayer(); + return basicGetTaxPayer(); + case TaxationPackage.INCOME_TAX_CREDIT__TAX_YEAR: + return getTax_year(); + case TaxationPackage.INCOME_TAX_CREDIT__YEARLY: + return getYearly(); + case TaxationPackage.INCOME_TAX_CREDIT__MONTHLY: + return getMonthly(); + case TaxationPackage.INCOME_TAX_CREDIT__DAILY: + return getDaily(); + case TaxationPackage.INCOME_TAX_CREDIT__ID7: + return getId7(); + case TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME: + if (resolve) return getTaxation_Frame(); + return basicGetTaxation_Frame(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.INCOME_TAX_CREDIT__GRANTED_BY: + setGrantedBy((Grantor)newValue); + return; + case TaxationPackage.INCOME_TAX_CREDIT__TAX_PAYER: + setTaxPayer((Tax_Payer)newValue); + return; + case TaxationPackage.INCOME_TAX_CREDIT__TAX_YEAR: + setTax_year((Integer)newValue); + return; + case TaxationPackage.INCOME_TAX_CREDIT__YEARLY: + setYearly((Double)newValue); + return; + case TaxationPackage.INCOME_TAX_CREDIT__MONTHLY: + setMonthly((Double)newValue); + return; + case TaxationPackage.INCOME_TAX_CREDIT__DAILY: + setDaily((Double)newValue); + return; + case TaxationPackage.INCOME_TAX_CREDIT__ID7: + setId7((String)newValue); + return; + case TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME: + setTaxation_Frame((Tax_Card)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME_TAX_CREDIT__GRANTED_BY: + setGrantedBy(GRANTED_BY_EDEFAULT); + return; + case TaxationPackage.INCOME_TAX_CREDIT__TAX_PAYER: + setTaxPayer((Tax_Payer)null); + return; + case TaxationPackage.INCOME_TAX_CREDIT__TAX_YEAR: + setTax_year(TAX_YEAR_EDEFAULT); + return; + case TaxationPackage.INCOME_TAX_CREDIT__YEARLY: + setYearly(YEARLY_EDEFAULT); + return; + case TaxationPackage.INCOME_TAX_CREDIT__MONTHLY: + setMonthly(MONTHLY_EDEFAULT); + return; + case TaxationPackage.INCOME_TAX_CREDIT__DAILY: + setDaily(DAILY_EDEFAULT); + return; + case TaxationPackage.INCOME_TAX_CREDIT__ID7: + setId7(ID7_EDEFAULT); + return; + case TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME: + setTaxation_Frame((Tax_Card)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME_TAX_CREDIT__GRANTED_BY: + return grantedBy != GRANTED_BY_EDEFAULT; + case TaxationPackage.INCOME_TAX_CREDIT__TAX_PAYER: + return taxPayer != null; + case TaxationPackage.INCOME_TAX_CREDIT__TAX_YEAR: + return tax_year != TAX_YEAR_EDEFAULT; + case TaxationPackage.INCOME_TAX_CREDIT__YEARLY: + return yearly != YEARLY_EDEFAULT; + case TaxationPackage.INCOME_TAX_CREDIT__MONTHLY: + return monthly != MONTHLY_EDEFAULT; + case TaxationPackage.INCOME_TAX_CREDIT__DAILY: + return daily != DAILY_EDEFAULT; + case TaxationPackage.INCOME_TAX_CREDIT__ID7: + return ID7_EDEFAULT == null ? id7 != null : !ID7_EDEFAULT.equals(id7); + case TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME: + return taxation_Frame != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (grantedBy: "); + result.append(grantedBy); + result.append(", tax_year: "); + result.append(tax_year); + result.append(", yearly: "); + result.append(yearly); + result.append(", monthly: "); + result.append(monthly); + result.append(", daily: "); + result.append(daily); + result.append(", id7: "); + result.append(id7); + result.append(')'); + return result.toString(); + } + +} //Income_Tax_CreditImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_TypeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_TypeImpl.java new file mode 100644 index 00000000..7b2564b2 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_TypeImpl.java @@ -0,0 +1,324 @@ +/** + */ +package Taxation.impl; + +import Taxation.Income; +import Taxation.Income_Type; +import Taxation.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EcoreUtil; + +/** + * + * An implementation of the model object 'Income Type'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.Income_TypeImpl#isSubjectToWithholdingTax Subject To Withholding Tax}
  • + *
  • {@link Taxation.impl.Income_TypeImpl#getId8 Id8}
  • + *
  • {@link Taxation.impl.Income_TypeImpl#getIncome Income}
  • + *
+ * + * @generated + */ +public abstract class Income_TypeImpl extends MinimalEObjectImpl.Container implements Income_Type { + /** + * The default value of the '{@link #isSubjectToWithholdingTax() Subject To Withholding Tax}' attribute. + * + * + * @see #isSubjectToWithholdingTax() + * @generated + * @ordered + */ + protected static final boolean SUBJECT_TO_WITHHOLDING_TAX_EDEFAULT = false; + + /** + * The cached value of the '{@link #isSubjectToWithholdingTax() Subject To Withholding Tax}' attribute. + * + * + * @see #isSubjectToWithholdingTax() + * @generated + * @ordered + */ + protected boolean subjectToWithholdingTax = SUBJECT_TO_WITHHOLDING_TAX_EDEFAULT; + + /** + * The default value of the '{@link #getId8() Id8}' attribute. + * + * + * @see #getId8() + * @generated + * @ordered + */ + protected static final String ID8_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId8() Id8}' attribute. + * + * + * @see #getId8() + * @generated + * @ordered + */ + protected String id8 = ID8_EDEFAULT; + + /** + * + * + * @generated + */ + protected Income_TypeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.INCOME_TYPE; + } + + /** + * + * + * @generated + */ + @Override + public boolean isSubjectToWithholdingTax() { + return subjectToWithholdingTax; + } + + /** + * + * + * @generated + */ + @Override + public void setSubjectToWithholdingTax(boolean newSubjectToWithholdingTax) { + boolean oldSubjectToWithholdingTax = subjectToWithholdingTax; + subjectToWithholdingTax = newSubjectToWithholdingTax; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX, oldSubjectToWithholdingTax, subjectToWithholdingTax)); + } + + /** + * + * + * @generated + */ + @Override + public String getId8() { + return id8; + } + + /** + * + * + * @generated + */ + @Override + public void setId8(String newId8) { + String oldId8 = id8; + id8 = newId8; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TYPE__ID8, oldId8, id8)); + } + + /** + * + * + * @generated + */ + @Override + public Income getIncome() { + if (eContainerFeatureID() != TaxationPackage.INCOME_TYPE__INCOME) return null; + return (Income)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetIncome(Income newIncome, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newIncome, TaxationPackage.INCOME_TYPE__INCOME, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setIncome(Income newIncome) { + if (newIncome != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.INCOME_TYPE__INCOME && newIncome != null)) { + if (EcoreUtil.isAncestor(this, newIncome)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newIncome != null) + msgs = ((InternalEObject)newIncome).eInverseAdd(this, TaxationPackage.INCOME__INCOME_TYPE, Income.class, msgs); + msgs = basicSetIncome(newIncome, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TYPE__INCOME, newIncome, newIncome)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.INCOME_TYPE__INCOME: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetIncome((Income)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.INCOME_TYPE__INCOME: + return basicSetIncome(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.INCOME_TYPE__INCOME: + return eInternalContainer().eInverseRemove(this, TaxationPackage.INCOME__INCOME_TYPE, Income.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX: + return isSubjectToWithholdingTax(); + case TaxationPackage.INCOME_TYPE__ID8: + return getId8(); + case TaxationPackage.INCOME_TYPE__INCOME: + return getIncome(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX: + setSubjectToWithholdingTax((Boolean)newValue); + return; + case TaxationPackage.INCOME_TYPE__ID8: + setId8((String)newValue); + return; + case TaxationPackage.INCOME_TYPE__INCOME: + setIncome((Income)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX: + setSubjectToWithholdingTax(SUBJECT_TO_WITHHOLDING_TAX_EDEFAULT); + return; + case TaxationPackage.INCOME_TYPE__ID8: + setId8(ID8_EDEFAULT); + return; + case TaxationPackage.INCOME_TYPE__INCOME: + setIncome((Income)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX: + return subjectToWithholdingTax != SUBJECT_TO_WITHHOLDING_TAX_EDEFAULT; + case TaxationPackage.INCOME_TYPE__ID8: + return ID8_EDEFAULT == null ? id8 != null : !ID8_EDEFAULT.equals(id8); + case TaxationPackage.INCOME_TYPE__INCOME: + return getIncome() != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (subjectToWithholdingTax: "); + result.append(subjectToWithholdingTax); + result.append(", id8: "); + result.append(id8); + result.append(')'); + return result.toString(); + } + +} //Income_TypeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Interest_ExpenseImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Interest_ExpenseImpl.java new file mode 100644 index 00000000..44a10564 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Interest_ExpenseImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.Interest_Expense; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Interest Expense'. + * + * + * @generated + */ +public class Interest_ExpenseImpl extends Special_Expense_DSImpl implements Interest_Expense { + /** + * + * + * @generated + */ + protected Interest_ExpenseImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.INTEREST_EXPENSE; + } + +} //Interest_ExpenseImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Legal_Union_RecordImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Legal_Union_RecordImpl.java new file mode 100644 index 00000000..1ab3bf53 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Legal_Union_RecordImpl.java @@ -0,0 +1,647 @@ +/** + */ +package Taxation.impl; + +import Taxation.Household; +import Taxation.Legal_Union_Record; +import Taxation.Physical_Person; +import Taxation.Separation_Causes; +import Taxation.Tax_Property; +import Taxation.TaxationPackage; +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'Legal Union Record'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.Legal_Union_RecordImpl#getStart_year Start year}
  • + *
  • {@link Taxation.impl.Legal_Union_RecordImpl#getEnd_year End year}
  • + *
  • {@link Taxation.impl.Legal_Union_RecordImpl#getSeparation_cause Separation cause}
  • + *
  • {@link Taxation.impl.Legal_Union_RecordImpl#getIndividual_A Individual A}
  • + *
  • {@link Taxation.impl.Legal_Union_RecordImpl#getIndividual_B Individual B}
  • + *
  • {@link Taxation.impl.Legal_Union_RecordImpl#getProperties Properties}
  • + *
  • {@link Taxation.impl.Legal_Union_RecordImpl#isMutual_agreement Mutual agreement}
  • + *
  • {@link Taxation.impl.Legal_Union_RecordImpl#getId9 Id9}
  • + *
  • {@link Taxation.impl.Legal_Union_RecordImpl#getHousehold Household}
  • + *
+ * + * @generated + */ +public abstract class Legal_Union_RecordImpl extends MinimalEObjectImpl.Container implements Legal_Union_Record { + /** + * The default value of the '{@link #getStart_year() Start year}' attribute. + * + * + * @see #getStart_year() + * @generated + * @ordered + */ + protected static final int START_YEAR_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getStart_year() Start year}' attribute. + * + * + * @see #getStart_year() + * @generated + * @ordered + */ + protected int start_year = START_YEAR_EDEFAULT; + + /** + * The default value of the '{@link #getEnd_year() End year}' attribute. + * + * + * @see #getEnd_year() + * @generated + * @ordered + */ + protected static final int END_YEAR_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getEnd_year() End year}' attribute. + * + * + * @see #getEnd_year() + * @generated + * @ordered + */ + protected int end_year = END_YEAR_EDEFAULT; + + /** + * The default value of the '{@link #getSeparation_cause() Separation cause}' attribute. + * + * + * @see #getSeparation_cause() + * @generated + * @ordered + */ + protected static final Separation_Causes SEPARATION_CAUSE_EDEFAULT = Separation_Causes.NONE; + + /** + * The cached value of the '{@link #getSeparation_cause() Separation cause}' attribute. + * + * + * @see #getSeparation_cause() + * @generated + * @ordered + */ + protected Separation_Causes separation_cause = SEPARATION_CAUSE_EDEFAULT; + + /** + * The cached value of the '{@link #getIndividual_A() Individual A}' containment reference. + * + * + * @see #getIndividual_A() + * @generated + * @ordered + */ + protected Physical_Person individual_A; + + /** + * The cached value of the '{@link #getIndividual_B() Individual B}' containment reference list. + * + * + * @see #getIndividual_B() + * @generated + * @ordered + */ + protected EList individual_B; + + /** + * The cached value of the '{@link #getProperties() Properties}' containment reference list. + * + * + * @see #getProperties() + * @generated + * @ordered + */ + protected EList properties; + + /** + * The default value of the '{@link #isMutual_agreement() Mutual agreement}' attribute. + * + * + * @see #isMutual_agreement() + * @generated + * @ordered + */ + protected static final boolean MUTUAL_AGREEMENT_EDEFAULT = false; + + /** + * The cached value of the '{@link #isMutual_agreement() Mutual agreement}' attribute. + * + * + * @see #isMutual_agreement() + * @generated + * @ordered + */ + protected boolean mutual_agreement = MUTUAL_AGREEMENT_EDEFAULT; + + /** + * The default value of the '{@link #getId9() Id9}' attribute. + * + * + * @see #getId9() + * @generated + * @ordered + */ + protected static final String ID9_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId9() Id9}' attribute. + * + * + * @see #getId9() + * @generated + * @ordered + */ + protected String id9 = ID9_EDEFAULT; + + /** + * + * + * @generated + */ + protected Legal_Union_RecordImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.LEGAL_UNION_RECORD; + } + + /** + * + * + * @generated + */ + @Override + public int getStart_year() { + return start_year; + } + + /** + * + * + * @generated + */ + @Override + public void setStart_year(int newStart_year) { + int oldStart_year = start_year; + start_year = newStart_year; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LEGAL_UNION_RECORD__START_YEAR, oldStart_year, start_year)); + } + + /** + * + * + * @generated + */ + @Override + public int getEnd_year() { + return end_year; + } + + /** + * + * + * @generated + */ + @Override + public void setEnd_year(int newEnd_year) { + int oldEnd_year = end_year; + end_year = newEnd_year; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LEGAL_UNION_RECORD__END_YEAR, oldEnd_year, end_year)); + } + + /** + * + * + * @generated + */ + @Override + public Separation_Causes getSeparation_cause() { + return separation_cause; + } + + /** + * + * + * @generated + */ + @Override + public void setSeparation_cause(Separation_Causes newSeparation_cause) { + Separation_Causes oldSeparation_cause = separation_cause; + separation_cause = newSeparation_cause == null ? SEPARATION_CAUSE_EDEFAULT : newSeparation_cause; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LEGAL_UNION_RECORD__SEPARATION_CAUSE, oldSeparation_cause, separation_cause)); + } + + /** + * + * + * @generated + */ + @Override + public Physical_Person getIndividual_A() { + return individual_A; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetIndividual_A(Physical_Person newIndividual_A, NotificationChain msgs) { + Physical_Person oldIndividual_A = individual_A; + individual_A = newIndividual_A; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_A, oldIndividual_A, newIndividual_A); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setIndividual_A(Physical_Person newIndividual_A) { + if (newIndividual_A != individual_A) { + NotificationChain msgs = null; + if (individual_A != null) + msgs = ((InternalEObject)individual_A).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_A, null, msgs); + if (newIndividual_A != null) + msgs = ((InternalEObject)newIndividual_A).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_A, null, msgs); + msgs = basicSetIndividual_A(newIndividual_A, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_A, newIndividual_A, newIndividual_A)); + } + + /** + * + * + * @generated + */ + @Override + public EList getIndividual_B() { + if (individual_B == null) { + individual_B = new EObjectContainmentEList(Physical_Person.class, this, TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_B); + } + return individual_B; + } + + /** + * + * + * @generated + */ + @Override + public EList getProperties() { + if (properties == null) { + properties = new EObjectContainmentWithInverseEList(Tax_Property.class, this, TaxationPackage.LEGAL_UNION_RECORD__PROPERTIES, TaxationPackage.TAX_PROPERTY__UNION_RECORD); + } + return properties; + } + + /** + * + * + * @generated + */ + @Override + public boolean isMutual_agreement() { + return mutual_agreement; + } + + /** + * + * + * @generated + */ + @Override + public void setMutual_agreement(boolean newMutual_agreement) { + boolean oldMutual_agreement = mutual_agreement; + mutual_agreement = newMutual_agreement; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LEGAL_UNION_RECORD__MUTUAL_AGREEMENT, oldMutual_agreement, mutual_agreement)); + } + + /** + * + * + * @generated + */ + @Override + public String getId9() { + return id9; + } + + /** + * + * + * @generated + */ + @Override + public void setId9(String newId9) { + String oldId9 = id9; + id9 = newId9; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LEGAL_UNION_RECORD__ID9, oldId9, id9)); + } + + /** + * + * + * @generated + */ + @Override + public Household getHousehold() { + if (eContainerFeatureID() != TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD) return null; + return (Household)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetHousehold(Household newHousehold, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newHousehold, TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setHousehold(Household newHousehold) { + if (newHousehold != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD && newHousehold != null)) { + if (EcoreUtil.isAncestor(this, newHousehold)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newHousehold != null) + msgs = ((InternalEObject)newHousehold).eInverseAdd(this, TaxationPackage.HOUSEHOLD__PARENTS, Household.class, msgs); + msgs = basicSetHousehold(newHousehold, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD, newHousehold, newHousehold)); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.LEGAL_UNION_RECORD__PROPERTIES: + return ((InternalEList)(InternalEList)getProperties()).basicAdd(otherEnd, msgs); + case TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetHousehold((Household)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_A: + return basicSetIndividual_A(null, msgs); + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_B: + return ((InternalEList)getIndividual_B()).basicRemove(otherEnd, msgs); + case TaxationPackage.LEGAL_UNION_RECORD__PROPERTIES: + return ((InternalEList)getProperties()).basicRemove(otherEnd, msgs); + case TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD: + return basicSetHousehold(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD: + return eInternalContainer().eInverseRemove(this, TaxationPackage.HOUSEHOLD__PARENTS, Household.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.LEGAL_UNION_RECORD__START_YEAR: + return getStart_year(); + case TaxationPackage.LEGAL_UNION_RECORD__END_YEAR: + return getEnd_year(); + case TaxationPackage.LEGAL_UNION_RECORD__SEPARATION_CAUSE: + return getSeparation_cause(); + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_A: + return getIndividual_A(); + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_B: + return getIndividual_B(); + case TaxationPackage.LEGAL_UNION_RECORD__PROPERTIES: + return getProperties(); + case TaxationPackage.LEGAL_UNION_RECORD__MUTUAL_AGREEMENT: + return isMutual_agreement(); + case TaxationPackage.LEGAL_UNION_RECORD__ID9: + return getId9(); + case TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD: + return getHousehold(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.LEGAL_UNION_RECORD__START_YEAR: + setStart_year((Integer)newValue); + return; + case TaxationPackage.LEGAL_UNION_RECORD__END_YEAR: + setEnd_year((Integer)newValue); + return; + case TaxationPackage.LEGAL_UNION_RECORD__SEPARATION_CAUSE: + setSeparation_cause((Separation_Causes)newValue); + return; + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_A: + setIndividual_A((Physical_Person)newValue); + return; + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_B: + getIndividual_B().clear(); + getIndividual_B().addAll((Collection)newValue); + return; + case TaxationPackage.LEGAL_UNION_RECORD__PROPERTIES: + getProperties().clear(); + getProperties().addAll((Collection)newValue); + return; + case TaxationPackage.LEGAL_UNION_RECORD__MUTUAL_AGREEMENT: + setMutual_agreement((Boolean)newValue); + return; + case TaxationPackage.LEGAL_UNION_RECORD__ID9: + setId9((String)newValue); + return; + case TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD: + setHousehold((Household)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.LEGAL_UNION_RECORD__START_YEAR: + setStart_year(START_YEAR_EDEFAULT); + return; + case TaxationPackage.LEGAL_UNION_RECORD__END_YEAR: + setEnd_year(END_YEAR_EDEFAULT); + return; + case TaxationPackage.LEGAL_UNION_RECORD__SEPARATION_CAUSE: + setSeparation_cause(SEPARATION_CAUSE_EDEFAULT); + return; + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_A: + setIndividual_A((Physical_Person)null); + return; + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_B: + getIndividual_B().clear(); + return; + case TaxationPackage.LEGAL_UNION_RECORD__PROPERTIES: + getProperties().clear(); + return; + case TaxationPackage.LEGAL_UNION_RECORD__MUTUAL_AGREEMENT: + setMutual_agreement(MUTUAL_AGREEMENT_EDEFAULT); + return; + case TaxationPackage.LEGAL_UNION_RECORD__ID9: + setId9(ID9_EDEFAULT); + return; + case TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD: + setHousehold((Household)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.LEGAL_UNION_RECORD__START_YEAR: + return start_year != START_YEAR_EDEFAULT; + case TaxationPackage.LEGAL_UNION_RECORD__END_YEAR: + return end_year != END_YEAR_EDEFAULT; + case TaxationPackage.LEGAL_UNION_RECORD__SEPARATION_CAUSE: + return separation_cause != SEPARATION_CAUSE_EDEFAULT; + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_A: + return individual_A != null; + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_B: + return individual_B != null && !individual_B.isEmpty(); + case TaxationPackage.LEGAL_UNION_RECORD__PROPERTIES: + return properties != null && !properties.isEmpty(); + case TaxationPackage.LEGAL_UNION_RECORD__MUTUAL_AGREEMENT: + return mutual_agreement != MUTUAL_AGREEMENT_EDEFAULT; + case TaxationPackage.LEGAL_UNION_RECORD__ID9: + return ID9_EDEFAULT == null ? id9 != null : !ID9_EDEFAULT.equals(id9); + case TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD: + return getHousehold() != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (start_year: "); + result.append(start_year); + result.append(", end_year: "); + result.append(end_year); + result.append(", separation_cause: "); + result.append(separation_cause); + result.append(", mutual_agreement: "); + result.append(mutual_agreement); + result.append(", id9: "); + result.append(id9); + result.append(')'); + return result.toString(); + } + +} //Legal_Union_RecordImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Local_IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Local_IncomeImpl.java new file mode 100644 index 00000000..16856767 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Local_IncomeImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.Local_Income; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Local Income'. + * + * + * @generated + */ +public class Local_IncomeImpl extends IncomeImpl implements Local_Income { + /** + * + * + * @generated + */ + protected Local_IncomeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.LOCAL_INCOME; + } + +} //Local_IncomeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Loss_CarryforwardImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Loss_CarryforwardImpl.java new file mode 100644 index 00000000..d43422f8 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Loss_CarryforwardImpl.java @@ -0,0 +1,332 @@ +/** + */ +package Taxation.impl; + +import Taxation.Loss_Carryforward; +import Taxation.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Loss Carryforward'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.Loss_CarryforwardImpl#isRegular_accountability Regular accountability}
  • + *
  • {@link Taxation.impl.Loss_CarryforwardImpl#isCompensation_by_other_means Compensation by other means}
  • + *
  • {@link Taxation.impl.Loss_CarryforwardImpl#isTax_payer_has_inherited_business_ownership Tax payer has inherited business ownership}
  • + *
  • {@link Taxation.impl.Loss_CarryforwardImpl#isTax_payer_has_been_partner_in_business Tax payer has been partner in business}
  • + *
+ * + * @generated + */ +public class Loss_CarryforwardImpl extends Special_Expense_DSImpl implements Loss_Carryforward { + /** + * The default value of the '{@link #isRegular_accountability() Regular accountability}' attribute. + * + * + * @see #isRegular_accountability() + * @generated + * @ordered + */ + protected static final boolean REGULAR_ACCOUNTABILITY_EDEFAULT = false; + + /** + * The cached value of the '{@link #isRegular_accountability() Regular accountability}' attribute. + * + * + * @see #isRegular_accountability() + * @generated + * @ordered + */ + protected boolean regular_accountability = REGULAR_ACCOUNTABILITY_EDEFAULT; + + /** + * The default value of the '{@link #isCompensation_by_other_means() Compensation by other means}' attribute. + * + * + * @see #isCompensation_by_other_means() + * @generated + * @ordered + */ + protected static final boolean COMPENSATION_BY_OTHER_MEANS_EDEFAULT = false; + + /** + * The cached value of the '{@link #isCompensation_by_other_means() Compensation by other means}' attribute. + * + * + * @see #isCompensation_by_other_means() + * @generated + * @ordered + */ + protected boolean compensation_by_other_means = COMPENSATION_BY_OTHER_MEANS_EDEFAULT; + + /** + * The default value of the '{@link #isTax_payer_has_inherited_business_ownership() Tax payer has inherited business ownership}' attribute. + * + * + * @see #isTax_payer_has_inherited_business_ownership() + * @generated + * @ordered + */ + protected static final boolean TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP_EDEFAULT = false; + + /** + * The cached value of the '{@link #isTax_payer_has_inherited_business_ownership() Tax payer has inherited business ownership}' attribute. + * + * + * @see #isTax_payer_has_inherited_business_ownership() + * @generated + * @ordered + */ + protected boolean tax_payer_has_inherited_business_ownership = TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP_EDEFAULT; + + /** + * The default value of the '{@link #isTax_payer_has_been_partner_in_business() Tax payer has been partner in business}' attribute. + * + * + * @see #isTax_payer_has_been_partner_in_business() + * @generated + * @ordered + */ + protected static final boolean TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS_EDEFAULT = true; + + /** + * The cached value of the '{@link #isTax_payer_has_been_partner_in_business() Tax payer has been partner in business}' attribute. + * + * + * @see #isTax_payer_has_been_partner_in_business() + * @generated + * @ordered + */ + protected boolean tax_payer_has_been_partner_in_business = TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS_EDEFAULT; + + /** + * + * + * @generated + */ + protected Loss_CarryforwardImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.LOSS_CARRYFORWARD; + } + + /** + * + * + * @generated + */ + @Override + public boolean isRegular_accountability() { + return regular_accountability; + } + + /** + * + * + * @generated + */ + @Override + public void setRegular_accountability(boolean newRegular_accountability) { + boolean oldRegular_accountability = regular_accountability; + regular_accountability = newRegular_accountability; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LOSS_CARRYFORWARD__REGULAR_ACCOUNTABILITY, oldRegular_accountability, regular_accountability)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isCompensation_by_other_means() { + return compensation_by_other_means; + } + + /** + * + * + * @generated + */ + @Override + public void setCompensation_by_other_means(boolean newCompensation_by_other_means) { + boolean oldCompensation_by_other_means = compensation_by_other_means; + compensation_by_other_means = newCompensation_by_other_means; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LOSS_CARRYFORWARD__COMPENSATION_BY_OTHER_MEANS, oldCompensation_by_other_means, compensation_by_other_means)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isTax_payer_has_inherited_business_ownership() { + return tax_payer_has_inherited_business_ownership; + } + + /** + * + * + * @generated + */ + @Override + public void setTax_payer_has_inherited_business_ownership(boolean newTax_payer_has_inherited_business_ownership) { + boolean oldTax_payer_has_inherited_business_ownership = tax_payer_has_inherited_business_ownership; + tax_payer_has_inherited_business_ownership = newTax_payer_has_inherited_business_ownership; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP, oldTax_payer_has_inherited_business_ownership, tax_payer_has_inherited_business_ownership)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isTax_payer_has_been_partner_in_business() { + return tax_payer_has_been_partner_in_business; + } + + /** + * + * + * @generated + */ + @Override + public void setTax_payer_has_been_partner_in_business(boolean newTax_payer_has_been_partner_in_business) { + boolean oldTax_payer_has_been_partner_in_business = tax_payer_has_been_partner_in_business; + tax_payer_has_been_partner_in_business = newTax_payer_has_been_partner_in_business; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS, oldTax_payer_has_been_partner_in_business, tax_payer_has_been_partner_in_business)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.LOSS_CARRYFORWARD__REGULAR_ACCOUNTABILITY: + return isRegular_accountability(); + case TaxationPackage.LOSS_CARRYFORWARD__COMPENSATION_BY_OTHER_MEANS: + return isCompensation_by_other_means(); + case TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP: + return isTax_payer_has_inherited_business_ownership(); + case TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS: + return isTax_payer_has_been_partner_in_business(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.LOSS_CARRYFORWARD__REGULAR_ACCOUNTABILITY: + setRegular_accountability((Boolean)newValue); + return; + case TaxationPackage.LOSS_CARRYFORWARD__COMPENSATION_BY_OTHER_MEANS: + setCompensation_by_other_means((Boolean)newValue); + return; + case TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP: + setTax_payer_has_inherited_business_ownership((Boolean)newValue); + return; + case TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS: + setTax_payer_has_been_partner_in_business((Boolean)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.LOSS_CARRYFORWARD__REGULAR_ACCOUNTABILITY: + setRegular_accountability(REGULAR_ACCOUNTABILITY_EDEFAULT); + return; + case TaxationPackage.LOSS_CARRYFORWARD__COMPENSATION_BY_OTHER_MEANS: + setCompensation_by_other_means(COMPENSATION_BY_OTHER_MEANS_EDEFAULT); + return; + case TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP: + setTax_payer_has_inherited_business_ownership(TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP_EDEFAULT); + return; + case TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS: + setTax_payer_has_been_partner_in_business(TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.LOSS_CARRYFORWARD__REGULAR_ACCOUNTABILITY: + return regular_accountability != REGULAR_ACCOUNTABILITY_EDEFAULT; + case TaxationPackage.LOSS_CARRYFORWARD__COMPENSATION_BY_OTHER_MEANS: + return compensation_by_other_means != COMPENSATION_BY_OTHER_MEANS_EDEFAULT; + case TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP: + return tax_payer_has_inherited_business_ownership != TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP_EDEFAULT; + case TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS: + return tax_payer_has_been_partner_in_business != TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (regular_accountability: "); + result.append(regular_accountability); + result.append(", compensation_by_other_means: "); + result.append(compensation_by_other_means); + result.append(", tax_payer_has_inherited_business_ownership: "); + result.append(tax_payer_has_inherited_business_ownership); + result.append(", tax_payer_has_been_partner_in_business: "); + result.append(tax_payer_has_been_partner_in_business); + result.append(')'); + return result.toString(); + } + +} //Loss_CarryforwardImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Marriage_RecordImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Marriage_RecordImpl.java new file mode 100644 index 00000000..df37dd06 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Marriage_RecordImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.Marriage_Record; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Marriage Record'. + * + * + * @generated + */ +public class Marriage_RecordImpl extends Legal_Union_RecordImpl implements Marriage_Record { + /** + * + * + * @generated + */ + protected Marriage_RecordImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.MARRIAGE_RECORD; + } + +} //Marriage_RecordImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Miscellaneous_Expense_FOImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Miscellaneous_Expense_FOImpl.java new file mode 100644 index 00000000..829d7b6d --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Miscellaneous_Expense_FOImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.Miscellaneous_Expense_FO; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Miscellaneous Expense FO'. + * + * + * @generated + */ +public class Miscellaneous_Expense_FOImpl extends Professional_ExpenseImpl implements Miscellaneous_Expense_FO { + /** + * + * + * @generated + */ + protected Miscellaneous_Expense_FOImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.MISCELLANEOUS_EXPENSE_FO; + } + +} //Miscellaneous_Expense_FOImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Non_Resident_Tax_PayerImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Non_Resident_Tax_PayerImpl.java new file mode 100644 index 00000000..a8a55ade --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Non_Resident_Tax_PayerImpl.java @@ -0,0 +1,164 @@ +/** + */ +package Taxation.impl; + +import Taxation.Non_Resident_Tax_Payer; +import Taxation.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Non Resident Tax Payer'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.Non_Resident_Tax_PayerImpl#isIs_assimilated_to_resident Is assimilated to resident}
  • + *
+ * + * @generated + */ +public class Non_Resident_Tax_PayerImpl extends Tax_PayerImpl implements Non_Resident_Tax_Payer { + /** + * The default value of the '{@link #isIs_assimilated_to_resident() Is assimilated to resident}' attribute. + * + * + * @see #isIs_assimilated_to_resident() + * @generated + * @ordered + */ + protected static final boolean IS_ASSIMILATED_TO_RESIDENT_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_assimilated_to_resident() Is assimilated to resident}' attribute. + * + * + * @see #isIs_assimilated_to_resident() + * @generated + * @ordered + */ + protected boolean is_assimilated_to_resident = IS_ASSIMILATED_TO_RESIDENT_EDEFAULT; + + /** + * + * + * @generated + */ + protected Non_Resident_Tax_PayerImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.NON_RESIDENT_TAX_PAYER; + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_assimilated_to_resident() { + return is_assimilated_to_resident; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_assimilated_to_resident(boolean newIs_assimilated_to_resident) { + boolean oldIs_assimilated_to_resident = is_assimilated_to_resident; + is_assimilated_to_resident = newIs_assimilated_to_resident; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.NON_RESIDENT_TAX_PAYER__IS_ASSIMILATED_TO_RESIDENT, oldIs_assimilated_to_resident, is_assimilated_to_resident)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.NON_RESIDENT_TAX_PAYER__IS_ASSIMILATED_TO_RESIDENT: + return isIs_assimilated_to_resident(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.NON_RESIDENT_TAX_PAYER__IS_ASSIMILATED_TO_RESIDENT: + setIs_assimilated_to_resident((Boolean)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.NON_RESIDENT_TAX_PAYER__IS_ASSIMILATED_TO_RESIDENT: + setIs_assimilated_to_resident(IS_ASSIMILATED_TO_RESIDENT_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.NON_RESIDENT_TAX_PAYER__IS_ASSIMILATED_TO_RESIDENT: + return is_assimilated_to_resident != IS_ASSIMILATED_TO_RESIDENT_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (is_assimilated_to_resident: "); + result.append(is_assimilated_to_resident); + result.append(')'); + return result.toString(); + } + +} //Non_Resident_Tax_PayerImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Partnership_RecordImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Partnership_RecordImpl.java new file mode 100644 index 00000000..56ee4a14 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Partnership_RecordImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.Partnership_Record; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Partnership Record'. + * + * + * @generated + */ +public class Partnership_RecordImpl extends Legal_Union_RecordImpl implements Partnership_Record { + /** + * + * + * @generated + */ + protected Partnership_RecordImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.PARTNERSHIP_RECORD; + } + +} //Partnership_RecordImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Pensions_and_Annuities_IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Pensions_and_Annuities_IncomeImpl.java new file mode 100644 index 00000000..9267ee3c --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Pensions_and_Annuities_IncomeImpl.java @@ -0,0 +1,164 @@ +/** + */ +package Taxation.impl; + +import Taxation.Pensions_and_Annuities_Income; +import Taxation.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Pensions and Annuities Income'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.Pensions_and_Annuities_IncomeImpl#isOccasional_payement Occasional payement}
  • + *
+ * + * @generated + */ +public class Pensions_and_Annuities_IncomeImpl extends Income_TypeImpl implements Pensions_and_Annuities_Income { + /** + * The default value of the '{@link #isOccasional_payement() Occasional payement}' attribute. + * + * + * @see #isOccasional_payement() + * @generated + * @ordered + */ + protected static final boolean OCCASIONAL_PAYEMENT_EDEFAULT = false; + + /** + * The cached value of the '{@link #isOccasional_payement() Occasional payement}' attribute. + * + * + * @see #isOccasional_payement() + * @generated + * @ordered + */ + protected boolean occasional_payement = OCCASIONAL_PAYEMENT_EDEFAULT; + + /** + * + * + * @generated + */ + protected Pensions_and_Annuities_IncomeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.PENSIONS_AND_ANNUITIES_INCOME; + } + + /** + * + * + * @generated + */ + @Override + public boolean isOccasional_payement() { + return occasional_payement; + } + + /** + * + * + * @generated + */ + @Override + public void setOccasional_payement(boolean newOccasional_payement) { + boolean oldOccasional_payement = occasional_payement; + occasional_payement = newOccasional_payement; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PENSIONS_AND_ANNUITIES_INCOME__OCCASIONAL_PAYEMENT, oldOccasional_payement, occasional_payement)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.PENSIONS_AND_ANNUITIES_INCOME__OCCASIONAL_PAYEMENT: + return isOccasional_payement(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.PENSIONS_AND_ANNUITIES_INCOME__OCCASIONAL_PAYEMENT: + setOccasional_payement((Boolean)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.PENSIONS_AND_ANNUITIES_INCOME__OCCASIONAL_PAYEMENT: + setOccasional_payement(OCCASIONAL_PAYEMENT_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.PENSIONS_AND_ANNUITIES_INCOME__OCCASIONAL_PAYEMENT: + return occasional_payement != OCCASIONAL_PAYEMENT_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (occasional_payement: "); + result.append(occasional_payement); + result.append(')'); + return result.toString(); + } + +} //Pensions_and_Annuities_IncomeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Permanent_ExpenseImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Permanent_ExpenseImpl.java new file mode 100644 index 00000000..9473ae17 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Permanent_ExpenseImpl.java @@ -0,0 +1,221 @@ +/** + */ +package Taxation.impl; + +import Taxation.Category_of_Permanent_Expense; +import Taxation.Permanent_Expense; +import Taxation.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Permanent Expense'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.Permanent_ExpenseImpl#getCategory Category}
  • + *
  • {@link Taxation.impl.Permanent_ExpenseImpl#isIs_eligible_for_deduction Is eligible for deduction}
  • + *
+ * + * @generated + */ +public class Permanent_ExpenseImpl extends Special_Expense_DSImpl implements Permanent_Expense { + /** + * The default value of the '{@link #getCategory() Category}' attribute. + * + * + * @see #getCategory() + * @generated + * @ordered + */ + protected static final Category_of_Permanent_Expense CATEGORY_EDEFAULT = Category_of_Permanent_Expense.MISCELLANEOUS_DEBT; + + /** + * The cached value of the '{@link #getCategory() Category}' attribute. + * + * + * @see #getCategory() + * @generated + * @ordered + */ + protected Category_of_Permanent_Expense category = CATEGORY_EDEFAULT; + + /** + * The default value of the '{@link #isIs_eligible_for_deduction() Is eligible for deduction}' attribute. + * + * + * @see #isIs_eligible_for_deduction() + * @generated + * @ordered + */ + protected static final boolean IS_ELIGIBLE_FOR_DEDUCTION_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_eligible_for_deduction() Is eligible for deduction}' attribute. + * + * + * @see #isIs_eligible_for_deduction() + * @generated + * @ordered + */ + protected boolean is_eligible_for_deduction = IS_ELIGIBLE_FOR_DEDUCTION_EDEFAULT; + + /** + * + * + * @generated + */ + protected Permanent_ExpenseImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.PERMANENT_EXPENSE; + } + + /** + * + * + * @generated + */ + @Override + public Category_of_Permanent_Expense getCategory() { + return category; + } + + /** + * + * + * @generated + */ + @Override + public void setCategory(Category_of_Permanent_Expense newCategory) { + Category_of_Permanent_Expense oldCategory = category; + category = newCategory == null ? CATEGORY_EDEFAULT : newCategory; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PERMANENT_EXPENSE__CATEGORY, oldCategory, category)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_eligible_for_deduction() { + return is_eligible_for_deduction; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_eligible_for_deduction(boolean newIs_eligible_for_deduction) { + boolean oldIs_eligible_for_deduction = is_eligible_for_deduction; + is_eligible_for_deduction = newIs_eligible_for_deduction; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PERMANENT_EXPENSE__IS_ELIGIBLE_FOR_DEDUCTION, oldIs_eligible_for_deduction, is_eligible_for_deduction)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.PERMANENT_EXPENSE__CATEGORY: + return getCategory(); + case TaxationPackage.PERMANENT_EXPENSE__IS_ELIGIBLE_FOR_DEDUCTION: + return isIs_eligible_for_deduction(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.PERMANENT_EXPENSE__CATEGORY: + setCategory((Category_of_Permanent_Expense)newValue); + return; + case TaxationPackage.PERMANENT_EXPENSE__IS_ELIGIBLE_FOR_DEDUCTION: + setIs_eligible_for_deduction((Boolean)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.PERMANENT_EXPENSE__CATEGORY: + setCategory(CATEGORY_EDEFAULT); + return; + case TaxationPackage.PERMANENT_EXPENSE__IS_ELIGIBLE_FOR_DEDUCTION: + setIs_eligible_for_deduction(IS_ELIGIBLE_FOR_DEDUCTION_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.PERMANENT_EXPENSE__CATEGORY: + return category != CATEGORY_EDEFAULT; + case TaxationPackage.PERMANENT_EXPENSE__IS_ELIGIBLE_FOR_DEDUCTION: + return is_eligible_for_deduction != IS_ELIGIBLE_FOR_DEDUCTION_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (category: "); + result.append(category); + result.append(", is_eligible_for_deduction: "); + result.append(is_eligible_for_deduction); + result.append(')'); + return result.toString(); + } + +} //Permanent_ExpenseImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Physical_PersonImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Physical_PersonImpl.java new file mode 100644 index 00000000..a63a993e --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Physical_PersonImpl.java @@ -0,0 +1,766 @@ +/** + */ +package Taxation.impl; + +import Taxation.Address; +import Taxation.Disability_Types; +import Taxation.Expense; +import Taxation.Physical_Person; +import Taxation.TaxationPackage; +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'Physical Person'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.Physical_PersonImpl#isIs_assisting_spouse Is assisting spouse}
  • + *
  • {@link Taxation.impl.Physical_PersonImpl#getSSNo SS No}
  • + *
  • {@link Taxation.impl.Physical_PersonImpl#getAddresses Addresses}
  • + *
  • {@link Taxation.impl.Physical_PersonImpl#getBirth_year Birth year}
  • + *
  • {@link Taxation.impl.Physical_PersonImpl#getDisability_percentage Disability percentage}
  • + *
  • {@link Taxation.impl.Physical_PersonImpl#getDisability_type Disability type}
  • + *
  • {@link Taxation.impl.Physical_PersonImpl#isIs_affiliated_personnaly_to_social_security Is affiliated personnaly to social security}
  • + *
  • {@link Taxation.impl.Physical_PersonImpl#getBirth_month Birth month}
  • + *
  • {@link Taxation.impl.Physical_PersonImpl#getBirth_day Birth day}
  • + *
  • {@link Taxation.impl.Physical_PersonImpl#getExpenses Expenses}
  • + *
  • {@link Taxation.impl.Physical_PersonImpl#isIs_widower Is widower}
  • + *
  • {@link Taxation.impl.Physical_PersonImpl#getOwns_Address Owns Address}
  • + *
+ * + * @generated + */ +public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements Physical_Person { + /** + * The default value of the '{@link #isIs_assisting_spouse() Is assisting spouse}' attribute. + * + * + * @see #isIs_assisting_spouse() + * @generated + * @ordered + */ + protected static final boolean IS_ASSISTING_SPOUSE_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_assisting_spouse() Is assisting spouse}' attribute. + * + * + * @see #isIs_assisting_spouse() + * @generated + * @ordered + */ + protected boolean is_assisting_spouse = IS_ASSISTING_SPOUSE_EDEFAULT; + + /** + * The default value of the '{@link #getSSNo() SS No}' attribute. + * + * + * @see #getSSNo() + * @generated + * @ordered + */ + protected static final String SS_NO_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSSNo() SS No}' attribute. + * + * + * @see #getSSNo() + * @generated + * @ordered + */ + protected String ssNo = SS_NO_EDEFAULT; + + /** + * The cached value of the '{@link #getAddresses() Addresses}' reference list. + * + * + * @see #getAddresses() + * @generated + * @ordered + */ + protected EList
addresses; + + /** + * The default value of the '{@link #getBirth_year() Birth year}' attribute. + * + * + * @see #getBirth_year() + * @generated + * @ordered + */ + protected static final int BIRTH_YEAR_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getBirth_year() Birth year}' attribute. + * + * + * @see #getBirth_year() + * @generated + * @ordered + */ + protected int birth_year = BIRTH_YEAR_EDEFAULT; + + /** + * The default value of the '{@link #getDisability_percentage() Disability percentage}' attribute. + * + * + * @see #getDisability_percentage() + * @generated + * @ordered + */ + protected static final double DISABILITY_PERCENTAGE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDisability_percentage() Disability percentage}' attribute. + * + * + * @see #getDisability_percentage() + * @generated + * @ordered + */ + protected double disability_percentage = DISABILITY_PERCENTAGE_EDEFAULT; + + /** + * The default value of the '{@link #getDisability_type() Disability type}' attribute. + * + * + * @see #getDisability_type() + * @generated + * @ordered + */ + protected static final Disability_Types DISABILITY_TYPE_EDEFAULT = Disability_Types.BEUG; + + /** + * The cached value of the '{@link #getDisability_type() Disability type}' attribute. + * + * + * @see #getDisability_type() + * @generated + * @ordered + */ + protected Disability_Types disability_type = DISABILITY_TYPE_EDEFAULT; + + /** + * The default value of the '{@link #isIs_affiliated_personnaly_to_social_security() Is affiliated personnaly to social security}' attribute. + * + * + * @see #isIs_affiliated_personnaly_to_social_security() + * @generated + * @ordered + */ + protected static final boolean IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_affiliated_personnaly_to_social_security() Is affiliated personnaly to social security}' attribute. + * + * + * @see #isIs_affiliated_personnaly_to_social_security() + * @generated + * @ordered + */ + protected boolean is_affiliated_personnaly_to_social_security = IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY_EDEFAULT; + + /** + * The default value of the '{@link #getBirth_month() Birth month}' attribute. + * + * + * @see #getBirth_month() + * @generated + * @ordered + */ + protected static final int BIRTH_MONTH_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getBirth_month() Birth month}' attribute. + * + * + * @see #getBirth_month() + * @generated + * @ordered + */ + protected int birth_month = BIRTH_MONTH_EDEFAULT; + + /** + * The default value of the '{@link #getBirth_day() Birth day}' attribute. + * + * + * @see #getBirth_day() + * @generated + * @ordered + */ + protected static final int BIRTH_DAY_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getBirth_day() Birth day}' attribute. + * + * + * @see #getBirth_day() + * @generated + * @ordered + */ + protected int birth_day = BIRTH_DAY_EDEFAULT; + + /** + * The cached value of the '{@link #getExpenses() Expenses}' reference list. + * + * + * @see #getExpenses() + * @generated + * @ordered + */ + protected EList expenses; + + /** + * The default value of the '{@link #isIs_widower() Is widower}' attribute. + * + * + * @see #isIs_widower() + * @generated + * @ordered + */ + protected static final boolean IS_WIDOWER_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_widower() Is widower}' attribute. + * + * + * @see #isIs_widower() + * @generated + * @ordered + */ + protected boolean is_widower = IS_WIDOWER_EDEFAULT; + + /** + * The cached value of the '{@link #getOwns_Address() Owns Address}' containment reference list. + * + * + * @see #getOwns_Address() + * @generated + * @ordered + */ + protected EList
owns_Address; + + /** + * + * + * @generated + */ + protected Physical_PersonImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.PHYSICAL_PERSON; + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_assisting_spouse() { + return is_assisting_spouse; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_assisting_spouse(boolean newIs_assisting_spouse) { + boolean oldIs_assisting_spouse = is_assisting_spouse; + is_assisting_spouse = newIs_assisting_spouse; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__IS_ASSISTING_SPOUSE, oldIs_assisting_spouse, is_assisting_spouse)); + } + + /** + * + * + * @generated + */ + @Override + public String getSSNo() { + return ssNo; + } + + /** + * + * + * @generated + */ + @Override + public void setSSNo(String newSSNo) { + String oldSSNo = ssNo; + ssNo = newSSNo; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__SS_NO, oldSSNo, ssNo)); + } + + /** + * + * + * @generated + */ + @Override + public EList
getAddresses() { + if (addresses == null) { + addresses = new EObjectWithInverseResolvingEList.ManyInverse
(Address.class, this, TaxationPackage.PHYSICAL_PERSON__ADDRESSES, TaxationPackage.ADDRESS__TAX_PAYER); + } + return addresses; + } + + /** + * + * + * @generated + */ + @Override + public int getBirth_year() { + return birth_year; + } + + /** + * + * + * @generated + */ + @Override + public void setBirth_year(int newBirth_year) { + int oldBirth_year = birth_year; + birth_year = newBirth_year; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__BIRTH_YEAR, oldBirth_year, birth_year)); + } + + /** + * + * + * @generated + */ + @Override + public double getDisability_percentage() { + return disability_percentage; + } + + /** + * + * + * @generated + */ + @Override + public void setDisability_percentage(double newDisability_percentage) { + double oldDisability_percentage = disability_percentage; + disability_percentage = newDisability_percentage; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__DISABILITY_PERCENTAGE, oldDisability_percentage, disability_percentage)); + } + + /** + * + * + * @generated + */ + @Override + public Disability_Types getDisability_type() { + return disability_type; + } + + /** + * + * + * @generated + */ + @Override + public void setDisability_type(Disability_Types newDisability_type) { + Disability_Types oldDisability_type = disability_type; + disability_type = newDisability_type == null ? DISABILITY_TYPE_EDEFAULT : newDisability_type; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__DISABILITY_TYPE, oldDisability_type, disability_type)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_affiliated_personnaly_to_social_security() { + return is_affiliated_personnaly_to_social_security; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_affiliated_personnaly_to_social_security(boolean newIs_affiliated_personnaly_to_social_security) { + boolean oldIs_affiliated_personnaly_to_social_security = is_affiliated_personnaly_to_social_security; + is_affiliated_personnaly_to_social_security = newIs_affiliated_personnaly_to_social_security; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY, oldIs_affiliated_personnaly_to_social_security, is_affiliated_personnaly_to_social_security)); + } + + /** + * + * + * @generated + */ + @Override + public int getBirth_month() { + return birth_month; + } + + /** + * + * + * @generated + */ + @Override + public void setBirth_month(int newBirth_month) { + int oldBirth_month = birth_month; + birth_month = newBirth_month; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__BIRTH_MONTH, oldBirth_month, birth_month)); + } + + /** + * + * + * @generated + */ + @Override + public int getBirth_day() { + return birth_day; + } + + /** + * + * + * @generated + */ + @Override + public void setBirth_day(int newBirth_day) { + int oldBirth_day = birth_day; + birth_day = newBirth_day; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__BIRTH_DAY, oldBirth_day, birth_day)); + } + + /** + * + * + * @generated + */ + @Override + public EList getExpenses() { + if (expenses == null) { + expenses = new EObjectWithInverseResolvingEList(Expense.class, this, TaxationPackage.PHYSICAL_PERSON__EXPENSES, TaxationPackage.EXPENSE__BENEFICIARY); + } + return expenses; + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_widower() { + return is_widower; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_widower(boolean newIs_widower) { + boolean oldIs_widower = is_widower; + is_widower = newIs_widower; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__IS_WIDOWER, oldIs_widower, is_widower)); + } + + /** + * + * + * @generated + */ + @Override + public EList
getOwns_Address() { + if (owns_Address == null) { + owns_Address = new EObjectContainmentEList
(Address.class, this, TaxationPackage.PHYSICAL_PERSON__OWNS_ADDRESS); + } + return owns_Address; + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.PHYSICAL_PERSON__ADDRESSES: + return ((InternalEList)(InternalEList)getAddresses()).basicAdd(otherEnd, msgs); + case TaxationPackage.PHYSICAL_PERSON__EXPENSES: + return ((InternalEList)(InternalEList)getExpenses()).basicAdd(otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.PHYSICAL_PERSON__ADDRESSES: + return ((InternalEList)getAddresses()).basicRemove(otherEnd, msgs); + case TaxationPackage.PHYSICAL_PERSON__EXPENSES: + return ((InternalEList)getExpenses()).basicRemove(otherEnd, msgs); + case TaxationPackage.PHYSICAL_PERSON__OWNS_ADDRESS: + return ((InternalEList)getOwns_Address()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.PHYSICAL_PERSON__IS_ASSISTING_SPOUSE: + return isIs_assisting_spouse(); + case TaxationPackage.PHYSICAL_PERSON__SS_NO: + return getSSNo(); + case TaxationPackage.PHYSICAL_PERSON__ADDRESSES: + return getAddresses(); + case TaxationPackage.PHYSICAL_PERSON__BIRTH_YEAR: + return getBirth_year(); + case TaxationPackage.PHYSICAL_PERSON__DISABILITY_PERCENTAGE: + return getDisability_percentage(); + case TaxationPackage.PHYSICAL_PERSON__DISABILITY_TYPE: + return getDisability_type(); + case TaxationPackage.PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY: + return isIs_affiliated_personnaly_to_social_security(); + case TaxationPackage.PHYSICAL_PERSON__BIRTH_MONTH: + return getBirth_month(); + case TaxationPackage.PHYSICAL_PERSON__BIRTH_DAY: + return getBirth_day(); + case TaxationPackage.PHYSICAL_PERSON__EXPENSES: + return getExpenses(); + case TaxationPackage.PHYSICAL_PERSON__IS_WIDOWER: + return isIs_widower(); + case TaxationPackage.PHYSICAL_PERSON__OWNS_ADDRESS: + return getOwns_Address(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.PHYSICAL_PERSON__IS_ASSISTING_SPOUSE: + setIs_assisting_spouse((Boolean)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__SS_NO: + setSSNo((String)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__ADDRESSES: + getAddresses().clear(); + getAddresses().addAll((Collection)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__BIRTH_YEAR: + setBirth_year((Integer)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__DISABILITY_PERCENTAGE: + setDisability_percentage((Double)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__DISABILITY_TYPE: + setDisability_type((Disability_Types)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY: + setIs_affiliated_personnaly_to_social_security((Boolean)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__BIRTH_MONTH: + setBirth_month((Integer)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__BIRTH_DAY: + setBirth_day((Integer)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__EXPENSES: + getExpenses().clear(); + getExpenses().addAll((Collection)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__IS_WIDOWER: + setIs_widower((Boolean)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__OWNS_ADDRESS: + getOwns_Address().clear(); + getOwns_Address().addAll((Collection)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.PHYSICAL_PERSON__IS_ASSISTING_SPOUSE: + setIs_assisting_spouse(IS_ASSISTING_SPOUSE_EDEFAULT); + return; + case TaxationPackage.PHYSICAL_PERSON__SS_NO: + setSSNo(SS_NO_EDEFAULT); + return; + case TaxationPackage.PHYSICAL_PERSON__ADDRESSES: + getAddresses().clear(); + return; + case TaxationPackage.PHYSICAL_PERSON__BIRTH_YEAR: + setBirth_year(BIRTH_YEAR_EDEFAULT); + return; + case TaxationPackage.PHYSICAL_PERSON__DISABILITY_PERCENTAGE: + setDisability_percentage(DISABILITY_PERCENTAGE_EDEFAULT); + return; + case TaxationPackage.PHYSICAL_PERSON__DISABILITY_TYPE: + setDisability_type(DISABILITY_TYPE_EDEFAULT); + return; + case TaxationPackage.PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY: + setIs_affiliated_personnaly_to_social_security(IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY_EDEFAULT); + return; + case TaxationPackage.PHYSICAL_PERSON__BIRTH_MONTH: + setBirth_month(BIRTH_MONTH_EDEFAULT); + return; + case TaxationPackage.PHYSICAL_PERSON__BIRTH_DAY: + setBirth_day(BIRTH_DAY_EDEFAULT); + return; + case TaxationPackage.PHYSICAL_PERSON__EXPENSES: + getExpenses().clear(); + return; + case TaxationPackage.PHYSICAL_PERSON__IS_WIDOWER: + setIs_widower(IS_WIDOWER_EDEFAULT); + return; + case TaxationPackage.PHYSICAL_PERSON__OWNS_ADDRESS: + getOwns_Address().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.PHYSICAL_PERSON__IS_ASSISTING_SPOUSE: + return is_assisting_spouse != IS_ASSISTING_SPOUSE_EDEFAULT; + case TaxationPackage.PHYSICAL_PERSON__SS_NO: + return SS_NO_EDEFAULT == null ? ssNo != null : !SS_NO_EDEFAULT.equals(ssNo); + case TaxationPackage.PHYSICAL_PERSON__ADDRESSES: + return addresses != null && !addresses.isEmpty(); + case TaxationPackage.PHYSICAL_PERSON__BIRTH_YEAR: + return birth_year != BIRTH_YEAR_EDEFAULT; + case TaxationPackage.PHYSICAL_PERSON__DISABILITY_PERCENTAGE: + return disability_percentage != DISABILITY_PERCENTAGE_EDEFAULT; + case TaxationPackage.PHYSICAL_PERSON__DISABILITY_TYPE: + return disability_type != DISABILITY_TYPE_EDEFAULT; + case TaxationPackage.PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY: + return is_affiliated_personnaly_to_social_security != IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY_EDEFAULT; + case TaxationPackage.PHYSICAL_PERSON__BIRTH_MONTH: + return birth_month != BIRTH_MONTH_EDEFAULT; + case TaxationPackage.PHYSICAL_PERSON__BIRTH_DAY: + return birth_day != BIRTH_DAY_EDEFAULT; + case TaxationPackage.PHYSICAL_PERSON__EXPENSES: + return expenses != null && !expenses.isEmpty(); + case TaxationPackage.PHYSICAL_PERSON__IS_WIDOWER: + return is_widower != IS_WIDOWER_EDEFAULT; + case TaxationPackage.PHYSICAL_PERSON__OWNS_ADDRESS: + return owns_Address != null && !owns_Address.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (is_assisting_spouse: "); + result.append(is_assisting_spouse); + result.append(", SSNo: "); + result.append(ssNo); + result.append(", birth_year: "); + result.append(birth_year); + result.append(", disability_percentage: "); + result.append(disability_percentage); + result.append(", disability_type: "); + result.append(disability_type); + result.append(", is_affiliated_personnaly_to_social_security: "); + result.append(is_affiliated_personnaly_to_social_security); + result.append(", birth_month: "); + result.append(birth_month); + result.append(", birth_day: "); + result.append(birth_day); + result.append(", is_widower: "); + result.append(is_widower); + result.append(')'); + return result.toString(); + } + +} //Physical_PersonImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Private_Insurance_and_PlanImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Private_Insurance_and_PlanImpl.java new file mode 100644 index 00000000..dfe39a95 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Private_Insurance_and_PlanImpl.java @@ -0,0 +1,276 @@ +/** + */ +package Taxation.impl; + +import Taxation.Category_of_Private_Insurance_and_Plan; +import Taxation.Private_Insurance_and_Plan; +import Taxation.TaxationPackage; +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Private Insurance and Plan'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.Private_Insurance_and_PlanImpl#getCategory Category}
  • + *
  • {@link Taxation.impl.Private_Insurance_and_PlanImpl#getDuration_of_contract Duration of contract}
  • + *
  • {@link Taxation.impl.Private_Insurance_and_PlanImpl#isIs_private_insurance_and_plan_eligible_for_deduction Is private insurance and plan eligible for deduction}
  • + *
+ * + * @generated + */ +public class Private_Insurance_and_PlanImpl extends Special_Expense_DSImpl implements Private_Insurance_and_Plan { + /** + * The default value of the '{@link #getCategory() Category}' attribute. + * + * + * @see #getCategory() + * @generated + * @ordered + */ + protected static final Category_of_Private_Insurance_and_Plan CATEGORY_EDEFAULT = Category_of_Private_Insurance_and_Plan.PRIVATE_INSURANCE; + + /** + * The cached value of the '{@link #getCategory() Category}' attribute. + * + * + * @see #getCategory() + * @generated + * @ordered + */ + protected Category_of_Private_Insurance_and_Plan category = CATEGORY_EDEFAULT; + + /** + * The default value of the '{@link #getDuration_of_contract() Duration of contract}' attribute. + * + * + * @see #getDuration_of_contract() + * @generated + * @ordered + */ + protected static final int DURATION_OF_CONTRACT_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getDuration_of_contract() Duration of contract}' attribute. + * + * + * @see #getDuration_of_contract() + * @generated + * @ordered + */ + protected int duration_of_contract = DURATION_OF_CONTRACT_EDEFAULT; + + /** + * The default value of the '{@link #isIs_private_insurance_and_plan_eligible_for_deduction() Is private insurance and plan eligible for deduction}' attribute. + * + * + * @see #isIs_private_insurance_and_plan_eligible_for_deduction() + * @generated + * @ordered + */ + protected static final boolean IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_private_insurance_and_plan_eligible_for_deduction() Is private insurance and plan eligible for deduction}' attribute. + * + * + * @see #isIs_private_insurance_and_plan_eligible_for_deduction() + * @generated + * @ordered + */ + protected boolean is_private_insurance_and_plan_eligible_for_deduction = IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION_EDEFAULT; + + /** + * + * + * @generated + */ + protected Private_Insurance_and_PlanImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.PRIVATE_INSURANCE_AND_PLAN; + } + + /** + * + * + * @generated + */ + @Override + public Category_of_Private_Insurance_and_Plan getCategory() { + return category; + } + + /** + * + * + * @generated + */ + @Override + public void setCategory(Category_of_Private_Insurance_and_Plan newCategory) { + Category_of_Private_Insurance_and_Plan oldCategory = category; + category = newCategory == null ? CATEGORY_EDEFAULT : newCategory; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__CATEGORY, oldCategory, category)); + } + + /** + * + * + * @generated + */ + @Override + public int getDuration_of_contract() { + return duration_of_contract; + } + + /** + * + * + * @generated + */ + @Override + public void setDuration_of_contract(int newDuration_of_contract) { + int oldDuration_of_contract = duration_of_contract; + duration_of_contract = newDuration_of_contract; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT, oldDuration_of_contract, duration_of_contract)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_private_insurance_and_plan_eligible_for_deduction() { + return is_private_insurance_and_plan_eligible_for_deduction; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_private_insurance_and_plan_eligible_for_deduction(boolean newIs_private_insurance_and_plan_eligible_for_deduction) { + boolean oldIs_private_insurance_and_plan_eligible_for_deduction = is_private_insurance_and_plan_eligible_for_deduction; + is_private_insurance_and_plan_eligible_for_deduction = newIs_private_insurance_and_plan_eligible_for_deduction; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION, oldIs_private_insurance_and_plan_eligible_for_deduction, is_private_insurance_and_plan_eligible_for_deduction)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__CATEGORY: + return getCategory(); + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT: + return getDuration_of_contract(); + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION: + return isIs_private_insurance_and_plan_eligible_for_deduction(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__CATEGORY: + setCategory((Category_of_Private_Insurance_and_Plan)newValue); + return; + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT: + setDuration_of_contract((Integer)newValue); + return; + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION: + setIs_private_insurance_and_plan_eligible_for_deduction((Boolean)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__CATEGORY: + setCategory(CATEGORY_EDEFAULT); + return; + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT: + setDuration_of_contract(DURATION_OF_CONTRACT_EDEFAULT); + return; + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION: + setIs_private_insurance_and_plan_eligible_for_deduction(IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__CATEGORY: + return category != CATEGORY_EDEFAULT; + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT: + return duration_of_contract != DURATION_OF_CONTRACT_EDEFAULT; + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION: + return is_private_insurance_and_plan_eligible_for_deduction != IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (category: "); + result.append(category); + result.append(", duration_of_contract: "); + result.append(duration_of_contract); + result.append(", is_private_insurance_and_plan_eligible_for_deduction: "); + result.append(is_private_insurance_and_plan_eligible_for_deduction); + result.append(')'); + return result.toString(); + } + +} //Private_Insurance_and_PlanImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Professional_ExpenseImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Professional_ExpenseImpl.java new file mode 100644 index 00000000..5f0ca78b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Professional_ExpenseImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.Professional_Expense; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Professional Expense'. + * + * + * @generated + */ +public class Professional_ExpenseImpl extends ExpenseImpl implements Professional_Expense { + /** + * + * + * @generated + */ + protected Professional_ExpenseImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.PROFESSIONAL_EXPENSE; + } + +} //Professional_ExpenseImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Professional_Expenses_DeductionImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Professional_Expenses_DeductionImpl.java new file mode 100644 index 00000000..38bd5195 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Professional_Expenses_DeductionImpl.java @@ -0,0 +1,39 @@ +/** + */ +package Taxation.impl; + +import Taxation.Professional_Expenses_Deduction; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * + * An implementation of the model object 'Professional Expenses Deduction'. + * + * + * @generated + */ +public class Professional_Expenses_DeductionImpl extends MinimalEObjectImpl.Container implements Professional_Expenses_Deduction { + /** + * + * + * @generated + */ + protected Professional_Expenses_DeductionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.PROFESSIONAL_EXPENSES_DEDUCTION; + } + +} //Professional_Expenses_DeductionImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Rentals_and_Leases_IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Rentals_and_Leases_IncomeImpl.java new file mode 100644 index 00000000..76d97d5f --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Rentals_and_Leases_IncomeImpl.java @@ -0,0 +1,164 @@ +/** + */ +package Taxation.impl; + +import Taxation.Rentals_and_Leases_Income; +import Taxation.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Rentals and Leases Income'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.Rentals_and_Leases_IncomeImpl#isIs_periodic Is periodic}
  • + *
+ * + * @generated + */ +public class Rentals_and_Leases_IncomeImpl extends Income_TypeImpl implements Rentals_and_Leases_Income { + /** + * The default value of the '{@link #isIs_periodic() Is periodic}' attribute. + * + * + * @see #isIs_periodic() + * @generated + * @ordered + */ + protected static final boolean IS_PERIODIC_EDEFAULT = true; + + /** + * The cached value of the '{@link #isIs_periodic() Is periodic}' attribute. + * + * + * @see #isIs_periodic() + * @generated + * @ordered + */ + protected boolean is_periodic = IS_PERIODIC_EDEFAULT; + + /** + * + * + * @generated + */ + protected Rentals_and_Leases_IncomeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.RENTALS_AND_LEASES_INCOME; + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_periodic() { + return is_periodic; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_periodic(boolean newIs_periodic) { + boolean oldIs_periodic = is_periodic; + is_periodic = newIs_periodic; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.RENTALS_AND_LEASES_INCOME__IS_PERIODIC, oldIs_periodic, is_periodic)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.RENTALS_AND_LEASES_INCOME__IS_PERIODIC: + return isIs_periodic(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.RENTALS_AND_LEASES_INCOME__IS_PERIODIC: + setIs_periodic((Boolean)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.RENTALS_AND_LEASES_INCOME__IS_PERIODIC: + setIs_periodic(IS_PERIODIC_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.RENTALS_AND_LEASES_INCOME__IS_PERIODIC: + return is_periodic != IS_PERIODIC_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (is_periodic: "); + result.append(is_periodic); + result.append(')'); + return result.toString(); + } + +} //Rentals_and_Leases_IncomeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Resident_Tax_PayerImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Resident_Tax_PayerImpl.java new file mode 100644 index 00000000..34a1f15c --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Resident_Tax_PayerImpl.java @@ -0,0 +1,36 @@ +/** + */ +package Taxation.impl; + +import Taxation.Resident_Tax_Payer; +import Taxation.TaxationPackage; +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Resident Tax Payer'. + * + * + * @generated + */ +public class Resident_Tax_PayerImpl extends Tax_PayerImpl implements Resident_Tax_Payer { + /** + * + * + * @generated + */ + protected Resident_Tax_PayerImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.RESIDENT_TAX_PAYER; + } + +} //Resident_Tax_PayerImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Special_Expense_DSImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Special_Expense_DSImpl.java new file mode 100644 index 00000000..797c351e --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Special_Expense_DSImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.Special_Expense_DS; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Special Expense DS'. + * + * + * @generated + */ +public class Special_Expense_DSImpl extends ExpenseImpl implements Special_Expense_DS { + /** + * + * + * @generated + */ + protected Special_Expense_DSImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.SPECIAL_EXPENSE_DS; + } + +} //Special_Expense_DSImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Spousal_Expense_ACImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Spousal_Expense_ACImpl.java new file mode 100644 index 00000000..3fcb40f9 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Spousal_Expense_ACImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.Spousal_Expense_AC; +import Taxation.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Spousal Expense AC'. + * + * + * @generated + */ +public class Spousal_Expense_ACImpl extends ExpenseImpl implements Spousal_Expense_AC { + /** + * + * + * @generated + */ + protected Spousal_Expense_ACImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.SPOUSAL_EXPENSE_AC; + } + +} //Spousal_Expense_ACImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_CardImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_CardImpl.java new file mode 100644 index 00000000..68f4f7f9 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_CardImpl.java @@ -0,0 +1,2263 @@ +/** + */ +package Taxation.impl; + +import Taxation.Address; +import Taxation.Income; +import Taxation.Income_Tax_Credit; +import Taxation.Job_Activity; +import Taxation.Tax_Card; +import Taxation.Tax_Card_Type; +import Taxation.Tax_Office; +import Taxation.TaxationPackage; +import Taxation.Town; + +import java.util.Collection; +import java.util.Date; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EDataTypeUniqueEList; +import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'Tax Card'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.Tax_CardImpl#getCard_identifier Card identifier}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getTax_card_type Tax card type}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getTax_office Tax office}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getValid_from_date Valid from date}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getValid_until_date Valid until date}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getPercentage_of_witholding Percentage of witholding}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getTax_payers_name_surname Tax payers name surname}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getTax_payers_partner_name_surname Tax payers partner name surname}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getTax_payers_address Tax payers address}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getJobs_Employer_SSNo Jobs Employer SS No}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getJobs_employers_name Jobs employers name}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getJobs_activity_type Jobs activity type}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getJobs_place_of_work Jobs place of work}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getDeduction_FD_daily Deduction FD daily}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getDeduction_FD_monthly Deduction FD monthly}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getDeduction_AC_daily Deduction AC daily}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getDeduction_AC_monthly Deduction AC monthly}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getDeduction_AC_yearly Deduction AC yearly}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getDeduction_CE_daily Deduction CE daily}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getDeduction_CE_monthly Deduction CE monthly}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getDeduction_CE_yearly Deduction CE yearly}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getDeduction_DS_daily Deduction DS daily}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getDeduction_DS_monthly Deduction DS monthly}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getDeduction_FO_daily Deduction FO daily}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getDeduction_FO_monthly Deduction FO monthly}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getDeduction_FO_yearly Deduction FO yearly}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getCredit_CIS_daily Credit CIS daily}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getCredit_CIS_monthly Credit CIS monthly}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getCredit_CIM_daily Credit CIM daily}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#isValidity Validity}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getIncome_Tax_Credit Income Tax Credit}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getPrevious Previous}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getCurrent_tax_card Current tax card}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getCredit_CIM_yearly Credit CIM yearly}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getDeduction_DS_Alimony_yearly Deduction DS Alimony yearly}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getDeduction_DS_Debt_yearly Deduction DS Debt yearly}
  • + *
  • {@link Taxation.impl.Tax_CardImpl#getIncome Income}
  • + *
+ * + * @generated + */ +public class Tax_CardImpl extends MinimalEObjectImpl.Container implements Tax_Card { + /** + * The default value of the '{@link #getCard_identifier() Card identifier}' attribute. + * + * + * @see #getCard_identifier() + * @generated + * @ordered + */ + protected static final String CARD_IDENTIFIER_EDEFAULT = null; + + /** + * The cached value of the '{@link #getCard_identifier() Card identifier}' attribute. + * + * + * @see #getCard_identifier() + * @generated + * @ordered + */ + protected String card_identifier = CARD_IDENTIFIER_EDEFAULT; + + /** + * The default value of the '{@link #getTax_card_type() Tax card type}' attribute. + * + * + * @see #getTax_card_type() + * @generated + * @ordered + */ + protected static final Tax_Card_Type TAX_CARD_TYPE_EDEFAULT = Tax_Card_Type.PRINCIPAL; + + /** + * The cached value of the '{@link #getTax_card_type() Tax card type}' attribute. + * + * + * @see #getTax_card_type() + * @generated + * @ordered + */ + protected Tax_Card_Type tax_card_type = TAX_CARD_TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getTax_office() Tax office}' attribute. + * + * + * @see #getTax_office() + * @generated + * @ordered + */ + protected static final Tax_Office TAX_OFFICE_EDEFAULT = Tax_Office.RTS_2; + + /** + * The cached value of the '{@link #getTax_office() Tax office}' attribute. + * + * + * @see #getTax_office() + * @generated + * @ordered + */ + protected Tax_Office tax_office = TAX_OFFICE_EDEFAULT; + + /** + * The default value of the '{@link #getValid_from_date() Valid from date}' attribute. + * + * + * @see #getValid_from_date() + * @generated + * @ordered + */ + protected static final Date VALID_FROM_DATE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getValid_from_date() Valid from date}' attribute. + * + * + * @see #getValid_from_date() + * @generated + * @ordered + */ + protected Date valid_from_date = VALID_FROM_DATE_EDEFAULT; + + /** + * The default value of the '{@link #getValid_until_date() Valid until date}' attribute. + * + * + * @see #getValid_until_date() + * @generated + * @ordered + */ + protected static final Date VALID_UNTIL_DATE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getValid_until_date() Valid until date}' attribute. + * + * + * @see #getValid_until_date() + * @generated + * @ordered + */ + protected Date valid_until_date = VALID_UNTIL_DATE_EDEFAULT; + + /** + * The default value of the '{@link #getPercentage_of_witholding() Percentage of witholding}' attribute. + * + * + * @see #getPercentage_of_witholding() + * @generated + * @ordered + */ + protected static final double PERCENTAGE_OF_WITHOLDING_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getPercentage_of_witholding() Percentage of witholding}' attribute. + * + * + * @see #getPercentage_of_witholding() + * @generated + * @ordered + */ + protected double percentage_of_witholding = PERCENTAGE_OF_WITHOLDING_EDEFAULT; + + /** + * The cached value of the '{@link #getTax_payers_name_surname() Tax payers name surname}' attribute list. + * + * + * @see #getTax_payers_name_surname() + * @generated + * @ordered + */ + protected EList tax_payers_name_surname; + + /** + * The cached value of the '{@link #getTax_payers_partner_name_surname() Tax payers partner name surname}' attribute list. + * + * + * @see #getTax_payers_partner_name_surname() + * @generated + * @ordered + */ + protected EList tax_payers_partner_name_surname; + + /** + * The cached value of the '{@link #getTax_payers_address() Tax payers address}' reference. + * + * + * @see #getTax_payers_address() + * @generated + * @ordered + */ + protected Address tax_payers_address; + + /** + * The default value of the '{@link #getJobs_Employer_SSNo() Jobs Employer SS No}' attribute. + * + * + * @see #getJobs_Employer_SSNo() + * @generated + * @ordered + */ + protected static final String JOBS_EMPLOYER_SS_NO_EDEFAULT = null; + + /** + * The cached value of the '{@link #getJobs_Employer_SSNo() Jobs Employer SS No}' attribute. + * + * + * @see #getJobs_Employer_SSNo() + * @generated + * @ordered + */ + protected String jobs_Employer_SSNo = JOBS_EMPLOYER_SS_NO_EDEFAULT; + + /** + * The default value of the '{@link #getJobs_employers_name() Jobs employers name}' attribute. + * + * + * @see #getJobs_employers_name() + * @generated + * @ordered + */ + protected static final String JOBS_EMPLOYERS_NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getJobs_employers_name() Jobs employers name}' attribute. + * + * + * @see #getJobs_employers_name() + * @generated + * @ordered + */ + protected String jobs_employers_name = JOBS_EMPLOYERS_NAME_EDEFAULT; + + /** + * The default value of the '{@link #getJobs_activity_type() Jobs activity type}' attribute. + * + * + * @see #getJobs_activity_type() + * @generated + * @ordered + */ + protected static final Job_Activity JOBS_ACTIVITY_TYPE_EDEFAULT = Job_Activity.SALARY; + + /** + * The cached value of the '{@link #getJobs_activity_type() Jobs activity type}' attribute. + * + * + * @see #getJobs_activity_type() + * @generated + * @ordered + */ + protected Job_Activity jobs_activity_type = JOBS_ACTIVITY_TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getJobs_place_of_work() Jobs place of work}' attribute. + * + * + * @see #getJobs_place_of_work() + * @generated + * @ordered + */ + protected static final Town JOBS_PLACE_OF_WORK_EDEFAULT = Town.LL; + + /** + * The cached value of the '{@link #getJobs_place_of_work() Jobs place of work}' attribute. + * + * + * @see #getJobs_place_of_work() + * @generated + * @ordered + */ + protected Town jobs_place_of_work = JOBS_PLACE_OF_WORK_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_FD_daily() Deduction FD daily}' attribute. + * + * + * @see #getDeduction_FD_daily() + * @generated + * @ordered + */ + protected static final double DEDUCTION_FD_DAILY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_FD_daily() Deduction FD daily}' attribute. + * + * + * @see #getDeduction_FD_daily() + * @generated + * @ordered + */ + protected double deduction_FD_daily = DEDUCTION_FD_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_FD_monthly() Deduction FD monthly}' attribute. + * + * + * @see #getDeduction_FD_monthly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_FD_MONTHLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_FD_monthly() Deduction FD monthly}' attribute. + * + * + * @see #getDeduction_FD_monthly() + * @generated + * @ordered + */ + protected double deduction_FD_monthly = DEDUCTION_FD_MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_AC_daily() Deduction AC daily}' attribute. + * + * + * @see #getDeduction_AC_daily() + * @generated + * @ordered + */ + protected static final double DEDUCTION_AC_DAILY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_AC_daily() Deduction AC daily}' attribute. + * + * + * @see #getDeduction_AC_daily() + * @generated + * @ordered + */ + protected double deduction_AC_daily = DEDUCTION_AC_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_AC_monthly() Deduction AC monthly}' attribute. + * + * + * @see #getDeduction_AC_monthly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_AC_MONTHLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_AC_monthly() Deduction AC monthly}' attribute. + * + * + * @see #getDeduction_AC_monthly() + * @generated + * @ordered + */ + protected double deduction_AC_monthly = DEDUCTION_AC_MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_AC_yearly() Deduction AC yearly}' attribute. + * + * + * @see #getDeduction_AC_yearly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_AC_YEARLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_AC_yearly() Deduction AC yearly}' attribute. + * + * + * @see #getDeduction_AC_yearly() + * @generated + * @ordered + */ + protected double deduction_AC_yearly = DEDUCTION_AC_YEARLY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_CE_daily() Deduction CE daily}' attribute. + * + * + * @see #getDeduction_CE_daily() + * @generated + * @ordered + */ + protected static final double DEDUCTION_CE_DAILY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_CE_daily() Deduction CE daily}' attribute. + * + * + * @see #getDeduction_CE_daily() + * @generated + * @ordered + */ + protected double deduction_CE_daily = DEDUCTION_CE_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_CE_monthly() Deduction CE monthly}' attribute. + * + * + * @see #getDeduction_CE_monthly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_CE_MONTHLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_CE_monthly() Deduction CE monthly}' attribute. + * + * + * @see #getDeduction_CE_monthly() + * @generated + * @ordered + */ + protected double deduction_CE_monthly = DEDUCTION_CE_MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_CE_yearly() Deduction CE yearly}' attribute. + * + * + * @see #getDeduction_CE_yearly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_CE_YEARLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_CE_yearly() Deduction CE yearly}' attribute. + * + * + * @see #getDeduction_CE_yearly() + * @generated + * @ordered + */ + protected double deduction_CE_yearly = DEDUCTION_CE_YEARLY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_DS_daily() Deduction DS daily}' attribute. + * + * + * @see #getDeduction_DS_daily() + * @generated + * @ordered + */ + protected static final double DEDUCTION_DS_DAILY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_DS_daily() Deduction DS daily}' attribute. + * + * + * @see #getDeduction_DS_daily() + * @generated + * @ordered + */ + protected double deduction_DS_daily = DEDUCTION_DS_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_DS_monthly() Deduction DS monthly}' attribute. + * + * + * @see #getDeduction_DS_monthly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_DS_MONTHLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_DS_monthly() Deduction DS monthly}' attribute. + * + * + * @see #getDeduction_DS_monthly() + * @generated + * @ordered + */ + protected double deduction_DS_monthly = DEDUCTION_DS_MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_FO_daily() Deduction FO daily}' attribute. + * + * + * @see #getDeduction_FO_daily() + * @generated + * @ordered + */ + protected static final double DEDUCTION_FO_DAILY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_FO_daily() Deduction FO daily}' attribute. + * + * + * @see #getDeduction_FO_daily() + * @generated + * @ordered + */ + protected double deduction_FO_daily = DEDUCTION_FO_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_FO_monthly() Deduction FO monthly}' attribute. + * + * + * @see #getDeduction_FO_monthly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_FO_MONTHLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_FO_monthly() Deduction FO monthly}' attribute. + * + * + * @see #getDeduction_FO_monthly() + * @generated + * @ordered + */ + protected double deduction_FO_monthly = DEDUCTION_FO_MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_FO_yearly() Deduction FO yearly}' attribute. + * + * + * @see #getDeduction_FO_yearly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_FO_YEARLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_FO_yearly() Deduction FO yearly}' attribute. + * + * + * @see #getDeduction_FO_yearly() + * @generated + * @ordered + */ + protected double deduction_FO_yearly = DEDUCTION_FO_YEARLY_EDEFAULT; + + /** + * The default value of the '{@link #getCredit_CIS_daily() Credit CIS daily}' attribute. + * + * + * @see #getCredit_CIS_daily() + * @generated + * @ordered + */ + protected static final double CREDIT_CIS_DAILY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getCredit_CIS_daily() Credit CIS daily}' attribute. + * + * + * @see #getCredit_CIS_daily() + * @generated + * @ordered + */ + protected double credit_CIS_daily = CREDIT_CIS_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getCredit_CIS_monthly() Credit CIS monthly}' attribute. + * + * + * @see #getCredit_CIS_monthly() + * @generated + * @ordered + */ + protected static final double CREDIT_CIS_MONTHLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getCredit_CIS_monthly() Credit CIS monthly}' attribute. + * + * + * @see #getCredit_CIS_monthly() + * @generated + * @ordered + */ + protected double credit_CIS_monthly = CREDIT_CIS_MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getCredit_CIM_daily() Credit CIM daily}' attribute. + * + * + * @see #getCredit_CIM_daily() + * @generated + * @ordered + */ + protected static final double CREDIT_CIM_DAILY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getCredit_CIM_daily() Credit CIM daily}' attribute. + * + * + * @see #getCredit_CIM_daily() + * @generated + * @ordered + */ + protected double credit_CIM_daily = CREDIT_CIM_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #isValidity() Validity}' attribute. + * + * + * @see #isValidity() + * @generated + * @ordered + */ + protected static final boolean VALIDITY_EDEFAULT = false; + + /** + * The cached value of the '{@link #isValidity() Validity}' attribute. + * + * + * @see #isValidity() + * @generated + * @ordered + */ + protected boolean validity = VALIDITY_EDEFAULT; + + /** + * The cached value of the '{@link #getIncome_Tax_Credit() Income Tax Credit}' reference list. + * + * + * @see #getIncome_Tax_Credit() + * @generated + * @ordered + */ + protected EList income_Tax_Credit; + + /** + * The cached value of the '{@link #getPrevious() Previous}' reference. + * + * + * @see #getPrevious() + * @generated + * @ordered + */ + protected Tax_Card previous; + + /** + * The cached value of the '{@link #getCurrent_tax_card() Current tax card}' reference. + * + * + * @see #getCurrent_tax_card() + * @generated + * @ordered + */ + protected Tax_Card current_tax_card; + + /** + * The default value of the '{@link #getCredit_CIM_yearly() Credit CIM yearly}' attribute. + * + * + * @see #getCredit_CIM_yearly() + * @generated + * @ordered + */ + protected static final double CREDIT_CIM_YEARLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getCredit_CIM_yearly() Credit CIM yearly}' attribute. + * + * + * @see #getCredit_CIM_yearly() + * @generated + * @ordered + */ + protected double credit_CIM_yearly = CREDIT_CIM_YEARLY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_DS_Alimony_yearly() Deduction DS Alimony yearly}' attribute. + * + * + * @see #getDeduction_DS_Alimony_yearly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_DS_ALIMONY_YEARLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_DS_Alimony_yearly() Deduction DS Alimony yearly}' attribute. + * + * + * @see #getDeduction_DS_Alimony_yearly() + * @generated + * @ordered + */ + protected double deduction_DS_Alimony_yearly = DEDUCTION_DS_ALIMONY_YEARLY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_DS_Debt_yearly() Deduction DS Debt yearly}' attribute. + * + * + * @see #getDeduction_DS_Debt_yearly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_DS_DEBT_YEARLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_DS_Debt_yearly() Deduction DS Debt yearly}' attribute. + * + * + * @see #getDeduction_DS_Debt_yearly() + * @generated + * @ordered + */ + protected double deduction_DS_Debt_yearly = DEDUCTION_DS_DEBT_YEARLY_EDEFAULT; + + /** + * + * + * @generated + */ + protected Tax_CardImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.TAX_CARD; + } + + /** + * + * + * @generated + */ + @Override + public String getCard_identifier() { + return card_identifier; + } + + /** + * + * + * @generated + */ + @Override + public void setCard_identifier(String newCard_identifier) { + String oldCard_identifier = card_identifier; + card_identifier = newCard_identifier; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__CARD_IDENTIFIER, oldCard_identifier, card_identifier)); + } + + /** + * + * + * @generated + */ + @Override + public Tax_Card_Type getTax_card_type() { + return tax_card_type; + } + + /** + * + * + * @generated + */ + @Override + public void setTax_card_type(Tax_Card_Type newTax_card_type) { + Tax_Card_Type oldTax_card_type = tax_card_type; + tax_card_type = newTax_card_type == null ? TAX_CARD_TYPE_EDEFAULT : newTax_card_type; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__TAX_CARD_TYPE, oldTax_card_type, tax_card_type)); + } + + /** + * + * + * @generated + */ + @Override + public Tax_Office getTax_office() { + return tax_office; + } + + /** + * + * + * @generated + */ + @Override + public void setTax_office(Tax_Office newTax_office) { + Tax_Office oldTax_office = tax_office; + tax_office = newTax_office == null ? TAX_OFFICE_EDEFAULT : newTax_office; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__TAX_OFFICE, oldTax_office, tax_office)); + } + + /** + * + * + * @generated + */ + @Override + public Date getValid_from_date() { + return valid_from_date; + } + + /** + * + * + * @generated + */ + @Override + public void setValid_from_date(Date newValid_from_date) { + Date oldValid_from_date = valid_from_date; + valid_from_date = newValid_from_date; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__VALID_FROM_DATE, oldValid_from_date, valid_from_date)); + } + + /** + * + * + * @generated + */ + @Override + public Date getValid_until_date() { + return valid_until_date; + } + + /** + * + * + * @generated + */ + @Override + public void setValid_until_date(Date newValid_until_date) { + Date oldValid_until_date = valid_until_date; + valid_until_date = newValid_until_date; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__VALID_UNTIL_DATE, oldValid_until_date, valid_until_date)); + } + + /** + * + * + * @generated + */ + @Override + public double getPercentage_of_witholding() { + return percentage_of_witholding; + } + + /** + * + * + * @generated + */ + @Override + public void setPercentage_of_witholding(double newPercentage_of_witholding) { + double oldPercentage_of_witholding = percentage_of_witholding; + percentage_of_witholding = newPercentage_of_witholding; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__PERCENTAGE_OF_WITHOLDING, oldPercentage_of_witholding, percentage_of_witholding)); + } + + /** + * + * + * @generated + */ + @Override + public EList getTax_payers_name_surname() { + if (tax_payers_name_surname == null) { + tax_payers_name_surname = new EDataTypeUniqueEList(String.class, this, TaxationPackage.TAX_CARD__TAX_PAYERS_NAME_SURNAME); + } + return tax_payers_name_surname; + } + + /** + * + * + * @generated + */ + @Override + public EList getTax_payers_partner_name_surname() { + if (tax_payers_partner_name_surname == null) { + tax_payers_partner_name_surname = new EDataTypeUniqueEList(String.class, this, TaxationPackage.TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME); + } + return tax_payers_partner_name_surname; + } + + /** + * + * + * @generated + */ + @Override + public Address getTax_payers_address() { + if (tax_payers_address != null && tax_payers_address.eIsProxy()) { + InternalEObject oldTax_payers_address = (InternalEObject)tax_payers_address; + tax_payers_address = (Address)eResolveProxy(oldTax_payers_address); + if (tax_payers_address != oldTax_payers_address) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.TAX_CARD__TAX_PAYERS_ADDRESS, oldTax_payers_address, tax_payers_address)); + } + } + return tax_payers_address; + } + + /** + * + * + * @generated + */ + public Address basicGetTax_payers_address() { + return tax_payers_address; + } + + /** + * + * + * @generated + */ + @Override + public void setTax_payers_address(Address newTax_payers_address) { + Address oldTax_payers_address = tax_payers_address; + tax_payers_address = newTax_payers_address; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__TAX_PAYERS_ADDRESS, oldTax_payers_address, tax_payers_address)); + } + + /** + * + * + * @generated + */ + @Override + public String getJobs_Employer_SSNo() { + return jobs_Employer_SSNo; + } + + /** + * + * + * @generated + */ + @Override + public void setJobs_Employer_SSNo(String newJobs_Employer_SSNo) { + String oldJobs_Employer_SSNo = jobs_Employer_SSNo; + jobs_Employer_SSNo = newJobs_Employer_SSNo; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__JOBS_EMPLOYER_SS_NO, oldJobs_Employer_SSNo, jobs_Employer_SSNo)); + } + + /** + * + * + * @generated + */ + @Override + public String getJobs_employers_name() { + return jobs_employers_name; + } + + /** + * + * + * @generated + */ + @Override + public void setJobs_employers_name(String newJobs_employers_name) { + String oldJobs_employers_name = jobs_employers_name; + jobs_employers_name = newJobs_employers_name; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__JOBS_EMPLOYERS_NAME, oldJobs_employers_name, jobs_employers_name)); + } + + /** + * + * + * @generated + */ + @Override + public Job_Activity getJobs_activity_type() { + return jobs_activity_type; + } + + /** + * + * + * @generated + */ + @Override + public void setJobs_activity_type(Job_Activity newJobs_activity_type) { + Job_Activity oldJobs_activity_type = jobs_activity_type; + jobs_activity_type = newJobs_activity_type == null ? JOBS_ACTIVITY_TYPE_EDEFAULT : newJobs_activity_type; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__JOBS_ACTIVITY_TYPE, oldJobs_activity_type, jobs_activity_type)); + } + + /** + * + * + * @generated + */ + @Override + public Town getJobs_place_of_work() { + return jobs_place_of_work; + } + + /** + * + * + * @generated + */ + @Override + public void setJobs_place_of_work(Town newJobs_place_of_work) { + Town oldJobs_place_of_work = jobs_place_of_work; + jobs_place_of_work = newJobs_place_of_work == null ? JOBS_PLACE_OF_WORK_EDEFAULT : newJobs_place_of_work; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__JOBS_PLACE_OF_WORK, oldJobs_place_of_work, jobs_place_of_work)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_FD_daily() { + return deduction_FD_daily; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_FD_daily(double newDeduction_FD_daily) { + double oldDeduction_FD_daily = deduction_FD_daily; + deduction_FD_daily = newDeduction_FD_daily; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_FD_DAILY, oldDeduction_FD_daily, deduction_FD_daily)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_FD_monthly() { + return deduction_FD_monthly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_FD_monthly(double newDeduction_FD_monthly) { + double oldDeduction_FD_monthly = deduction_FD_monthly; + deduction_FD_monthly = newDeduction_FD_monthly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_FD_MONTHLY, oldDeduction_FD_monthly, deduction_FD_monthly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_AC_daily() { + return deduction_AC_daily; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_AC_daily(double newDeduction_AC_daily) { + double oldDeduction_AC_daily = deduction_AC_daily; + deduction_AC_daily = newDeduction_AC_daily; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_AC_DAILY, oldDeduction_AC_daily, deduction_AC_daily)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_AC_monthly() { + return deduction_AC_monthly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_AC_monthly(double newDeduction_AC_monthly) { + double oldDeduction_AC_monthly = deduction_AC_monthly; + deduction_AC_monthly = newDeduction_AC_monthly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_AC_MONTHLY, oldDeduction_AC_monthly, deduction_AC_monthly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_AC_yearly() { + return deduction_AC_yearly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_AC_yearly(double newDeduction_AC_yearly) { + double oldDeduction_AC_yearly = deduction_AC_yearly; + deduction_AC_yearly = newDeduction_AC_yearly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_AC_YEARLY, oldDeduction_AC_yearly, deduction_AC_yearly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_CE_daily() { + return deduction_CE_daily; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_CE_daily(double newDeduction_CE_daily) { + double oldDeduction_CE_daily = deduction_CE_daily; + deduction_CE_daily = newDeduction_CE_daily; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_CE_DAILY, oldDeduction_CE_daily, deduction_CE_daily)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_CE_monthly() { + return deduction_CE_monthly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_CE_monthly(double newDeduction_CE_monthly) { + double oldDeduction_CE_monthly = deduction_CE_monthly; + deduction_CE_monthly = newDeduction_CE_monthly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_CE_MONTHLY, oldDeduction_CE_monthly, deduction_CE_monthly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_CE_yearly() { + return deduction_CE_yearly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_CE_yearly(double newDeduction_CE_yearly) { + double oldDeduction_CE_yearly = deduction_CE_yearly; + deduction_CE_yearly = newDeduction_CE_yearly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_CE_YEARLY, oldDeduction_CE_yearly, deduction_CE_yearly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_DS_daily() { + return deduction_DS_daily; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_DS_daily(double newDeduction_DS_daily) { + double oldDeduction_DS_daily = deduction_DS_daily; + deduction_DS_daily = newDeduction_DS_daily; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_DS_DAILY, oldDeduction_DS_daily, deduction_DS_daily)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_DS_monthly() { + return deduction_DS_monthly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_DS_monthly(double newDeduction_DS_monthly) { + double oldDeduction_DS_monthly = deduction_DS_monthly; + deduction_DS_monthly = newDeduction_DS_monthly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_DS_MONTHLY, oldDeduction_DS_monthly, deduction_DS_monthly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_FO_daily() { + return deduction_FO_daily; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_FO_daily(double newDeduction_FO_daily) { + double oldDeduction_FO_daily = deduction_FO_daily; + deduction_FO_daily = newDeduction_FO_daily; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_FO_DAILY, oldDeduction_FO_daily, deduction_FO_daily)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_FO_monthly() { + return deduction_FO_monthly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_FO_monthly(double newDeduction_FO_monthly) { + double oldDeduction_FO_monthly = deduction_FO_monthly; + deduction_FO_monthly = newDeduction_FO_monthly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_FO_MONTHLY, oldDeduction_FO_monthly, deduction_FO_monthly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_FO_yearly() { + return deduction_FO_yearly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_FO_yearly(double newDeduction_FO_yearly) { + double oldDeduction_FO_yearly = deduction_FO_yearly; + deduction_FO_yearly = newDeduction_FO_yearly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_FO_YEARLY, oldDeduction_FO_yearly, deduction_FO_yearly)); + } + + /** + * + * + * @generated + */ + @Override + public double getCredit_CIS_daily() { + return credit_CIS_daily; + } + + /** + * + * + * @generated + */ + @Override + public void setCredit_CIS_daily(double newCredit_CIS_daily) { + double oldCredit_CIS_daily = credit_CIS_daily; + credit_CIS_daily = newCredit_CIS_daily; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__CREDIT_CIS_DAILY, oldCredit_CIS_daily, credit_CIS_daily)); + } + + /** + * + * + * @generated + */ + @Override + public double getCredit_CIS_monthly() { + return credit_CIS_monthly; + } + + /** + * + * + * @generated + */ + @Override + public void setCredit_CIS_monthly(double newCredit_CIS_monthly) { + double oldCredit_CIS_monthly = credit_CIS_monthly; + credit_CIS_monthly = newCredit_CIS_monthly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__CREDIT_CIS_MONTHLY, oldCredit_CIS_monthly, credit_CIS_monthly)); + } + + /** + * + * + * @generated + */ + @Override + public double getCredit_CIM_daily() { + return credit_CIM_daily; + } + + /** + * + * + * @generated + */ + @Override + public void setCredit_CIM_daily(double newCredit_CIM_daily) { + double oldCredit_CIM_daily = credit_CIM_daily; + credit_CIM_daily = newCredit_CIM_daily; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__CREDIT_CIM_DAILY, oldCredit_CIM_daily, credit_CIM_daily)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isValidity() { + return validity; + } + + /** + * + * + * @generated + */ + @Override + public void setValidity(boolean newValidity) { + boolean oldValidity = validity; + validity = newValidity; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__VALIDITY, oldValidity, validity)); + } + + /** + * + * + * @generated + */ + @Override + public EList getIncome_Tax_Credit() { + if (income_Tax_Credit == null) { + income_Tax_Credit = new EObjectWithInverseResolvingEList(Income_Tax_Credit.class, this, TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT, TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME); + } + return income_Tax_Credit; + } + + /** + * + * + * @generated + */ + @Override + public Tax_Card getPrevious() { + if (previous != null && previous.eIsProxy()) { + InternalEObject oldPrevious = (InternalEObject)previous; + previous = (Tax_Card)eResolveProxy(oldPrevious); + if (previous != oldPrevious) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.TAX_CARD__PREVIOUS, oldPrevious, previous)); + } + } + return previous; + } + + /** + * + * + * @generated + */ + public Tax_Card basicGetPrevious() { + return previous; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetPrevious(Tax_Card newPrevious, NotificationChain msgs) { + Tax_Card oldPrevious = previous; + previous = newPrevious; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__PREVIOUS, oldPrevious, newPrevious); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setPrevious(Tax_Card newPrevious) { + if (newPrevious != previous) { + NotificationChain msgs = null; + if (previous != null) + msgs = ((InternalEObject)previous).eInverseRemove(this, TaxationPackage.TAX_CARD__CURRENT_TAX_CARD, Tax_Card.class, msgs); + if (newPrevious != null) + msgs = ((InternalEObject)newPrevious).eInverseAdd(this, TaxationPackage.TAX_CARD__CURRENT_TAX_CARD, Tax_Card.class, msgs); + msgs = basicSetPrevious(newPrevious, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__PREVIOUS, newPrevious, newPrevious)); + } + + /** + * + * + * @generated + */ + @Override + public Tax_Card getCurrent_tax_card() { + if (current_tax_card != null && current_tax_card.eIsProxy()) { + InternalEObject oldCurrent_tax_card = (InternalEObject)current_tax_card; + current_tax_card = (Tax_Card)eResolveProxy(oldCurrent_tax_card); + if (current_tax_card != oldCurrent_tax_card) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.TAX_CARD__CURRENT_TAX_CARD, oldCurrent_tax_card, current_tax_card)); + } + } + return current_tax_card; + } + + /** + * + * + * @generated + */ + public Tax_Card basicGetCurrent_tax_card() { + return current_tax_card; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetCurrent_tax_card(Tax_Card newCurrent_tax_card, NotificationChain msgs) { + Tax_Card oldCurrent_tax_card = current_tax_card; + current_tax_card = newCurrent_tax_card; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__CURRENT_TAX_CARD, oldCurrent_tax_card, newCurrent_tax_card); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setCurrent_tax_card(Tax_Card newCurrent_tax_card) { + if (newCurrent_tax_card != current_tax_card) { + NotificationChain msgs = null; + if (current_tax_card != null) + msgs = ((InternalEObject)current_tax_card).eInverseRemove(this, TaxationPackage.TAX_CARD__PREVIOUS, Tax_Card.class, msgs); + if (newCurrent_tax_card != null) + msgs = ((InternalEObject)newCurrent_tax_card).eInverseAdd(this, TaxationPackage.TAX_CARD__PREVIOUS, Tax_Card.class, msgs); + msgs = basicSetCurrent_tax_card(newCurrent_tax_card, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__CURRENT_TAX_CARD, newCurrent_tax_card, newCurrent_tax_card)); + } + + /** + * + * + * @generated + */ + @Override + public double getCredit_CIM_yearly() { + return credit_CIM_yearly; + } + + /** + * + * + * @generated + */ + @Override + public void setCredit_CIM_yearly(double newCredit_CIM_yearly) { + double oldCredit_CIM_yearly = credit_CIM_yearly; + credit_CIM_yearly = newCredit_CIM_yearly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__CREDIT_CIM_YEARLY, oldCredit_CIM_yearly, credit_CIM_yearly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_DS_Alimony_yearly() { + return deduction_DS_Alimony_yearly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_DS_Alimony_yearly(double newDeduction_DS_Alimony_yearly) { + double oldDeduction_DS_Alimony_yearly = deduction_DS_Alimony_yearly; + deduction_DS_Alimony_yearly = newDeduction_DS_Alimony_yearly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY, oldDeduction_DS_Alimony_yearly, deduction_DS_Alimony_yearly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_DS_Debt_yearly() { + return deduction_DS_Debt_yearly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_DS_Debt_yearly(double newDeduction_DS_Debt_yearly) { + double oldDeduction_DS_Debt_yearly = deduction_DS_Debt_yearly; + deduction_DS_Debt_yearly = newDeduction_DS_Debt_yearly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_DS_DEBT_YEARLY, oldDeduction_DS_Debt_yearly, deduction_DS_Debt_yearly)); + } + + /** + * + * + * @generated + */ + @Override + public Income getIncome() { + if (eContainerFeatureID() != TaxationPackage.TAX_CARD__INCOME) return null; + return (Income)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetIncome(Income newIncome, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newIncome, TaxationPackage.TAX_CARD__INCOME, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setIncome(Income newIncome) { + if (newIncome != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.TAX_CARD__INCOME && newIncome != null)) { + if (EcoreUtil.isAncestor(this, newIncome)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newIncome != null) + msgs = ((InternalEObject)newIncome).eInverseAdd(this, TaxationPackage.INCOME__TAX_CARD, Income.class, msgs); + msgs = basicSetIncome(newIncome, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__INCOME, newIncome, newIncome)); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT: + return ((InternalEList)(InternalEList)getIncome_Tax_Credit()).basicAdd(otherEnd, msgs); + case TaxationPackage.TAX_CARD__PREVIOUS: + if (previous != null) + msgs = ((InternalEObject)previous).eInverseRemove(this, TaxationPackage.TAX_CARD__CURRENT_TAX_CARD, Tax_Card.class, msgs); + return basicSetPrevious((Tax_Card)otherEnd, msgs); + case TaxationPackage.TAX_CARD__CURRENT_TAX_CARD: + if (current_tax_card != null) + msgs = ((InternalEObject)current_tax_card).eInverseRemove(this, TaxationPackage.TAX_CARD__PREVIOUS, Tax_Card.class, msgs); + return basicSetCurrent_tax_card((Tax_Card)otherEnd, msgs); + case TaxationPackage.TAX_CARD__INCOME: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetIncome((Income)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT: + return ((InternalEList)getIncome_Tax_Credit()).basicRemove(otherEnd, msgs); + case TaxationPackage.TAX_CARD__PREVIOUS: + return basicSetPrevious(null, msgs); + case TaxationPackage.TAX_CARD__CURRENT_TAX_CARD: + return basicSetCurrent_tax_card(null, msgs); + case TaxationPackage.TAX_CARD__INCOME: + return basicSetIncome(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.TAX_CARD__INCOME: + return eInternalContainer().eInverseRemove(this, TaxationPackage.INCOME__TAX_CARD, Income.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.TAX_CARD__CARD_IDENTIFIER: + return getCard_identifier(); + case TaxationPackage.TAX_CARD__TAX_CARD_TYPE: + return getTax_card_type(); + case TaxationPackage.TAX_CARD__TAX_OFFICE: + return getTax_office(); + case TaxationPackage.TAX_CARD__VALID_FROM_DATE: + return getValid_from_date(); + case TaxationPackage.TAX_CARD__VALID_UNTIL_DATE: + return getValid_until_date(); + case TaxationPackage.TAX_CARD__PERCENTAGE_OF_WITHOLDING: + return getPercentage_of_witholding(); + case TaxationPackage.TAX_CARD__TAX_PAYERS_NAME_SURNAME: + return getTax_payers_name_surname(); + case TaxationPackage.TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME: + return getTax_payers_partner_name_surname(); + case TaxationPackage.TAX_CARD__TAX_PAYERS_ADDRESS: + if (resolve) return getTax_payers_address(); + return basicGetTax_payers_address(); + case TaxationPackage.TAX_CARD__JOBS_EMPLOYER_SS_NO: + return getJobs_Employer_SSNo(); + case TaxationPackage.TAX_CARD__JOBS_EMPLOYERS_NAME: + return getJobs_employers_name(); + case TaxationPackage.TAX_CARD__JOBS_ACTIVITY_TYPE: + return getJobs_activity_type(); + case TaxationPackage.TAX_CARD__JOBS_PLACE_OF_WORK: + return getJobs_place_of_work(); + case TaxationPackage.TAX_CARD__DEDUCTION_FD_DAILY: + return getDeduction_FD_daily(); + case TaxationPackage.TAX_CARD__DEDUCTION_FD_MONTHLY: + return getDeduction_FD_monthly(); + case TaxationPackage.TAX_CARD__DEDUCTION_AC_DAILY: + return getDeduction_AC_daily(); + case TaxationPackage.TAX_CARD__DEDUCTION_AC_MONTHLY: + return getDeduction_AC_monthly(); + case TaxationPackage.TAX_CARD__DEDUCTION_AC_YEARLY: + return getDeduction_AC_yearly(); + case TaxationPackage.TAX_CARD__DEDUCTION_CE_DAILY: + return getDeduction_CE_daily(); + case TaxationPackage.TAX_CARD__DEDUCTION_CE_MONTHLY: + return getDeduction_CE_monthly(); + case TaxationPackage.TAX_CARD__DEDUCTION_CE_YEARLY: + return getDeduction_CE_yearly(); + case TaxationPackage.TAX_CARD__DEDUCTION_DS_DAILY: + return getDeduction_DS_daily(); + case TaxationPackage.TAX_CARD__DEDUCTION_DS_MONTHLY: + return getDeduction_DS_monthly(); + case TaxationPackage.TAX_CARD__DEDUCTION_FO_DAILY: + return getDeduction_FO_daily(); + case TaxationPackage.TAX_CARD__DEDUCTION_FO_MONTHLY: + return getDeduction_FO_monthly(); + case TaxationPackage.TAX_CARD__DEDUCTION_FO_YEARLY: + return getDeduction_FO_yearly(); + case TaxationPackage.TAX_CARD__CREDIT_CIS_DAILY: + return getCredit_CIS_daily(); + case TaxationPackage.TAX_CARD__CREDIT_CIS_MONTHLY: + return getCredit_CIS_monthly(); + case TaxationPackage.TAX_CARD__CREDIT_CIM_DAILY: + return getCredit_CIM_daily(); + case TaxationPackage.TAX_CARD__VALIDITY: + return isValidity(); + case TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT: + return getIncome_Tax_Credit(); + case TaxationPackage.TAX_CARD__PREVIOUS: + if (resolve) return getPrevious(); + return basicGetPrevious(); + case TaxationPackage.TAX_CARD__CURRENT_TAX_CARD: + if (resolve) return getCurrent_tax_card(); + return basicGetCurrent_tax_card(); + case TaxationPackage.TAX_CARD__CREDIT_CIM_YEARLY: + return getCredit_CIM_yearly(); + case TaxationPackage.TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY: + return getDeduction_DS_Alimony_yearly(); + case TaxationPackage.TAX_CARD__DEDUCTION_DS_DEBT_YEARLY: + return getDeduction_DS_Debt_yearly(); + case TaxationPackage.TAX_CARD__INCOME: + return getIncome(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.TAX_CARD__CARD_IDENTIFIER: + setCard_identifier((String)newValue); + return; + case TaxationPackage.TAX_CARD__TAX_CARD_TYPE: + setTax_card_type((Tax_Card_Type)newValue); + return; + case TaxationPackage.TAX_CARD__TAX_OFFICE: + setTax_office((Tax_Office)newValue); + return; + case TaxationPackage.TAX_CARD__VALID_FROM_DATE: + setValid_from_date((Date)newValue); + return; + case TaxationPackage.TAX_CARD__VALID_UNTIL_DATE: + setValid_until_date((Date)newValue); + return; + case TaxationPackage.TAX_CARD__PERCENTAGE_OF_WITHOLDING: + setPercentage_of_witholding((Double)newValue); + return; + case TaxationPackage.TAX_CARD__TAX_PAYERS_NAME_SURNAME: + getTax_payers_name_surname().clear(); + getTax_payers_name_surname().addAll((Collection)newValue); + return; + case TaxationPackage.TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME: + getTax_payers_partner_name_surname().clear(); + getTax_payers_partner_name_surname().addAll((Collection)newValue); + return; + case TaxationPackage.TAX_CARD__TAX_PAYERS_ADDRESS: + setTax_payers_address((Address)newValue); + return; + case TaxationPackage.TAX_CARD__JOBS_EMPLOYER_SS_NO: + setJobs_Employer_SSNo((String)newValue); + return; + case TaxationPackage.TAX_CARD__JOBS_EMPLOYERS_NAME: + setJobs_employers_name((String)newValue); + return; + case TaxationPackage.TAX_CARD__JOBS_ACTIVITY_TYPE: + setJobs_activity_type((Job_Activity)newValue); + return; + case TaxationPackage.TAX_CARD__JOBS_PLACE_OF_WORK: + setJobs_place_of_work((Town)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FD_DAILY: + setDeduction_FD_daily((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FD_MONTHLY: + setDeduction_FD_monthly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_AC_DAILY: + setDeduction_AC_daily((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_AC_MONTHLY: + setDeduction_AC_monthly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_AC_YEARLY: + setDeduction_AC_yearly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_CE_DAILY: + setDeduction_CE_daily((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_CE_MONTHLY: + setDeduction_CE_monthly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_CE_YEARLY: + setDeduction_CE_yearly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_DAILY: + setDeduction_DS_daily((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_MONTHLY: + setDeduction_DS_monthly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FO_DAILY: + setDeduction_FO_daily((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FO_MONTHLY: + setDeduction_FO_monthly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FO_YEARLY: + setDeduction_FO_yearly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__CREDIT_CIS_DAILY: + setCredit_CIS_daily((Double)newValue); + return; + case TaxationPackage.TAX_CARD__CREDIT_CIS_MONTHLY: + setCredit_CIS_monthly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__CREDIT_CIM_DAILY: + setCredit_CIM_daily((Double)newValue); + return; + case TaxationPackage.TAX_CARD__VALIDITY: + setValidity((Boolean)newValue); + return; + case TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT: + getIncome_Tax_Credit().clear(); + getIncome_Tax_Credit().addAll((Collection)newValue); + return; + case TaxationPackage.TAX_CARD__PREVIOUS: + setPrevious((Tax_Card)newValue); + return; + case TaxationPackage.TAX_CARD__CURRENT_TAX_CARD: + setCurrent_tax_card((Tax_Card)newValue); + return; + case TaxationPackage.TAX_CARD__CREDIT_CIM_YEARLY: + setCredit_CIM_yearly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY: + setDeduction_DS_Alimony_yearly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_DEBT_YEARLY: + setDeduction_DS_Debt_yearly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__INCOME: + setIncome((Income)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.TAX_CARD__CARD_IDENTIFIER: + setCard_identifier(CARD_IDENTIFIER_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__TAX_CARD_TYPE: + setTax_card_type(TAX_CARD_TYPE_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__TAX_OFFICE: + setTax_office(TAX_OFFICE_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__VALID_FROM_DATE: + setValid_from_date(VALID_FROM_DATE_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__VALID_UNTIL_DATE: + setValid_until_date(VALID_UNTIL_DATE_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__PERCENTAGE_OF_WITHOLDING: + setPercentage_of_witholding(PERCENTAGE_OF_WITHOLDING_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__TAX_PAYERS_NAME_SURNAME: + getTax_payers_name_surname().clear(); + return; + case TaxationPackage.TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME: + getTax_payers_partner_name_surname().clear(); + return; + case TaxationPackage.TAX_CARD__TAX_PAYERS_ADDRESS: + setTax_payers_address((Address)null); + return; + case TaxationPackage.TAX_CARD__JOBS_EMPLOYER_SS_NO: + setJobs_Employer_SSNo(JOBS_EMPLOYER_SS_NO_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__JOBS_EMPLOYERS_NAME: + setJobs_employers_name(JOBS_EMPLOYERS_NAME_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__JOBS_ACTIVITY_TYPE: + setJobs_activity_type(JOBS_ACTIVITY_TYPE_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__JOBS_PLACE_OF_WORK: + setJobs_place_of_work(JOBS_PLACE_OF_WORK_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FD_DAILY: + setDeduction_FD_daily(DEDUCTION_FD_DAILY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FD_MONTHLY: + setDeduction_FD_monthly(DEDUCTION_FD_MONTHLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_AC_DAILY: + setDeduction_AC_daily(DEDUCTION_AC_DAILY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_AC_MONTHLY: + setDeduction_AC_monthly(DEDUCTION_AC_MONTHLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_AC_YEARLY: + setDeduction_AC_yearly(DEDUCTION_AC_YEARLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_CE_DAILY: + setDeduction_CE_daily(DEDUCTION_CE_DAILY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_CE_MONTHLY: + setDeduction_CE_monthly(DEDUCTION_CE_MONTHLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_CE_YEARLY: + setDeduction_CE_yearly(DEDUCTION_CE_YEARLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_DAILY: + setDeduction_DS_daily(DEDUCTION_DS_DAILY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_MONTHLY: + setDeduction_DS_monthly(DEDUCTION_DS_MONTHLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FO_DAILY: + setDeduction_FO_daily(DEDUCTION_FO_DAILY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FO_MONTHLY: + setDeduction_FO_monthly(DEDUCTION_FO_MONTHLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FO_YEARLY: + setDeduction_FO_yearly(DEDUCTION_FO_YEARLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__CREDIT_CIS_DAILY: + setCredit_CIS_daily(CREDIT_CIS_DAILY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__CREDIT_CIS_MONTHLY: + setCredit_CIS_monthly(CREDIT_CIS_MONTHLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__CREDIT_CIM_DAILY: + setCredit_CIM_daily(CREDIT_CIM_DAILY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__VALIDITY: + setValidity(VALIDITY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT: + getIncome_Tax_Credit().clear(); + return; + case TaxationPackage.TAX_CARD__PREVIOUS: + setPrevious((Tax_Card)null); + return; + case TaxationPackage.TAX_CARD__CURRENT_TAX_CARD: + setCurrent_tax_card((Tax_Card)null); + return; + case TaxationPackage.TAX_CARD__CREDIT_CIM_YEARLY: + setCredit_CIM_yearly(CREDIT_CIM_YEARLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY: + setDeduction_DS_Alimony_yearly(DEDUCTION_DS_ALIMONY_YEARLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_DEBT_YEARLY: + setDeduction_DS_Debt_yearly(DEDUCTION_DS_DEBT_YEARLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__INCOME: + setIncome((Income)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.TAX_CARD__CARD_IDENTIFIER: + return CARD_IDENTIFIER_EDEFAULT == null ? card_identifier != null : !CARD_IDENTIFIER_EDEFAULT.equals(card_identifier); + case TaxationPackage.TAX_CARD__TAX_CARD_TYPE: + return tax_card_type != TAX_CARD_TYPE_EDEFAULT; + case TaxationPackage.TAX_CARD__TAX_OFFICE: + return tax_office != TAX_OFFICE_EDEFAULT; + case TaxationPackage.TAX_CARD__VALID_FROM_DATE: + return VALID_FROM_DATE_EDEFAULT == null ? valid_from_date != null : !VALID_FROM_DATE_EDEFAULT.equals(valid_from_date); + case TaxationPackage.TAX_CARD__VALID_UNTIL_DATE: + return VALID_UNTIL_DATE_EDEFAULT == null ? valid_until_date != null : !VALID_UNTIL_DATE_EDEFAULT.equals(valid_until_date); + case TaxationPackage.TAX_CARD__PERCENTAGE_OF_WITHOLDING: + return percentage_of_witholding != PERCENTAGE_OF_WITHOLDING_EDEFAULT; + case TaxationPackage.TAX_CARD__TAX_PAYERS_NAME_SURNAME: + return tax_payers_name_surname != null && !tax_payers_name_surname.isEmpty(); + case TaxationPackage.TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME: + return tax_payers_partner_name_surname != null && !tax_payers_partner_name_surname.isEmpty(); + case TaxationPackage.TAX_CARD__TAX_PAYERS_ADDRESS: + return tax_payers_address != null; + case TaxationPackage.TAX_CARD__JOBS_EMPLOYER_SS_NO: + return JOBS_EMPLOYER_SS_NO_EDEFAULT == null ? jobs_Employer_SSNo != null : !JOBS_EMPLOYER_SS_NO_EDEFAULT.equals(jobs_Employer_SSNo); + case TaxationPackage.TAX_CARD__JOBS_EMPLOYERS_NAME: + return JOBS_EMPLOYERS_NAME_EDEFAULT == null ? jobs_employers_name != null : !JOBS_EMPLOYERS_NAME_EDEFAULT.equals(jobs_employers_name); + case TaxationPackage.TAX_CARD__JOBS_ACTIVITY_TYPE: + return jobs_activity_type != JOBS_ACTIVITY_TYPE_EDEFAULT; + case TaxationPackage.TAX_CARD__JOBS_PLACE_OF_WORK: + return jobs_place_of_work != JOBS_PLACE_OF_WORK_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_FD_DAILY: + return deduction_FD_daily != DEDUCTION_FD_DAILY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_FD_MONTHLY: + return deduction_FD_monthly != DEDUCTION_FD_MONTHLY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_AC_DAILY: + return deduction_AC_daily != DEDUCTION_AC_DAILY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_AC_MONTHLY: + return deduction_AC_monthly != DEDUCTION_AC_MONTHLY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_AC_YEARLY: + return deduction_AC_yearly != DEDUCTION_AC_YEARLY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_CE_DAILY: + return deduction_CE_daily != DEDUCTION_CE_DAILY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_CE_MONTHLY: + return deduction_CE_monthly != DEDUCTION_CE_MONTHLY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_CE_YEARLY: + return deduction_CE_yearly != DEDUCTION_CE_YEARLY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_DAILY: + return deduction_DS_daily != DEDUCTION_DS_DAILY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_MONTHLY: + return deduction_DS_monthly != DEDUCTION_DS_MONTHLY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_FO_DAILY: + return deduction_FO_daily != DEDUCTION_FO_DAILY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_FO_MONTHLY: + return deduction_FO_monthly != DEDUCTION_FO_MONTHLY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_FO_YEARLY: + return deduction_FO_yearly != DEDUCTION_FO_YEARLY_EDEFAULT; + case TaxationPackage.TAX_CARD__CREDIT_CIS_DAILY: + return credit_CIS_daily != CREDIT_CIS_DAILY_EDEFAULT; + case TaxationPackage.TAX_CARD__CREDIT_CIS_MONTHLY: + return credit_CIS_monthly != CREDIT_CIS_MONTHLY_EDEFAULT; + case TaxationPackage.TAX_CARD__CREDIT_CIM_DAILY: + return credit_CIM_daily != CREDIT_CIM_DAILY_EDEFAULT; + case TaxationPackage.TAX_CARD__VALIDITY: + return validity != VALIDITY_EDEFAULT; + case TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT: + return income_Tax_Credit != null && !income_Tax_Credit.isEmpty(); + case TaxationPackage.TAX_CARD__PREVIOUS: + return previous != null; + case TaxationPackage.TAX_CARD__CURRENT_TAX_CARD: + return current_tax_card != null; + case TaxationPackage.TAX_CARD__CREDIT_CIM_YEARLY: + return credit_CIM_yearly != CREDIT_CIM_YEARLY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY: + return deduction_DS_Alimony_yearly != DEDUCTION_DS_ALIMONY_YEARLY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_DEBT_YEARLY: + return deduction_DS_Debt_yearly != DEDUCTION_DS_DEBT_YEARLY_EDEFAULT; + case TaxationPackage.TAX_CARD__INCOME: + return getIncome() != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (card_identifier: "); + result.append(card_identifier); + result.append(", tax_card_type: "); + result.append(tax_card_type); + result.append(", tax_office: "); + result.append(tax_office); + result.append(", valid_from_date: "); + result.append(valid_from_date); + result.append(", valid_until_date: "); + result.append(valid_until_date); + result.append(", percentage_of_witholding: "); + result.append(percentage_of_witholding); + result.append(", tax_payers_name_surname: "); + result.append(tax_payers_name_surname); + result.append(", tax_payers_partner_name_surname: "); + result.append(tax_payers_partner_name_surname); + result.append(", jobs_Employer_SSNo: "); + result.append(jobs_Employer_SSNo); + result.append(", jobs_employers_name: "); + result.append(jobs_employers_name); + result.append(", jobs_activity_type: "); + result.append(jobs_activity_type); + result.append(", jobs_place_of_work: "); + result.append(jobs_place_of_work); + result.append(", deduction_FD_daily: "); + result.append(deduction_FD_daily); + result.append(", deduction_FD_monthly: "); + result.append(deduction_FD_monthly); + result.append(", deduction_AC_daily: "); + result.append(deduction_AC_daily); + result.append(", deduction_AC_monthly: "); + result.append(deduction_AC_monthly); + result.append(", deduction_AC_yearly: "); + result.append(deduction_AC_yearly); + result.append(", deduction_CE_daily: "); + result.append(deduction_CE_daily); + result.append(", deduction_CE_monthly: "); + result.append(deduction_CE_monthly); + result.append(", deduction_CE_yearly: "); + result.append(deduction_CE_yearly); + result.append(", deduction_DS_daily: "); + result.append(deduction_DS_daily); + result.append(", deduction_DS_monthly: "); + result.append(deduction_DS_monthly); + result.append(", deduction_FO_daily: "); + result.append(deduction_FO_daily); + result.append(", deduction_FO_monthly: "); + result.append(deduction_FO_monthly); + result.append(", deduction_FO_yearly: "); + result.append(deduction_FO_yearly); + result.append(", credit_CIS_daily: "); + result.append(credit_CIS_daily); + result.append(", credit_CIS_monthly: "); + result.append(credit_CIS_monthly); + result.append(", credit_CIM_daily: "); + result.append(credit_CIM_daily); + result.append(", validity: "); + result.append(validity); + result.append(", credit_CIM_yearly: "); + result.append(credit_CIM_yearly); + result.append(", deduction_DS_Alimony_yearly: "); + result.append(deduction_DS_Alimony_yearly); + result.append(", deduction_DS_Debt_yearly: "); + result.append(deduction_DS_Debt_yearly); + result.append(')'); + return result.toString(); + } + +} //Tax_CardImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_PayerImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_PayerImpl.java new file mode 100644 index 00000000..7e382d7f --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_PayerImpl.java @@ -0,0 +1,425 @@ +/** + */ +package Taxation.impl; + +import Taxation.Dependent; +import Taxation.FromAgent; +import Taxation.FromLaw; +import Taxation.Income; +import Taxation.Tax_Payer; +import Taxation.TaxationPackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'Tax Payer'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.Tax_PayerImpl#getDependents Dependents}
  • + *
  • {@link Taxation.impl.Tax_PayerImpl#getFrom_agent From agent}
  • + *
  • {@link Taxation.impl.Tax_PayerImpl#getIncomes Incomes}
  • + *
  • {@link Taxation.impl.Tax_PayerImpl#getFrom_law From law}
  • + *
  • {@link Taxation.impl.Tax_PayerImpl#getTaxesDue Taxes Due}
  • + *
+ * + * @generated + */ +public abstract class Tax_PayerImpl extends Physical_PersonImpl implements Tax_Payer { + /** + * The cached value of the '{@link #getDependents() Dependents}' containment reference list. + * + * + * @see #getDependents() + * @generated + * @ordered + */ + protected EList dependents; + + /** + * The cached value of the '{@link #getFrom_agent() From agent}' containment reference. + * + * + * @see #getFrom_agent() + * @generated + * @ordered + */ + protected FromAgent from_agent; + + /** + * The cached value of the '{@link #getIncomes() Incomes}' containment reference list. + * + * + * @see #getIncomes() + * @generated + * @ordered + */ + protected EList incomes; + + /** + * The cached value of the '{@link #getFrom_law() From law}' containment reference. + * + * + * @see #getFrom_law() + * @generated + * @ordered + */ + protected FromLaw from_law; + + /** + * The default value of the '{@link #getTaxesDue() Taxes Due}' attribute. + * + * + * @see #getTaxesDue() + * @generated + * @ordered + */ + protected static final double TAXES_DUE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getTaxesDue() Taxes Due}' attribute. + * + * + * @see #getTaxesDue() + * @generated + * @ordered + */ + protected double taxesDue = TAXES_DUE_EDEFAULT; + + /** + * + * + * @generated + */ + protected Tax_PayerImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.TAX_PAYER; + } + + /** + * + * + * @generated + */ + @Override + public EList getDependents() { + if (dependents == null) { + dependents = new EObjectContainmentWithInverseEList(Dependent.class, this, TaxationPackage.TAX_PAYER__DEPENDENTS, TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON); + } + return dependents; + } + + /** + * + * + * @generated + */ + @Override + public FromAgent getFrom_agent() { + return from_agent; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetFrom_agent(FromAgent newFrom_agent, NotificationChain msgs) { + FromAgent oldFrom_agent = from_agent; + from_agent = newFrom_agent; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_PAYER__FROM_AGENT, oldFrom_agent, newFrom_agent); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setFrom_agent(FromAgent newFrom_agent) { + if (newFrom_agent != from_agent) { + NotificationChain msgs = null; + if (from_agent != null) + msgs = ((InternalEObject)from_agent).eInverseRemove(this, TaxationPackage.FROM_AGENT__TAX_PAYER, FromAgent.class, msgs); + if (newFrom_agent != null) + msgs = ((InternalEObject)newFrom_agent).eInverseAdd(this, TaxationPackage.FROM_AGENT__TAX_PAYER, FromAgent.class, msgs); + msgs = basicSetFrom_agent(newFrom_agent, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_PAYER__FROM_AGENT, newFrom_agent, newFrom_agent)); + } + + /** + * + * + * @generated + */ + @Override + public EList getIncomes() { + if (incomes == null) { + incomes = new EObjectContainmentWithInverseEList(Income.class, this, TaxationPackage.TAX_PAYER__INCOMES, TaxationPackage.INCOME__TAX_PAYER); + } + return incomes; + } + + /** + * + * + * @generated + */ + @Override + public FromLaw getFrom_law() { + return from_law; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetFrom_law(FromLaw newFrom_law, NotificationChain msgs) { + FromLaw oldFrom_law = from_law; + from_law = newFrom_law; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_PAYER__FROM_LAW, oldFrom_law, newFrom_law); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setFrom_law(FromLaw newFrom_law) { + if (newFrom_law != from_law) { + NotificationChain msgs = null; + if (from_law != null) + msgs = ((InternalEObject)from_law).eInverseRemove(this, TaxationPackage.FROM_LAW__TAX_PAYER, FromLaw.class, msgs); + if (newFrom_law != null) + msgs = ((InternalEObject)newFrom_law).eInverseAdd(this, TaxationPackage.FROM_LAW__TAX_PAYER, FromLaw.class, msgs); + msgs = basicSetFrom_law(newFrom_law, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_PAYER__FROM_LAW, newFrom_law, newFrom_law)); + } + + /** + * + * + * @generated + */ + @Override + public double getTaxesDue() { + return taxesDue; + } + + /** + * + * + * @generated + */ + @Override + public void setTaxesDue(double newTaxesDue) { + double oldTaxesDue = taxesDue; + taxesDue = newTaxesDue; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_PAYER__TAXES_DUE, oldTaxesDue, taxesDue)); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.TAX_PAYER__DEPENDENTS: + return ((InternalEList)(InternalEList)getDependents()).basicAdd(otherEnd, msgs); + case TaxationPackage.TAX_PAYER__FROM_AGENT: + if (from_agent != null) + msgs = ((InternalEObject)from_agent).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - TaxationPackage.TAX_PAYER__FROM_AGENT, null, msgs); + return basicSetFrom_agent((FromAgent)otherEnd, msgs); + case TaxationPackage.TAX_PAYER__INCOMES: + return ((InternalEList)(InternalEList)getIncomes()).basicAdd(otherEnd, msgs); + case TaxationPackage.TAX_PAYER__FROM_LAW: + if (from_law != null) + msgs = ((InternalEObject)from_law).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - TaxationPackage.TAX_PAYER__FROM_LAW, null, msgs); + return basicSetFrom_law((FromLaw)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.TAX_PAYER__DEPENDENTS: + return ((InternalEList)getDependents()).basicRemove(otherEnd, msgs); + case TaxationPackage.TAX_PAYER__FROM_AGENT: + return basicSetFrom_agent(null, msgs); + case TaxationPackage.TAX_PAYER__INCOMES: + return ((InternalEList)getIncomes()).basicRemove(otherEnd, msgs); + case TaxationPackage.TAX_PAYER__FROM_LAW: + return basicSetFrom_law(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.TAX_PAYER__DEPENDENTS: + return getDependents(); + case TaxationPackage.TAX_PAYER__FROM_AGENT: + return getFrom_agent(); + case TaxationPackage.TAX_PAYER__INCOMES: + return getIncomes(); + case TaxationPackage.TAX_PAYER__FROM_LAW: + return getFrom_law(); + case TaxationPackage.TAX_PAYER__TAXES_DUE: + return getTaxesDue(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.TAX_PAYER__DEPENDENTS: + getDependents().clear(); + getDependents().addAll((Collection)newValue); + return; + case TaxationPackage.TAX_PAYER__FROM_AGENT: + setFrom_agent((FromAgent)newValue); + return; + case TaxationPackage.TAX_PAYER__INCOMES: + getIncomes().clear(); + getIncomes().addAll((Collection)newValue); + return; + case TaxationPackage.TAX_PAYER__FROM_LAW: + setFrom_law((FromLaw)newValue); + return; + case TaxationPackage.TAX_PAYER__TAXES_DUE: + setTaxesDue((Double)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.TAX_PAYER__DEPENDENTS: + getDependents().clear(); + return; + case TaxationPackage.TAX_PAYER__FROM_AGENT: + setFrom_agent((FromAgent)null); + return; + case TaxationPackage.TAX_PAYER__INCOMES: + getIncomes().clear(); + return; + case TaxationPackage.TAX_PAYER__FROM_LAW: + setFrom_law((FromLaw)null); + return; + case TaxationPackage.TAX_PAYER__TAXES_DUE: + setTaxesDue(TAXES_DUE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.TAX_PAYER__DEPENDENTS: + return dependents != null && !dependents.isEmpty(); + case TaxationPackage.TAX_PAYER__FROM_AGENT: + return from_agent != null; + case TaxationPackage.TAX_PAYER__INCOMES: + return incomes != null && !incomes.isEmpty(); + case TaxationPackage.TAX_PAYER__FROM_LAW: + return from_law != null; + case TaxationPackage.TAX_PAYER__TAXES_DUE: + return taxesDue != TAXES_DUE_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (taxesDue: "); + result.append(taxesDue); + result.append(')'); + return result.toString(); + } + +} //Tax_PayerImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_PropertyImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_PropertyImpl.java new file mode 100644 index 00000000..e1ed46e4 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_PropertyImpl.java @@ -0,0 +1,323 @@ +/** + */ +package Taxation.impl; + +import Taxation.Legal_Union_Record; +import Taxation.Tax_Property; +import Taxation.TaxationPackage; +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EcoreUtil; + +/** + * + * An implementation of the model object 'Tax Property'. + * + *

+ * The following features are implemented: + *

+ *
    + *
  • {@link Taxation.impl.Tax_PropertyImpl#getStarting_year Starting year}
  • + *
  • {@link Taxation.impl.Tax_PropertyImpl#getId10 Id10}
  • + *
  • {@link Taxation.impl.Tax_PropertyImpl#getUnion_record Union record}
  • + *
+ * + * @generated + */ +public class Tax_PropertyImpl extends MinimalEObjectImpl.Container implements Tax_Property { + /** + * The default value of the '{@link #getStarting_year() Starting year}' attribute. + * + * + * @see #getStarting_year() + * @generated + * @ordered + */ + protected static final int STARTING_YEAR_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getStarting_year() Starting year}' attribute. + * + * + * @see #getStarting_year() + * @generated + * @ordered + */ + protected int starting_year = STARTING_YEAR_EDEFAULT; + + /** + * The default value of the '{@link #getId10() Id10}' attribute. + * + * + * @see #getId10() + * @generated + * @ordered + */ + protected static final String ID10_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId10() Id10}' attribute. + * + * + * @see #getId10() + * @generated + * @ordered + */ + protected String id10 = ID10_EDEFAULT; + + /** + * + * + * @generated + */ + protected Tax_PropertyImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.TAX_PROPERTY; + } + + /** + * + * + * @generated + */ + @Override + public int getStarting_year() { + return starting_year; + } + + /** + * + * + * @generated + */ + @Override + public void setStarting_year(int newStarting_year) { + int oldStarting_year = starting_year; + starting_year = newStarting_year; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_PROPERTY__STARTING_YEAR, oldStarting_year, starting_year)); + } + + /** + * + * + * @generated + */ + @Override + public String getId10() { + return id10; + } + + /** + * + * + * @generated + */ + @Override + public void setId10(String newId10) { + String oldId10 = id10; + id10 = newId10; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_PROPERTY__ID10, oldId10, id10)); + } + + /** + * + * + * @generated + */ + @Override + public Legal_Union_Record getUnion_record() { + if (eContainerFeatureID() != TaxationPackage.TAX_PROPERTY__UNION_RECORD) return null; + return (Legal_Union_Record)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetUnion_record(Legal_Union_Record newUnion_record, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newUnion_record, TaxationPackage.TAX_PROPERTY__UNION_RECORD, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setUnion_record(Legal_Union_Record newUnion_record) { + if (newUnion_record != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.TAX_PROPERTY__UNION_RECORD && newUnion_record != null)) { + if (EcoreUtil.isAncestor(this, newUnion_record)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newUnion_record != null) + msgs = ((InternalEObject)newUnion_record).eInverseAdd(this, TaxationPackage.LEGAL_UNION_RECORD__PROPERTIES, Legal_Union_Record.class, msgs); + msgs = basicSetUnion_record(newUnion_record, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_PROPERTY__UNION_RECORD, newUnion_record, newUnion_record)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.TAX_PROPERTY__UNION_RECORD: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetUnion_record((Legal_Union_Record)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.TAX_PROPERTY__UNION_RECORD: + return basicSetUnion_record(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.TAX_PROPERTY__UNION_RECORD: + return eInternalContainer().eInverseRemove(this, TaxationPackage.LEGAL_UNION_RECORD__PROPERTIES, Legal_Union_Record.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.TAX_PROPERTY__STARTING_YEAR: + return getStarting_year(); + case TaxationPackage.TAX_PROPERTY__ID10: + return getId10(); + case TaxationPackage.TAX_PROPERTY__UNION_RECORD: + return getUnion_record(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.TAX_PROPERTY__STARTING_YEAR: + setStarting_year((Integer)newValue); + return; + case TaxationPackage.TAX_PROPERTY__ID10: + setId10((String)newValue); + return; + case TaxationPackage.TAX_PROPERTY__UNION_RECORD: + setUnion_record((Legal_Union_Record)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.TAX_PROPERTY__STARTING_YEAR: + setStarting_year(STARTING_YEAR_EDEFAULT); + return; + case TaxationPackage.TAX_PROPERTY__ID10: + setId10(ID10_EDEFAULT); + return; + case TaxationPackage.TAX_PROPERTY__UNION_RECORD: + setUnion_record((Legal_Union_Record)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.TAX_PROPERTY__STARTING_YEAR: + return starting_year != STARTING_YEAR_EDEFAULT; + case TaxationPackage.TAX_PROPERTY__ID10: + return ID10_EDEFAULT == null ? id10 != null : !ID10_EDEFAULT.equals(id10); + case TaxationPackage.TAX_PROPERTY__UNION_RECORD: + return getUnion_record() != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (starting_year: "); + result.append(starting_year); + result.append(", id10: "); + result.append(id10); + result.append(')'); + return result.toString(); + } + +} //Tax_PropertyImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Taxation.ecore b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Taxation.ecore new file mode 100644 index 00000000..7834561d --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Taxation.ecore @@ -0,0 +1,1257 @@ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + + + + + + + + + + + + + +
+ + + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + +
+ + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + + + + + + + + + + + + + + + +
+ + + + + + + + +
+ + + + +
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + +
+ + + + + + + +
+ + + + +
+ + + + +
+ + + + + +
+ + + + + +
+ + + + + + +
+ + + + +
+ + + + +
+ + + + + + +
+ + + + +
+ + + + + + + + + + + + + + + + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationFactoryImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationFactoryImpl.java new file mode 100644 index 00000000..36f4493c --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationFactoryImpl.java @@ -0,0 +1,1144 @@ +/** + */ +package Taxation.impl; + +import Taxation.*; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EDataType; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.impl.EFactoryImpl; + +import org.eclipse.emf.ecore.plugin.EcorePlugin; + +/** + * + * An implementation of the model Factory. + * + * @generated + */ +public class TaxationFactoryImpl extends EFactoryImpl implements TaxationFactory { + /** + * Creates the default factory implementation. + * + * + * @generated + */ + public static TaxationFactory init() { + try { + TaxationFactory theTaxationFactory = (TaxationFactory)EPackage.Registry.INSTANCE.getEFactory(TaxationPackage.eNS_URI); + if (theTaxationFactory != null) { + return theTaxationFactory; + } + } + catch (Exception exception) { + EcorePlugin.INSTANCE.log(exception); + } + return new TaxationFactoryImpl(); + } + + /** + * Creates an instance of the factory. + * + * + * @generated + */ + public TaxationFactoryImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + public EObject create(EClass eClass) { + switch (eClass.getClassifierID()) { + case TaxationPackage.INCOME_TAX: return createIncome_Tax(); + case TaxationPackage.PHYSICAL_PERSON: return createPhysical_Person(); + case TaxationPackage.ADDRESS: return createAddress(); + case TaxationPackage.EXPENSE: return createExpense(); + case TaxationPackage.DEPENDENT: return createDependent(); + case TaxationPackage.EXTERNAL_ALLOWANCE: return createExternal_Allowance(); + case TaxationPackage.HOUSEHOLD: return createHousehold(); + case TaxationPackage.TAX_PROPERTY: return createTax_Property(); + case TaxationPackage.FROM_AGENT: return createFromAgent(); + case TaxationPackage.TAX_CARD: return createTax_Card(); + case TaxationPackage.INCOME_TAX_CREDIT: return createIncome_Tax_Credit(); + case TaxationPackage.INCOME_DETAIL: return createIncome_Detail(); + case TaxationPackage.FROM_LAW: return createFromLaw(); + case TaxationPackage.FISCAL_ADDRESS: return createFiscal_Address(); + case TaxationPackage.HABITUAL_ADDRESS: return createHabitual_Address(); + case TaxationPackage.MARRIAGE_RECORD: return createMarriage_Record(); + case TaxationPackage.NON_RESIDENT_TAX_PAYER: return createNon_Resident_Tax_Payer(); + case TaxationPackage.PARTNERSHIP_RECORD: return createPartnership_Record(); + case TaxationPackage.RESIDENT_TAX_PAYER: return createResident_Tax_Payer(); + case TaxationPackage.TRADE_AND_BUSINESS_INCOME: return createTrade_and_Business_Income(); + case TaxationPackage.AGRICULTURE_AND_FORESTRY_INCOME: return createAgriculture_and_Forestry_Income(); + case TaxationPackage.PENSIONS_AND_ANNUITIES_INCOME: return createPensions_and_Annuities_Income(); + case TaxationPackage.CAPITAL_AND_INVESTMENTS_INCOME: return createCapital_and_Investments_Income(); + case TaxationPackage.EMPLOYMENT_INCOME: return createEmployment_Income(); + case TaxationPackage.RENTALS_AND_LEASES_INCOME: return createRentals_and_Leases_Income(); + case TaxationPackage.FOREIGN_INCOME: return createForeign_Income(); + case TaxationPackage.LOCAL_INCOME: return createLocal_Income(); + case TaxationPackage.CIM: return createCIM(); + case TaxationPackage.CIP: return createCIP(); + case TaxationPackage.CIS: return createCIS(); + case TaxationPackage.FD: return createFD(); + case TaxationPackage.PROFESSIONAL_EXPENSES_DEDUCTION: return createProfessional_Expenses_Deduction(); + case TaxationPackage.FO: return createFO(); + case TaxationPackage.DS_FOR_PERMANENT_EXPENSE: return createDS_for_Permanent_Expense(); + case TaxationPackage.DS: return createDS(); + case TaxationPackage.DS_FOR_INTEREST_EXPENSE: return createDS_for_Interest_Expense(); + case TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE: return createDS_for_Health_and_Pension_Insurance(); + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN: return createDS_for_Private_Insurance_and_Plan(); + case TaxationPackage.DS_FOR_LOSS_CARRYFORWARD: return createDS_for_Loss_Carryforward(); + case TaxationPackage.DS_FOR_DONATION: return createDS_for_Donation(); + case TaxationPackage.PERMANENT_EXPENSE: return createPermanent_Expense(); + case TaxationPackage.SPECIAL_EXPENSE_DS: return createSpecial_Expense_DS(); + case TaxationPackage.INTEREST_EXPENSE: return createInterest_Expense(); + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN: return createPrivate_Insurance_and_Plan(); + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE: return createHealth_and_Pension_Insurance(); + case TaxationPackage.DONATION: return createDonation(); + case TaxationPackage.LOSS_CARRYFORWARD: return createLoss_Carryforward(); + case TaxationPackage.SPOUSAL_EXPENSE_AC: return createSpousal_Expense_AC(); + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE: return createExtraordinary_Expense_CE(); + case TaxationPackage.TRAVEL_EXPENSE_FD: return createTravel_Expense_FD(); + case TaxationPackage.PROFESSIONAL_EXPENSE: return createProfessional_Expense(); + case TaxationPackage.MISCELLANEOUS_EXPENSE_FO: return createMiscellaneous_Expense_FO(); + default: + throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); + } + } + + /** + * + * + * @generated + */ + @Override + public Object createFromString(EDataType eDataType, String initialValue) { + switch (eDataType.getClassifierID()) { + case TaxationPackage.GRANTOR: + return createGrantorFromString(eDataType, initialValue); + case TaxationPackage.DISABILITY_TYPES: + return createDisability_TypesFromString(eDataType, initialValue); + case TaxationPackage.COUNTRY: + return createCountryFromString(eDataType, initialValue); + case TaxationPackage.TAX_CARD_TYPE: + return createTax_Card_TypeFromString(eDataType, initialValue); + case TaxationPackage.TAX_OFFICE: + return createTax_OfficeFromString(eDataType, initialValue); + case TaxationPackage.TAX_CLASS_CATEGORY: + return createTax_Class_CategoryFromString(eDataType, initialValue); + case TaxationPackage.JOB_ACTIVITY: + return createJob_ActivityFromString(eDataType, initialValue); + case TaxationPackage.TOWN: + return createTownFromString(eDataType, initialValue); + case TaxationPackage.TYPE_OF_RATE: + return createType_of_RateFromString(eDataType, initialValue); + case TaxationPackage.CE_TYPE: + return createCE_TypeFromString(eDataType, initialValue); + case TaxationPackage.EXPENSE_PURPOSE: + return createExpense_PurposeFromString(eDataType, initialValue); + case TaxationPackage.DEPENDENT_TYPE: + return createDependent_TypeFromString(eDataType, initialValue); + case TaxationPackage.SEPARATION_CAUSES: + return createSeparation_CausesFromString(eDataType, initialValue); + case TaxationPackage.CATEGORY_OF_PERMANENT_EXPENSE: + return createCategory_of_Permanent_ExpenseFromString(eDataType, initialValue); + case TaxationPackage.CATEGORY_OF_HEALTH_AND_PENSION_INSURANCES: + return createCategory_of_Health_and_Pension_InsurancesFromString(eDataType, initialValue); + case TaxationPackage.CATEGORY_OF_PRIVATE_INSURANCE_AND_PLAN: + return createCategory_of_Private_Insurance_and_PlanFromString(eDataType, initialValue); + case TaxationPackage.LEGAL_UNION_TYPES: + return createLegal_Union_TypesFromString(eDataType, initialValue); + default: + throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); + } + } + + /** + * + * + * @generated + */ + @Override + public String convertToString(EDataType eDataType, Object instanceValue) { + switch (eDataType.getClassifierID()) { + case TaxationPackage.GRANTOR: + return convertGrantorToString(eDataType, instanceValue); + case TaxationPackage.DISABILITY_TYPES: + return convertDisability_TypesToString(eDataType, instanceValue); + case TaxationPackage.COUNTRY: + return convertCountryToString(eDataType, instanceValue); + case TaxationPackage.TAX_CARD_TYPE: + return convertTax_Card_TypeToString(eDataType, instanceValue); + case TaxationPackage.TAX_OFFICE: + return convertTax_OfficeToString(eDataType, instanceValue); + case TaxationPackage.TAX_CLASS_CATEGORY: + return convertTax_Class_CategoryToString(eDataType, instanceValue); + case TaxationPackage.JOB_ACTIVITY: + return convertJob_ActivityToString(eDataType, instanceValue); + case TaxationPackage.TOWN: + return convertTownToString(eDataType, instanceValue); + case TaxationPackage.TYPE_OF_RATE: + return convertType_of_RateToString(eDataType, instanceValue); + case TaxationPackage.CE_TYPE: + return convertCE_TypeToString(eDataType, instanceValue); + case TaxationPackage.EXPENSE_PURPOSE: + return convertExpense_PurposeToString(eDataType, instanceValue); + case TaxationPackage.DEPENDENT_TYPE: + return convertDependent_TypeToString(eDataType, instanceValue); + case TaxationPackage.SEPARATION_CAUSES: + return convertSeparation_CausesToString(eDataType, instanceValue); + case TaxationPackage.CATEGORY_OF_PERMANENT_EXPENSE: + return convertCategory_of_Permanent_ExpenseToString(eDataType, instanceValue); + case TaxationPackage.CATEGORY_OF_HEALTH_AND_PENSION_INSURANCES: + return convertCategory_of_Health_and_Pension_InsurancesToString(eDataType, instanceValue); + case TaxationPackage.CATEGORY_OF_PRIVATE_INSURANCE_AND_PLAN: + return convertCategory_of_Private_Insurance_and_PlanToString(eDataType, instanceValue); + case TaxationPackage.LEGAL_UNION_TYPES: + return convertLegal_Union_TypesToString(eDataType, instanceValue); + default: + throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); + } + } + + /** + * + * + * @generated + */ + @Override + public Income_Tax createIncome_Tax() { + Income_TaxImpl income_Tax = new Income_TaxImpl(); + return income_Tax; + } + + /** + * + * + * @generated + */ + @Override + public Physical_Person createPhysical_Person() { + Physical_PersonImpl physical_Person = new Physical_PersonImpl(); + return physical_Person; + } + + /** + * + * + * @generated + */ + @Override + public Address createAddress() { + AddressImpl address = new AddressImpl(); + return address; + } + + /** + * + * + * @generated + */ + @Override + public Expense createExpense() { + ExpenseImpl expense = new ExpenseImpl(); + return expense; + } + + /** + * + * + * @generated + */ + @Override + public Dependent createDependent() { + DependentImpl dependent = new DependentImpl(); + return dependent; + } + + /** + * + * + * @generated + */ + @Override + public External_Allowance createExternal_Allowance() { + External_AllowanceImpl external_Allowance = new External_AllowanceImpl(); + return external_Allowance; + } + + /** + * + * + * @generated + */ + @Override + public Household createHousehold() { + HouseholdImpl household = new HouseholdImpl(); + return household; + } + + /** + * + * + * @generated + */ + @Override + public Tax_Property createTax_Property() { + Tax_PropertyImpl tax_Property = new Tax_PropertyImpl(); + return tax_Property; + } + + /** + * + * + * @generated + */ + @Override + public FromAgent createFromAgent() { + FromAgentImpl fromAgent = new FromAgentImpl(); + return fromAgent; + } + + /** + * + * + * @generated + */ + @Override + public Tax_Card createTax_Card() { + Tax_CardImpl tax_Card = new Tax_CardImpl(); + return tax_Card; + } + + /** + * + * + * @generated + */ + @Override + public Income_Tax_Credit createIncome_Tax_Credit() { + Income_Tax_CreditImpl income_Tax_Credit = new Income_Tax_CreditImpl(); + return income_Tax_Credit; + } + + /** + * + * + * @generated + */ + @Override + public Income_Detail createIncome_Detail() { + Income_DetailImpl income_Detail = new Income_DetailImpl(); + return income_Detail; + } + + /** + * + * + * @generated + */ + @Override + public FromLaw createFromLaw() { + FromLawImpl fromLaw = new FromLawImpl(); + return fromLaw; + } + + /** + * + * + * @generated + */ + @Override + public Fiscal_Address createFiscal_Address() { + Fiscal_AddressImpl fiscal_Address = new Fiscal_AddressImpl(); + return fiscal_Address; + } + + /** + * + * + * @generated + */ + @Override + public Habitual_Address createHabitual_Address() { + Habitual_AddressImpl habitual_Address = new Habitual_AddressImpl(); + return habitual_Address; + } + + /** + * + * + * @generated + */ + @Override + public Marriage_Record createMarriage_Record() { + Marriage_RecordImpl marriage_Record = new Marriage_RecordImpl(); + return marriage_Record; + } + + /** + * + * + * @generated + */ + @Override + public Non_Resident_Tax_Payer createNon_Resident_Tax_Payer() { + Non_Resident_Tax_PayerImpl non_Resident_Tax_Payer = new Non_Resident_Tax_PayerImpl(); + return non_Resident_Tax_Payer; + } + + /** + * + * + * @generated + */ + @Override + public Partnership_Record createPartnership_Record() { + Partnership_RecordImpl partnership_Record = new Partnership_RecordImpl(); + return partnership_Record; + } + + /** + * + * + * @generated + */ + @Override + public Resident_Tax_Payer createResident_Tax_Payer() { + Resident_Tax_PayerImpl resident_Tax_Payer = new Resident_Tax_PayerImpl(); + return resident_Tax_Payer; + } + + /** + * + * + * @generated + */ + @Override + public Trade_and_Business_Income createTrade_and_Business_Income() { + Trade_and_Business_IncomeImpl trade_and_Business_Income = new Trade_and_Business_IncomeImpl(); + return trade_and_Business_Income; + } + + /** + * + * + * @generated + */ + @Override + public Agriculture_and_Forestry_Income createAgriculture_and_Forestry_Income() { + Agriculture_and_Forestry_IncomeImpl agriculture_and_Forestry_Income = new Agriculture_and_Forestry_IncomeImpl(); + return agriculture_and_Forestry_Income; + } + + /** + * + * + * @generated + */ + @Override + public Pensions_and_Annuities_Income createPensions_and_Annuities_Income() { + Pensions_and_Annuities_IncomeImpl pensions_and_Annuities_Income = new Pensions_and_Annuities_IncomeImpl(); + return pensions_and_Annuities_Income; + } + + /** + * + * + * @generated + */ + @Override + public Capital_and_Investments_Income createCapital_and_Investments_Income() { + Capital_and_Investments_IncomeImpl capital_and_Investments_Income = new Capital_and_Investments_IncomeImpl(); + return capital_and_Investments_Income; + } + + /** + * + * + * @generated + */ + @Override + public Employment_Income createEmployment_Income() { + Employment_IncomeImpl employment_Income = new Employment_IncomeImpl(); + return employment_Income; + } + + /** + * + * + * @generated + */ + @Override + public Rentals_and_Leases_Income createRentals_and_Leases_Income() { + Rentals_and_Leases_IncomeImpl rentals_and_Leases_Income = new Rentals_and_Leases_IncomeImpl(); + return rentals_and_Leases_Income; + } + + /** + * + * + * @generated + */ + @Override + public Foreign_Income createForeign_Income() { + Foreign_IncomeImpl foreign_Income = new Foreign_IncomeImpl(); + return foreign_Income; + } + + /** + * + * + * @generated + */ + @Override + public Local_Income createLocal_Income() { + Local_IncomeImpl local_Income = new Local_IncomeImpl(); + return local_Income; + } + + /** + * + * + * @generated + */ + @Override + public CIM createCIM() { + CIMImpl cim = new CIMImpl(); + return cim; + } + + /** + * + * + * @generated + */ + @Override + public CIP createCIP() { + CIPImpl cip = new CIPImpl(); + return cip; + } + + /** + * + * + * @generated + */ + @Override + public CIS createCIS() { + CISImpl cis = new CISImpl(); + return cis; + } + + /** + * + * + * @generated + */ + @Override + public FD createFD() { + FDImpl fd = new FDImpl(); + return fd; + } + + /** + * + * + * @generated + */ + @Override + public Professional_Expenses_Deduction createProfessional_Expenses_Deduction() { + Professional_Expenses_DeductionImpl professional_Expenses_Deduction = new Professional_Expenses_DeductionImpl(); + return professional_Expenses_Deduction; + } + + /** + * + * + * @generated + */ + @Override + public FO createFO() { + FOImpl fo = new FOImpl(); + return fo; + } + + /** + * + * + * @generated + */ + @Override + public DS_for_Permanent_Expense createDS_for_Permanent_Expense() { + DS_for_Permanent_ExpenseImpl dS_for_Permanent_Expense = new DS_for_Permanent_ExpenseImpl(); + return dS_for_Permanent_Expense; + } + + /** + * + * + * @generated + */ + @Override + public DS createDS() { + DSImpl ds = new DSImpl(); + return ds; + } + + /** + * + * + * @generated + */ + @Override + public DS_for_Interest_Expense createDS_for_Interest_Expense() { + DS_for_Interest_ExpenseImpl dS_for_Interest_Expense = new DS_for_Interest_ExpenseImpl(); + return dS_for_Interest_Expense; + } + + /** + * + * + * @generated + */ + @Override + public DS_for_Health_and_Pension_Insurance createDS_for_Health_and_Pension_Insurance() { + DS_for_Health_and_Pension_InsuranceImpl dS_for_Health_and_Pension_Insurance = new DS_for_Health_and_Pension_InsuranceImpl(); + return dS_for_Health_and_Pension_Insurance; + } + + /** + * + * + * @generated + */ + @Override + public DS_for_Private_Insurance_and_Plan createDS_for_Private_Insurance_and_Plan() { + DS_for_Private_Insurance_and_PlanImpl dS_for_Private_Insurance_and_Plan = new DS_for_Private_Insurance_and_PlanImpl(); + return dS_for_Private_Insurance_and_Plan; + } + + /** + * + * + * @generated + */ + @Override + public DS_for_Loss_Carryforward createDS_for_Loss_Carryforward() { + DS_for_Loss_CarryforwardImpl dS_for_Loss_Carryforward = new DS_for_Loss_CarryforwardImpl(); + return dS_for_Loss_Carryforward; + } + + /** + * + * + * @generated + */ + @Override + public DS_for_Donation createDS_for_Donation() { + DS_for_DonationImpl dS_for_Donation = new DS_for_DonationImpl(); + return dS_for_Donation; + } + + /** + * + * + * @generated + */ + @Override + public Permanent_Expense createPermanent_Expense() { + Permanent_ExpenseImpl permanent_Expense = new Permanent_ExpenseImpl(); + return permanent_Expense; + } + + /** + * + * + * @generated + */ + @Override + public Special_Expense_DS createSpecial_Expense_DS() { + Special_Expense_DSImpl special_Expense_DS = new Special_Expense_DSImpl(); + return special_Expense_DS; + } + + /** + * + * + * @generated + */ + @Override + public Interest_Expense createInterest_Expense() { + Interest_ExpenseImpl interest_Expense = new Interest_ExpenseImpl(); + return interest_Expense; + } + + /** + * + * + * @generated + */ + @Override + public Private_Insurance_and_Plan createPrivate_Insurance_and_Plan() { + Private_Insurance_and_PlanImpl private_Insurance_and_Plan = new Private_Insurance_and_PlanImpl(); + return private_Insurance_and_Plan; + } + + /** + * + * + * @generated + */ + @Override + public Health_and_Pension_Insurance createHealth_and_Pension_Insurance() { + Health_and_Pension_InsuranceImpl health_and_Pension_Insurance = new Health_and_Pension_InsuranceImpl(); + return health_and_Pension_Insurance; + } + + /** + * + * + * @generated + */ + @Override + public Donation createDonation() { + DonationImpl donation = new DonationImpl(); + return donation; + } + + /** + * + * + * @generated + */ + @Override + public Loss_Carryforward createLoss_Carryforward() { + Loss_CarryforwardImpl loss_Carryforward = new Loss_CarryforwardImpl(); + return loss_Carryforward; + } + + /** + * + * + * @generated + */ + @Override + public Spousal_Expense_AC createSpousal_Expense_AC() { + Spousal_Expense_ACImpl spousal_Expense_AC = new Spousal_Expense_ACImpl(); + return spousal_Expense_AC; + } + + /** + * + * + * @generated + */ + @Override + public Extraordinary_Expense_CE createExtraordinary_Expense_CE() { + Extraordinary_Expense_CEImpl extraordinary_Expense_CE = new Extraordinary_Expense_CEImpl(); + return extraordinary_Expense_CE; + } + + /** + * + * + * @generated + */ + @Override + public Travel_Expense_FD createTravel_Expense_FD() { + Travel_Expense_FDImpl travel_Expense_FD = new Travel_Expense_FDImpl(); + return travel_Expense_FD; + } + + /** + * + * + * @generated + */ + @Override + public Professional_Expense createProfessional_Expense() { + Professional_ExpenseImpl professional_Expense = new Professional_ExpenseImpl(); + return professional_Expense; + } + + /** + * + * + * @generated + */ + @Override + public Miscellaneous_Expense_FO createMiscellaneous_Expense_FO() { + Miscellaneous_Expense_FOImpl miscellaneous_Expense_FO = new Miscellaneous_Expense_FOImpl(); + return miscellaneous_Expense_FO; + } + + /** + * + * + * @generated + */ + public Grantor createGrantorFromString(EDataType eDataType, String initialValue) { + Grantor result = Grantor.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertGrantorToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Disability_Types createDisability_TypesFromString(EDataType eDataType, String initialValue) { + Disability_Types result = Disability_Types.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertDisability_TypesToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Country createCountryFromString(EDataType eDataType, String initialValue) { + Country result = Country.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertCountryToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Tax_Card_Type createTax_Card_TypeFromString(EDataType eDataType, String initialValue) { + Tax_Card_Type result = Tax_Card_Type.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertTax_Card_TypeToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Tax_Office createTax_OfficeFromString(EDataType eDataType, String initialValue) { + Tax_Office result = Tax_Office.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertTax_OfficeToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Tax_Class_Category createTax_Class_CategoryFromString(EDataType eDataType, String initialValue) { + Tax_Class_Category result = Tax_Class_Category.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertTax_Class_CategoryToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Job_Activity createJob_ActivityFromString(EDataType eDataType, String initialValue) { + Job_Activity result = Job_Activity.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertJob_ActivityToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Town createTownFromString(EDataType eDataType, String initialValue) { + Town result = Town.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertTownToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Type_of_Rate createType_of_RateFromString(EDataType eDataType, String initialValue) { + Type_of_Rate result = Type_of_Rate.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertType_of_RateToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public CE_Type createCE_TypeFromString(EDataType eDataType, String initialValue) { + CE_Type result = CE_Type.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertCE_TypeToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Expense_Purpose createExpense_PurposeFromString(EDataType eDataType, String initialValue) { + Expense_Purpose result = Expense_Purpose.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertExpense_PurposeToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Dependent_Type createDependent_TypeFromString(EDataType eDataType, String initialValue) { + Dependent_Type result = Dependent_Type.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertDependent_TypeToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Separation_Causes createSeparation_CausesFromString(EDataType eDataType, String initialValue) { + Separation_Causes result = Separation_Causes.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertSeparation_CausesToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Category_of_Permanent_Expense createCategory_of_Permanent_ExpenseFromString(EDataType eDataType, String initialValue) { + Category_of_Permanent_Expense result = Category_of_Permanent_Expense.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertCategory_of_Permanent_ExpenseToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Category_of_Health_and_Pension_Insurances createCategory_of_Health_and_Pension_InsurancesFromString(EDataType eDataType, String initialValue) { + Category_of_Health_and_Pension_Insurances result = Category_of_Health_and_Pension_Insurances.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertCategory_of_Health_and_Pension_InsurancesToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Category_of_Private_Insurance_and_Plan createCategory_of_Private_Insurance_and_PlanFromString(EDataType eDataType, String initialValue) { + Category_of_Private_Insurance_and_Plan result = Category_of_Private_Insurance_and_Plan.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertCategory_of_Private_Insurance_and_PlanToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Legal_Union_Types createLegal_Union_TypesFromString(EDataType eDataType, String initialValue) { + Legal_Union_Types result = Legal_Union_Types.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertLegal_Union_TypesToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + @Override + public TaxationPackage getTaxationPackage() { + return (TaxationPackage)getEPackage(); + } + + /** + * + * + * @deprecated + * @generated + */ + @Deprecated + public static TaxationPackage getPackage() { + return TaxationPackage.eINSTANCE; + } + +} //TaxationFactoryImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationPackageImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationPackageImpl.java new file mode 100644 index 00000000..61f42b3e --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationPackageImpl.java @@ -0,0 +1,4271 @@ +/** + */ +package Taxation.impl; + +import Taxation.Address; +import Taxation.Agriculture_and_Forestry_Income; +import Taxation.CE_Type; +import Taxation.Capital_and_Investments_Income; +import Taxation.Category_of_Health_and_Pension_Insurances; +import Taxation.Category_of_Permanent_Expense; +import Taxation.Category_of_Private_Insurance_and_Plan; +import Taxation.Constants; +import Taxation.Country; +import Taxation.DS_for_Donation; +import Taxation.DS_for_Health_and_Pension_Insurance; +import Taxation.DS_for_Interest_Expense; +import Taxation.DS_for_Loss_Carryforward; +import Taxation.DS_for_Permanent_Expense; +import Taxation.DS_for_Private_Insurance_and_Plan; +import Taxation.Dependent; +import Taxation.Dependent_Type; +import Taxation.Disability_Types; +import Taxation.Donation; +import Taxation.Employment_Income; +import Taxation.Expense; +import Taxation.Expense_Purpose; +import Taxation.External_Allowance; +import Taxation.Extraordinary_Expense_CE; +import Taxation.Fiscal_Address; +import Taxation.Foreign_Income; +import Taxation.FromAgent; +import Taxation.FromLaw; +import Taxation.Grantor; +import Taxation.Habitual_Address; +import Taxation.Health_and_Pension_Insurance; +import Taxation.Household; +import Taxation.Income; +import Taxation.Income_Detail; +import Taxation.Income_Tax; +import Taxation.Income_Tax_Credit; +import Taxation.Income_Type; +import Taxation.Interest_Expense; +import Taxation.Job_Activity; +import Taxation.Legal_Union_Record; +import Taxation.Legal_Union_Types; +import Taxation.Local_Income; +import Taxation.Loss_Carryforward; +import Taxation.Marriage_Record; +import Taxation.Miscellaneous_Expense_FO; +import Taxation.Non_Resident_Tax_Payer; +import Taxation.Partnership_Record; +import Taxation.Pensions_and_Annuities_Income; +import Taxation.Permanent_Expense; +import Taxation.Physical_Person; +import Taxation.Private_Insurance_and_Plan; +import Taxation.Professional_Expense; +import Taxation.Professional_Expenses_Deduction; +import Taxation.Rentals_and_Leases_Income; +import Taxation.Resident_Tax_Payer; +import Taxation.Separation_Causes; +import Taxation.Special_Expense_DS; +import Taxation.Spousal_Expense_AC; +import Taxation.Tax_Card; +import Taxation.Tax_Card_Type; +import Taxation.Tax_Case; +import Taxation.Tax_Class_Category; +import Taxation.Tax_Office; +import Taxation.Tax_Payer; +import Taxation.Tax_Property; +import Taxation.TaxationFactory; +import Taxation.TaxationPackage; +import Taxation.Town; +import Taxation.Trade_and_Business_Income; +import Taxation.Travel_Expense_FD; +import Taxation.Type_of_Rate; +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EEnum; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +import org.eclipse.emf.ecore.impl.EPackageImpl; + +/** + * + * An implementation of the model Package. + * + * @generated + */ +public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage { + /** + * + * + * @generated + */ + private EClass constantsEClass = null; + + /** + * + * + * @generated + */ + private EClass income_TaxEClass = null; + + /** + * + * + * @generated + */ + private EClass tax_PayerEClass = null; + + /** + * + * + * @generated + */ + private EClass physical_PersonEClass = null; + + /** + * + * + * @generated + */ + private EClass addressEClass = null; + + /** + * + * + * @generated + */ + private EClass expenseEClass = null; + + /** + * + * + * @generated + */ + private EClass dependentEClass = null; + + /** + * + * + * @generated + */ + private EClass external_AllowanceEClass = null; + + /** + * + * + * @generated + */ + private EClass householdEClass = null; + + /** + * + * + * @generated + */ + private EClass legal_Union_RecordEClass = null; + + /** + * + * + * @generated + */ + private EClass tax_PropertyEClass = null; + + /** + * + * + * @generated + */ + private EClass tax_CaseEClass = null; + + /** + * + * + * @generated + */ + private EClass fromAgentEClass = null; + + /** + * + * + * @generated + */ + private EClass incomeEClass = null; + + /** + * + * + * @generated + */ + private EClass income_TypeEClass = null; + + /** + * + * + * @generated + */ + private EClass tax_CardEClass = null; + + /** + * + * + * @generated + */ + private EClass income_Tax_CreditEClass = null; + + /** + * + * + * @generated + */ + private EClass income_DetailEClass = null; + + /** + * + * + * @generated + */ + private EClass fromLawEClass = null; + + /** + * + * + * @generated + */ + private EClass fiscal_AddressEClass = null; + + /** + * + * + * @generated + */ + private EClass habitual_AddressEClass = null; + + /** + * + * + * @generated + */ + private EClass marriage_RecordEClass = null; + + /** + * + * + * @generated + */ + private EClass non_Resident_Tax_PayerEClass = null; + + /** + * + * + * @generated + */ + private EClass partnership_RecordEClass = null; + + /** + * + * + * @generated + */ + private EClass resident_Tax_PayerEClass = null; + + /** + * + * + * @generated + */ + private EClass trade_and_Business_IncomeEClass = null; + + /** + * + * + * @generated + */ + private EClass agriculture_and_Forestry_IncomeEClass = null; + + /** + * + * + * @generated + */ + private EClass pensions_and_Annuities_IncomeEClass = null; + + /** + * + * + * @generated + */ + private EClass capital_and_Investments_IncomeEClass = null; + + /** + * + * + * @generated + */ + private EClass employment_IncomeEClass = null; + + /** + * + * + * @generated + */ + private EClass rentals_and_Leases_IncomeEClass = null; + + /** + * + * + * @generated + */ + private EClass foreign_IncomeEClass = null; + + /** + * + * + * @generated + */ + private EClass local_IncomeEClass = null; + + /** + * + * + * @generated + */ + private EClass cimEClass = null; + + /** + * + * + * @generated + */ + private EClass cipEClass = null; + + /** + * + * + * @generated + */ + private EClass cisEClass = null; + + /** + * + * + * @generated + */ + private EClass fdEClass = null; + + /** + * + * + * @generated + */ + private EClass professional_Expenses_DeductionEClass = null; + + /** + * + * + * @generated + */ + private EClass foEClass = null; + + /** + * + * + * @generated + */ + private EClass dS_for_Permanent_ExpenseEClass = null; + + /** + * + * + * @generated + */ + private EClass dsEClass = null; + + /** + * + * + * @generated + */ + private EClass dS_for_Interest_ExpenseEClass = null; + + /** + * + * + * @generated + */ + private EClass dS_for_Health_and_Pension_InsuranceEClass = null; + + /** + * + * + * @generated + */ + private EClass dS_for_Private_Insurance_and_PlanEClass = null; + + /** + * + * + * @generated + */ + private EClass dS_for_Loss_CarryforwardEClass = null; + + /** + * + * + * @generated + */ + private EClass dS_for_DonationEClass = null; + + /** + * + * + * @generated + */ + private EClass permanent_ExpenseEClass = null; + + /** + * + * + * @generated + */ + private EClass special_Expense_DSEClass = null; + + /** + * + * + * @generated + */ + private EClass interest_ExpenseEClass = null; + + /** + * + * + * @generated + */ + private EClass private_Insurance_and_PlanEClass = null; + + /** + * + * + * @generated + */ + private EClass health_and_Pension_InsuranceEClass = null; + + /** + * + * + * @generated + */ + private EClass donationEClass = null; + + /** + * + * + * @generated + */ + private EClass loss_CarryforwardEClass = null; + + /** + * + * + * @generated + */ + private EClass spousal_Expense_ACEClass = null; + + /** + * + * + * @generated + */ + private EClass extraordinary_Expense_CEEClass = null; + + /** + * + * + * @generated + */ + private EClass travel_Expense_FDEClass = null; + + /** + * + * + * @generated + */ + private EClass professional_ExpenseEClass = null; + + /** + * + * + * @generated + */ + private EClass miscellaneous_Expense_FOEClass = null; + + /** + * + * + * @generated + */ + private EEnum grantorEEnum = null; + + /** + * + * + * @generated + */ + private EEnum disability_TypesEEnum = null; + + /** + * + * + * @generated + */ + private EEnum countryEEnum = null; + + /** + * + * + * @generated + */ + private EEnum tax_Card_TypeEEnum = null; + + /** + * + * + * @generated + */ + private EEnum tax_OfficeEEnum = null; + + /** + * + * + * @generated + */ + private EEnum tax_Class_CategoryEEnum = null; + + /** + * + * + * @generated + */ + private EEnum job_ActivityEEnum = null; + + /** + * + * + * @generated + */ + private EEnum townEEnum = null; + + /** + * + * + * @generated + */ + private EEnum type_of_RateEEnum = null; + + /** + * + * + * @generated + */ + private EEnum cE_TypeEEnum = null; + + /** + * + * + * @generated + */ + private EEnum expense_PurposeEEnum = null; + + /** + * + * + * @generated + */ + private EEnum dependent_TypeEEnum = null; + + /** + * + * + * @generated + */ + private EEnum separation_CausesEEnum = null; + + /** + * + * + * @generated + */ + private EEnum category_of_Permanent_ExpenseEEnum = null; + + /** + * + * + * @generated + */ + private EEnum category_of_Health_and_Pension_InsurancesEEnum = null; + + /** + * + * + * @generated + */ + private EEnum category_of_Private_Insurance_and_PlanEEnum = null; + + /** + * + * + * @generated + */ + private EEnum legal_Union_TypesEEnum = null; + + /** + * Creates an instance of the model Package, registered with + * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package + * package URI value. + *

Note: the correct way to create the package is via the static + * factory method {@link #init init()}, which also performs + * initialization of the package, or returns the registered package, + * if one already exists. + * + * + * @see org.eclipse.emf.ecore.EPackage.Registry + * @see Taxation.TaxationPackage#eNS_URI + * @see #init() + * @generated + */ + private TaxationPackageImpl() { + super(eNS_URI, TaxationFactory.eINSTANCE); + } + + /** + * + * + * @generated + */ + private static boolean isInited = false; + + /** + * Creates, registers, and initializes the Package for this model, and for any others upon which it depends. + * + *

This method is used to initialize {@link TaxationPackage#eINSTANCE} when that field is accessed. + * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. + * + * + * @see #eNS_URI + * @see #createPackageContents() + * @see #initializePackageContents() + * @generated + */ + public static TaxationPackage init() { + if (isInited) return (TaxationPackage)EPackage.Registry.INSTANCE.getEPackage(TaxationPackage.eNS_URI); + + // Obtain or create and register package + Object registeredTaxationPackage = EPackage.Registry.INSTANCE.get(eNS_URI); + TaxationPackageImpl theTaxationPackage = registeredTaxationPackage instanceof TaxationPackageImpl ? (TaxationPackageImpl)registeredTaxationPackage : new TaxationPackageImpl(); + + isInited = true; + + // Create package meta-data objects + theTaxationPackage.createPackageContents(); + + // Initialize created meta-data + theTaxationPackage.initializePackageContents(); + + // Mark meta-data to indicate it can't be changed + theTaxationPackage.freeze(); + + // Update the registry and return the package + EPackage.Registry.INSTANCE.put(TaxationPackage.eNS_URI, theTaxationPackage); + return theTaxationPackage; + } + + /** + * + * + * @generated + */ + @Override + public EClass getConstants() { + return constantsEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MINIMUM_SALARY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(7); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(8); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(9); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(10); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_CIM_DAILY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(11); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_CIM_MONTHLY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(12); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_CIM_YEARLY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(13); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_CIP_DAILY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(14); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_CIP_MONTHLY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(15); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_CIP_YEARLY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(16); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_CIS_DAILY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(17); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_CIS_MONTHLY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(18); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_CIS_YEARLY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(19); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(20); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(21); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(22); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(23); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(24); + } + + /** + * + * + * @generated + */ + @Override + public EClass getIncome_Tax() { + return income_TaxEClass; + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_Tax_TaxPayer() { + return (EReference)income_TaxEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_Tax_amount() { + return (EAttribute)income_TaxEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_Tax_year() { + return (EAttribute)income_TaxEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_Id6() { + return (EAttribute)income_TaxEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EClass getTax_Payer() { + return tax_PayerEClass; + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Payer_Dependents() { + return (EReference)tax_PayerEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Payer_From_agent() { + return (EReference)tax_PayerEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Payer_Incomes() { + return (EReference)tax_PayerEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Payer_From_law() { + return (EReference)tax_PayerEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Payer_TaxesDue() { + return (EAttribute)tax_PayerEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EClass getPhysical_Person() { + return physical_PersonEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPhysical_Person_Is_assisting_spouse() { + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPhysical_Person_SSNo() { + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EReference getPhysical_Person_Addresses() { + return (EReference)physical_PersonEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPhysical_Person_Birth_year() { + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPhysical_Person_Disability_percentage() { + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPhysical_Person_Disability_type() { + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPhysical_Person_Is_affiliated_personnaly_to_social_security() { + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPhysical_Person_Birth_month() { + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(7); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPhysical_Person_Birth_day() { + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(8); + } + + /** + * + * + * @generated + */ + @Override + public EReference getPhysical_Person_Expenses() { + return (EReference)physical_PersonEClass.getEStructuralFeatures().get(9); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPhysical_Person_Is_widower() { + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(10); + } + + /** + * + * + * @generated + */ + @Override + public EReference getPhysical_Person_Owns_Address() { + return (EReference)physical_PersonEClass.getEStructuralFeatures().get(11); + } + + /** + * + * + * @generated + */ + @Override + public EClass getAddress() { + return addressEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getAddress_Country() { + return (EAttribute)addressEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getAddress_Street() { + return (EAttribute)addressEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getAddress_ZipCode() { + return (EAttribute)addressEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getAddress_City() { + return (EAttribute)addressEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getAddress_Id2() { + return (EAttribute)addressEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EReference getAddress_TaxPayer() { + return (EReference)addressEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EClass getExpense() { + return expenseEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExpense_Declared_amount() { + return (EAttribute)expenseEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExpense_Expense_purpose() { + return (EAttribute)expenseEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EReference getExpense_Dependent() { + return (EReference)expenseEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EReference getExpense_From_agent() { + return (EReference)expenseEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EReference getExpense_Income() { + return (EReference)expenseEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExpense_Id4() { + return (EAttribute)expenseEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EReference getExpense_Beneficiary() { + return (EReference)expenseEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EClass getDependent() { + return dependentEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDependent_Dependent_type() { + return (EAttribute)dependentEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EReference getDependent_Responsible_person() { + return (EReference)dependentEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDependent_Continued_studies() { + return (EAttribute)dependentEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EReference getDependent_Allowances() { + return (EReference)dependentEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EReference getDependent_Household() { + return (EReference)dependentEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EReference getDependent_From_agent() { + return (EReference)dependentEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EReference getDependent_Expense() { + return (EReference)dependentEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EClass getExternal_Allowance() { + return external_AllowanceEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExternal_Allowance_Amount() { + return (EAttribute)external_AllowanceEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExternal_Allowance_Grantor() { + return (EAttribute)external_AllowanceEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExternal_Allowance_Starting_year() { + return (EAttribute)external_AllowanceEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExternal_Allowance_Ending_year() { + return (EAttribute)external_AllowanceEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EReference getExternal_Allowance_Reciver() { + return (EReference)external_AllowanceEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExternal_Allowance_Id5() { + return (EAttribute)external_AllowanceEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EReference getExternal_Allowance_Person() { + return (EReference)external_AllowanceEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EClass getHousehold() { + return householdEClass; + } + + /** + * + * + * @generated + */ + @Override + public EReference getHousehold_Parents() { + return (EReference)householdEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getHousehold_Id1() { + return (EAttribute)householdEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EReference getHousehold_Children() { + return (EReference)householdEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EClass getLegal_Union_Record() { + return legal_Union_RecordEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getLegal_Union_Record_Start_year() { + return (EAttribute)legal_Union_RecordEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getLegal_Union_Record_End_year() { + return (EAttribute)legal_Union_RecordEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getLegal_Union_Record_Separation_cause() { + return (EAttribute)legal_Union_RecordEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EReference getLegal_Union_Record_Individual_A() { + return (EReference)legal_Union_RecordEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EReference getLegal_Union_Record_Individual_B() { + return (EReference)legal_Union_RecordEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EReference getLegal_Union_Record_Properties() { + return (EReference)legal_Union_RecordEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getLegal_Union_Record_Mutual_agreement() { + return (EAttribute)legal_Union_RecordEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getLegal_Union_Record_Id9() { + return (EAttribute)legal_Union_RecordEClass.getEStructuralFeatures().get(7); + } + + /** + * + * + * @generated + */ + @Override + public EReference getLegal_Union_Record_Household() { + return (EReference)legal_Union_RecordEClass.getEStructuralFeatures().get(8); + } + + /** + * + * + * @generated + */ + @Override + public EClass getTax_Property() { + return tax_PropertyEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Property_Starting_year() { + return (EAttribute)tax_PropertyEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Property_Id10() { + return (EAttribute)tax_PropertyEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Property_Union_record() { + return (EReference)tax_PropertyEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EClass getTax_Case() { + return tax_CaseEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getFromAgent() { + return fromAgentEClass; + } + + /** + * + * + * @generated + */ + @Override + public EReference getFromAgent_TaxPayer() { + return (EReference)fromAgentEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getFromAgent_Is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care() { + return (EAttribute)fromAgentEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EReference getFromAgent_Expense() { + return (EReference)fromAgentEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getFromAgent_Is_eligible_debt() { + return (EAttribute)fromAgentEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EReference getFromAgent_Dependent() { + return (EReference)fromAgentEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EClass getIncome() { + return incomeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Income_amount() { + return (EAttribute)incomeEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_Income_type() { + return (EReference)incomeEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Start_date_within_taxation_year() { + return (EAttribute)incomeEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Start_date_of_contract() { + return (EAttribute)incomeEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_End_date_within_taxation_year() { + return (EAttribute)incomeEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_Tax_card() { + return (EReference)incomeEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_liability() { + return (EAttribute)incomeEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_TaxPayer() { + return (EReference)incomeEClass.getEStructuralFeatures().get(7); + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_Details() { + return (EReference)incomeEClass.getEStructuralFeatures().get(8); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Num() { + return (EAttribute)incomeEClass.getEStructuralFeatures().get(9); + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_Expenses() { + return (EReference)incomeEClass.getEStructuralFeatures().get(10); + } + + /** + * + * + * @generated + */ + @Override + public EClass getIncome_Type() { + return income_TypeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Type_SubjectToWithholdingTax() { + return (EAttribute)income_TypeEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Type_Id8() { + return (EAttribute)income_TypeEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_Type_Income() { + return (EReference)income_TypeEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EClass getTax_Card() { + return tax_CardEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Card_identifier() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Tax_card_type() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Tax_office() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Valid_from_date() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Valid_until_date() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Percentage_of_witholding() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Tax_payers_name_surname() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Tax_payers_partner_name_surname() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(7); + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Card_Tax_payers_address() { + return (EReference)tax_CardEClass.getEStructuralFeatures().get(8); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Jobs_Employer_SSNo() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(9); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Jobs_employers_name() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(10); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Jobs_activity_type() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(11); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Jobs_place_of_work() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(12); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_FD_daily() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(13); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_FD_monthly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(14); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_AC_daily() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(15); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_AC_monthly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(16); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_AC_yearly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(17); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_CE_daily() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(18); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_CE_monthly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(19); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_CE_yearly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(20); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_DS_daily() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(21); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_DS_monthly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(22); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_FO_daily() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(23); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_FO_monthly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(24); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_FO_yearly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(25); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Credit_CIS_daily() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(26); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Credit_CIS_monthly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(27); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Credit_CIM_daily() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(28); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Validity() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(29); + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Card_Income_Tax_Credit() { + return (EReference)tax_CardEClass.getEStructuralFeatures().get(30); + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Card_Previous() { + return (EReference)tax_CardEClass.getEStructuralFeatures().get(31); + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Card_Current_tax_card() { + return (EReference)tax_CardEClass.getEStructuralFeatures().get(32); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Credit_CIM_yearly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(33); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_DS_Alimony_yearly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(34); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_DS_Debt_yearly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(35); + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Card_Income() { + return (EReference)tax_CardEClass.getEStructuralFeatures().get(36); + } + + /** + * + * + * @generated + */ + @Override + public EClass getIncome_Tax_Credit() { + return income_Tax_CreditEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_Credit_GrantedBy() { + return (EAttribute)income_Tax_CreditEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_Tax_Credit_TaxPayer() { + return (EReference)income_Tax_CreditEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_Credit_Tax_year() { + return (EAttribute)income_Tax_CreditEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_Credit_Yearly() { + return (EAttribute)income_Tax_CreditEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_Credit_Monthly() { + return (EAttribute)income_Tax_CreditEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_Credit_Daily() { + return (EAttribute)income_Tax_CreditEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_Credit_Id7() { + return (EAttribute)income_Tax_CreditEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_Tax_Credit_Taxation_Frame() { + return (EReference)income_Tax_CreditEClass.getEStructuralFeatures().get(7); + } + + /** + * + * + * @generated + */ + @Override + public EClass getIncome_Detail() { + return income_DetailEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Detail_Amount() { + return (EAttribute)income_DetailEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Detail_Is_worked() { + return (EAttribute)income_DetailEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Detail_Distance() { + return (EAttribute)income_DetailEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Detail_Worked_days() { + return (EAttribute)income_DetailEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Detail_Is_contributing_CNS() { + return (EAttribute)income_DetailEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Detail_Id5() { + return (EAttribute)income_DetailEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_Detail_Income() { + return (EReference)income_DetailEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EClass getFromLaw() { + return fromLawEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getFromLaw_Id() { + return (EAttribute)fromLawEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EReference getFromLaw_TaxPayer() { + return (EReference)fromLawEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EClass getFiscal_Address() { + return fiscal_AddressEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getHabitual_Address() { + return habitual_AddressEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getMarriage_Record() { + return marriage_RecordEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getNon_Resident_Tax_Payer() { + return non_Resident_Tax_PayerEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getNon_Resident_Tax_Payer_Is_assimilated_to_resident() { + return (EAttribute)non_Resident_Tax_PayerEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EClass getPartnership_Record() { + return partnership_RecordEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getResident_Tax_Payer() { + return resident_Tax_PayerEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getTrade_and_Business_Income() { + return trade_and_Business_IncomeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getAgriculture_and_Forestry_Income() { + return agriculture_and_Forestry_IncomeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getPensions_and_Annuities_Income() { + return pensions_and_Annuities_IncomeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPensions_and_Annuities_Income_Occasional_payement() { + return (EAttribute)pensions_and_Annuities_IncomeEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EClass getCapital_and_Investments_Income() { + return capital_and_Investments_IncomeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getEmployment_Income() { + return employment_IncomeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getRentals_and_Leases_Income() { + return rentals_and_Leases_IncomeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getRentals_and_Leases_Income_Is_periodic() { + return (EAttribute)rentals_and_Leases_IncomeEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EClass getForeign_Income() { + return foreign_IncomeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getLocal_Income() { + return local_IncomeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getCIM() { + return cimEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getCIP() { + return cipEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getCIS() { + return cisEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getFD() { + return fdEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getFD_Distance_declared_in_january() { + return (EAttribute)fdEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getFD_Calculated_distance() { + return (EAttribute)fdEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EClass getProfessional_Expenses_Deduction() { + return professional_Expenses_DeductionEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getFO() { + return foEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getFO_Rate_type_for_FO() { + return (EAttribute)foEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EClass getDS_for_Permanent_Expense() { + return dS_for_Permanent_ExpenseEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDS_for_Permanent_Expense_Permanent_expense_category() { + return (EAttribute)dS_for_Permanent_ExpenseEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EClass getDS() { + return dsEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDS_Maximum_deductible_amount() { + return (EAttribute)dsEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDS_Id3() { + return (EAttribute)dsEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EClass getDS_for_Interest_Expense() { + return dS_for_Interest_ExpenseEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getDS_for_Health_and_Pension_Insurance() { + return dS_for_Health_and_Pension_InsuranceEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDS_for_Health_and_Pension_Insurance_Insurance_category() { + return (EAttribute)dS_for_Health_and_Pension_InsuranceEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EClass getDS_for_Private_Insurance_and_Plan() { + return dS_for_Private_Insurance_and_PlanEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDS_for_Private_Insurance_and_Plan_Private_insurance_and_plan_category() { + return (EAttribute)dS_for_Private_Insurance_and_PlanEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDS_for_Private_Insurance_and_Plan_Increase_for_life_insurance() { + return (EAttribute)dS_for_Private_Insurance_and_PlanEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_private_insurance() { + return (EAttribute)dS_for_Private_Insurance_and_PlanEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_old_age_pension_plan() { + return (EAttribute)dS_for_Private_Insurance_and_PlanEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EClass getDS_for_Loss_Carryforward() { + return dS_for_Loss_CarryforwardEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getDS_for_Donation() { + return dS_for_DonationEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getPermanent_Expense() { + return permanent_ExpenseEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPermanent_Expense_Category() { + return (EAttribute)permanent_ExpenseEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPermanent_Expense_Is_eligible_for_deduction() { + return (EAttribute)permanent_ExpenseEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EClass getSpecial_Expense_DS() { + return special_Expense_DSEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getInterest_Expense() { + return interest_ExpenseEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getPrivate_Insurance_and_Plan() { + return private_Insurance_and_PlanEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPrivate_Insurance_and_Plan_Category() { + return (EAttribute)private_Insurance_and_PlanEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPrivate_Insurance_and_Plan_Duration_of_contract() { + return (EAttribute)private_Insurance_and_PlanEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPrivate_Insurance_and_Plan_Is_private_insurance_and_plan_eligible_for_deduction() { + return (EAttribute)private_Insurance_and_PlanEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EClass getHealth_and_Pension_Insurance() { + return health_and_Pension_InsuranceEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getHealth_and_Pension_Insurance_Category() { + return (EAttribute)health_and_Pension_InsuranceEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getHealth_and_Pension_Insurance_Is_related_to_additional_salary() { + return (EAttribute)health_and_Pension_InsuranceEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EClass getDonation() { + return donationEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDonation_Beneficiary1() { + return (EAttribute)donationEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDonation_Is_beneficiary_eligible() { + return (EAttribute)donationEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDonation_Is_donation_reported() { + return (EAttribute)donationEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EClass getLoss_Carryforward() { + return loss_CarryforwardEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getLoss_Carryforward_Regular_accountability() { + return (EAttribute)loss_CarryforwardEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getLoss_Carryforward_Compensation_by_other_means() { + return (EAttribute)loss_CarryforwardEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getLoss_Carryforward_Tax_payer_has_inherited_business_ownership() { + return (EAttribute)loss_CarryforwardEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getLoss_Carryforward_Tax_payer_has_been_partner_in_business() { + return (EAttribute)loss_CarryforwardEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EClass getSpousal_Expense_AC() { + return spousal_Expense_ACEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getExtraordinary_Expense_CE() { + return extraordinary_Expense_CEEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExtraordinary_Expense_CE_Thresholded_deduction_percentage() { + return (EAttribute)extraordinary_Expense_CEEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExtraordinary_Expense_CE_Ce_type() { + return (EAttribute)extraordinary_Expense_CEEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EClass getTravel_Expense_FD() { + return travel_Expense_FDEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getProfessional_Expense() { + return professional_ExpenseEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getMiscellaneous_Expense_FO() { + return miscellaneous_Expense_FOEClass; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getGrantor() { + return grantorEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getDisability_Types() { + return disability_TypesEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getCountry() { + return countryEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getTax_Card_Type() { + return tax_Card_TypeEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getTax_Office() { + return tax_OfficeEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getTax_Class_Category() { + return tax_Class_CategoryEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getJob_Activity() { + return job_ActivityEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getTown() { + return townEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getType_of_Rate() { + return type_of_RateEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getCE_Type() { + return cE_TypeEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getExpense_Purpose() { + return expense_PurposeEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getDependent_Type() { + return dependent_TypeEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getSeparation_Causes() { + return separation_CausesEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getCategory_of_Permanent_Expense() { + return category_of_Permanent_ExpenseEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getCategory_of_Health_and_Pension_Insurances() { + return category_of_Health_and_Pension_InsurancesEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getCategory_of_Private_Insurance_and_Plan() { + return category_of_Private_Insurance_and_PlanEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getLegal_Union_Types() { + return legal_Union_TypesEEnum; + } + + /** + * + * + * @generated + */ + @Override + public TaxationFactory getTaxationFactory() { + return (TaxationFactory)getEFactoryInstance(); + } + + /** + * + * + * @generated + */ + private boolean isCreated = false; + + /** + * Creates the meta-model objects for the package. This method is + * guarded to have no affect on any invocation but its first. + * + * + * @generated + */ + public void createPackageContents() { + if (isCreated) return; + isCreated = true; + + // Create classes and their features + constantsEClass = createEClass(CONSTANTS); + createEAttribute(constantsEClass, CONSTANTS__MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD); + createEAttribute(constantsEClass, CONSTANTS__MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE); + createEAttribute(constantsEClass, CONSTANTS__MINIMUM_SALARY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION); + createEAttribute(constantsEClass, CONSTANTS__MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS); + createEAttribute(constantsEClass, CONSTANTS__MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS); + createEAttribute(constantsEClass, CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC); + createEAttribute(constantsEClass, CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE); + createEAttribute(constantsEClass, CONSTANTS__MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION); + createEAttribute(constantsEClass, CONSTANTS__MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION); + createEAttribute(constantsEClass, CONSTANTS__MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_CIM_DAILY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_CIM_MONTHLY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_CIM_YEARLY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_CIP_DAILY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_CIP_MONTHLY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_CIP_YEARLY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_CIS_DAILY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_CIS_MONTHLY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_CIS_YEARLY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT); + createEAttribute(constantsEClass, CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE); + createEAttribute(constantsEClass, CONSTANTS__DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE); + createEAttribute(constantsEClass, CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE); + + income_TaxEClass = createEClass(INCOME_TAX); + createEReference(income_TaxEClass, INCOME_TAX__TAX_PAYER); + createEAttribute(income_TaxEClass, INCOME_TAX__TAX_AMOUNT); + createEAttribute(income_TaxEClass, INCOME_TAX__TAX_YEAR); + createEAttribute(income_TaxEClass, INCOME_TAX__ID6); + + tax_PayerEClass = createEClass(TAX_PAYER); + createEReference(tax_PayerEClass, TAX_PAYER__DEPENDENTS); + createEReference(tax_PayerEClass, TAX_PAYER__FROM_AGENT); + createEReference(tax_PayerEClass, TAX_PAYER__INCOMES); + createEReference(tax_PayerEClass, TAX_PAYER__FROM_LAW); + createEAttribute(tax_PayerEClass, TAX_PAYER__TAXES_DUE); + + physical_PersonEClass = createEClass(PHYSICAL_PERSON); + createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__IS_ASSISTING_SPOUSE); + createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__SS_NO); + createEReference(physical_PersonEClass, PHYSICAL_PERSON__ADDRESSES); + createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__BIRTH_YEAR); + createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__DISABILITY_PERCENTAGE); + createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__DISABILITY_TYPE); + createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY); + createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__BIRTH_MONTH); + createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__BIRTH_DAY); + createEReference(physical_PersonEClass, PHYSICAL_PERSON__EXPENSES); + createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__IS_WIDOWER); + createEReference(physical_PersonEClass, PHYSICAL_PERSON__OWNS_ADDRESS); + + addressEClass = createEClass(ADDRESS); + createEAttribute(addressEClass, ADDRESS__COUNTRY); + createEAttribute(addressEClass, ADDRESS__STREET); + createEAttribute(addressEClass, ADDRESS__ZIP_CODE); + createEAttribute(addressEClass, ADDRESS__CITY); + createEAttribute(addressEClass, ADDRESS__ID2); + createEReference(addressEClass, ADDRESS__TAX_PAYER); + + expenseEClass = createEClass(EXPENSE); + createEAttribute(expenseEClass, EXPENSE__DECLARED_AMOUNT); + createEAttribute(expenseEClass, EXPENSE__EXPENSE_PURPOSE); + createEReference(expenseEClass, EXPENSE__DEPENDENT); + createEReference(expenseEClass, EXPENSE__FROM_AGENT); + createEReference(expenseEClass, EXPENSE__INCOME); + createEAttribute(expenseEClass, EXPENSE__ID4); + createEReference(expenseEClass, EXPENSE__BENEFICIARY); + + dependentEClass = createEClass(DEPENDENT); + createEAttribute(dependentEClass, DEPENDENT__DEPENDENT_TYPE); + createEReference(dependentEClass, DEPENDENT__RESPONSIBLE_PERSON); + createEAttribute(dependentEClass, DEPENDENT__CONTINUED_STUDIES); + createEReference(dependentEClass, DEPENDENT__ALLOWANCES); + createEReference(dependentEClass, DEPENDENT__HOUSEHOLD); + createEReference(dependentEClass, DEPENDENT__FROM_AGENT); + createEReference(dependentEClass, DEPENDENT__EXPENSE); + + external_AllowanceEClass = createEClass(EXTERNAL_ALLOWANCE); + createEAttribute(external_AllowanceEClass, EXTERNAL_ALLOWANCE__AMOUNT); + createEAttribute(external_AllowanceEClass, EXTERNAL_ALLOWANCE__GRANTOR); + createEAttribute(external_AllowanceEClass, EXTERNAL_ALLOWANCE__STARTING_YEAR); + createEAttribute(external_AllowanceEClass, EXTERNAL_ALLOWANCE__ENDING_YEAR); + createEReference(external_AllowanceEClass, EXTERNAL_ALLOWANCE__RECIVER); + createEAttribute(external_AllowanceEClass, EXTERNAL_ALLOWANCE__ID5); + createEReference(external_AllowanceEClass, EXTERNAL_ALLOWANCE__PERSON); + + householdEClass = createEClass(HOUSEHOLD); + createEReference(householdEClass, HOUSEHOLD__PARENTS); + createEAttribute(householdEClass, HOUSEHOLD__ID1); + createEReference(householdEClass, HOUSEHOLD__CHILDREN); + + legal_Union_RecordEClass = createEClass(LEGAL_UNION_RECORD); + createEAttribute(legal_Union_RecordEClass, LEGAL_UNION_RECORD__START_YEAR); + createEAttribute(legal_Union_RecordEClass, LEGAL_UNION_RECORD__END_YEAR); + createEAttribute(legal_Union_RecordEClass, LEGAL_UNION_RECORD__SEPARATION_CAUSE); + createEReference(legal_Union_RecordEClass, LEGAL_UNION_RECORD__INDIVIDUAL_A); + createEReference(legal_Union_RecordEClass, LEGAL_UNION_RECORD__INDIVIDUAL_B); + createEReference(legal_Union_RecordEClass, LEGAL_UNION_RECORD__PROPERTIES); + createEAttribute(legal_Union_RecordEClass, LEGAL_UNION_RECORD__MUTUAL_AGREEMENT); + createEAttribute(legal_Union_RecordEClass, LEGAL_UNION_RECORD__ID9); + createEReference(legal_Union_RecordEClass, LEGAL_UNION_RECORD__HOUSEHOLD); + + tax_PropertyEClass = createEClass(TAX_PROPERTY); + createEAttribute(tax_PropertyEClass, TAX_PROPERTY__STARTING_YEAR); + createEAttribute(tax_PropertyEClass, TAX_PROPERTY__ID10); + createEReference(tax_PropertyEClass, TAX_PROPERTY__UNION_RECORD); + + tax_CaseEClass = createEClass(TAX_CASE); + + fromAgentEClass = createEClass(FROM_AGENT); + createEReference(fromAgentEClass, FROM_AGENT__TAX_PAYER); + createEAttribute(fromAgentEClass, FROM_AGENT__IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE); + createEReference(fromAgentEClass, FROM_AGENT__EXPENSE); + createEAttribute(fromAgentEClass, FROM_AGENT__IS_ELIGIBLE_DEBT); + createEReference(fromAgentEClass, FROM_AGENT__DEPENDENT); + + incomeEClass = createEClass(INCOME); + createEAttribute(incomeEClass, INCOME__INCOME_AMOUNT); + createEReference(incomeEClass, INCOME__INCOME_TYPE); + createEAttribute(incomeEClass, INCOME__START_DATE_WITHIN_TAXATION_YEAR); + createEAttribute(incomeEClass, INCOME__START_DATE_OF_CONTRACT); + createEAttribute(incomeEClass, INCOME__END_DATE_WITHIN_TAXATION_YEAR); + createEReference(incomeEClass, INCOME__TAX_CARD); + createEAttribute(incomeEClass, INCOME__TAX_LIABILITY); + createEReference(incomeEClass, INCOME__TAX_PAYER); + createEReference(incomeEClass, INCOME__DETAILS); + createEAttribute(incomeEClass, INCOME__NUM); + createEReference(incomeEClass, INCOME__EXPENSES); + + income_TypeEClass = createEClass(INCOME_TYPE); + createEAttribute(income_TypeEClass, INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX); + createEAttribute(income_TypeEClass, INCOME_TYPE__ID8); + createEReference(income_TypeEClass, INCOME_TYPE__INCOME); + + tax_CardEClass = createEClass(TAX_CARD); + createEAttribute(tax_CardEClass, TAX_CARD__CARD_IDENTIFIER); + createEAttribute(tax_CardEClass, TAX_CARD__TAX_CARD_TYPE); + createEAttribute(tax_CardEClass, TAX_CARD__TAX_OFFICE); + createEAttribute(tax_CardEClass, TAX_CARD__VALID_FROM_DATE); + createEAttribute(tax_CardEClass, TAX_CARD__VALID_UNTIL_DATE); + createEAttribute(tax_CardEClass, TAX_CARD__PERCENTAGE_OF_WITHOLDING); + createEAttribute(tax_CardEClass, TAX_CARD__TAX_PAYERS_NAME_SURNAME); + createEAttribute(tax_CardEClass, TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME); + createEReference(tax_CardEClass, TAX_CARD__TAX_PAYERS_ADDRESS); + createEAttribute(tax_CardEClass, TAX_CARD__JOBS_EMPLOYER_SS_NO); + createEAttribute(tax_CardEClass, TAX_CARD__JOBS_EMPLOYERS_NAME); + createEAttribute(tax_CardEClass, TAX_CARD__JOBS_ACTIVITY_TYPE); + createEAttribute(tax_CardEClass, TAX_CARD__JOBS_PLACE_OF_WORK); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_FD_DAILY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_FD_MONTHLY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_AC_DAILY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_AC_MONTHLY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_AC_YEARLY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_CE_DAILY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_CE_MONTHLY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_CE_YEARLY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_DS_DAILY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_DS_MONTHLY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_FO_DAILY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_FO_MONTHLY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_FO_YEARLY); + createEAttribute(tax_CardEClass, TAX_CARD__CREDIT_CIS_DAILY); + createEAttribute(tax_CardEClass, TAX_CARD__CREDIT_CIS_MONTHLY); + createEAttribute(tax_CardEClass, TAX_CARD__CREDIT_CIM_DAILY); + createEAttribute(tax_CardEClass, TAX_CARD__VALIDITY); + createEReference(tax_CardEClass, TAX_CARD__INCOME_TAX_CREDIT); + createEReference(tax_CardEClass, TAX_CARD__PREVIOUS); + createEReference(tax_CardEClass, TAX_CARD__CURRENT_TAX_CARD); + createEAttribute(tax_CardEClass, TAX_CARD__CREDIT_CIM_YEARLY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_DS_DEBT_YEARLY); + createEReference(tax_CardEClass, TAX_CARD__INCOME); + + income_Tax_CreditEClass = createEClass(INCOME_TAX_CREDIT); + createEAttribute(income_Tax_CreditEClass, INCOME_TAX_CREDIT__GRANTED_BY); + createEReference(income_Tax_CreditEClass, INCOME_TAX_CREDIT__TAX_PAYER); + createEAttribute(income_Tax_CreditEClass, INCOME_TAX_CREDIT__TAX_YEAR); + createEAttribute(income_Tax_CreditEClass, INCOME_TAX_CREDIT__YEARLY); + createEAttribute(income_Tax_CreditEClass, INCOME_TAX_CREDIT__MONTHLY); + createEAttribute(income_Tax_CreditEClass, INCOME_TAX_CREDIT__DAILY); + createEAttribute(income_Tax_CreditEClass, INCOME_TAX_CREDIT__ID7); + createEReference(income_Tax_CreditEClass, INCOME_TAX_CREDIT__TAXATION_FRAME); + + income_DetailEClass = createEClass(INCOME_DETAIL); + createEAttribute(income_DetailEClass, INCOME_DETAIL__AMOUNT); + createEAttribute(income_DetailEClass, INCOME_DETAIL__IS_WORKED); + createEAttribute(income_DetailEClass, INCOME_DETAIL__DISTANCE); + createEAttribute(income_DetailEClass, INCOME_DETAIL__WORKED_DAYS); + createEAttribute(income_DetailEClass, INCOME_DETAIL__IS_CONTRIBUTING_CNS); + createEAttribute(income_DetailEClass, INCOME_DETAIL__ID5); + createEReference(income_DetailEClass, INCOME_DETAIL__INCOME); + + fromLawEClass = createEClass(FROM_LAW); + createEAttribute(fromLawEClass, FROM_LAW__ID); + createEReference(fromLawEClass, FROM_LAW__TAX_PAYER); + + fiscal_AddressEClass = createEClass(FISCAL_ADDRESS); + + habitual_AddressEClass = createEClass(HABITUAL_ADDRESS); + + marriage_RecordEClass = createEClass(MARRIAGE_RECORD); + + non_Resident_Tax_PayerEClass = createEClass(NON_RESIDENT_TAX_PAYER); + createEAttribute(non_Resident_Tax_PayerEClass, NON_RESIDENT_TAX_PAYER__IS_ASSIMILATED_TO_RESIDENT); + + partnership_RecordEClass = createEClass(PARTNERSHIP_RECORD); + + resident_Tax_PayerEClass = createEClass(RESIDENT_TAX_PAYER); + + trade_and_Business_IncomeEClass = createEClass(TRADE_AND_BUSINESS_INCOME); + + agriculture_and_Forestry_IncomeEClass = createEClass(AGRICULTURE_AND_FORESTRY_INCOME); + + pensions_and_Annuities_IncomeEClass = createEClass(PENSIONS_AND_ANNUITIES_INCOME); + createEAttribute(pensions_and_Annuities_IncomeEClass, PENSIONS_AND_ANNUITIES_INCOME__OCCASIONAL_PAYEMENT); + + capital_and_Investments_IncomeEClass = createEClass(CAPITAL_AND_INVESTMENTS_INCOME); + + employment_IncomeEClass = createEClass(EMPLOYMENT_INCOME); + + rentals_and_Leases_IncomeEClass = createEClass(RENTALS_AND_LEASES_INCOME); + createEAttribute(rentals_and_Leases_IncomeEClass, RENTALS_AND_LEASES_INCOME__IS_PERIODIC); + + foreign_IncomeEClass = createEClass(FOREIGN_INCOME); + + local_IncomeEClass = createEClass(LOCAL_INCOME); + + cimEClass = createEClass(CIM); + + cipEClass = createEClass(CIP); + + cisEClass = createEClass(CIS); + + fdEClass = createEClass(FD); + createEAttribute(fdEClass, FD__DISTANCE_DECLARED_IN_JANUARY); + createEAttribute(fdEClass, FD__CALCULATED_DISTANCE); + + professional_Expenses_DeductionEClass = createEClass(PROFESSIONAL_EXPENSES_DEDUCTION); + + foEClass = createEClass(FO); + createEAttribute(foEClass, FO__RATE_TYPE_FOR_FO); + + dS_for_Permanent_ExpenseEClass = createEClass(DS_FOR_PERMANENT_EXPENSE); + createEAttribute(dS_for_Permanent_ExpenseEClass, DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY); + + dsEClass = createEClass(DS); + createEAttribute(dsEClass, DS__MAXIMUM_DEDUCTIBLE_AMOUNT); + createEAttribute(dsEClass, DS__ID3); + + dS_for_Interest_ExpenseEClass = createEClass(DS_FOR_INTEREST_EXPENSE); + + dS_for_Health_and_Pension_InsuranceEClass = createEClass(DS_FOR_HEALTH_AND_PENSION_INSURANCE); + createEAttribute(dS_for_Health_and_Pension_InsuranceEClass, DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY); + + dS_for_Private_Insurance_and_PlanEClass = createEClass(DS_FOR_PRIVATE_INSURANCE_AND_PLAN); + createEAttribute(dS_for_Private_Insurance_and_PlanEClass, DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY); + createEAttribute(dS_for_Private_Insurance_and_PlanEClass, DS_FOR_PRIVATE_INSURANCE_AND_PLAN__INCREASE_FOR_LIFE_INSURANCE); + createEAttribute(dS_for_Private_Insurance_and_PlanEClass, DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE); + createEAttribute(dS_for_Private_Insurance_and_PlanEClass, DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN); + + dS_for_Loss_CarryforwardEClass = createEClass(DS_FOR_LOSS_CARRYFORWARD); + + dS_for_DonationEClass = createEClass(DS_FOR_DONATION); + + permanent_ExpenseEClass = createEClass(PERMANENT_EXPENSE); + createEAttribute(permanent_ExpenseEClass, PERMANENT_EXPENSE__CATEGORY); + createEAttribute(permanent_ExpenseEClass, PERMANENT_EXPENSE__IS_ELIGIBLE_FOR_DEDUCTION); + + special_Expense_DSEClass = createEClass(SPECIAL_EXPENSE_DS); + + interest_ExpenseEClass = createEClass(INTEREST_EXPENSE); + + private_Insurance_and_PlanEClass = createEClass(PRIVATE_INSURANCE_AND_PLAN); + createEAttribute(private_Insurance_and_PlanEClass, PRIVATE_INSURANCE_AND_PLAN__CATEGORY); + createEAttribute(private_Insurance_and_PlanEClass, PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT); + createEAttribute(private_Insurance_and_PlanEClass, PRIVATE_INSURANCE_AND_PLAN__IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION); + + health_and_Pension_InsuranceEClass = createEClass(HEALTH_AND_PENSION_INSURANCE); + createEAttribute(health_and_Pension_InsuranceEClass, HEALTH_AND_PENSION_INSURANCE__CATEGORY); + createEAttribute(health_and_Pension_InsuranceEClass, HEALTH_AND_PENSION_INSURANCE__IS_RELATED_TO_ADDITIONAL_SALARY); + + donationEClass = createEClass(DONATION); + createEAttribute(donationEClass, DONATION__BENEFICIARY1); + createEAttribute(donationEClass, DONATION__IS_BENEFICIARY_ELIGIBLE); + createEAttribute(donationEClass, DONATION__IS_DONATION_REPORTED); + + loss_CarryforwardEClass = createEClass(LOSS_CARRYFORWARD); + createEAttribute(loss_CarryforwardEClass, LOSS_CARRYFORWARD__REGULAR_ACCOUNTABILITY); + createEAttribute(loss_CarryforwardEClass, LOSS_CARRYFORWARD__COMPENSATION_BY_OTHER_MEANS); + createEAttribute(loss_CarryforwardEClass, LOSS_CARRYFORWARD__TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP); + createEAttribute(loss_CarryforwardEClass, LOSS_CARRYFORWARD__TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS); + + spousal_Expense_ACEClass = createEClass(SPOUSAL_EXPENSE_AC); + + extraordinary_Expense_CEEClass = createEClass(EXTRAORDINARY_EXPENSE_CE); + createEAttribute(extraordinary_Expense_CEEClass, EXTRAORDINARY_EXPENSE_CE__THRESHOLDED_DEDUCTION_PERCENTAGE); + createEAttribute(extraordinary_Expense_CEEClass, EXTRAORDINARY_EXPENSE_CE__CE_TYPE); + + travel_Expense_FDEClass = createEClass(TRAVEL_EXPENSE_FD); + + professional_ExpenseEClass = createEClass(PROFESSIONAL_EXPENSE); + + miscellaneous_Expense_FOEClass = createEClass(MISCELLANEOUS_EXPENSE_FO); + + // Create enums + grantorEEnum = createEEnum(GRANTOR); + disability_TypesEEnum = createEEnum(DISABILITY_TYPES); + countryEEnum = createEEnum(COUNTRY); + tax_Card_TypeEEnum = createEEnum(TAX_CARD_TYPE); + tax_OfficeEEnum = createEEnum(TAX_OFFICE); + tax_Class_CategoryEEnum = createEEnum(TAX_CLASS_CATEGORY); + job_ActivityEEnum = createEEnum(JOB_ACTIVITY); + townEEnum = createEEnum(TOWN); + type_of_RateEEnum = createEEnum(TYPE_OF_RATE); + cE_TypeEEnum = createEEnum(CE_TYPE); + expense_PurposeEEnum = createEEnum(EXPENSE_PURPOSE); + dependent_TypeEEnum = createEEnum(DEPENDENT_TYPE); + separation_CausesEEnum = createEEnum(SEPARATION_CAUSES); + category_of_Permanent_ExpenseEEnum = createEEnum(CATEGORY_OF_PERMANENT_EXPENSE); + category_of_Health_and_Pension_InsurancesEEnum = createEEnum(CATEGORY_OF_HEALTH_AND_PENSION_INSURANCES); + category_of_Private_Insurance_and_PlanEEnum = createEEnum(CATEGORY_OF_PRIVATE_INSURANCE_AND_PLAN); + legal_Union_TypesEEnum = createEEnum(LEGAL_UNION_TYPES); + } + + /** + * + * + * @generated + */ + private boolean isInitialized = false; + + /** + * Complete the initialization of the package and its meta-model. This + * method is guarded to have no affect on any invocation but its first. + * + * + * @generated + */ + public void initializePackageContents() { + if (isInitialized) return; + isInitialized = true; + + // Initialize package + setName(eNAME); + setNsPrefix(eNS_PREFIX); + setNsURI(eNS_URI); + + // Create type parameters + + // Set bounds for type parameters + + // Add supertypes to classes + tax_PayerEClass.getESuperTypes().add(this.getPhysical_Person()); + tax_PayerEClass.getESuperTypes().add(this.getTax_Case()); + dependentEClass.getESuperTypes().add(this.getPhysical_Person()); + householdEClass.getESuperTypes().add(this.getTax_Case()); + fiscal_AddressEClass.getESuperTypes().add(this.getAddress()); + habitual_AddressEClass.getESuperTypes().add(this.getAddress()); + marriage_RecordEClass.getESuperTypes().add(this.getLegal_Union_Record()); + non_Resident_Tax_PayerEClass.getESuperTypes().add(this.getTax_Payer()); + partnership_RecordEClass.getESuperTypes().add(this.getLegal_Union_Record()); + resident_Tax_PayerEClass.getESuperTypes().add(this.getTax_Payer()); + trade_and_Business_IncomeEClass.getESuperTypes().add(this.getIncome_Type()); + agriculture_and_Forestry_IncomeEClass.getESuperTypes().add(this.getIncome_Type()); + pensions_and_Annuities_IncomeEClass.getESuperTypes().add(this.getIncome_Type()); + capital_and_Investments_IncomeEClass.getESuperTypes().add(this.getIncome_Type()); + employment_IncomeEClass.getESuperTypes().add(this.getIncome_Type()); + rentals_and_Leases_IncomeEClass.getESuperTypes().add(this.getIncome_Type()); + foreign_IncomeEClass.getESuperTypes().add(this.getIncome()); + local_IncomeEClass.getESuperTypes().add(this.getIncome()); + cimEClass.getESuperTypes().add(this.getIncome_Tax_Credit()); + cipEClass.getESuperTypes().add(this.getIncome_Tax_Credit()); + cisEClass.getESuperTypes().add(this.getIncome_Tax_Credit()); + fdEClass.getESuperTypes().add(this.getProfessional_Expenses_Deduction()); + foEClass.getESuperTypes().add(this.getProfessional_Expenses_Deduction()); + dS_for_Permanent_ExpenseEClass.getESuperTypes().add(this.getDS()); + dS_for_Interest_ExpenseEClass.getESuperTypes().add(this.getDS()); + dS_for_Health_and_Pension_InsuranceEClass.getESuperTypes().add(this.getDS()); + dS_for_Private_Insurance_and_PlanEClass.getESuperTypes().add(this.getDS()); + dS_for_Loss_CarryforwardEClass.getESuperTypes().add(this.getDS()); + dS_for_DonationEClass.getESuperTypes().add(this.getDS()); + permanent_ExpenseEClass.getESuperTypes().add(this.getSpecial_Expense_DS()); + special_Expense_DSEClass.getESuperTypes().add(this.getExpense()); + interest_ExpenseEClass.getESuperTypes().add(this.getSpecial_Expense_DS()); + private_Insurance_and_PlanEClass.getESuperTypes().add(this.getSpecial_Expense_DS()); + health_and_Pension_InsuranceEClass.getESuperTypes().add(this.getSpecial_Expense_DS()); + donationEClass.getESuperTypes().add(this.getSpecial_Expense_DS()); + loss_CarryforwardEClass.getESuperTypes().add(this.getSpecial_Expense_DS()); + spousal_Expense_ACEClass.getESuperTypes().add(this.getExpense()); + extraordinary_Expense_CEEClass.getESuperTypes().add(this.getExpense()); + travel_Expense_FDEClass.getESuperTypes().add(this.getProfessional_Expense()); + professional_ExpenseEClass.getESuperTypes().add(this.getExpense()); + miscellaneous_Expense_FOEClass.getESuperTypes().add(this.getProfessional_Expense()); + + // Initialize classes, features, and operations; add parameters + initEClass(constantsEClass, Constants.class, "Constants", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getConstants_MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD(), ecorePackage.getEDouble(), "MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD", "3480.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE(), ecorePackage.getEDouble(), "MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE", "3600.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MINIMUM_SALARY(), ecorePackage.getEDouble(), "MINIMUM_SALARY", "1500.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION(), ecorePackage.getEDouble(), "FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION", "4500.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS(), ecorePackage.getEDouble(), "MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS", "20.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS(), ecorePackage.getEDouble(), "MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS", "120.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC(), ecorePackage.getEDouble(), "MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC", "0.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE(), ecorePackage.getEDouble(), "MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE", "24000.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(), ecorePackage.getEDouble(), "MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION", "99.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(), ecorePackage.getEDouble(), "MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION", "30.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(), ecorePackage.getEDouble(), "MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION", "4.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_CIM_DAILY(), ecorePackage.getEDouble(), "FLAT_RATE_CIM_DAILY", "2.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_CIM_MONTHLY(), ecorePackage.getEDouble(), "FLAT_RATE_CIM_MONTHLY", "62.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_CIM_YEARLY(), ecorePackage.getEDouble(), "FLAT_RATE_CIM_YEARLY", "750.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_CIP_DAILY(), ecorePackage.getEDouble(), "FLAT_RATE_CIP_DAILY", "1.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_CIP_MONTHLY(), ecorePackage.getEDouble(), "FLAT_RATE_CIP_MONTHLY", "25.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_CIP_YEARLY(), ecorePackage.getEDouble(), "FLAT_RATE_CIP_YEARLY", "30.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_CIS_DAILY(), ecorePackage.getEDouble(), "FLAT_RATE_CIS_DAILY", "1.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_CIS_MONTHLY(), ecorePackage.getEDouble(), "FLAT_RATE_CIS_MONTHLY", "25.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_CIS_YEARLY(), ecorePackage.getEDouble(), "FLAT_RATE_CIS_YEARLY", "300.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT(), ecorePackage.getEDouble(), "FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT", "99.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS(), ecorePackage.getEDouble(), "MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS", null, 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(), ecorePackage.getEDouble(), "FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE", null, 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(), ecorePackage.getEDouble(), "DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE", null, 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE(), ecorePackage.getEDouble(), "MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE", null, 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(income_TaxEClass, Income_Tax.class, "Income_Tax", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getIncome_Tax_TaxPayer(), this.getTax_Payer(), null, "taxPayer", null, 1, 1, Income_Tax.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Tax_Tax_amount(), ecorePackage.getEDouble(), "tax_amount", null, 1, 1, Income_Tax.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Tax_Tax_year(), ecorePackage.getEInt(), "tax_year", null, 1, 1, Income_Tax.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Tax_Id6(), ecorePackage.getEString(), "id6", null, 1, 1, Income_Tax.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(tax_PayerEClass, Tax_Payer.class, "Tax_Payer", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getTax_Payer_Dependents(), this.getDependent(), this.getDependent_Responsible_person(), "dependents", null, 0, 6, Tax_Payer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getTax_Payer_From_agent(), this.getFromAgent(), this.getFromAgent_TaxPayer(), "from_agent", null, 1, 1, Tax_Payer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getTax_Payer_Incomes(), this.getIncome(), this.getIncome_TaxPayer(), "incomes", null, 1, -1, Tax_Payer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getTax_Payer_From_law(), this.getFromLaw(), this.getFromLaw_TaxPayer(), "from_law", null, 1, 1, Tax_Payer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Payer_TaxesDue(), ecorePackage.getEDouble(), "taxesDue", null, 1, 1, Tax_Payer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(physical_PersonEClass, Physical_Person.class, "Physical_Person", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getPhysical_Person_Is_assisting_spouse(), ecorePackage.getEBoolean(), "is_assisting_spouse", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + initEAttribute(getPhysical_Person_SSNo(), ecorePackage.getEString(), "SSNo", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getPhysical_Person_Addresses(), this.getAddress(), this.getAddress_TaxPayer(), "addresses", null, 0, -1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getPhysical_Person_Birth_year(), ecorePackage.getEInt(), "birth_year", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getPhysical_Person_Disability_percentage(), ecorePackage.getEDouble(), "disability_percentage", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getPhysical_Person_Disability_type(), this.getDisability_Types(), "disability_type", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getPhysical_Person_Is_affiliated_personnaly_to_social_security(), ecorePackage.getEBoolean(), "is_affiliated_personnaly_to_social_security", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + initEAttribute(getPhysical_Person_Birth_month(), ecorePackage.getEInt(), "birth_month", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getPhysical_Person_Birth_day(), ecorePackage.getEInt(), "birth_day", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getPhysical_Person_Expenses(), this.getExpense(), this.getExpense_Beneficiary(), "expenses", null, 0, -1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getPhysical_Person_Is_widower(), ecorePackage.getEBoolean(), "is_widower", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getPhysical_Person_Owns_Address(), this.getAddress(), null, "owns_Address", null, 0, -1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(addressEClass, Address.class, "Address", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getAddress_Country(), this.getCountry(), "country", "ZZ", 1, 1, Address.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAddress_Street(), ecorePackage.getEString(), "street", null, 1, 1, Address.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAddress_ZipCode(), ecorePackage.getEString(), "zipCode", null, 1, 1, Address.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAddress_City(), ecorePackage.getEString(), "city", null, 1, 1, Address.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAddress_Id2(), ecorePackage.getEString(), "id2", null, 1, 1, Address.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getAddress_TaxPayer(), this.getPhysical_Person(), this.getPhysical_Person_Addresses(), "taxPayer", null, 0, -1, Address.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(expenseEClass, Expense.class, "Expense", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getExpense_Declared_amount(), ecorePackage.getEDouble(), "declared_amount", null, 1, 1, Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getExpense_Expense_purpose(), this.getExpense_Purpose(), "expense_purpose", "OTHER", 1, 1, Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getExpense_Dependent(), this.getDependent(), this.getDependent_Expense(), "dependent", null, 0, 1, Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getExpense_From_agent(), this.getFromAgent(), this.getFromAgent_Expense(), "from_agent", null, 0, 1, Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getExpense_Income(), this.getIncome(), this.getIncome_Expenses(), "income", null, 1, 1, Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getExpense_Id4(), ecorePackage.getEString(), "id4", null, 1, 1, Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getExpense_Beneficiary(), this.getPhysical_Person(), this.getPhysical_Person_Expenses(), "beneficiary", null, 0, 1, Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(dependentEClass, Dependent.class, "Dependent", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getDependent_Dependent_type(), this.getDependent_Type(), "dependent_type", null, 1, 1, Dependent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getDependent_Responsible_person(), this.getTax_Payer(), this.getTax_Payer_Dependents(), "responsible_person", null, 0, 1, Dependent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getDependent_Continued_studies(), ecorePackage.getEBoolean(), "continued_studies", "false", 1, 1, Dependent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getDependent_Allowances(), this.getExternal_Allowance(), this.getExternal_Allowance_Person(), "allowances", null, 0, 1, Dependent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getDependent_Household(), this.getHousehold(), this.getHousehold_Children(), "household", null, 0, 1, Dependent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getDependent_From_agent(), this.getFromAgent(), this.getFromAgent_Dependent(), "from_agent", null, 0, 1, Dependent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getDependent_Expense(), this.getExpense(), this.getExpense_Dependent(), "expense", null, 0, -1, Dependent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(external_AllowanceEClass, External_Allowance.class, "External_Allowance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getExternal_Allowance_Amount(), ecorePackage.getEDouble(), "amount", null, 1, 1, External_Allowance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getExternal_Allowance_Grantor(), this.getGrantor(), "grantor", null, 1, 1, External_Allowance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getExternal_Allowance_Starting_year(), ecorePackage.getEInt(), "starting_year", null, 1, 1, External_Allowance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getExternal_Allowance_Ending_year(), ecorePackage.getEInt(), "ending_year", null, 1, 1, External_Allowance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getExternal_Allowance_Reciver(), this.getPhysical_Person(), null, "reciver", null, 1, 1, External_Allowance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getExternal_Allowance_Id5(), ecorePackage.getEString(), "id5", null, 1, 1, External_Allowance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getExternal_Allowance_Person(), this.getDependent(), this.getDependent_Allowances(), "person", null, 1, 1, External_Allowance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(householdEClass, Household.class, "Household", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getHousehold_Parents(), this.getLegal_Union_Record(), this.getLegal_Union_Record_Household(), "parents", null, 1, 1, Household.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getHousehold_Id1(), ecorePackage.getEString(), "id1", null, 1, 1, Household.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getHousehold_Children(), this.getDependent(), this.getDependent_Household(), "children", null, 0, -1, Household.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(legal_Union_RecordEClass, Legal_Union_Record.class, "Legal_Union_Record", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getLegal_Union_Record_Start_year(), ecorePackage.getEInt(), "start_year", null, 1, 1, Legal_Union_Record.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getLegal_Union_Record_End_year(), ecorePackage.getEInt(), "end_year", null, 1, 1, Legal_Union_Record.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getLegal_Union_Record_Separation_cause(), this.getSeparation_Causes(), "separation_cause", null, 1, 1, Legal_Union_Record.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getLegal_Union_Record_Individual_A(), this.getPhysical_Person(), null, "individual_A", null, 1, 1, Legal_Union_Record.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getLegal_Union_Record_Individual_B(), this.getPhysical_Person(), null, "individual_B", null, 1, -1, Legal_Union_Record.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getLegal_Union_Record_Properties(), this.getTax_Property(), this.getTax_Property_Union_record(), "properties", null, 1, -1, Legal_Union_Record.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getLegal_Union_Record_Mutual_agreement(), ecorePackage.getEBoolean(), "mutual_agreement", null, 1, 1, Legal_Union_Record.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getLegal_Union_Record_Id9(), ecorePackage.getEString(), "id9", null, 1, 1, Legal_Union_Record.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getLegal_Union_Record_Household(), this.getHousehold(), this.getHousehold_Parents(), "household", null, 1, 1, Legal_Union_Record.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(tax_PropertyEClass, Tax_Property.class, "Tax_Property", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getTax_Property_Starting_year(), ecorePackage.getEInt(), "starting_year", null, 1, 1, Tax_Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getTax_Property_Id10(), ecorePackage.getEString(), "id10", null, 1, 1, Tax_Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getTax_Property_Union_record(), this.getLegal_Union_Record(), this.getLegal_Union_Record_Properties(), "union_record", null, 1, 1, Tax_Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(tax_CaseEClass, Tax_Case.class, "Tax_Case", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(fromAgentEClass, FromAgent.class, "FromAgent", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getFromAgent_TaxPayer(), this.getTax_Payer(), this.getTax_Payer_From_agent(), "taxPayer", null, 1, 1, FromAgent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getFromAgent_Is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care(), ecorePackage.getEBoolean(), "is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care", null, 1, 1, FromAgent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getFromAgent_Expense(), this.getExpense(), this.getExpense_From_agent(), "expense", null, 0, 1, FromAgent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getFromAgent_Is_eligible_debt(), ecorePackage.getEBoolean(), "is_eligible_debt", null, 1, 1, FromAgent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getFromAgent_Dependent(), this.getDependent(), this.getDependent_From_agent(), "dependent", null, 0, 1, FromAgent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(incomeEClass, Income.class, "Income", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getIncome_Income_amount(), ecorePackage.getEDouble(), "income_amount", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getIncome_Income_type(), this.getIncome_Type(), this.getIncome_Type_Income(), "income_type", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Start_date_within_taxation_year(), ecorePackage.getEDate(), "start_date_within_taxation_year", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getIncome_Start_date_of_contract(), ecorePackage.getEDate(), "start_date_of_contract", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getIncome_End_date_within_taxation_year(), ecorePackage.getEDate(), "end_date_within_taxation_year", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getIncome_Tax_card(), this.getTax_Card(), this.getTax_Card_Income(), "tax_card", null, 0, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Tax_liability(), ecorePackage.getEDouble(), "tax_liability", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getIncome_TaxPayer(), this.getTax_Payer(), this.getTax_Payer_Incomes(), "taxPayer", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getIncome_Details(), this.getIncome_Detail(), this.getIncome_Detail_Income(), "details", null, 12, 12, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Num(), ecorePackage.getEInt(), "num", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getIncome_Expenses(), this.getExpense(), this.getExpense_Income(), "expenses", null, 0, -1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(income_TypeEClass, Income_Type.class, "Income_Type", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getIncome_Type_SubjectToWithholdingTax(), ecorePackage.getEBoolean(), "subjectToWithholdingTax", null, 1, 1, Income_Type.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Type_Id8(), ecorePackage.getEString(), "id8", null, 1, 1, Income_Type.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getIncome_Type_Income(), this.getIncome(), this.getIncome_Income_type(), "income", null, 1, 1, Income_Type.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(tax_CardEClass, Tax_Card.class, "Tax_Card", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getTax_Card_Card_identifier(), ecorePackage.getEString(), "card_identifier", null, 0, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Tax_card_type(), this.getTax_Card_Type(), "tax_card_type", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Tax_office(), this.getTax_Office(), "tax_office", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Valid_from_date(), ecorePackage.getEDate(), "valid_from_date", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getTax_Card_Valid_until_date(), ecorePackage.getEDate(), "valid_until_date", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getTax_Card_Percentage_of_witholding(), ecorePackage.getEDouble(), "percentage_of_witholding", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Tax_payers_name_surname(), ecorePackage.getEString(), "tax_payers_name_surname", null, 0, -1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getTax_Card_Tax_payers_partner_name_surname(), ecorePackage.getEString(), "tax_payers_partner_name_surname", null, 0, -1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getTax_Card_Tax_payers_address(), this.getAddress(), null, "tax_payers_address", null, 0, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Jobs_Employer_SSNo(), ecorePackage.getEString(), "jobs_Employer_SSNo", null, 0, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getTax_Card_Jobs_employers_name(), ecorePackage.getEString(), "jobs_employers_name", null, 0, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getTax_Card_Jobs_activity_type(), this.getJob_Activity(), "jobs_activity_type", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Jobs_place_of_work(), this.getTown(), "jobs_place_of_work", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_FD_daily(), ecorePackage.getEDouble(), "deduction_FD_daily", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getTax_Card_Deduction_FD_monthly(), ecorePackage.getEDouble(), "deduction_FD_monthly", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getTax_Card_Deduction_AC_daily(), ecorePackage.getEDouble(), "deduction_AC_daily", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_AC_monthly(), ecorePackage.getEDouble(), "deduction_AC_monthly", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_AC_yearly(), ecorePackage.getEDouble(), "deduction_AC_yearly", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_CE_daily(), ecorePackage.getEDouble(), "deduction_CE_daily", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_CE_monthly(), ecorePackage.getEDouble(), "deduction_CE_monthly", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_CE_yearly(), ecorePackage.getEDouble(), "deduction_CE_yearly", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_DS_daily(), ecorePackage.getEDouble(), "deduction_DS_daily", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_DS_monthly(), ecorePackage.getEDouble(), "deduction_DS_monthly", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_FO_daily(), ecorePackage.getEDouble(), "deduction_FO_daily", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_FO_monthly(), ecorePackage.getEDouble(), "deduction_FO_monthly", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_FO_yearly(), ecorePackage.getEDouble(), "deduction_FO_yearly", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Credit_CIS_daily(), ecorePackage.getEDouble(), "credit_CIS_daily", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Credit_CIS_monthly(), ecorePackage.getEDouble(), "credit_CIS_monthly", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Credit_CIM_daily(), ecorePackage.getEDouble(), "credit_CIM_daily", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Validity(), ecorePackage.getEBoolean(), "validity", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getTax_Card_Income_Tax_Credit(), this.getIncome_Tax_Credit(), this.getIncome_Tax_Credit_Taxation_Frame(), "income_Tax_Credit", null, 0, -1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getTax_Card_Previous(), this.getTax_Card(), this.getTax_Card_Current_tax_card(), "previous", null, 0, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getTax_Card_Current_tax_card(), this.getTax_Card(), this.getTax_Card_Previous(), "current_tax_card", null, 0, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Credit_CIM_yearly(), ecorePackage.getEDouble(), "credit_CIM_yearly", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getTax_Card_Deduction_DS_Alimony_yearly(), ecorePackage.getEDouble(), "deduction_DS_Alimony_yearly", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getTax_Card_Deduction_DS_Debt_yearly(), ecorePackage.getEDouble(), "deduction_DS_Debt_yearly", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getTax_Card_Income(), this.getIncome(), this.getIncome_Tax_card(), "income", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(income_Tax_CreditEClass, Income_Tax_Credit.class, "Income_Tax_Credit", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getIncome_Tax_Credit_GrantedBy(), this.getGrantor(), "grantedBy", null, 1, 1, Income_Tax_Credit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getIncome_Tax_Credit_TaxPayer(), this.getTax_Payer(), null, "taxPayer", null, 0, 1, Income_Tax_Credit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Tax_Credit_Tax_year(), ecorePackage.getEInt(), "tax_year", null, 1, 1, Income_Tax_Credit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Tax_Credit_Yearly(), ecorePackage.getEDouble(), "yearly", "300.0", 1, 1, Income_Tax_Credit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Tax_Credit_Monthly(), ecorePackage.getEDouble(), "monthly", "25.0", 1, 1, Income_Tax_Credit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Tax_Credit_Daily(), ecorePackage.getEDouble(), "daily", "1.0", 1, 1, Income_Tax_Credit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Tax_Credit_Id7(), ecorePackage.getEString(), "id7", null, 1, 1, Income_Tax_Credit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getIncome_Tax_Credit_Taxation_Frame(), this.getTax_Card(), this.getTax_Card_Income_Tax_Credit(), "taxation_Frame", null, 0, 1, Income_Tax_Credit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(income_DetailEClass, Income_Detail.class, "Income_Detail", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getIncome_Detail_Amount(), ecorePackage.getEDouble(), "amount", null, 1, 1, Income_Detail.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Detail_Is_worked(), ecorePackage.getEBoolean(), "is_worked", null, 1, 1, Income_Detail.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Detail_Distance(), ecorePackage.getEDouble(), "distance", null, 1, 1, Income_Detail.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Detail_Worked_days(), ecorePackage.getEInt(), "worked_days", null, 1, 1, Income_Detail.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Detail_Is_contributing_CNS(), ecorePackage.getEBoolean(), "is_contributing_CNS", null, 1, 1, Income_Detail.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getIncome_Detail_Id5(), ecorePackage.getEString(), "id5", null, 1, 1, Income_Detail.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getIncome_Detail_Income(), this.getIncome(), this.getIncome_Details(), "income", null, 1, 1, Income_Detail.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(fromLawEClass, FromLaw.class, "FromLaw", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getFromLaw_Id(), ecorePackage.getEString(), "id", null, 1, 1, FromLaw.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getFromLaw_TaxPayer(), this.getTax_Payer(), this.getTax_Payer_From_law(), "taxPayer", null, 1, 1, FromLaw.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(fiscal_AddressEClass, Fiscal_Address.class, "Fiscal_Address", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(habitual_AddressEClass, Habitual_Address.class, "Habitual_Address", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(marriage_RecordEClass, Marriage_Record.class, "Marriage_Record", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(non_Resident_Tax_PayerEClass, Non_Resident_Tax_Payer.class, "Non_Resident_Tax_Payer", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getNon_Resident_Tax_Payer_Is_assimilated_to_resident(), ecorePackage.getEBoolean(), "is_assimilated_to_resident", "false", 1, 1, Non_Resident_Tax_Payer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(partnership_RecordEClass, Partnership_Record.class, "Partnership_Record", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(resident_Tax_PayerEClass, Resident_Tax_Payer.class, "Resident_Tax_Payer", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(trade_and_Business_IncomeEClass, Trade_and_Business_Income.class, "Trade_and_Business_Income", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(agriculture_and_Forestry_IncomeEClass, Agriculture_and_Forestry_Income.class, "Agriculture_and_Forestry_Income", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(pensions_and_Annuities_IncomeEClass, Pensions_and_Annuities_Income.class, "Pensions_and_Annuities_Income", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getPensions_and_Annuities_Income_Occasional_payement(), ecorePackage.getEBoolean(), "occasional_payement", "false", 0, 1, Pensions_and_Annuities_Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(capital_and_Investments_IncomeEClass, Capital_and_Investments_Income.class, "Capital_and_Investments_Income", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(employment_IncomeEClass, Employment_Income.class, "Employment_Income", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(rentals_and_Leases_IncomeEClass, Rentals_and_Leases_Income.class, "Rentals_and_Leases_Income", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getRentals_and_Leases_Income_Is_periodic(), ecorePackage.getEBoolean(), "is_periodic", "true", 1, 1, Rentals_and_Leases_Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(foreign_IncomeEClass, Foreign_Income.class, "Foreign_Income", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(local_IncomeEClass, Local_Income.class, "Local_Income", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(cimEClass, Taxation.CIM.class, "CIM", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(cipEClass, Taxation.CIP.class, "CIP", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(cisEClass, Taxation.CIS.class, "CIS", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(fdEClass, Taxation.FD.class, "FD", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getFD_Distance_declared_in_january(), ecorePackage.getEDouble(), "distance_declared_in_january", null, 1, 1, Taxation.FD.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getFD_Calculated_distance(), ecorePackage.getEDouble(), "calculated_distance", null, 1, 1, Taxation.FD.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + + initEClass(professional_Expenses_DeductionEClass, Professional_Expenses_Deduction.class, "Professional_Expenses_Deduction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(foEClass, Taxation.FO.class, "FO", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getFO_Rate_type_for_FO(), this.getType_of_Rate(), "rate_type_for_FO", null, 1, 1, Taxation.FO.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + + initEClass(dS_for_Permanent_ExpenseEClass, DS_for_Permanent_Expense.class, "DS_for_Permanent_Expense", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getDS_for_Permanent_Expense_Permanent_expense_category(), this.getCategory_of_Permanent_Expense(), "permanent_expense_category", null, 1, 1, DS_for_Permanent_Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(dsEClass, Taxation.DS.class, "DS", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getDS_Maximum_deductible_amount(), ecorePackage.getEDouble(), "maximum_deductible_amount", null, 1, 1, Taxation.DS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getDS_Id3(), ecorePackage.getEString(), "id3", null, 1, 1, Taxation.DS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(dS_for_Interest_ExpenseEClass, DS_for_Interest_Expense.class, "DS_for_Interest_Expense", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(dS_for_Health_and_Pension_InsuranceEClass, DS_for_Health_and_Pension_Insurance.class, "DS_for_Health_and_Pension_Insurance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getDS_for_Health_and_Pension_Insurance_Insurance_category(), this.getCategory_of_Health_and_Pension_Insurances(), "insurance_category", null, 1, 1, DS_for_Health_and_Pension_Insurance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(dS_for_Private_Insurance_and_PlanEClass, DS_for_Private_Insurance_and_Plan.class, "DS_for_Private_Insurance_and_Plan", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getDS_for_Private_Insurance_and_Plan_Private_insurance_and_plan_category(), this.getCategory_of_Private_Insurance_and_Plan(), "private_insurance_and_plan_category", null, 1, 1, DS_for_Private_Insurance_and_Plan.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getDS_for_Private_Insurance_and_Plan_Increase_for_life_insurance(), ecorePackage.getEDouble(), "increase_for_life_insurance", null, 1, 1, DS_for_Private_Insurance_and_Plan.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + initEAttribute(getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_private_insurance(), ecorePackage.getEDouble(), "maximum_deductible_amount_for_private_insurance", null, 1, 1, DS_for_Private_Insurance_and_Plan.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + initEAttribute(getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_old_age_pension_plan(), ecorePackage.getEDouble(), "maximum_deductible_amount_for_old_age_pension_plan", null, 1, 1, DS_for_Private_Insurance_and_Plan.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + + initEClass(dS_for_Loss_CarryforwardEClass, DS_for_Loss_Carryforward.class, "DS_for_Loss_Carryforward", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(dS_for_DonationEClass, DS_for_Donation.class, "DS_for_Donation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(permanent_ExpenseEClass, Permanent_Expense.class, "Permanent_Expense", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getPermanent_Expense_Category(), this.getCategory_of_Permanent_Expense(), "category", null, 1, 1, Permanent_Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getPermanent_Expense_Is_eligible_for_deduction(), ecorePackage.getEBoolean(), "is_eligible_for_deduction", "false", 1, 1, Permanent_Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + + initEClass(special_Expense_DSEClass, Special_Expense_DS.class, "Special_Expense_DS", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(interest_ExpenseEClass, Interest_Expense.class, "Interest_Expense", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(private_Insurance_and_PlanEClass, Private_Insurance_and_Plan.class, "Private_Insurance_and_Plan", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getPrivate_Insurance_and_Plan_Category(), this.getCategory_of_Private_Insurance_and_Plan(), "category", null, 1, 1, Private_Insurance_and_Plan.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getPrivate_Insurance_and_Plan_Duration_of_contract(), ecorePackage.getEInt(), "duration_of_contract", null, 1, 1, Private_Insurance_and_Plan.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getPrivate_Insurance_and_Plan_Is_private_insurance_and_plan_eligible_for_deduction(), ecorePackage.getEBoolean(), "is_private_insurance_and_plan_eligible_for_deduction", "false", 1, 1, Private_Insurance_and_Plan.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + + initEClass(health_and_Pension_InsuranceEClass, Health_and_Pension_Insurance.class, "Health_and_Pension_Insurance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getHealth_and_Pension_Insurance_Category(), this.getCategory_of_Health_and_Pension_Insurances(), "category", null, 1, 1, Health_and_Pension_Insurance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getHealth_and_Pension_Insurance_Is_related_to_additional_salary(), ecorePackage.getEBoolean(), "is_related_to_additional_salary", "false", 1, 1, Health_and_Pension_Insurance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(donationEClass, Donation.class, "Donation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getDonation_Beneficiary1(), ecorePackage.getEString(), "beneficiary1", null, 1, 1, Donation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getDonation_Is_beneficiary_eligible(), ecorePackage.getEBoolean(), "is_beneficiary_eligible", "false", 1, 1, Donation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + initEAttribute(getDonation_Is_donation_reported(), ecorePackage.getEBoolean(), "is_donation_reported", null, 1, 1, Donation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(loss_CarryforwardEClass, Loss_Carryforward.class, "Loss_Carryforward", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getLoss_Carryforward_Regular_accountability(), ecorePackage.getEBoolean(), "regular_accountability", null, 1, 1, Loss_Carryforward.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + initEAttribute(getLoss_Carryforward_Compensation_by_other_means(), ecorePackage.getEBoolean(), "compensation_by_other_means", null, 1, 1, Loss_Carryforward.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + initEAttribute(getLoss_Carryforward_Tax_payer_has_inherited_business_ownership(), ecorePackage.getEBoolean(), "tax_payer_has_inherited_business_ownership", "false", 1, 1, Loss_Carryforward.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + initEAttribute(getLoss_Carryforward_Tax_payer_has_been_partner_in_business(), ecorePackage.getEBoolean(), "tax_payer_has_been_partner_in_business", "true", 1, 1, Loss_Carryforward.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); + + initEClass(spousal_Expense_ACEClass, Spousal_Expense_AC.class, "Spousal_Expense_AC", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(extraordinary_Expense_CEEClass, Extraordinary_Expense_CE.class, "Extraordinary_Expense_CE", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getExtraordinary_Expense_CE_Thresholded_deduction_percentage(), ecorePackage.getEDouble(), "thresholded_deduction_percentage", null, 1, 1, Extraordinary_Expense_CE.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getExtraordinary_Expense_CE_Ce_type(), this.getCE_Type(), "ce_type", null, 1, 1, Extraordinary_Expense_CE.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(travel_Expense_FDEClass, Travel_Expense_FD.class, "Travel_Expense_FD", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(professional_ExpenseEClass, Professional_Expense.class, "Professional_Expense", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(miscellaneous_Expense_FOEClass, Miscellaneous_Expense_FO.class, "Miscellaneous_Expense_FO", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + // Initialize enums and add enum literals + initEEnum(grantorEEnum, Grantor.class, "Grantor"); + addEEnumLiteral(grantorEEnum, Grantor.WWW); + addEEnumLiteral(grantorEEnum, Grantor.EMPLOYER); + addEEnumLiteral(grantorEEnum, Grantor.MMM); + addEEnumLiteral(grantorEEnum, Grantor.UUU); + addEEnumLiteral(grantorEEnum, Grantor.YYY); + addEEnumLiteral(grantorEEnum, Grantor.OOO); + + initEEnum(disability_TypesEEnum, Disability_Types.class, "Disability_Types"); + addEEnumLiteral(disability_TypesEEnum, Disability_Types.BEUG); + addEEnumLiteral(disability_TypesEEnum, Disability_Types.NONE); + addEEnumLiteral(disability_TypesEEnum, Disability_Types.A); + addEEnumLiteral(disability_TypesEEnum, Disability_Types.B); + addEEnumLiteral(disability_TypesEEnum, Disability_Types.C); + addEEnumLiteral(disability_TypesEEnum, Disability_Types.D); + addEEnumLiteral(disability_TypesEEnum, Disability_Types.E); + addEEnumLiteral(disability_TypesEEnum, Disability_Types.OTHER); + + initEEnum(countryEEnum, Country.class, "Country"); + addEEnumLiteral(countryEEnum, Country.ZZ); + addEEnumLiteral(countryEEnum, Country.FF); + addEEnumLiteral(countryEEnum, Country.BB); + addEEnumLiteral(countryEEnum, Country.DD); + addEEnumLiteral(countryEEnum, Country.NN); + addEEnumLiteral(countryEEnum, Country.OTHER); + + initEEnum(tax_Card_TypeEEnum, Tax_Card_Type.class, "Tax_Card_Type"); + addEEnumLiteral(tax_Card_TypeEEnum, Tax_Card_Type.PRINCIPAL); + addEEnumLiteral(tax_Card_TypeEEnum, Tax_Card_Type.ADDITIONAL); + + initEEnum(tax_OfficeEEnum, Tax_Office.class, "Tax_Office"); + addEEnumLiteral(tax_OfficeEEnum, Tax_Office.RTS_2); + addEEnumLiteral(tax_OfficeEEnum, Tax_Office.RTS_3); + addEEnumLiteral(tax_OfficeEEnum, Tax_Office.RTS_4); + addEEnumLiteral(tax_OfficeEEnum, Tax_Office.RTS_5); + + initEEnum(tax_Class_CategoryEEnum, Tax_Class_Category.class, "Tax_Class_Category"); + addEEnumLiteral(tax_Class_CategoryEEnum, Tax_Class_Category.ONE); + addEEnumLiteral(tax_Class_CategoryEEnum, Tax_Class_Category.ONE_A); + addEEnumLiteral(tax_Class_CategoryEEnum, Tax_Class_Category.TWO); + + initEEnum(job_ActivityEEnum, Job_Activity.class, "Job_Activity"); + addEEnumLiteral(job_ActivityEEnum, Job_Activity.SALARY); + addEEnumLiteral(job_ActivityEEnum, Job_Activity.PENSION); + addEEnumLiteral(job_ActivityEEnum, Job_Activity.ANNUITY); + + initEEnum(townEEnum, Town.class, "Town"); + addEEnumLiteral(townEEnum, Town.LL); + addEEnumLiteral(townEEnum, Town.BB); + addEEnumLiteral(townEEnum, Town.SS); + addEEnumLiteral(townEEnum, Town.TT); + addEEnumLiteral(townEEnum, Town.OTHER); + + initEEnum(type_of_RateEEnum, Type_of_Rate.class, "Type_of_Rate"); + addEEnumLiteral(type_of_RateEEnum, Type_of_Rate.REGULAR); + addEEnumLiteral(type_of_RateEEnum, Type_of_Rate.REAL_COST); + + initEEnum(cE_TypeEEnum, CE_Type.class, "CE_Type"); + addEEnumLiteral(cE_TypeEEnum, CE_Type.INALIDITY_AND_INFIRMITY); + addEEnumLiteral(cE_TypeEEnum, CE_Type.DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD); + addEEnumLiteral(cE_TypeEEnum, CE_Type.CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD); + + initEEnum(expense_PurposeEEnum, Expense_Purpose.class, "Expense_Purpose"); + addEEnumLiteral(expense_PurposeEEnum, Expense_Purpose.HOUSE_CARE); + addEEnumLiteral(expense_PurposeEEnum, Expense_Purpose.CHILD_CARE); + addEEnumLiteral(expense_PurposeEEnum, Expense_Purpose.DEPENDENCE_CARE); + addEEnumLiteral(expense_PurposeEEnum, Expense_Purpose.OTHER); + addEEnumLiteral(expense_PurposeEEnum, Expense_Purpose.ALIMONY); + addEEnumLiteral(expense_PurposeEEnum, Expense_Purpose.RECURRENT_DEPT); + + initEEnum(dependent_TypeEEnum, Dependent_Type.class, "Dependent_Type"); + addEEnumLiteral(dependent_TypeEEnum, Dependent_Type.CHILD); + addEEnumLiteral(dependent_TypeEEnum, Dependent_Type.SPOUSE); + addEEnumLiteral(dependent_TypeEEnum, Dependent_Type.RELATIVE); + addEEnumLiteral(dependent_TypeEEnum, Dependent_Type.OTHER_FAMILY_MEMBER); + addEEnumLiteral(dependent_TypeEEnum, Dependent_Type.NOT_OWN_CHILD); + + initEEnum(separation_CausesEEnum, Separation_Causes.class, "Separation_Causes"); + addEEnumLiteral(separation_CausesEEnum, Separation_Causes.NONE); + addEEnumLiteral(separation_CausesEEnum, Separation_Causes.DIVORCE); + addEEnumLiteral(separation_CausesEEnum, Separation_Causes.SEPARATION_DE_FAIT); + addEEnumLiteral(separation_CausesEEnum, Separation_Causes.SEPARATION_BY_COURT); + + initEEnum(category_of_Permanent_ExpenseEEnum, Category_of_Permanent_Expense.class, "Category_of_Permanent_Expense"); + addEEnumLiteral(category_of_Permanent_ExpenseEEnum, Category_of_Permanent_Expense.MISCELLANEOUS_DEBT); + addEEnumLiteral(category_of_Permanent_ExpenseEEnum, Category_of_Permanent_Expense.ALIMONY); + + initEEnum(category_of_Health_and_Pension_InsurancesEEnum, Category_of_Health_and_Pension_Insurances.class, "Category_of_Health_and_Pension_Insurances"); + addEEnumLiteral(category_of_Health_and_Pension_InsurancesEEnum, Category_of_Health_and_Pension_Insurances.MANDATORY_HEALTH_AND_PENSION_INSURANCE); + addEEnumLiteral(category_of_Health_and_Pension_InsurancesEEnum, Category_of_Health_and_Pension_Insurances.ADDITIONAL_EMPLOYERS_PENSION_INSURANCE); + addEEnumLiteral(category_of_Health_and_Pension_InsurancesEEnum, Category_of_Health_and_Pension_Insurances.CONTINUED_HEALTH_AND_PENSION_INSURANCE); + + initEEnum(category_of_Private_Insurance_and_PlanEEnum, Category_of_Private_Insurance_and_Plan.class, "Category_of_Private_Insurance_and_Plan"); + addEEnumLiteral(category_of_Private_Insurance_and_PlanEEnum, Category_of_Private_Insurance_and_Plan.PRIVATE_INSURANCE); + addEEnumLiteral(category_of_Private_Insurance_and_PlanEEnum, Category_of_Private_Insurance_and_Plan.PRIVATE_LIFE_INSURANCE); + addEEnumLiteral(category_of_Private_Insurance_and_PlanEEnum, Category_of_Private_Insurance_and_Plan.COMPANY_MEMBERS_PRIVATE_INSURANCE); + addEEnumLiteral(category_of_Private_Insurance_and_PlanEEnum, Category_of_Private_Insurance_and_Plan.HOUSING_SAVING_PLAN); + addEEnumLiteral(category_of_Private_Insurance_and_PlanEEnum, Category_of_Private_Insurance_and_Plan.OLD_AGE_PENSION_PLAN); + + initEEnum(legal_Union_TypesEEnum, Legal_Union_Types.class, "Legal_Union_Types"); + addEEnumLiteral(legal_Union_TypesEEnum, Legal_Union_Types.MARIAGE); + addEEnumLiteral(legal_Union_TypesEEnum, Legal_Union_Types.PARTNERSHIP); + addEEnumLiteral(legal_Union_TypesEEnum, Legal_Union_Types.OTHER); + + // Create resource + createResource(eNS_URI); + + // Create annotations + // http://www.eclipse.org/OCL/Import + createImportAnnotations(); + // duplicates + createDuplicatesAnnotations(); + // http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName + createEmofAnnotations(); + // http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot + createPivotAnnotations(); + } + + /** + * Initializes the annotations for http://www.eclipse.org/OCL/Import. + * + * + * @generated + */ + protected void createImportAnnotations() { + String source = "http://www.eclipse.org/OCL/Import"; + addAnnotation + (this, + source, + new String[] { + "ecore", "http://www.eclipse.org/emf/2002/Ecore" + }); + } + + /** + * Initializes the annotations for duplicates. + * + * + * @generated + */ + protected void createDuplicatesAnnotations() { + String source = "duplicates"; + addAnnotation + (tax_PayerEClass, + source, + new String[] { + }); + } + + /** + * Initializes the annotations for http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName. + * + * + * @generated + */ + protected void createEmofAnnotations() { + String source = "http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"; + addAnnotation + (getLegal_Union_Record_Individual_A(), + source, + new String[] { + "body", "legal_union_A" + }); + addAnnotation + (getLegal_Union_Record_Individual_B(), + source, + new String[] { + "body", "legal_union_B" + }); + } + + /** + * Initializes the annotations for http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot. + * + * + * @generated + */ + protected void createPivotAnnotations() { + String source = "http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot"; + addAnnotation + (getIncome_Income_amount(), + source, + new String[] { + "derivation", "let non_null_amounts:OrderedSet(Income_Detail)=self.details->select(det:Income_Detail|det.amount>0)->asOrderedSet() in\nnon_null_amounts->collect(amount)->min()" + }); + addAnnotation + (getIncome_Type_SubjectToWithholdingTax(), + source, + new String[] { + "derivation", "\n\t\t\t\tself.income.tax_card->notEmpty()\n\t\t\t\t" + }); + addAnnotation + (getTax_Card_Tax_card_type(), + source, + new String[] { + "derivation", "if(self.income.taxPayer.incomes->size()=1) then \nTax_Card_Type::Principal\n\telse\n\t\tlet all_incomes:OrderedSet(Income)=self.income.taxPayer.incomes->select(inc:Income| inc.income_amount= self.income.taxPayer.incomes.income_amount->max())->asOrderedSet() in\n\t\tlet bigest_income:Income= all_incomes->first() in\n\t\t\t if(bigest_income=self.income) then\n\t\t\t \t Tax_Card_Type::Principal\n\t\t\t else\n\t\t\t\t\tTax_Card_Type::Additional\n\t\t\t\tendif\nendif\n\t\t\t\t" + }); + } + +} //TaxationPackageImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Trade_and_Business_IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Trade_and_Business_IncomeImpl.java new file mode 100644 index 00000000..f4ce3360 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Trade_and_Business_IncomeImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.TaxationPackage; +import Taxation.Trade_and_Business_Income; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Trade and Business Income'. + * + * + * @generated + */ +public class Trade_and_Business_IncomeImpl extends Income_TypeImpl implements Trade_and_Business_Income { + /** + * + * + * @generated + */ + protected Trade_and_Business_IncomeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.TRADE_AND_BUSINESS_INCOME; + } + +} //Trade_and_Business_IncomeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Travel_Expense_FDImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Travel_Expense_FDImpl.java new file mode 100644 index 00000000..c24e0b2f --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Travel_Expense_FDImpl.java @@ -0,0 +1,37 @@ +/** + */ +package Taxation.impl; + +import Taxation.TaxationPackage; +import Taxation.Travel_Expense_FD; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Travel Expense FD'. + * + * + * @generated + */ +public class Travel_Expense_FDImpl extends Professional_ExpenseImpl implements Travel_Expense_FD { + /** + * + * + * @generated + */ + protected Travel_Expense_FDImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.TRAVEL_EXPENSE_FD; + } + +} //Travel_Expense_FDImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/util/TaxationAdapterFactory.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/util/TaxationAdapterFactory.java new file mode 100644 index 00000000..332b42e2 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/util/TaxationAdapterFactory.java @@ -0,0 +1,1146 @@ +/** + */ +package Taxation.util; + +import Taxation.*; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * The Adapter Factory for the model. + * It provides an adapter createXXX method for each class of the model. + * + * @see Taxation.TaxationPackage + * @generated + */ +public class TaxationAdapterFactory extends AdapterFactoryImpl { + /** + * The cached model package. + * + * + * @generated + */ + protected static TaxationPackage modelPackage; + + /** + * Creates an instance of the adapter factory. + * + * + * @generated + */ + public TaxationAdapterFactory() { + if (modelPackage == null) { + modelPackage = TaxationPackage.eINSTANCE; + } + } + + /** + * Returns whether this factory is applicable for the type of the object. + * + * This implementation returns true if the object is either the model's package or is an instance object of the model. + * + * @return whether this factory is applicable for the type of the object. + * @generated + */ + @Override + public boolean isFactoryForType(Object object) { + if (object == modelPackage) { + return true; + } + if (object instanceof EObject) { + return ((EObject)object).eClass().getEPackage() == modelPackage; + } + return false; + } + + /** + * The switch that delegates to the createXXX methods. + * + * + * @generated + */ + protected TaxationSwitch modelSwitch = + new TaxationSwitch() { + @Override + public Adapter caseConstants(Constants object) { + return createConstantsAdapter(); + } + @Override + public Adapter caseIncome_Tax(Income_Tax object) { + return createIncome_TaxAdapter(); + } + @Override + public Adapter caseTax_Payer(Tax_Payer object) { + return createTax_PayerAdapter(); + } + @Override + public Adapter casePhysical_Person(Physical_Person object) { + return createPhysical_PersonAdapter(); + } + @Override + public Adapter caseAddress(Address object) { + return createAddressAdapter(); + } + @Override + public Adapter caseExpense(Expense object) { + return createExpenseAdapter(); + } + @Override + public Adapter caseDependent(Dependent object) { + return createDependentAdapter(); + } + @Override + public Adapter caseExternal_Allowance(External_Allowance object) { + return createExternal_AllowanceAdapter(); + } + @Override + public Adapter caseHousehold(Household object) { + return createHouseholdAdapter(); + } + @Override + public Adapter caseLegal_Union_Record(Legal_Union_Record object) { + return createLegal_Union_RecordAdapter(); + } + @Override + public Adapter caseTax_Property(Tax_Property object) { + return createTax_PropertyAdapter(); + } + @Override + public Adapter caseTax_Case(Tax_Case object) { + return createTax_CaseAdapter(); + } + @Override + public Adapter caseFromAgent(FromAgent object) { + return createFromAgentAdapter(); + } + @Override + public Adapter caseIncome(Income object) { + return createIncomeAdapter(); + } + @Override + public Adapter caseIncome_Type(Income_Type object) { + return createIncome_TypeAdapter(); + } + @Override + public Adapter caseTax_Card(Tax_Card object) { + return createTax_CardAdapter(); + } + @Override + public Adapter caseIncome_Tax_Credit(Income_Tax_Credit object) { + return createIncome_Tax_CreditAdapter(); + } + @Override + public Adapter caseIncome_Detail(Income_Detail object) { + return createIncome_DetailAdapter(); + } + @Override + public Adapter caseFromLaw(FromLaw object) { + return createFromLawAdapter(); + } + @Override + public Adapter caseFiscal_Address(Fiscal_Address object) { + return createFiscal_AddressAdapter(); + } + @Override + public Adapter caseHabitual_Address(Habitual_Address object) { + return createHabitual_AddressAdapter(); + } + @Override + public Adapter caseMarriage_Record(Marriage_Record object) { + return createMarriage_RecordAdapter(); + } + @Override + public Adapter caseNon_Resident_Tax_Payer(Non_Resident_Tax_Payer object) { + return createNon_Resident_Tax_PayerAdapter(); + } + @Override + public Adapter casePartnership_Record(Partnership_Record object) { + return createPartnership_RecordAdapter(); + } + @Override + public Adapter caseResident_Tax_Payer(Resident_Tax_Payer object) { + return createResident_Tax_PayerAdapter(); + } + @Override + public Adapter caseTrade_and_Business_Income(Trade_and_Business_Income object) { + return createTrade_and_Business_IncomeAdapter(); + } + @Override + public Adapter caseAgriculture_and_Forestry_Income(Agriculture_and_Forestry_Income object) { + return createAgriculture_and_Forestry_IncomeAdapter(); + } + @Override + public Adapter casePensions_and_Annuities_Income(Pensions_and_Annuities_Income object) { + return createPensions_and_Annuities_IncomeAdapter(); + } + @Override + public Adapter caseCapital_and_Investments_Income(Capital_and_Investments_Income object) { + return createCapital_and_Investments_IncomeAdapter(); + } + @Override + public Adapter caseEmployment_Income(Employment_Income object) { + return createEmployment_IncomeAdapter(); + } + @Override + public Adapter caseRentals_and_Leases_Income(Rentals_and_Leases_Income object) { + return createRentals_and_Leases_IncomeAdapter(); + } + @Override + public Adapter caseForeign_Income(Foreign_Income object) { + return createForeign_IncomeAdapter(); + } + @Override + public Adapter caseLocal_Income(Local_Income object) { + return createLocal_IncomeAdapter(); + } + @Override + public Adapter caseCIM(CIM object) { + return createCIMAdapter(); + } + @Override + public Adapter caseCIP(CIP object) { + return createCIPAdapter(); + } + @Override + public Adapter caseCIS(CIS object) { + return createCISAdapter(); + } + @Override + public Adapter caseFD(FD object) { + return createFDAdapter(); + } + @Override + public Adapter caseProfessional_Expenses_Deduction(Professional_Expenses_Deduction object) { + return createProfessional_Expenses_DeductionAdapter(); + } + @Override + public Adapter caseFO(FO object) { + return createFOAdapter(); + } + @Override + public Adapter caseDS_for_Permanent_Expense(DS_for_Permanent_Expense object) { + return createDS_for_Permanent_ExpenseAdapter(); + } + @Override + public Adapter caseDS(DS object) { + return createDSAdapter(); + } + @Override + public Adapter caseDS_for_Interest_Expense(DS_for_Interest_Expense object) { + return createDS_for_Interest_ExpenseAdapter(); + } + @Override + public Adapter caseDS_for_Health_and_Pension_Insurance(DS_for_Health_and_Pension_Insurance object) { + return createDS_for_Health_and_Pension_InsuranceAdapter(); + } + @Override + public Adapter caseDS_for_Private_Insurance_and_Plan(DS_for_Private_Insurance_and_Plan object) { + return createDS_for_Private_Insurance_and_PlanAdapter(); + } + @Override + public Adapter caseDS_for_Loss_Carryforward(DS_for_Loss_Carryforward object) { + return createDS_for_Loss_CarryforwardAdapter(); + } + @Override + public Adapter caseDS_for_Donation(DS_for_Donation object) { + return createDS_for_DonationAdapter(); + } + @Override + public Adapter casePermanent_Expense(Permanent_Expense object) { + return createPermanent_ExpenseAdapter(); + } + @Override + public Adapter caseSpecial_Expense_DS(Special_Expense_DS object) { + return createSpecial_Expense_DSAdapter(); + } + @Override + public Adapter caseInterest_Expense(Interest_Expense object) { + return createInterest_ExpenseAdapter(); + } + @Override + public Adapter casePrivate_Insurance_and_Plan(Private_Insurance_and_Plan object) { + return createPrivate_Insurance_and_PlanAdapter(); + } + @Override + public Adapter caseHealth_and_Pension_Insurance(Health_and_Pension_Insurance object) { + return createHealth_and_Pension_InsuranceAdapter(); + } + @Override + public Adapter caseDonation(Donation object) { + return createDonationAdapter(); + } + @Override + public Adapter caseLoss_Carryforward(Loss_Carryforward object) { + return createLoss_CarryforwardAdapter(); + } + @Override + public Adapter caseSpousal_Expense_AC(Spousal_Expense_AC object) { + return createSpousal_Expense_ACAdapter(); + } + @Override + public Adapter caseExtraordinary_Expense_CE(Extraordinary_Expense_CE object) { + return createExtraordinary_Expense_CEAdapter(); + } + @Override + public Adapter caseTravel_Expense_FD(Travel_Expense_FD object) { + return createTravel_Expense_FDAdapter(); + } + @Override + public Adapter caseProfessional_Expense(Professional_Expense object) { + return createProfessional_ExpenseAdapter(); + } + @Override + public Adapter caseMiscellaneous_Expense_FO(Miscellaneous_Expense_FO object) { + return createMiscellaneous_Expense_FOAdapter(); + } + @Override + public Adapter defaultCase(EObject object) { + return createEObjectAdapter(); + } + }; + + /** + * Creates an adapter for the target. + * + * + * @param target the object to adapt. + * @return the adapter for the target. + * @generated + */ + @Override + public Adapter createAdapter(Notifier target) { + return modelSwitch.doSwitch((EObject)target); + } + + + /** + * Creates a new adapter for an object of class '{@link Taxation.Constants Constants}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Constants + * @generated + */ + public Adapter createConstantsAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Income_Tax Income Tax}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Income_Tax + * @generated + */ + public Adapter createIncome_TaxAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Tax_Payer Tax Payer}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Tax_Payer + * @generated + */ + public Adapter createTax_PayerAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Physical_Person Physical Person}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Physical_Person + * @generated + */ + public Adapter createPhysical_PersonAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Address Address}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Address + * @generated + */ + public Adapter createAddressAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Expense Expense}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Expense + * @generated + */ + public Adapter createExpenseAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Dependent Dependent}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Dependent + * @generated + */ + public Adapter createDependentAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.External_Allowance External Allowance}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.External_Allowance + * @generated + */ + public Adapter createExternal_AllowanceAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Household Household}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Household + * @generated + */ + public Adapter createHouseholdAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Legal_Union_Record Legal Union Record}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Legal_Union_Record + * @generated + */ + public Adapter createLegal_Union_RecordAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Tax_Property Tax Property}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Tax_Property + * @generated + */ + public Adapter createTax_PropertyAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Tax_Case Tax Case}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Tax_Case + * @generated + */ + public Adapter createTax_CaseAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.FromAgent From Agent}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.FromAgent + * @generated + */ + public Adapter createFromAgentAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Income Income}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Income + * @generated + */ + public Adapter createIncomeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Income_Type Income Type}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Income_Type + * @generated + */ + public Adapter createIncome_TypeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Tax_Card Tax Card}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Tax_Card + * @generated + */ + public Adapter createTax_CardAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Income_Tax_Credit Income Tax Credit}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Income_Tax_Credit + * @generated + */ + public Adapter createIncome_Tax_CreditAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Income_Detail Income Detail}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Income_Detail + * @generated + */ + public Adapter createIncome_DetailAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.FromLaw From Law}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.FromLaw + * @generated + */ + public Adapter createFromLawAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Fiscal_Address Fiscal Address}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Fiscal_Address + * @generated + */ + public Adapter createFiscal_AddressAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Habitual_Address Habitual Address}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Habitual_Address + * @generated + */ + public Adapter createHabitual_AddressAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Marriage_Record Marriage Record}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Marriage_Record + * @generated + */ + public Adapter createMarriage_RecordAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Non_Resident_Tax_Payer Non Resident Tax Payer}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Non_Resident_Tax_Payer + * @generated + */ + public Adapter createNon_Resident_Tax_PayerAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Partnership_Record Partnership Record}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Partnership_Record + * @generated + */ + public Adapter createPartnership_RecordAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Resident_Tax_Payer Resident Tax Payer}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Resident_Tax_Payer + * @generated + */ + public Adapter createResident_Tax_PayerAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Trade_and_Business_Income Trade and Business Income}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Trade_and_Business_Income + * @generated + */ + public Adapter createTrade_and_Business_IncomeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Agriculture_and_Forestry_Income Agriculture and Forestry Income}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Agriculture_and_Forestry_Income + * @generated + */ + public Adapter createAgriculture_and_Forestry_IncomeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Pensions_and_Annuities_Income Pensions and Annuities Income}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Pensions_and_Annuities_Income + * @generated + */ + public Adapter createPensions_and_Annuities_IncomeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Capital_and_Investments_Income Capital and Investments Income}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Capital_and_Investments_Income + * @generated + */ + public Adapter createCapital_and_Investments_IncomeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Employment_Income Employment Income}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Employment_Income + * @generated + */ + public Adapter createEmployment_IncomeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Rentals_and_Leases_Income Rentals and Leases Income}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Rentals_and_Leases_Income + * @generated + */ + public Adapter createRentals_and_Leases_IncomeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Foreign_Income Foreign Income}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Foreign_Income + * @generated + */ + public Adapter createForeign_IncomeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Local_Income Local Income}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Local_Income + * @generated + */ + public Adapter createLocal_IncomeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.CIM CIM}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.CIM + * @generated + */ + public Adapter createCIMAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.CIP CIP}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.CIP + * @generated + */ + public Adapter createCIPAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.CIS CIS}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.CIS + * @generated + */ + public Adapter createCISAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.FD FD}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.FD + * @generated + */ + public Adapter createFDAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Professional_Expenses_Deduction Professional Expenses Deduction}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Professional_Expenses_Deduction + * @generated + */ + public Adapter createProfessional_Expenses_DeductionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.FO FO}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.FO + * @generated + */ + public Adapter createFOAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.DS_for_Permanent_Expense DS for Permanent Expense}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.DS_for_Permanent_Expense + * @generated + */ + public Adapter createDS_for_Permanent_ExpenseAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.DS DS}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.DS + * @generated + */ + public Adapter createDSAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.DS_for_Interest_Expense DS for Interest Expense}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.DS_for_Interest_Expense + * @generated + */ + public Adapter createDS_for_Interest_ExpenseAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.DS_for_Health_and_Pension_Insurance DS for Health and Pension Insurance}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.DS_for_Health_and_Pension_Insurance + * @generated + */ + public Adapter createDS_for_Health_and_Pension_InsuranceAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.DS_for_Private_Insurance_and_Plan DS for Private Insurance and Plan}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.DS_for_Private_Insurance_and_Plan + * @generated + */ + public Adapter createDS_for_Private_Insurance_and_PlanAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.DS_for_Loss_Carryforward DS for Loss Carryforward}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.DS_for_Loss_Carryforward + * @generated + */ + public Adapter createDS_for_Loss_CarryforwardAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.DS_for_Donation DS for Donation}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.DS_for_Donation + * @generated + */ + public Adapter createDS_for_DonationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Permanent_Expense Permanent Expense}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Permanent_Expense + * @generated + */ + public Adapter createPermanent_ExpenseAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Special_Expense_DS Special Expense DS}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Special_Expense_DS + * @generated + */ + public Adapter createSpecial_Expense_DSAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Interest_Expense Interest Expense}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Interest_Expense + * @generated + */ + public Adapter createInterest_ExpenseAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Private_Insurance_and_Plan Private Insurance and Plan}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Private_Insurance_and_Plan + * @generated + */ + public Adapter createPrivate_Insurance_and_PlanAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Health_and_Pension_Insurance Health and Pension Insurance}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Health_and_Pension_Insurance + * @generated + */ + public Adapter createHealth_and_Pension_InsuranceAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Donation Donation}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Donation + * @generated + */ + public Adapter createDonationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Loss_Carryforward Loss Carryforward}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Loss_Carryforward + * @generated + */ + public Adapter createLoss_CarryforwardAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Spousal_Expense_AC Spousal Expense AC}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Spousal_Expense_AC + * @generated + */ + public Adapter createSpousal_Expense_ACAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Extraordinary_Expense_CE Extraordinary Expense CE}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Extraordinary_Expense_CE + * @generated + */ + public Adapter createExtraordinary_Expense_CEAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Travel_Expense_FD Travel Expense FD}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Travel_Expense_FD + * @generated + */ + public Adapter createTravel_Expense_FDAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Professional_Expense Professional Expense}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Professional_Expense + * @generated + */ + public Adapter createProfessional_ExpenseAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link Taxation.Miscellaneous_Expense_FO Miscellaneous Expense FO}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see Taxation.Miscellaneous_Expense_FO + * @generated + */ + public Adapter createMiscellaneous_Expense_FOAdapter() { + return null; + } + + /** + * Creates a new adapter for the default case. + * + * This default implementation returns null. + * + * @return the new adapter. + * @generated + */ + public Adapter createEObjectAdapter() { + return null; + } + +} //TaxationAdapterFactory diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/util/TaxationSwitch.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/util/TaxationSwitch.java new file mode 100644 index 00000000..8e62161d --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/util/TaxationSwitch.java @@ -0,0 +1,1360 @@ +/** + */ +package Taxation.util; + +import Taxation.*; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.util.Switch; + +/** + * + * The Switch for the model's inheritance hierarchy. + * It supports the call {@link #doSwitch(EObject) doSwitch(object)} + * to invoke the caseXXX method for each class of the model, + * starting with the actual class of the object + * and proceeding up the inheritance hierarchy + * until a non-null result is returned, + * which is the result of the switch. + * + * @see Taxation.TaxationPackage + * @generated + */ +public class TaxationSwitch extends Switch { + /** + * The cached model package + * + * + * @generated + */ + protected static TaxationPackage modelPackage; + + /** + * Creates an instance of the switch. + * + * + * @generated + */ + public TaxationSwitch() { + if (modelPackage == null) { + modelPackage = TaxationPackage.eINSTANCE; + } + } + + /** + * Checks whether this is a switch for the given package. + * + * + * @param ePackage the package in question. + * @return whether this is a switch for the given package. + * @generated + */ + @Override + protected boolean isSwitchFor(EPackage ePackage) { + return ePackage == modelPackage; + } + + /** + * Calls caseXXX for each class of the model until one returns a non null result; it yields that result. + * + * + * @return the first non-null result returned by a caseXXX call. + * @generated + */ + @Override + protected T doSwitch(int classifierID, EObject theEObject) { + switch (classifierID) { + case TaxationPackage.CONSTANTS: { + Constants constants = (Constants)theEObject; + T result = caseConstants(constants); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.INCOME_TAX: { + Income_Tax income_Tax = (Income_Tax)theEObject; + T result = caseIncome_Tax(income_Tax); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.TAX_PAYER: { + Tax_Payer tax_Payer = (Tax_Payer)theEObject; + T result = caseTax_Payer(tax_Payer); + if (result == null) result = casePhysical_Person(tax_Payer); + if (result == null) result = caseTax_Case(tax_Payer); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.PHYSICAL_PERSON: { + Physical_Person physical_Person = (Physical_Person)theEObject; + T result = casePhysical_Person(physical_Person); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.ADDRESS: { + Address address = (Address)theEObject; + T result = caseAddress(address); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.EXPENSE: { + Expense expense = (Expense)theEObject; + T result = caseExpense(expense); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.DEPENDENT: { + Dependent dependent = (Dependent)theEObject; + T result = caseDependent(dependent); + if (result == null) result = casePhysical_Person(dependent); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.EXTERNAL_ALLOWANCE: { + External_Allowance external_Allowance = (External_Allowance)theEObject; + T result = caseExternal_Allowance(external_Allowance); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.HOUSEHOLD: { + Household household = (Household)theEObject; + T result = caseHousehold(household); + if (result == null) result = caseTax_Case(household); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.LEGAL_UNION_RECORD: { + Legal_Union_Record legal_Union_Record = (Legal_Union_Record)theEObject; + T result = caseLegal_Union_Record(legal_Union_Record); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.TAX_PROPERTY: { + Tax_Property tax_Property = (Tax_Property)theEObject; + T result = caseTax_Property(tax_Property); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.TAX_CASE: { + Tax_Case tax_Case = (Tax_Case)theEObject; + T result = caseTax_Case(tax_Case); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.FROM_AGENT: { + FromAgent fromAgent = (FromAgent)theEObject; + T result = caseFromAgent(fromAgent); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.INCOME: { + Income income = (Income)theEObject; + T result = caseIncome(income); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.INCOME_TYPE: { + Income_Type income_Type = (Income_Type)theEObject; + T result = caseIncome_Type(income_Type); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.TAX_CARD: { + Tax_Card tax_Card = (Tax_Card)theEObject; + T result = caseTax_Card(tax_Card); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.INCOME_TAX_CREDIT: { + Income_Tax_Credit income_Tax_Credit = (Income_Tax_Credit)theEObject; + T result = caseIncome_Tax_Credit(income_Tax_Credit); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.INCOME_DETAIL: { + Income_Detail income_Detail = (Income_Detail)theEObject; + T result = caseIncome_Detail(income_Detail); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.FROM_LAW: { + FromLaw fromLaw = (FromLaw)theEObject; + T result = caseFromLaw(fromLaw); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.FISCAL_ADDRESS: { + Fiscal_Address fiscal_Address = (Fiscal_Address)theEObject; + T result = caseFiscal_Address(fiscal_Address); + if (result == null) result = caseAddress(fiscal_Address); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.HABITUAL_ADDRESS: { + Habitual_Address habitual_Address = (Habitual_Address)theEObject; + T result = caseHabitual_Address(habitual_Address); + if (result == null) result = caseAddress(habitual_Address); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.MARRIAGE_RECORD: { + Marriage_Record marriage_Record = (Marriage_Record)theEObject; + T result = caseMarriage_Record(marriage_Record); + if (result == null) result = caseLegal_Union_Record(marriage_Record); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.NON_RESIDENT_TAX_PAYER: { + Non_Resident_Tax_Payer non_Resident_Tax_Payer = (Non_Resident_Tax_Payer)theEObject; + T result = caseNon_Resident_Tax_Payer(non_Resident_Tax_Payer); + if (result == null) result = caseTax_Payer(non_Resident_Tax_Payer); + if (result == null) result = casePhysical_Person(non_Resident_Tax_Payer); + if (result == null) result = caseTax_Case(non_Resident_Tax_Payer); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.PARTNERSHIP_RECORD: { + Partnership_Record partnership_Record = (Partnership_Record)theEObject; + T result = casePartnership_Record(partnership_Record); + if (result == null) result = caseLegal_Union_Record(partnership_Record); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.RESIDENT_TAX_PAYER: { + Resident_Tax_Payer resident_Tax_Payer = (Resident_Tax_Payer)theEObject; + T result = caseResident_Tax_Payer(resident_Tax_Payer); + if (result == null) result = caseTax_Payer(resident_Tax_Payer); + if (result == null) result = casePhysical_Person(resident_Tax_Payer); + if (result == null) result = caseTax_Case(resident_Tax_Payer); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.TRADE_AND_BUSINESS_INCOME: { + Trade_and_Business_Income trade_and_Business_Income = (Trade_and_Business_Income)theEObject; + T result = caseTrade_and_Business_Income(trade_and_Business_Income); + if (result == null) result = caseIncome_Type(trade_and_Business_Income); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.AGRICULTURE_AND_FORESTRY_INCOME: { + Agriculture_and_Forestry_Income agriculture_and_Forestry_Income = (Agriculture_and_Forestry_Income)theEObject; + T result = caseAgriculture_and_Forestry_Income(agriculture_and_Forestry_Income); + if (result == null) result = caseIncome_Type(agriculture_and_Forestry_Income); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.PENSIONS_AND_ANNUITIES_INCOME: { + Pensions_and_Annuities_Income pensions_and_Annuities_Income = (Pensions_and_Annuities_Income)theEObject; + T result = casePensions_and_Annuities_Income(pensions_and_Annuities_Income); + if (result == null) result = caseIncome_Type(pensions_and_Annuities_Income); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.CAPITAL_AND_INVESTMENTS_INCOME: { + Capital_and_Investments_Income capital_and_Investments_Income = (Capital_and_Investments_Income)theEObject; + T result = caseCapital_and_Investments_Income(capital_and_Investments_Income); + if (result == null) result = caseIncome_Type(capital_and_Investments_Income); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.EMPLOYMENT_INCOME: { + Employment_Income employment_Income = (Employment_Income)theEObject; + T result = caseEmployment_Income(employment_Income); + if (result == null) result = caseIncome_Type(employment_Income); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.RENTALS_AND_LEASES_INCOME: { + Rentals_and_Leases_Income rentals_and_Leases_Income = (Rentals_and_Leases_Income)theEObject; + T result = caseRentals_and_Leases_Income(rentals_and_Leases_Income); + if (result == null) result = caseIncome_Type(rentals_and_Leases_Income); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.FOREIGN_INCOME: { + Foreign_Income foreign_Income = (Foreign_Income)theEObject; + T result = caseForeign_Income(foreign_Income); + if (result == null) result = caseIncome(foreign_Income); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.LOCAL_INCOME: { + Local_Income local_Income = (Local_Income)theEObject; + T result = caseLocal_Income(local_Income); + if (result == null) result = caseIncome(local_Income); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.CIM: { + CIM cim = (CIM)theEObject; + T result = caseCIM(cim); + if (result == null) result = caseIncome_Tax_Credit(cim); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.CIP: { + CIP cip = (CIP)theEObject; + T result = caseCIP(cip); + if (result == null) result = caseIncome_Tax_Credit(cip); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.CIS: { + CIS cis = (CIS)theEObject; + T result = caseCIS(cis); + if (result == null) result = caseIncome_Tax_Credit(cis); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.FD: { + FD fd = (FD)theEObject; + T result = caseFD(fd); + if (result == null) result = caseProfessional_Expenses_Deduction(fd); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.PROFESSIONAL_EXPENSES_DEDUCTION: { + Professional_Expenses_Deduction professional_Expenses_Deduction = (Professional_Expenses_Deduction)theEObject; + T result = caseProfessional_Expenses_Deduction(professional_Expenses_Deduction); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.FO: { + FO fo = (FO)theEObject; + T result = caseFO(fo); + if (result == null) result = caseProfessional_Expenses_Deduction(fo); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.DS_FOR_PERMANENT_EXPENSE: { + DS_for_Permanent_Expense dS_for_Permanent_Expense = (DS_for_Permanent_Expense)theEObject; + T result = caseDS_for_Permanent_Expense(dS_for_Permanent_Expense); + if (result == null) result = caseDS(dS_for_Permanent_Expense); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.DS: { + DS ds = (DS)theEObject; + T result = caseDS(ds); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.DS_FOR_INTEREST_EXPENSE: { + DS_for_Interest_Expense dS_for_Interest_Expense = (DS_for_Interest_Expense)theEObject; + T result = caseDS_for_Interest_Expense(dS_for_Interest_Expense); + if (result == null) result = caseDS(dS_for_Interest_Expense); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE: { + DS_for_Health_and_Pension_Insurance dS_for_Health_and_Pension_Insurance = (DS_for_Health_and_Pension_Insurance)theEObject; + T result = caseDS_for_Health_and_Pension_Insurance(dS_for_Health_and_Pension_Insurance); + if (result == null) result = caseDS(dS_for_Health_and_Pension_Insurance); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN: { + DS_for_Private_Insurance_and_Plan dS_for_Private_Insurance_and_Plan = (DS_for_Private_Insurance_and_Plan)theEObject; + T result = caseDS_for_Private_Insurance_and_Plan(dS_for_Private_Insurance_and_Plan); + if (result == null) result = caseDS(dS_for_Private_Insurance_and_Plan); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.DS_FOR_LOSS_CARRYFORWARD: { + DS_for_Loss_Carryforward dS_for_Loss_Carryforward = (DS_for_Loss_Carryforward)theEObject; + T result = caseDS_for_Loss_Carryforward(dS_for_Loss_Carryforward); + if (result == null) result = caseDS(dS_for_Loss_Carryforward); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.DS_FOR_DONATION: { + DS_for_Donation dS_for_Donation = (DS_for_Donation)theEObject; + T result = caseDS_for_Donation(dS_for_Donation); + if (result == null) result = caseDS(dS_for_Donation); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.PERMANENT_EXPENSE: { + Permanent_Expense permanent_Expense = (Permanent_Expense)theEObject; + T result = casePermanent_Expense(permanent_Expense); + if (result == null) result = caseSpecial_Expense_DS(permanent_Expense); + if (result == null) result = caseExpense(permanent_Expense); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.SPECIAL_EXPENSE_DS: { + Special_Expense_DS special_Expense_DS = (Special_Expense_DS)theEObject; + T result = caseSpecial_Expense_DS(special_Expense_DS); + if (result == null) result = caseExpense(special_Expense_DS); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.INTEREST_EXPENSE: { + Interest_Expense interest_Expense = (Interest_Expense)theEObject; + T result = caseInterest_Expense(interest_Expense); + if (result == null) result = caseSpecial_Expense_DS(interest_Expense); + if (result == null) result = caseExpense(interest_Expense); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN: { + Private_Insurance_and_Plan private_Insurance_and_Plan = (Private_Insurance_and_Plan)theEObject; + T result = casePrivate_Insurance_and_Plan(private_Insurance_and_Plan); + if (result == null) result = caseSpecial_Expense_DS(private_Insurance_and_Plan); + if (result == null) result = caseExpense(private_Insurance_and_Plan); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE: { + Health_and_Pension_Insurance health_and_Pension_Insurance = (Health_and_Pension_Insurance)theEObject; + T result = caseHealth_and_Pension_Insurance(health_and_Pension_Insurance); + if (result == null) result = caseSpecial_Expense_DS(health_and_Pension_Insurance); + if (result == null) result = caseExpense(health_and_Pension_Insurance); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.DONATION: { + Donation donation = (Donation)theEObject; + T result = caseDonation(donation); + if (result == null) result = caseSpecial_Expense_DS(donation); + if (result == null) result = caseExpense(donation); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.LOSS_CARRYFORWARD: { + Loss_Carryforward loss_Carryforward = (Loss_Carryforward)theEObject; + T result = caseLoss_Carryforward(loss_Carryforward); + if (result == null) result = caseSpecial_Expense_DS(loss_Carryforward); + if (result == null) result = caseExpense(loss_Carryforward); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.SPOUSAL_EXPENSE_AC: { + Spousal_Expense_AC spousal_Expense_AC = (Spousal_Expense_AC)theEObject; + T result = caseSpousal_Expense_AC(spousal_Expense_AC); + if (result == null) result = caseExpense(spousal_Expense_AC); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE: { + Extraordinary_Expense_CE extraordinary_Expense_CE = (Extraordinary_Expense_CE)theEObject; + T result = caseExtraordinary_Expense_CE(extraordinary_Expense_CE); + if (result == null) result = caseExpense(extraordinary_Expense_CE); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.TRAVEL_EXPENSE_FD: { + Travel_Expense_FD travel_Expense_FD = (Travel_Expense_FD)theEObject; + T result = caseTravel_Expense_FD(travel_Expense_FD); + if (result == null) result = caseProfessional_Expense(travel_Expense_FD); + if (result == null) result = caseExpense(travel_Expense_FD); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.PROFESSIONAL_EXPENSE: { + Professional_Expense professional_Expense = (Professional_Expense)theEObject; + T result = caseProfessional_Expense(professional_Expense); + if (result == null) result = caseExpense(professional_Expense); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.MISCELLANEOUS_EXPENSE_FO: { + Miscellaneous_Expense_FO miscellaneous_Expense_FO = (Miscellaneous_Expense_FO)theEObject; + T result = caseMiscellaneous_Expense_FO(miscellaneous_Expense_FO); + if (result == null) result = caseProfessional_Expense(miscellaneous_Expense_FO); + if (result == null) result = caseExpense(miscellaneous_Expense_FO); + if (result == null) result = defaultCase(theEObject); + return result; + } + default: return defaultCase(theEObject); + } + } + + /** + * Returns the result of interpreting the object as an instance of 'Constants'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Constants'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseConstants(Constants object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Income Tax'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Income Tax'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIncome_Tax(Income_Tax object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Tax Payer'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Tax Payer'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTax_Payer(Tax_Payer object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Physical Person'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Physical Person'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T casePhysical_Person(Physical_Person object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Address'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Address'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAddress(Address object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Expense'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Expense'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseExpense(Expense object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Dependent'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Dependent'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDependent(Dependent object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'External Allowance'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'External Allowance'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseExternal_Allowance(External_Allowance object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Household'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Household'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseHousehold(Household object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Legal Union Record'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Legal Union Record'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseLegal_Union_Record(Legal_Union_Record object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Tax Property'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Tax Property'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTax_Property(Tax_Property object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Tax Case'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Tax Case'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTax_Case(Tax_Case object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'From Agent'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'From Agent'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFromAgent(FromAgent object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Income'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Income'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIncome(Income object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Income Type'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Income Type'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIncome_Type(Income_Type object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Tax Card'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Tax Card'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTax_Card(Tax_Card object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Income Tax Credit'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Income Tax Credit'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIncome_Tax_Credit(Income_Tax_Credit object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Income Detail'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Income Detail'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIncome_Detail(Income_Detail object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'From Law'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'From Law'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFromLaw(FromLaw object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Fiscal Address'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Fiscal Address'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFiscal_Address(Fiscal_Address object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Habitual Address'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Habitual Address'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseHabitual_Address(Habitual_Address object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Marriage Record'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Marriage Record'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseMarriage_Record(Marriage_Record object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Non Resident Tax Payer'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Non Resident Tax Payer'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseNon_Resident_Tax_Payer(Non_Resident_Tax_Payer object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Partnership Record'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Partnership Record'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T casePartnership_Record(Partnership_Record object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Resident Tax Payer'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Resident Tax Payer'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseResident_Tax_Payer(Resident_Tax_Payer object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Trade and Business Income'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Trade and Business Income'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTrade_and_Business_Income(Trade_and_Business_Income object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Agriculture and Forestry Income'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Agriculture and Forestry Income'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAgriculture_and_Forestry_Income(Agriculture_and_Forestry_Income object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Pensions and Annuities Income'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Pensions and Annuities Income'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T casePensions_and_Annuities_Income(Pensions_and_Annuities_Income object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Capital and Investments Income'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Capital and Investments Income'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseCapital_and_Investments_Income(Capital_and_Investments_Income object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Employment Income'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Employment Income'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseEmployment_Income(Employment_Income object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Rentals and Leases Income'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Rentals and Leases Income'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseRentals_and_Leases_Income(Rentals_and_Leases_Income object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Foreign Income'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Foreign Income'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseForeign_Income(Foreign_Income object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Local Income'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Local Income'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseLocal_Income(Local_Income object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'CIM'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'CIM'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseCIM(CIM object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'CIP'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'CIP'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseCIP(CIP object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'CIS'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'CIS'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseCIS(CIS object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'FD'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'FD'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFD(FD object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Professional Expenses Deduction'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Professional Expenses Deduction'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseProfessional_Expenses_Deduction(Professional_Expenses_Deduction object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'FO'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'FO'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFO(FO object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'DS for Permanent Expense'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'DS for Permanent Expense'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDS_for_Permanent_Expense(DS_for_Permanent_Expense object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'DS'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'DS'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDS(DS object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'DS for Interest Expense'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'DS for Interest Expense'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDS_for_Interest_Expense(DS_for_Interest_Expense object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'DS for Health and Pension Insurance'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'DS for Health and Pension Insurance'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDS_for_Health_and_Pension_Insurance(DS_for_Health_and_Pension_Insurance object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'DS for Private Insurance and Plan'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'DS for Private Insurance and Plan'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDS_for_Private_Insurance_and_Plan(DS_for_Private_Insurance_and_Plan object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'DS for Loss Carryforward'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'DS for Loss Carryforward'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDS_for_Loss_Carryforward(DS_for_Loss_Carryforward object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'DS for Donation'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'DS for Donation'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDS_for_Donation(DS_for_Donation object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Permanent Expense'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Permanent Expense'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T casePermanent_Expense(Permanent_Expense object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Special Expense DS'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Special Expense DS'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseSpecial_Expense_DS(Special_Expense_DS object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Interest Expense'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Interest Expense'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseInterest_Expense(Interest_Expense object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Private Insurance and Plan'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Private Insurance and Plan'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T casePrivate_Insurance_and_Plan(Private_Insurance_and_Plan object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Health and Pension Insurance'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Health and Pension Insurance'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseHealth_and_Pension_Insurance(Health_and_Pension_Insurance object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Donation'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Donation'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDonation(Donation object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Loss Carryforward'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Loss Carryforward'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseLoss_Carryforward(Loss_Carryforward object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Spousal Expense AC'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Spousal Expense AC'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseSpousal_Expense_AC(Spousal_Expense_AC object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Extraordinary Expense CE'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Extraordinary Expense CE'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseExtraordinary_Expense_CE(Extraordinary_Expense_CE object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Travel Expense FD'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Travel Expense FD'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTravel_Expense_FD(Travel_Expense_FD object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Professional Expense'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Professional Expense'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseProfessional_Expense(Professional_Expense object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Miscellaneous Expense FO'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Miscellaneous Expense FO'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseMiscellaneous_Expense_FO(Miscellaneous_Expense_FO object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'EObject'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch, but this is the last case anyway. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'EObject'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) + * @generated + */ + @Override + public T defaultCase(EObject object) { + return null; + } + +} //TaxationSwitch -- cgit v1.2.3-70-g09d2 From 68a0667e862f0714410aafbb499a95a03f5bee23 Mon Sep 17 00:00:00 2001 From: ArenBabikian Date: Tue, 28 Apr 2020 00:29:00 -0400 Subject: Able to run Pledge Case Study --- .../.ApplicationConfigurationIdeModule.xtendbin | Bin 1705 -> 1701 bytes .../ide/.ApplicationConfigurationIdeSetup.xtendbin | Bin 2535 -> 2526 bytes .../mit/inf/dslreasoner/application/ide/.gitignore | 4 + .../start-application.launch | 1041 +- .../.classpath | 1 + .../META-INF/MANIFEST.MF | 3 +- .../case.study.familyTree.model/bin/.gitignore | 1 + .../case.study.familyTree.run/bin/.gitignore | 2 + .../src-gen/queries/.gitignore | 4 + .../case.study.pledge.model/.classpath | 2 +- .../case.study.pledge.model/META-INF/MANIFEST.MF | 5 +- .../case.study.pledge.model/model/Taxation.aird | 63 +- .../case.study.pledge.model/model/Taxation.ecore | 10 - .../model/Taxation.genmodel | 7 +- .../src/Taxation/Income.java | 71 - .../src/Taxation/Physical_Person.java | 13 - .../src/Taxation/Private_Insurance_and_Plan.java | 1 + .../src/Taxation/Resident_Tax_Payer.java | 1 - .../src/Taxation/Tax_Card.java | 48 - .../src/Taxation/TaxationPackage.java | 340 +- .../src/Taxation/impl/DependentImpl.java | 1 + .../src/Taxation/impl/ExpenseImpl.java | 1 + .../src/Taxation/impl/External_AllowanceImpl.java | 1 + .../src/Taxation/impl/FromAgentImpl.java | 1 + .../src/Taxation/impl/IncomeImpl.java | 170 +- .../src/Taxation/impl/Income_DetailImpl.java | 1 + .../src/Taxation/impl/Income_TaxImpl.java | 1 + .../src/Taxation/impl/Income_Tax_CreditImpl.java | 1 + .../src/Taxation/impl/Legal_Union_RecordImpl.java | 1 + .../src/Taxation/impl/Physical_PersonImpl.java | 39 +- .../impl/Private_Insurance_and_PlanImpl.java | 1 + .../src/Taxation/impl/Resident_Tax_PayerImpl.java | 1 + .../src/Taxation/impl/Tax_CardImpl.java | 113 - .../src/Taxation/impl/Tax_PropertyImpl.java | 1 + .../src/Taxation/impl/Taxation.ecore | 1257 --- .../src/Taxation/impl/TaxationPackageImpl.java | 149 +- .../case.study.pledge.queries/.classpath | 9 - .../case.study.pledge.queries/.project | 62 - .../.settings/org.eclipse.core.resources.prefs | 2 - .../.settings/org.eclipse.jdt.core.prefs | 7 - .../.settings/org.eclipse.pde.core.prefs | 3 - .../case.study.pledge.queries/META-INF/MANIFEST.MF | 24 - .../case.study.pledge.queries/bin/.gitignore | 2 - .../bin/queries/.gitignore | 112 - .../bin/queries/NewOCLFileX.ocl | 45 - .../bin/queries/case_study_A.vql | 334 - .../bin/run/.RunGenerator.xtendbin | Bin 8709 -> 0 bytes .../case.study.pledge.queries/bin/run/.gitignore | 4 - .../case.study.pledge.queries/build.properties | 6 - .../case.study.pledge.queries/ocl/queries.ocl | 14 - .../case.study.pledge.queries/plugin.xml | 42 - .../src-gen/queries/.gitignore | 112 - .../src-gen/queries/Case_study_A.java | 438 - .../src-gen/queries/Inv03.java | 652 -- .../src-gen/queries/Inv05.java | 701 -- .../src-gen/queries/Inv06.java | 669 -- .../src-gen/queries/Inv07.java | 612 -- .../src-gen/queries/Inv08.java | 705 -- .../src-gen/queries/Inv10.java | 616 -- .../src-gen/queries/Inv11.java | 566 -- .../src-gen/queries/Inv12.java | 596 -- .../src-gen/queries/Inv13.java | 591 -- .../src-gen/queries/Inv15.java | 567 -- .../src-gen/queries/Inv17.java | 643 -- .../src-gen/queries/Inv20.java | 587 -- .../src-gen/queries/Inv33.java | 665 -- .../src-gen/queries/Inv34.java | 639 -- .../src-gen/queries/Inv35.java | 639 -- .../src-gen/queries/Inv47.java | 636 -- .../src-gen/queries/Inv48.java | 566 -- .../src-gen/queries/Inv49.java | 561 -- .../src-gen/queries/X_inv03_eligAll.java | 606 -- .../src-gen/queries/X_inv03_hasAll.java | 551 - .../src-gen/queries/X_inv05_inRange.java | 630 -- .../src-gen/queries/X_inv08_inRange.java | 630 -- .../src-gen/queries/X_inv08_noType.java | 551 - .../src-gen/queries/X_inv08_notEI.java | 544 - .../src-gen/queries/X_inv11_incNotOver100.java | 684 -- .../src-gen/queries/X_inv11_incOver100.java | 629 -- .../src-gen/queries/X_inv12_notNonRes.java | 544 - .../src-gen/queries/X_inv12_notZZ.java | 555 - .../src-gen/queries/X_inv13.java | 544 - .../src-gen/queries/X_inv15.java | 637 -- .../src-gen/queries/X_inv47.java | 569 -- .../src-gen/queries/X_inv48_3.java | 555 - .../src-gen/queries/X_inv48_Dis.java | 610 -- .../src-gen/queries/X_inv48_notDis.java | 569 -- .../src-gen/queries/X_inv49_1.java | 579 -- .../src-gen/queries/X_inv49_2.java | 544 - .../src/queries/NewOCLFileX.ocl | 45 - .../src/queries/case_study_A.vql | 334 - .../src/run/RunGenerator.xtend | 151 - .../xtend-gen/run/.RunGenerator.xtendbin | Bin 8709 -> 0 bytes .../xtend-gen/run/.gitignore | 4 - .../xtend-gen/run/GenerateScenarios.java | 165 - .../case.study.pledge.run/.classpath | 9 + .../case.study.pledge.run/.project | 62 + .../.settings/org.eclipse.core.resources.prefs | 2 + .../.settings/org.eclipse.jdt.core.prefs | 7 + .../.settings/org.eclipse.pde.core.prefs | 3 + .../case.study.pledge.run/META-INF/MANIFEST.MF | 37 + .../case.study.pledge.run/bin/.gitignore | 2 + .../case.study.pledge.run/build.properties | 6 + .../case.study.pledge.run/inputs/Household.xmi | 3 + .../inputs/Resident_Tax_Payer.xmi | 3 + .../case.study.pledge.run/ocl/queries.ocl | 14 + .../output/27-1503/problem.logicproblem | 151 + .../output/27-1503/solution0.gml | 1081 ++ .../output/27-1503/solution0.png | Bin 0 -> 103095 bytes .../output/27-1503/solution0.xmi | 8 + .../output/27-1504/problem.logicproblem | 151 + .../output/27-1504/solution0.gml | 1081 ++ .../output/27-1504/solution0.png | Bin 0 -> 86071 bytes .../output/27-1504/solution0.xmi | 8 + .../output/27-1505/problem.logicproblem | 151 + .../output/27-1505/solution0.gml | 1081 ++ .../output/27-1505/solution0.png | Bin 0 -> 88119 bytes .../output/27-1505/solution0.xmi | 8 + .../output/27-1508/problem.logicproblem | 151 + .../output/27-1508/solution0_0.gml | 1043 ++ .../output/27-1508/solution0_0.png | Bin 0 -> 80602 bytes .../output/27-1508/solution0_0.xmi | 8 + .../output/27-1508/solution1_0.gml | 1043 ++ .../output/27-1508/solution1_0.png | Bin 0 -> 76364 bytes .../output/27-1508/solution1_0.xmi | 8 + .../output/27-1514/problem.logicproblem | 151 + .../output/27-1514/solution0_0.gml | 1043 ++ .../output/27-1514/solution0_0.png | Bin 0 -> 77988 bytes .../output/27-1514/solution0_0.xmi | 8 + .../output/27-1514/solution1_0.gml | 815 ++ .../output/27-1514/solution1_0.png | Bin 0 -> 43239 bytes .../output/27-1514/solution1_0.xmi | 8 + .../output/27-1520/problem.logicproblem | 151 + .../output/27-1520/solution0_0.gml | 1043 ++ .../output/27-1520/solution0_0.png | Bin 0 -> 82352 bytes .../output/27-1520/solution0_0.xmi | 8 + .../output/27-1520/solution1_0.gml | 1119 +++ .../output/27-1520/solution1_0.png | Bin 0 -> 95334 bytes .../output/27-1520/solution1_0.xmi | 8 + .../output/27-1526/problem.logicproblem | 190 + .../output/27-1526/solution0_0.gml | 1259 +++ .../output/27-1526/solution0_0.png | Bin 0 -> 113380 bytes .../output/27-1526/solution0_0.xmi | 8 + .../output/27-1526/solution1_0.gml | 1221 +++ .../output/27-1526/solution1_0.png | Bin 0 -> 100856 bytes .../output/27-1526/solution1_0.xmi | 8 + .../output/27-1533/problem.logicproblem | 10009 ++++++++++++++++++ .../output/27-1535/problem.logicproblem | 10009 ++++++++++++++++++ .../output/27-1543/problem.logicproblem | 10009 ++++++++++++++++++ .../output/27-1543/solution0_0.gml | 3083 ++++++ .../output/27-1543/solution0_0.png | Bin 0 -> 261502 bytes .../output/27-1548/problem.logicproblem | 10009 ++++++++++++++++++ .../output/27-1557/problem.logicproblem | 151 + .../output/27-1557/solution0_0.gml | 1259 +++ .../output/27-1557/solution0_0.png | Bin 0 -> 100467 bytes .../output/27-1557/solution0_0.xmi | 8 + .../output/27-1557/solution1_0.gml | 1259 +++ .../output/27-1557/solution1_0.png | Bin 0 -> 87447 bytes .../output/27-1557/solution1_0.xmi | 8 + .../output/27-1610/problem.logicproblem | 151 + .../output/27-1610/solution0_0.gml | 1221 +++ .../output/27-1610/solution0_0.png | Bin 0 -> 92113 bytes .../output/27-1610/solution0_0.xmi | 8 + .../output/27-1610/solution1_0.gml | 1221 +++ .../output/27-1610/solution1_0.png | Bin 0 -> 92590 bytes .../output/27-1610/solution1_0.xmi | 8 + .../output/27-1613/problem.logicproblem | 151 + .../output/27-1613/solution0_0.gml | 1164 +++ .../output/27-1613/solution0_0.png | Bin 0 -> 87314 bytes .../output/27-1613/solution0_0.xmi | 8 + .../output/27-1613/solution1_0.gml | 1050 ++ .../output/27-1613/solution1_0.png | Bin 0 -> 52744 bytes .../output/27-1613/solution1_0.xmi | 8 + .../output/27-1622/problem.logicproblem | 151 + .../output/27-1622/solution0_0.gml | 1259 +++ .../output/27-1622/solution0_0.png | Bin 0 -> 98379 bytes .../output/27-1622/solution0_0.xmi | 8 + .../output/27-1622/solution1_0.gml | 1221 +++ .../output/27-1622/solution1_0.png | Bin 0 -> 92658 bytes .../output/27-1622/solution1_0.xmi | 8 + .../output/27-1623/problem.logicproblem | 151 + .../output/27-1623/solution0_0.gml | 1259 +++ .../output/27-1623/solution0_0.png | Bin 0 -> 85618 bytes .../output/27-1623/solution0_0.xmi | 8 + .../output/27-1623/solution1_0.gml | 1145 +++ .../output/27-1623/solution1_0.png | Bin 0 -> 81767 bytes .../output/27-1623/solution1_0.xmi | 8 + .../output/27-1624/problem.logicproblem | 151 + .../output/27-1624/solution0_0.gml | 1183 +++ .../output/27-1624/solution0_0.png | Bin 0 -> 66889 bytes .../output/27-1624/solution0_0.xmi | 8 + .../output/27-1624/solution1_0.gml | 1259 +++ .../output/27-1624/solution1_0.png | Bin 0 -> 87734 bytes .../output/27-1624/solution1_0.xmi | 8 + .../output/27-1628/problem.logicproblem | 10009 ++++++++++++++++++ .../output/27-1641/problem.logicproblem | 10009 ++++++++++++++++++ .../output/27-1645/problem.logicproblem | 10009 ++++++++++++++++++ .../output/27-1645/solution0_0.gml | 2768 +++++ .../output/27-1645/solution0_0.png | Bin 0 -> 248459 bytes .../output/27-1701/problem.logicproblem | 10009 ++++++++++++++++++ .../output/27-1714/problem.logicproblem | 10067 +++++++++++++++++++ .../output/27-1718/problem.logicproblem | 10067 +++++++++++++++++++ .../output/27-1733/problem.logicproblem | 10009 ++++++++++++++++++ .../output/27-1733/solution0_0.gml | 2803 ++++++ .../output/27-1733/solution0_0.png | Bin 0 -> 249904 bytes .../output/27-1933/problem.logicproblem | 10009 ++++++++++++++++++ .../output/27-1933/solution0_0.gml | 2803 ++++++ .../output/27-1933/solution0_0.png | Bin 0 -> 256064 bytes .../output/27-1946/problem.logicproblem | 10014 ++++++++++++++++++ .../case.study.pledge.run/plugin.xml | 1 + .../src-gen/queries/.gitignore | 112 + .../src/queries/NewOCLFileX.ocl | 45 + .../src/queries/case_study_A.vql | 334 + .../src/run/GenerateScenarios.xtend | 243 + .../case.study.pledge.run/xtend-gen/run/.gitignore | 5 + .../case.study.pledge.samples/.project | 2 +- 216 files changed, 172251 insertions(+), 25862 deletions(-) create mode 100644 Tests/MODELS2020-CaseStudies/case.study.familyTree.model/bin/.gitignore create mode 100644 Tests/MODELS2020-CaseStudies/case.study.familyTree.run/bin/.gitignore create mode 100644 Tests/MODELS2020-CaseStudies/case.study.familyTree.run/src-gen/queries/.gitignore delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Taxation.ecore delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.classpath delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.project delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.settings/org.eclipse.core.resources.prefs delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.settings/org.eclipse.jdt.core.prefs delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.settings/org.eclipse.pde.core.prefs delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/META-INF/MANIFEST.MF delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/.gitignore delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/queries/.gitignore delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/queries/NewOCLFileX.ocl delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/queries/case_study_A.vql delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/run/.RunGenerator.xtendbin delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/run/.gitignore delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/build.properties delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/ocl/queries.ocl delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/plugin.xml delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/.gitignore delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Case_study_A.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv03.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv05.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv06.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv07.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv08.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv10.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv11.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv12.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv13.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv15.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv17.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv20.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv33.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv34.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv35.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv47.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv48.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv49.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv03_eligAll.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv03_hasAll.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv05_inRange.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv08_inRange.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv08_noType.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv08_notEI.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv11_incNotOver100.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv11_incOver100.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv12_notNonRes.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv12_notZZ.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv13.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv15.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv47.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv48_3.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv48_Dis.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv48_notDis.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv49_1.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv49_2.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src/queries/NewOCLFileX.ocl delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src/queries/case_study_A.vql delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src/run/RunGenerator.xtend delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/xtend-gen/run/.RunGenerator.xtendbin delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/xtend-gen/run/.gitignore delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.queries/xtend-gen/run/GenerateScenarios.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/.classpath create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/.project create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/.settings/org.eclipse.core.resources.prefs create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/.settings/org.eclipse.jdt.core.prefs create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/.settings/org.eclipse.pde.core.prefs create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/META-INF/MANIFEST.MF create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/bin/.gitignore create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/build.properties create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/inputs/Household.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/inputs/Resident_Tax_Payer.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/ocl/queries.ocl create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1503/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1503/solution0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1503/solution0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1503/solution0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1504/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1504/solution0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1504/solution0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1504/solution0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1505/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1505/solution0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1505/solution0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1505/solution0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution0_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution0_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution0_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution1_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution1_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution1_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution0_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution0_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution0_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution1_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution1_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution1_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution0_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution0_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution0_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution1_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution1_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution1_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution0_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution0_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution0_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution1_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution1_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution1_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1533/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1535/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1543/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1543/solution0_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1543/solution0_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1548/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution0_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution0_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution0_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution1_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution1_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution1_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution0_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution0_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution0_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution1_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution1_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution1_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution0_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution0_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution0_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution1_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution1_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution1_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution0_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution0_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution0_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution1_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution1_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution1_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution0_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution0_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution0_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution1_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution1_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution1_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution0_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution0_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution0_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution1_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution1_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution1_0.xmi create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1628/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1641/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1645/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1645/solution0_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1645/solution0_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1701/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1714/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1718/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1733/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1733/solution0_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1733/solution0_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1933/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1933/solution0_0.gml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1933/solution0_0.png create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1946/problem.logicproblem create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/plugin.xml create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/src-gen/queries/.gitignore create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/queries/NewOCLFileX.ocl create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/queries/case_study_A.vql create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/run/GenerateScenarios.xtend create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.run/xtend-gen/run/.gitignore (limited to 'Tests/MODELS2020-CaseStudies/case.study.pledge.model/src') diff --git a/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.ApplicationConfigurationIdeModule.xtendbin b/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.ApplicationConfigurationIdeModule.xtendbin index ca156c38..a3b7b1f2 100644 Binary files a/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.ApplicationConfigurationIdeModule.xtendbin and b/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.ApplicationConfigurationIdeModule.xtendbin differ diff --git a/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.ApplicationConfigurationIdeSetup.xtendbin b/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.ApplicationConfigurationIdeSetup.xtendbin index 51888916..6d50bd9d 100644 Binary files a/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.ApplicationConfigurationIdeSetup.xtendbin and b/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.ApplicationConfigurationIdeSetup.xtendbin differ diff --git a/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.gitignore b/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.gitignore index 1089c736..c41377d5 100644 --- a/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.gitignore +++ b/Application/hu.bme.mit.inf.dslreasoner.application.ide/xtend-gen/hu/bme/mit/inf/dslreasoner/application/ide/.gitignore @@ -1,2 +1,6 @@ /.ApplicationConfigurationIdeModule.java._trace /.ApplicationConfigurationIdeSetup.java._trace +/.ApplicationConfigurationIdeModule.xtendbin +/.ApplicationConfigurationIdeSetup.xtendbin +/ApplicationConfigurationIdeModule.java +/ApplicationConfigurationIdeSetup.java diff --git a/Application/hu.bme.mit.inf.dslreasoner.application/start-application.launch b/Application/hu.bme.mit.inf.dslreasoner.application/start-application.launch index 1d040ec1..d4564a90 100644 --- a/Application/hu.bme.mit.inf.dslreasoner.application/start-application.launch +++ b/Application/hu.bme.mit.inf.dslreasoner.application/start-application.launch @@ -25,8 +25,1045 @@ - - + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/.classpath b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/.classpath index 75ccaa90..ea427d90 100644 --- a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/.classpath +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/.classpath @@ -5,5 +5,6 @@ + diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/META-INF/MANIFEST.MF b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/META-INF/MANIFEST.MF index 6aa9b63e..c7242106 100644 --- a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/META-INF/MANIFEST.MF +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/META-INF/MANIFEST.MF @@ -19,7 +19,8 @@ Require-Bundle: com.google.guava, org.eclipse.viatra.query.runtime.base.itc;bundle-version="1.5.0", org.eclipse.viatra.query.patternlanguage.emf;bundle-version="2.0.0", org.eclipse.xtext, - org.eclipse.xtext.xbase;bundle-version="2.18.0" + org.eclipse.xtext.xbase;bundle-version="2.18.0", + hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage;bundle-version="1.0.0" Bundle-ActivationPolicy: lazy Export-Package: hu.bme.mit.inf.dslreasoner.viatra2logic, hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations, diff --git a/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/bin/.gitignore b/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/bin/.gitignore new file mode 100644 index 00000000..05bc9085 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/bin/.gitignore @@ -0,0 +1 @@ +/familytree/ diff --git a/Tests/MODELS2020-CaseStudies/case.study.familyTree.run/bin/.gitignore b/Tests/MODELS2020-CaseStudies/case.study.familyTree.run/bin/.gitignore new file mode 100644 index 00000000..3d70f0da --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.familyTree.run/bin/.gitignore @@ -0,0 +1,2 @@ +/queries/ +/run/ diff --git a/Tests/MODELS2020-CaseStudies/case.study.familyTree.run/src-gen/queries/.gitignore b/Tests/MODELS2020-CaseStudies/case.study.familyTree.run/src-gen/queries/.gitignore new file mode 100644 index 00000000..1641b3f8 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.familyTree.run/src-gen/queries/.gitignore @@ -0,0 +1,4 @@ +/.FamilyTreeConstraints.java._trace +/.MemberIsItsOwnParent.java._trace +/FamilyTreeConstraints.java +/MemberIsItsOwnParent.java diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/.classpath b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/.classpath index 4cc715d5..9cc36f38 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/.classpath +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/.classpath @@ -1,8 +1,8 @@ + - diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/META-INF/MANIFEST.MF b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/META-INF/MANIFEST.MF index 5df271f3..4b5f5b2f 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/META-INF/MANIFEST.MF +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/META-INF/MANIFEST.MF @@ -15,9 +15,8 @@ Require-Bundle: org.eclipse.core.runtime, org.eclipse.viatra.query.runtime, org.eclipse.viatra.query.runtime.rete, org.eclipse.viatra.query.runtime.localsearch, - org.eclipse.xtext.xbase.lib, - test;bundle-version="0.1.0" + org.eclipse.xtext.xbase.lib Import-Package: org.apache.log4j -Automatic-Module-Name: case.study.a.model +Automatic-Module-Name: case.study.pledge.model Bundle-ActivationPolicy: lazy Bundle-RequiredExecutionEnvironment: JavaSE-1.8 diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/Taxation.aird b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/Taxation.aird index 6e583e0f..09539720 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/Taxation.aird +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/Taxation.aird @@ -2,10 +2,9 @@ Taxation.ecore - Taxation.genmodel - + @@ -820,18 +819,6 @@ - - - - - - - - - - - - @@ -878,14 +865,6 @@ - - - - - - - - @@ -3891,30 +3870,6 @@ - - - - - bold - - - - - - - - bold - - - - - - - - bold - - - @@ -3988,22 +3943,6 @@ - - - - - bold - - - - - - - - bold - - - diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/Taxation.ecore b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/Taxation.ecore index a1b9acd5..cfed4729 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/Taxation.ecore +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/Taxation.ecore @@ -335,12 +335,6 @@ - - - - - @@ -230,9 +230,6 @@ - - - @@ -249,8 +246,6 @@ - - diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income.java index 3e68e1ac..2f3dcfd4 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income.java @@ -2,8 +2,6 @@ */ package Taxation; -import java.util.Date; - import org.eclipse.emf.common.util.EList; import org.eclipse.emf.ecore.EObject; @@ -19,9 +17,6 @@ import org.eclipse.emf.ecore.EObject; *

    *
  • {@link Taxation.Income#getIncome_amount Income amount}
  • *
  • {@link Taxation.Income#getIncome_type Income type}
  • - *
  • {@link Taxation.Income#getStart_date_within_taxation_year Start date within taxation year}
  • - *
  • {@link Taxation.Income#getStart_date_of_contract Start date of contract}
  • - *
  • {@link Taxation.Income#getEnd_date_within_taxation_year End date within taxation year}
  • *
  • {@link Taxation.Income#getTax_card Tax card}
  • *
  • {@link Taxation.Income#getTax_liability Tax liability}
  • *
  • {@link Taxation.Income#getTaxPayer Tax Payer}
  • @@ -82,72 +77,6 @@ public interface Income extends EObject { */ void setIncome_type(Income_Type value); - /** - * Returns the value of the 'Start date within taxation year' attribute. - * - * - * @return the value of the 'Start date within taxation year' attribute. - * @see #setStart_date_within_taxation_year(Date) - * @see Taxation.TaxationPackage#getIncome_Start_date_within_taxation_year() - * @model unique="false" required="true" ordered="false" - * @generated - */ - Date getStart_date_within_taxation_year(); - - /** - * Sets the value of the '{@link Taxation.Income#getStart_date_within_taxation_year Start date within taxation year}' attribute. - * - * - * @param value the new value of the 'Start date within taxation year' attribute. - * @see #getStart_date_within_taxation_year() - * @generated - */ - void setStart_date_within_taxation_year(Date value); - - /** - * Returns the value of the 'Start date of contract' attribute. - * - * - * @return the value of the 'Start date of contract' attribute. - * @see #setStart_date_of_contract(Date) - * @see Taxation.TaxationPackage#getIncome_Start_date_of_contract() - * @model unique="false" required="true" ordered="false" - * @generated - */ - Date getStart_date_of_contract(); - - /** - * Sets the value of the '{@link Taxation.Income#getStart_date_of_contract Start date of contract}' attribute. - * - * - * @param value the new value of the 'Start date of contract' attribute. - * @see #getStart_date_of_contract() - * @generated - */ - void setStart_date_of_contract(Date value); - - /** - * Returns the value of the 'End date within taxation year' attribute. - * - * - * @return the value of the 'End date within taxation year' attribute. - * @see #setEnd_date_within_taxation_year(Date) - * @see Taxation.TaxationPackage#getIncome_End_date_within_taxation_year() - * @model unique="false" required="true" ordered="false" - * @generated - */ - Date getEnd_date_within_taxation_year(); - - /** - * Sets the value of the '{@link Taxation.Income#getEnd_date_within_taxation_year End date within taxation year}' attribute. - * - * - * @param value the new value of the 'End date within taxation year' attribute. - * @see #getEnd_date_within_taxation_year() - * @generated - */ - void setEnd_date_within_taxation_year(Date value); - /** * Returns the value of the 'Tax card' containment reference. * It is bidirectional and its opposite is '{@link Taxation.Tax_Card#getIncome Income}'. diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Physical_Person.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Physical_Person.java index 02144134..b2f40b46 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Physical_Person.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Physical_Person.java @@ -26,7 +26,6 @@ import org.eclipse.emf.ecore.EObject; *
  • {@link Taxation.Physical_Person#getBirth_day Birth day}
  • *
  • {@link Taxation.Physical_Person#getExpenses Expenses}
  • *
  • {@link Taxation.Physical_Person#isIs_widower Is widower}
  • - *
  • {@link Taxation.Physical_Person#getOwns_Address Owns Address}
  • *
* * @see Taxation.TaxationPackage#getPhysical_Person() @@ -263,16 +262,4 @@ public interface Physical_Person extends EObject { */ void setIs_widower(boolean value); - /** - * Returns the value of the 'Owns Address' containment reference list. - * The list contents are of type {@link Taxation.Address}. - * - * - * @return the value of the 'Owns Address' containment reference list. - * @see Taxation.TaxationPackage#getPhysical_Person_Owns_Address() - * @model containment="true" - * @generated - */ - EList
getOwns_Address(); - } // Physical_Person diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Private_Insurance_and_Plan.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Private_Insurance_and_Plan.java index 789099c5..5cd6e8f0 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Private_Insurance_and_Plan.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Private_Insurance_and_Plan.java @@ -2,6 +2,7 @@ */ package Taxation; + /** * * A representation of the model object 'Private Insurance and Plan'. diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Resident_Tax_Payer.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Resident_Tax_Payer.java index 6f529c32..1dedc64a 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Resident_Tax_Payer.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Resident_Tax_Payer.java @@ -14,5 +14,4 @@ package Taxation; * @generated */ public interface Resident_Tax_Payer extends Tax_Payer { - } // Resident_Tax_Payer diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card.java index 8bb5f622..bcfc0c75 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card.java @@ -2,8 +2,6 @@ */ package Taxation; -import java.util.Date; - import org.eclipse.emf.common.util.EList; import org.eclipse.emf.ecore.EObject; @@ -20,8 +18,6 @@ import org.eclipse.emf.ecore.EObject; *
  • {@link Taxation.Tax_Card#getCard_identifier Card identifier}
  • *
  • {@link Taxation.Tax_Card#getTax_card_type Tax card type}
  • *
  • {@link Taxation.Tax_Card#getTax_office Tax office}
  • - *
  • {@link Taxation.Tax_Card#getValid_from_date Valid from date}
  • - *
  • {@link Taxation.Tax_Card#getValid_until_date Valid until date}
  • *
  • {@link Taxation.Tax_Card#getPercentage_of_witholding Percentage of witholding}
  • *
  • {@link Taxation.Tax_Card#getTax_payers_name_surname Tax payers name surname}
  • *
  • {@link Taxation.Tax_Card#getTax_payers_partner_name_surname Tax payers partner name surname}
  • @@ -134,50 +130,6 @@ public interface Tax_Card extends EObject { */ void setTax_office(Tax_Office value); - /** - * Returns the value of the 'Valid from date' attribute. - * - * - * @return the value of the 'Valid from date' attribute. - * @see #setValid_from_date(Date) - * @see Taxation.TaxationPackage#getTax_Card_Valid_from_date() - * @model unique="false" required="true" ordered="false" - * @generated - */ - Date getValid_from_date(); - - /** - * Sets the value of the '{@link Taxation.Tax_Card#getValid_from_date Valid from date}' attribute. - * - * - * @param value the new value of the 'Valid from date' attribute. - * @see #getValid_from_date() - * @generated - */ - void setValid_from_date(Date value); - - /** - * Returns the value of the 'Valid until date' attribute. - * - * - * @return the value of the 'Valid until date' attribute. - * @see #setValid_until_date(Date) - * @see Taxation.TaxationPackage#getTax_Card_Valid_until_date() - * @model unique="false" required="true" ordered="false" - * @generated - */ - Date getValid_until_date(); - - /** - * Sets the value of the '{@link Taxation.Tax_Card#getValid_until_date Valid until date}' attribute. - * - * - * @param value the new value of the 'Valid until date' attribute. - * @see #getValid_until_date() - * @generated - */ - void setValid_until_date(Date value); - /** * Returns the value of the 'Percentage of witholding' attribute. * diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/TaxationPackage.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/TaxationPackage.java index 260e296f..8706121f 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/TaxationPackage.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/TaxationPackage.java @@ -484,15 +484,6 @@ public interface TaxationPackage extends EPackage { */ int PHYSICAL_PERSON__IS_WIDOWER = 10; - /** - * The feature id for the 'Owns Address' containment reference list. - * - * - * @generated - * @ordered - */ - int PHYSICAL_PERSON__OWNS_ADDRESS = 11; - /** * The number of structural features of the 'Physical Person' class. * @@ -500,7 +491,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int PHYSICAL_PERSON_FEATURE_COUNT = 12; + int PHYSICAL_PERSON_FEATURE_COUNT = 11; /** * The number of operations of the 'Physical Person' class. @@ -620,15 +611,6 @@ public interface TaxationPackage extends EPackage { */ int TAX_PAYER__IS_WIDOWER = PHYSICAL_PERSON__IS_WIDOWER; - /** - * The feature id for the 'Owns Address' containment reference list. - * - * - * @generated - * @ordered - */ - int TAX_PAYER__OWNS_ADDRESS = PHYSICAL_PERSON__OWNS_ADDRESS; - /** * The feature id for the 'Dependents' containment reference list. * @@ -974,15 +956,6 @@ public interface TaxationPackage extends EPackage { */ int DEPENDENT__IS_WIDOWER = PHYSICAL_PERSON__IS_WIDOWER; - /** - * The feature id for the 'Owns Address' containment reference list. - * - * - * @generated - * @ordered - */ - int DEPENDENT__OWNS_ADDRESS = PHYSICAL_PERSON__OWNS_ADDRESS; - /** * The feature id for the 'Dependent type' attribute. * @@ -1503,33 +1476,6 @@ public interface TaxationPackage extends EPackage { */ int INCOME__INCOME_TYPE = 1; - /** - * The feature id for the 'Start date within taxation year' attribute. - * - * - * @generated - * @ordered - */ - int INCOME__START_DATE_WITHIN_TAXATION_YEAR = 2; - - /** - * The feature id for the 'Start date of contract' attribute. - * - * - * @generated - * @ordered - */ - int INCOME__START_DATE_OF_CONTRACT = 3; - - /** - * The feature id for the 'End date within taxation year' attribute. - * - * - * @generated - * @ordered - */ - int INCOME__END_DATE_WITHIN_TAXATION_YEAR = 4; - /** * The feature id for the 'Tax card' containment reference. * @@ -1537,7 +1483,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME__TAX_CARD = 5; + int INCOME__TAX_CARD = 2; /** * The feature id for the 'Tax liability' attribute. @@ -1546,7 +1492,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME__TAX_LIABILITY = 6; + int INCOME__TAX_LIABILITY = 3; /** * The feature id for the 'Tax Payer' container reference. @@ -1555,7 +1501,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME__TAX_PAYER = 7; + int INCOME__TAX_PAYER = 4; /** * The feature id for the 'Details' containment reference list. @@ -1564,7 +1510,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME__DETAILS = 8; + int INCOME__DETAILS = 5; /** * The feature id for the 'Num' attribute. @@ -1573,7 +1519,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME__NUM = 9; + int INCOME__NUM = 6; /** * The feature id for the 'Expenses' containment reference list. @@ -1582,7 +1528,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME__EXPENSES = 10; + int INCOME__EXPENSES = 7; /** * The number of structural features of the 'Income' class. @@ -1591,7 +1537,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME_FEATURE_COUNT = 11; + int INCOME_FEATURE_COUNT = 8; /** * The number of operations of the 'Income' class. @@ -1694,24 +1640,6 @@ public interface TaxationPackage extends EPackage { */ int TAX_CARD__TAX_OFFICE = 2; - /** - * The feature id for the 'Valid from date' attribute. - * - * - * @generated - * @ordered - */ - int TAX_CARD__VALID_FROM_DATE = 3; - - /** - * The feature id for the 'Valid until date' attribute. - * - * - * @generated - * @ordered - */ - int TAX_CARD__VALID_UNTIL_DATE = 4; - /** * The feature id for the 'Percentage of witholding' attribute. * @@ -1719,7 +1647,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__PERCENTAGE_OF_WITHOLDING = 5; + int TAX_CARD__PERCENTAGE_OF_WITHOLDING = 3; /** * The feature id for the 'Tax payers name surname' attribute list. @@ -1728,7 +1656,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__TAX_PAYERS_NAME_SURNAME = 6; + int TAX_CARD__TAX_PAYERS_NAME_SURNAME = 4; /** * The feature id for the 'Tax payers partner name surname' attribute list. @@ -1737,7 +1665,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME = 7; + int TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME = 5; /** * The feature id for the 'Tax payers address' reference. @@ -1746,7 +1674,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__TAX_PAYERS_ADDRESS = 8; + int TAX_CARD__TAX_PAYERS_ADDRESS = 6; /** * The feature id for the 'Jobs Employer SS No' attribute. @@ -1755,7 +1683,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__JOBS_EMPLOYER_SS_NO = 9; + int TAX_CARD__JOBS_EMPLOYER_SS_NO = 7; /** * The feature id for the 'Jobs employers name' attribute. @@ -1764,7 +1692,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__JOBS_EMPLOYERS_NAME = 10; + int TAX_CARD__JOBS_EMPLOYERS_NAME = 8; /** * The feature id for the 'Jobs activity type' attribute. @@ -1773,7 +1701,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__JOBS_ACTIVITY_TYPE = 11; + int TAX_CARD__JOBS_ACTIVITY_TYPE = 9; /** * The feature id for the 'Jobs place of work' attribute. @@ -1782,7 +1710,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__JOBS_PLACE_OF_WORK = 12; + int TAX_CARD__JOBS_PLACE_OF_WORK = 10; /** * The feature id for the 'Deduction FD daily' attribute. @@ -1791,7 +1719,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_FD_DAILY = 13; + int TAX_CARD__DEDUCTION_FD_DAILY = 11; /** * The feature id for the 'Deduction FD monthly' attribute. @@ -1800,7 +1728,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_FD_MONTHLY = 14; + int TAX_CARD__DEDUCTION_FD_MONTHLY = 12; /** * The feature id for the 'Deduction AC daily' attribute. @@ -1809,7 +1737,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_AC_DAILY = 15; + int TAX_CARD__DEDUCTION_AC_DAILY = 13; /** * The feature id for the 'Deduction AC monthly' attribute. @@ -1818,7 +1746,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_AC_MONTHLY = 16; + int TAX_CARD__DEDUCTION_AC_MONTHLY = 14; /** * The feature id for the 'Deduction AC yearly' attribute. @@ -1827,7 +1755,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_AC_YEARLY = 17; + int TAX_CARD__DEDUCTION_AC_YEARLY = 15; /** * The feature id for the 'Deduction CE daily' attribute. @@ -1836,7 +1764,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_CE_DAILY = 18; + int TAX_CARD__DEDUCTION_CE_DAILY = 16; /** * The feature id for the 'Deduction CE monthly' attribute. @@ -1845,7 +1773,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_CE_MONTHLY = 19; + int TAX_CARD__DEDUCTION_CE_MONTHLY = 17; /** * The feature id for the 'Deduction CE yearly' attribute. @@ -1854,7 +1782,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_CE_YEARLY = 20; + int TAX_CARD__DEDUCTION_CE_YEARLY = 18; /** * The feature id for the 'Deduction DS daily' attribute. @@ -1863,7 +1791,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_DS_DAILY = 21; + int TAX_CARD__DEDUCTION_DS_DAILY = 19; /** * The feature id for the 'Deduction DS monthly' attribute. @@ -1872,7 +1800,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_DS_MONTHLY = 22; + int TAX_CARD__DEDUCTION_DS_MONTHLY = 20; /** * The feature id for the 'Deduction FO daily' attribute. @@ -1881,7 +1809,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_FO_DAILY = 23; + int TAX_CARD__DEDUCTION_FO_DAILY = 21; /** * The feature id for the 'Deduction FO monthly' attribute. @@ -1890,7 +1818,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_FO_MONTHLY = 24; + int TAX_CARD__DEDUCTION_FO_MONTHLY = 22; /** * The feature id for the 'Deduction FO yearly' attribute. @@ -1899,7 +1827,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_FO_YEARLY = 25; + int TAX_CARD__DEDUCTION_FO_YEARLY = 23; /** * The feature id for the 'Credit CIS daily' attribute. @@ -1908,7 +1836,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__CREDIT_CIS_DAILY = 26; + int TAX_CARD__CREDIT_CIS_DAILY = 24; /** * The feature id for the 'Credit CIS monthly' attribute. @@ -1917,7 +1845,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__CREDIT_CIS_MONTHLY = 27; + int TAX_CARD__CREDIT_CIS_MONTHLY = 25; /** * The feature id for the 'Credit CIM daily' attribute. @@ -1926,7 +1854,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__CREDIT_CIM_DAILY = 28; + int TAX_CARD__CREDIT_CIM_DAILY = 26; /** * The feature id for the 'Validity' attribute. @@ -1935,7 +1863,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__VALIDITY = 29; + int TAX_CARD__VALIDITY = 27; /** * The feature id for the 'Income Tax Credit' reference list. @@ -1944,7 +1872,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__INCOME_TAX_CREDIT = 30; + int TAX_CARD__INCOME_TAX_CREDIT = 28; /** * The feature id for the 'Previous' reference. @@ -1953,7 +1881,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__PREVIOUS = 31; + int TAX_CARD__PREVIOUS = 29; /** * The feature id for the 'Current tax card' reference. @@ -1962,7 +1890,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__CURRENT_TAX_CARD = 32; + int TAX_CARD__CURRENT_TAX_CARD = 30; /** * The feature id for the 'Credit CIM yearly' attribute. @@ -1971,7 +1899,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__CREDIT_CIM_YEARLY = 33; + int TAX_CARD__CREDIT_CIM_YEARLY = 31; /** * The feature id for the 'Deduction DS Alimony yearly' attribute. @@ -1980,7 +1908,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY = 34; + int TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY = 32; /** * The feature id for the 'Deduction DS Debt yearly' attribute. @@ -1989,7 +1917,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_DS_DEBT_YEARLY = 35; + int TAX_CARD__DEDUCTION_DS_DEBT_YEARLY = 33; /** * The feature id for the 'Income' container reference. @@ -1998,7 +1926,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__INCOME = 36; + int TAX_CARD__INCOME = 34; /** * The number of structural features of the 'Tax Card' class. @@ -2007,7 +1935,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD_FEATURE_COUNT = 37; + int TAX_CARD_FEATURE_COUNT = 35; /** * The number of operations of the 'Tax Card' class. @@ -2637,15 +2565,6 @@ public interface TaxationPackage extends EPackage { */ int NON_RESIDENT_TAX_PAYER__IS_WIDOWER = TAX_PAYER__IS_WIDOWER; - /** - * The feature id for the 'Owns Address' containment reference list. - * - * - * @generated - * @ordered - */ - int NON_RESIDENT_TAX_PAYER__OWNS_ADDRESS = TAX_PAYER__OWNS_ADDRESS; - /** * The feature id for the 'Dependents' containment reference list. * @@ -2936,15 +2855,6 @@ public interface TaxationPackage extends EPackage { */ int RESIDENT_TAX_PAYER__IS_WIDOWER = TAX_PAYER__IS_WIDOWER; - /** - * The feature id for the 'Owns Address' containment reference list. - * - * - * @generated - * @ordered - */ - int RESIDENT_TAX_PAYER__OWNS_ADDRESS = TAX_PAYER__OWNS_ADDRESS; - /** * The feature id for the 'Dependents' containment reference list. * @@ -3384,33 +3294,6 @@ public interface TaxationPackage extends EPackage { */ int FOREIGN_INCOME__INCOME_TYPE = INCOME__INCOME_TYPE; - /** - * The feature id for the 'Start date within taxation year' attribute. - * - * - * @generated - * @ordered - */ - int FOREIGN_INCOME__START_DATE_WITHIN_TAXATION_YEAR = INCOME__START_DATE_WITHIN_TAXATION_YEAR; - - /** - * The feature id for the 'Start date of contract' attribute. - * - * - * @generated - * @ordered - */ - int FOREIGN_INCOME__START_DATE_OF_CONTRACT = INCOME__START_DATE_OF_CONTRACT; - - /** - * The feature id for the 'End date within taxation year' attribute. - * - * - * @generated - * @ordered - */ - int FOREIGN_INCOME__END_DATE_WITHIN_TAXATION_YEAR = INCOME__END_DATE_WITHIN_TAXATION_YEAR; - /** * The feature id for the 'Tax card' containment reference. * @@ -3511,33 +3394,6 @@ public interface TaxationPackage extends EPackage { */ int LOCAL_INCOME__INCOME_TYPE = INCOME__INCOME_TYPE; - /** - * The feature id for the 'Start date within taxation year' attribute. - * - * - * @generated - * @ordered - */ - int LOCAL_INCOME__START_DATE_WITHIN_TAXATION_YEAR = INCOME__START_DATE_WITHIN_TAXATION_YEAR; - - /** - * The feature id for the 'Start date of contract' attribute. - * - * - * @generated - * @ordered - */ - int LOCAL_INCOME__START_DATE_OF_CONTRACT = INCOME__START_DATE_OF_CONTRACT; - - /** - * The feature id for the 'End date within taxation year' attribute. - * - * - * @generated - * @ordered - */ - int LOCAL_INCOME__END_DATE_WITHIN_TAXATION_YEAR = INCOME__END_DATE_WITHIN_TAXATION_YEAR; - /** * The feature id for the 'Tax card' containment reference. * @@ -6339,17 +6195,6 @@ public interface TaxationPackage extends EPackage { */ EAttribute getPhysical_Person_Is_widower(); - /** - * Returns the meta object for the containment reference list '{@link Taxation.Physical_Person#getOwns_Address Owns Address}'. - * - * - * @return the meta object for the containment reference list 'Owns Address'. - * @see Taxation.Physical_Person#getOwns_Address() - * @see #getPhysical_Person() - * @generated - */ - EReference getPhysical_Person_Owns_Address(); - /** * Returns the meta object for class '{@link Taxation.Address Address}'. * @@ -6989,39 +6834,6 @@ public interface TaxationPackage extends EPackage { */ EReference getIncome_Income_type(); - /** - * Returns the meta object for the attribute '{@link Taxation.Income#getStart_date_within_taxation_year Start date within taxation year}'. - * - * - * @return the meta object for the attribute 'Start date within taxation year'. - * @see Taxation.Income#getStart_date_within_taxation_year() - * @see #getIncome() - * @generated - */ - EAttribute getIncome_Start_date_within_taxation_year(); - - /** - * Returns the meta object for the attribute '{@link Taxation.Income#getStart_date_of_contract Start date of contract}'. - * - * - * @return the meta object for the attribute 'Start date of contract'. - * @see Taxation.Income#getStart_date_of_contract() - * @see #getIncome() - * @generated - */ - EAttribute getIncome_Start_date_of_contract(); - - /** - * Returns the meta object for the attribute '{@link Taxation.Income#getEnd_date_within_taxation_year End date within taxation year}'. - * - * - * @return the meta object for the attribute 'End date within taxation year'. - * @see Taxation.Income#getEnd_date_within_taxation_year() - * @see #getIncome() - * @generated - */ - EAttribute getIncome_End_date_within_taxation_year(); - /** * Returns the meta object for the containment reference '{@link Taxation.Income#getTax_card Tax card}'. * @@ -7174,28 +6986,6 @@ public interface TaxationPackage extends EPackage { */ EAttribute getTax_Card_Tax_office(); - /** - * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getValid_from_date Valid from date}'. - * - * - * @return the meta object for the attribute 'Valid from date'. - * @see Taxation.Tax_Card#getValid_from_date() - * @see #getTax_Card() - * @generated - */ - EAttribute getTax_Card_Valid_from_date(); - - /** - * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getValid_until_date Valid until date}'. - * - * - * @return the meta object for the attribute 'Valid until date'. - * @see Taxation.Tax_Card#getValid_until_date() - * @see #getTax_Card() - * @generated - */ - EAttribute getTax_Card_Valid_until_date(); - /** * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getPercentage_of_witholding Percentage of witholding}'. * @@ -9078,14 +8868,6 @@ public interface TaxationPackage extends EPackage { */ EAttribute PHYSICAL_PERSON__IS_WIDOWER = eINSTANCE.getPhysical_Person_Is_widower(); - /** - * The meta object literal for the 'Owns Address' containment reference list feature. - * - * - * @generated - */ - EReference PHYSICAL_PERSON__OWNS_ADDRESS = eINSTANCE.getPhysical_Person_Owns_Address(); - /** * The meta object literal for the '{@link Taxation.impl.AddressImpl Address}' class. * @@ -9578,30 +9360,6 @@ public interface TaxationPackage extends EPackage { */ EReference INCOME__INCOME_TYPE = eINSTANCE.getIncome_Income_type(); - /** - * The meta object literal for the 'Start date within taxation year' attribute feature. - * - * - * @generated - */ - EAttribute INCOME__START_DATE_WITHIN_TAXATION_YEAR = eINSTANCE.getIncome_Start_date_within_taxation_year(); - - /** - * The meta object literal for the 'Start date of contract' attribute feature. - * - * - * @generated - */ - EAttribute INCOME__START_DATE_OF_CONTRACT = eINSTANCE.getIncome_Start_date_of_contract(); - - /** - * The meta object literal for the 'End date within taxation year' attribute feature. - * - * - * @generated - */ - EAttribute INCOME__END_DATE_WITHIN_TAXATION_YEAR = eINSTANCE.getIncome_End_date_within_taxation_year(); - /** * The meta object literal for the 'Tax card' containment reference feature. * @@ -9718,22 +9476,6 @@ public interface TaxationPackage extends EPackage { */ EAttribute TAX_CARD__TAX_OFFICE = eINSTANCE.getTax_Card_Tax_office(); - /** - * The meta object literal for the 'Valid from date' attribute feature. - * - * - * @generated - */ - EAttribute TAX_CARD__VALID_FROM_DATE = eINSTANCE.getTax_Card_Valid_from_date(); - - /** - * The meta object literal for the 'Valid until date' attribute feature. - * - * - * @generated - */ - EAttribute TAX_CARD__VALID_UNTIL_DATE = eINSTANCE.getTax_Card_Valid_until_date(); - /** * The meta object literal for the 'Percentage of witholding' attribute feature. * diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DependentImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DependentImpl.java index 0732ae44..a1b50304 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DependentImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DependentImpl.java @@ -22,6 +22,7 @@ import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.InternalEObject; import org.eclipse.emf.ecore.impl.ENotificationImpl; + import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList; import org.eclipse.emf.ecore.util.EcoreUtil; import org.eclipse.emf.ecore.util.InternalEList; diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/ExpenseImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/ExpenseImpl.java index 70dfc53e..6acf1429 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/ExpenseImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/ExpenseImpl.java @@ -9,6 +9,7 @@ import Taxation.FromAgent; import Taxation.Income; import Taxation.Physical_Person; import Taxation.TaxationPackage; + import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.common.notify.NotificationChain; diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/External_AllowanceImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/External_AllowanceImpl.java index 0d0119a5..d73a0014 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/External_AllowanceImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/External_AllowanceImpl.java @@ -7,6 +7,7 @@ import Taxation.External_Allowance; import Taxation.Grantor; import Taxation.Physical_Person; import Taxation.TaxationPackage; + import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.common.notify.NotificationChain; diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FromAgentImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FromAgentImpl.java index 930a23de..9b7b38bb 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FromAgentImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FromAgentImpl.java @@ -7,6 +7,7 @@ import Taxation.Expense; import Taxation.FromAgent; import Taxation.Tax_Payer; import Taxation.TaxationPackage; + import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.common.notify.NotificationChain; diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/IncomeImpl.java index 233d467c..f4793894 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/IncomeImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/IncomeImpl.java @@ -9,8 +9,8 @@ import Taxation.Income_Type; import Taxation.Tax_Card; import Taxation.Tax_Payer; import Taxation.TaxationPackage; + import java.util.Collection; -import java.util.Date; import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.common.notify.NotificationChain; @@ -37,9 +37,6 @@ import org.eclipse.emf.ecore.util.InternalEList; *
      *
    • {@link Taxation.impl.IncomeImpl#getIncome_amount Income amount}
    • *
    • {@link Taxation.impl.IncomeImpl#getIncome_type Income type}
    • - *
    • {@link Taxation.impl.IncomeImpl#getStart_date_within_taxation_year Start date within taxation year}
    • - *
    • {@link Taxation.impl.IncomeImpl#getStart_date_of_contract Start date of contract}
    • - *
    • {@link Taxation.impl.IncomeImpl#getEnd_date_within_taxation_year End date within taxation year}
    • *
    • {@link Taxation.impl.IncomeImpl#getTax_card Tax card}
    • *
    • {@link Taxation.impl.IncomeImpl#getTax_liability Tax liability}
    • *
    • {@link Taxation.impl.IncomeImpl#getTaxPayer Tax Payer}
    • @@ -81,66 +78,6 @@ public abstract class IncomeImpl extends MinimalEObjectImpl.Container implements */ protected Income_Type income_type; - /** - * The default value of the '{@link #getStart_date_within_taxation_year() Start date within taxation year}' attribute. - * - * - * @see #getStart_date_within_taxation_year() - * @generated - * @ordered - */ - protected static final Date START_DATE_WITHIN_TAXATION_YEAR_EDEFAULT = null; - - /** - * The cached value of the '{@link #getStart_date_within_taxation_year() Start date within taxation year}' attribute. - * - * - * @see #getStart_date_within_taxation_year() - * @generated - * @ordered - */ - protected Date start_date_within_taxation_year = START_DATE_WITHIN_TAXATION_YEAR_EDEFAULT; - - /** - * The default value of the '{@link #getStart_date_of_contract() Start date of contract}' attribute. - * - * - * @see #getStart_date_of_contract() - * @generated - * @ordered - */ - protected static final Date START_DATE_OF_CONTRACT_EDEFAULT = null; - - /** - * The cached value of the '{@link #getStart_date_of_contract() Start date of contract}' attribute. - * - * - * @see #getStart_date_of_contract() - * @generated - * @ordered - */ - protected Date start_date_of_contract = START_DATE_OF_CONTRACT_EDEFAULT; - - /** - * The default value of the '{@link #getEnd_date_within_taxation_year() End date within taxation year}' attribute. - * - * - * @see #getEnd_date_within_taxation_year() - * @generated - * @ordered - */ - protected static final Date END_DATE_WITHIN_TAXATION_YEAR_EDEFAULT = null; - - /** - * The cached value of the '{@link #getEnd_date_within_taxation_year() End date within taxation year}' attribute. - * - * - * @see #getEnd_date_within_taxation_year() - * @generated - * @ordered - */ - protected Date end_date_within_taxation_year = END_DATE_WITHIN_TAXATION_YEAR_EDEFAULT; - /** * The cached value of the '{@link #getTax_card() Tax card}' containment reference. * @@ -298,75 +235,6 @@ public abstract class IncomeImpl extends MinimalEObjectImpl.Container implements eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__INCOME_TYPE, newIncome_type, newIncome_type)); } - /** - * - * - * @generated - */ - @Override - public Date getStart_date_within_taxation_year() { - return start_date_within_taxation_year; - } - - /** - * - * - * @generated - */ - @Override - public void setStart_date_within_taxation_year(Date newStart_date_within_taxation_year) { - Date oldStart_date_within_taxation_year = start_date_within_taxation_year; - start_date_within_taxation_year = newStart_date_within_taxation_year; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__START_DATE_WITHIN_TAXATION_YEAR, oldStart_date_within_taxation_year, start_date_within_taxation_year)); - } - - /** - * - * - * @generated - */ - @Override - public Date getStart_date_of_contract() { - return start_date_of_contract; - } - - /** - * - * - * @generated - */ - @Override - public void setStart_date_of_contract(Date newStart_date_of_contract) { - Date oldStart_date_of_contract = start_date_of_contract; - start_date_of_contract = newStart_date_of_contract; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__START_DATE_OF_CONTRACT, oldStart_date_of_contract, start_date_of_contract)); - } - - /** - * - * - * @generated - */ - @Override - public Date getEnd_date_within_taxation_year() { - return end_date_within_taxation_year; - } - - /** - * - * - * @generated - */ - @Override - public void setEnd_date_within_taxation_year(Date newEnd_date_within_taxation_year) { - Date oldEnd_date_within_taxation_year = end_date_within_taxation_year; - end_date_within_taxation_year = newEnd_date_within_taxation_year; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__END_DATE_WITHIN_TAXATION_YEAR, oldEnd_date_within_taxation_year, end_date_within_taxation_year)); - } - /** * * @@ -604,12 +472,6 @@ public abstract class IncomeImpl extends MinimalEObjectImpl.Container implements return getIncome_amount(); case TaxationPackage.INCOME__INCOME_TYPE: return getIncome_type(); - case TaxationPackage.INCOME__START_DATE_WITHIN_TAXATION_YEAR: - return getStart_date_within_taxation_year(); - case TaxationPackage.INCOME__START_DATE_OF_CONTRACT: - return getStart_date_of_contract(); - case TaxationPackage.INCOME__END_DATE_WITHIN_TAXATION_YEAR: - return getEnd_date_within_taxation_year(); case TaxationPackage.INCOME__TAX_CARD: return getTax_card(); case TaxationPackage.INCOME__TAX_LIABILITY: @@ -641,15 +503,6 @@ public abstract class IncomeImpl extends MinimalEObjectImpl.Container implements case TaxationPackage.INCOME__INCOME_TYPE: setIncome_type((Income_Type)newValue); return; - case TaxationPackage.INCOME__START_DATE_WITHIN_TAXATION_YEAR: - setStart_date_within_taxation_year((Date)newValue); - return; - case TaxationPackage.INCOME__START_DATE_OF_CONTRACT: - setStart_date_of_contract((Date)newValue); - return; - case TaxationPackage.INCOME__END_DATE_WITHIN_TAXATION_YEAR: - setEnd_date_within_taxation_year((Date)newValue); - return; case TaxationPackage.INCOME__TAX_CARD: setTax_card((Tax_Card)newValue); return; @@ -688,15 +541,6 @@ public abstract class IncomeImpl extends MinimalEObjectImpl.Container implements case TaxationPackage.INCOME__INCOME_TYPE: setIncome_type((Income_Type)null); return; - case TaxationPackage.INCOME__START_DATE_WITHIN_TAXATION_YEAR: - setStart_date_within_taxation_year(START_DATE_WITHIN_TAXATION_YEAR_EDEFAULT); - return; - case TaxationPackage.INCOME__START_DATE_OF_CONTRACT: - setStart_date_of_contract(START_DATE_OF_CONTRACT_EDEFAULT); - return; - case TaxationPackage.INCOME__END_DATE_WITHIN_TAXATION_YEAR: - setEnd_date_within_taxation_year(END_DATE_WITHIN_TAXATION_YEAR_EDEFAULT); - return; case TaxationPackage.INCOME__TAX_CARD: setTax_card((Tax_Card)null); return; @@ -731,12 +575,6 @@ public abstract class IncomeImpl extends MinimalEObjectImpl.Container implements return income_amount != INCOME_AMOUNT_EDEFAULT; case TaxationPackage.INCOME__INCOME_TYPE: return income_type != null; - case TaxationPackage.INCOME__START_DATE_WITHIN_TAXATION_YEAR: - return START_DATE_WITHIN_TAXATION_YEAR_EDEFAULT == null ? start_date_within_taxation_year != null : !START_DATE_WITHIN_TAXATION_YEAR_EDEFAULT.equals(start_date_within_taxation_year); - case TaxationPackage.INCOME__START_DATE_OF_CONTRACT: - return START_DATE_OF_CONTRACT_EDEFAULT == null ? start_date_of_contract != null : !START_DATE_OF_CONTRACT_EDEFAULT.equals(start_date_of_contract); - case TaxationPackage.INCOME__END_DATE_WITHIN_TAXATION_YEAR: - return END_DATE_WITHIN_TAXATION_YEAR_EDEFAULT == null ? end_date_within_taxation_year != null : !END_DATE_WITHIN_TAXATION_YEAR_EDEFAULT.equals(end_date_within_taxation_year); case TaxationPackage.INCOME__TAX_CARD: return tax_card != null; case TaxationPackage.INCOME__TAX_LIABILITY: @@ -765,12 +603,6 @@ public abstract class IncomeImpl extends MinimalEObjectImpl.Container implements StringBuilder result = new StringBuilder(super.toString()); result.append(" (income_amount: "); result.append(income_amount); - result.append(", start_date_within_taxation_year: "); - result.append(start_date_within_taxation_year); - result.append(", start_date_of_contract: "); - result.append(start_date_of_contract); - result.append(", end_date_within_taxation_year: "); - result.append(end_date_within_taxation_year); result.append(", tax_liability: "); result.append(tax_liability); result.append(", num: "); diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_DetailImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_DetailImpl.java index ff882fd5..d3b7fe83 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_DetailImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_DetailImpl.java @@ -5,6 +5,7 @@ package Taxation.impl; import Taxation.Income; import Taxation.Income_Detail; import Taxation.TaxationPackage; + import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.common.notify.NotificationChain; diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_TaxImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_TaxImpl.java index 3083b3fa..69b14ade 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_TaxImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_TaxImpl.java @@ -5,6 +5,7 @@ package Taxation.impl; import Taxation.Income_Tax; import Taxation.Tax_Payer; import Taxation.TaxationPackage; + import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.ecore.EClass; diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_Tax_CreditImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_Tax_CreditImpl.java index 0dbd6e21..5a6f0a68 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_Tax_CreditImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_Tax_CreditImpl.java @@ -7,6 +7,7 @@ import Taxation.Income_Tax_Credit; import Taxation.Tax_Card; import Taxation.Tax_Payer; import Taxation.TaxationPackage; + import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.common.notify.NotificationChain; diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Legal_Union_RecordImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Legal_Union_RecordImpl.java index 1ab3bf53..8853657a 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Legal_Union_RecordImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Legal_Union_RecordImpl.java @@ -8,6 +8,7 @@ import Taxation.Physical_Person; import Taxation.Separation_Causes; import Taxation.Tax_Property; import Taxation.TaxationPackage; + import java.util.Collection; import org.eclipse.emf.common.notify.Notification; diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Physical_PersonImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Physical_PersonImpl.java index a63a993e..13e12888 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Physical_PersonImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Physical_PersonImpl.java @@ -7,6 +7,7 @@ import Taxation.Disability_Types; import Taxation.Expense; import Taxation.Physical_Person; import Taxation.TaxationPackage; + import java.util.Collection; import org.eclipse.emf.common.notify.Notification; @@ -20,7 +21,6 @@ import org.eclipse.emf.ecore.InternalEObject; import org.eclipse.emf.ecore.impl.ENotificationImpl; import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; -import org.eclipse.emf.ecore.util.EObjectContainmentEList; import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList; import org.eclipse.emf.ecore.util.InternalEList; @@ -43,7 +43,6 @@ import org.eclipse.emf.ecore.util.InternalEList; *
    • {@link Taxation.impl.Physical_PersonImpl#getBirth_day Birth day}
    • *
    • {@link Taxation.impl.Physical_PersonImpl#getExpenses Expenses}
    • *
    • {@link Taxation.impl.Physical_PersonImpl#isIs_widower Is widower}
    • - *
    • {@link Taxation.impl.Physical_PersonImpl#getOwns_Address Owns Address}
    • *
    * * @generated @@ -249,16 +248,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements */ protected boolean is_widower = IS_WIDOWER_EDEFAULT; - /** - * The cached value of the '{@link #getOwns_Address() Owns Address}' containment reference list. - * - * - * @see #getOwns_Address() - * @generated - * @ordered - */ - protected EList
    owns_Address; - /** * * @@ -511,19 +500,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__IS_WIDOWER, oldIs_widower, is_widower)); } - /** - * - * - * @generated - */ - @Override - public EList
    getOwns_Address() { - if (owns_Address == null) { - owns_Address = new EObjectContainmentEList
    (Address.class, this, TaxationPackage.PHYSICAL_PERSON__OWNS_ADDRESS); - } - return owns_Address; - } - /** * * @@ -553,8 +529,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements return ((InternalEList)getAddresses()).basicRemove(otherEnd, msgs); case TaxationPackage.PHYSICAL_PERSON__EXPENSES: return ((InternalEList)getExpenses()).basicRemove(otherEnd, msgs); - case TaxationPackage.PHYSICAL_PERSON__OWNS_ADDRESS: - return ((InternalEList)getOwns_Address()).basicRemove(otherEnd, msgs); } return super.eInverseRemove(otherEnd, featureID, msgs); } @@ -589,8 +563,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements return getExpenses(); case TaxationPackage.PHYSICAL_PERSON__IS_WIDOWER: return isIs_widower(); - case TaxationPackage.PHYSICAL_PERSON__OWNS_ADDRESS: - return getOwns_Address(); } return super.eGet(featureID, resolve, coreType); } @@ -639,10 +611,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements case TaxationPackage.PHYSICAL_PERSON__IS_WIDOWER: setIs_widower((Boolean)newValue); return; - case TaxationPackage.PHYSICAL_PERSON__OWNS_ADDRESS: - getOwns_Address().clear(); - getOwns_Address().addAll((Collection)newValue); - return; } super.eSet(featureID, newValue); } @@ -688,9 +656,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements case TaxationPackage.PHYSICAL_PERSON__IS_WIDOWER: setIs_widower(IS_WIDOWER_EDEFAULT); return; - case TaxationPackage.PHYSICAL_PERSON__OWNS_ADDRESS: - getOwns_Address().clear(); - return; } super.eUnset(featureID); } @@ -725,8 +690,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements return expenses != null && !expenses.isEmpty(); case TaxationPackage.PHYSICAL_PERSON__IS_WIDOWER: return is_widower != IS_WIDOWER_EDEFAULT; - case TaxationPackage.PHYSICAL_PERSON__OWNS_ADDRESS: - return owns_Address != null && !owns_Address.isEmpty(); } return super.eIsSet(featureID); } diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Private_Insurance_and_PlanImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Private_Insurance_and_PlanImpl.java index dfe39a95..2b1cd545 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Private_Insurance_and_PlanImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Private_Insurance_and_PlanImpl.java @@ -5,6 +5,7 @@ package Taxation.impl; import Taxation.Category_of_Private_Insurance_and_Plan; import Taxation.Private_Insurance_and_Plan; import Taxation.TaxationPackage; + import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.ecore.EClass; diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Resident_Tax_PayerImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Resident_Tax_PayerImpl.java index 34a1f15c..4ae64706 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Resident_Tax_PayerImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Resident_Tax_PayerImpl.java @@ -4,6 +4,7 @@ package Taxation.impl; import Taxation.Resident_Tax_Payer; import Taxation.TaxationPackage; + import org.eclipse.emf.ecore.EClass; /** diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_CardImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_CardImpl.java index 68f4f7f9..ebff8555 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_CardImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_CardImpl.java @@ -13,7 +13,6 @@ import Taxation.TaxationPackage; import Taxation.Town; import java.util.Collection; -import java.util.Date; import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.common.notify.NotificationChain; @@ -42,8 +41,6 @@ import org.eclipse.emf.ecore.util.InternalEList; *
  • {@link Taxation.impl.Tax_CardImpl#getCard_identifier Card identifier}
  • *
  • {@link Taxation.impl.Tax_CardImpl#getTax_card_type Tax card type}
  • *
  • {@link Taxation.impl.Tax_CardImpl#getTax_office Tax office}
  • - *
  • {@link Taxation.impl.Tax_CardImpl#getValid_from_date Valid from date}
  • - *
  • {@link Taxation.impl.Tax_CardImpl#getValid_until_date Valid until date}
  • *
  • {@link Taxation.impl.Tax_CardImpl#getPercentage_of_witholding Percentage of witholding}
  • *
  • {@link Taxation.impl.Tax_CardImpl#getTax_payers_name_surname Tax payers name surname}
  • *
  • {@link Taxation.impl.Tax_CardImpl#getTax_payers_partner_name_surname Tax payers partner name surname}
  • @@ -141,46 +138,6 @@ public class Tax_CardImpl extends MinimalEObjectImpl.Container implements Tax_Ca */ protected Tax_Office tax_office = TAX_OFFICE_EDEFAULT; - /** - * The default value of the '{@link #getValid_from_date() Valid from date}' attribute. - * - * - * @see #getValid_from_date() - * @generated - * @ordered - */ - protected static final Date VALID_FROM_DATE_EDEFAULT = null; - - /** - * The cached value of the '{@link #getValid_from_date() Valid from date}' attribute. - * - * - * @see #getValid_from_date() - * @generated - * @ordered - */ - protected Date valid_from_date = VALID_FROM_DATE_EDEFAULT; - - /** - * The default value of the '{@link #getValid_until_date() Valid until date}' attribute. - * - * - * @see #getValid_until_date() - * @generated - * @ordered - */ - protected static final Date VALID_UNTIL_DATE_EDEFAULT = null; - - /** - * The cached value of the '{@link #getValid_until_date() Valid until date}' attribute. - * - * - * @see #getValid_until_date() - * @generated - * @ordered - */ - protected Date valid_until_date = VALID_UNTIL_DATE_EDEFAULT; - /** * The default value of the '{@link #getPercentage_of_witholding() Percentage of witholding}' attribute. * @@ -829,52 +786,6 @@ public class Tax_CardImpl extends MinimalEObjectImpl.Container implements Tax_Ca eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__TAX_OFFICE, oldTax_office, tax_office)); } - /** - * - * - * @generated - */ - @Override - public Date getValid_from_date() { - return valid_from_date; - } - - /** - * - * - * @generated - */ - @Override - public void setValid_from_date(Date newValid_from_date) { - Date oldValid_from_date = valid_from_date; - valid_from_date = newValid_from_date; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__VALID_FROM_DATE, oldValid_from_date, valid_from_date)); - } - - /** - * - * - * @generated - */ - @Override - public Date getValid_until_date() { - return valid_until_date; - } - - /** - * - * - * @generated - */ - @Override - public void setValid_until_date(Date newValid_until_date) { - Date oldValid_until_date = valid_until_date; - valid_until_date = newValid_until_date; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__VALID_UNTIL_DATE, oldValid_until_date, valid_until_date)); - } - /** * * @@ -1771,10 +1682,6 @@ public class Tax_CardImpl extends MinimalEObjectImpl.Container implements Tax_Ca return getTax_card_type(); case TaxationPackage.TAX_CARD__TAX_OFFICE: return getTax_office(); - case TaxationPackage.TAX_CARD__VALID_FROM_DATE: - return getValid_from_date(); - case TaxationPackage.TAX_CARD__VALID_UNTIL_DATE: - return getValid_until_date(); case TaxationPackage.TAX_CARD__PERCENTAGE_OF_WITHOLDING: return getPercentage_of_witholding(); case TaxationPackage.TAX_CARD__TAX_PAYERS_NAME_SURNAME: @@ -1864,12 +1771,6 @@ public class Tax_CardImpl extends MinimalEObjectImpl.Container implements Tax_Ca case TaxationPackage.TAX_CARD__TAX_OFFICE: setTax_office((Tax_Office)newValue); return; - case TaxationPackage.TAX_CARD__VALID_FROM_DATE: - setValid_from_date((Date)newValue); - return; - case TaxationPackage.TAX_CARD__VALID_UNTIL_DATE: - setValid_until_date((Date)newValue); - return; case TaxationPackage.TAX_CARD__PERCENTAGE_OF_WITHOLDING: setPercentage_of_witholding((Double)newValue); return; @@ -1990,12 +1891,6 @@ public class Tax_CardImpl extends MinimalEObjectImpl.Container implements Tax_Ca case TaxationPackage.TAX_CARD__TAX_OFFICE: setTax_office(TAX_OFFICE_EDEFAULT); return; - case TaxationPackage.TAX_CARD__VALID_FROM_DATE: - setValid_from_date(VALID_FROM_DATE_EDEFAULT); - return; - case TaxationPackage.TAX_CARD__VALID_UNTIL_DATE: - setValid_until_date(VALID_UNTIL_DATE_EDEFAULT); - return; case TaxationPackage.TAX_CARD__PERCENTAGE_OF_WITHOLDING: setPercentage_of_witholding(PERCENTAGE_OF_WITHOLDING_EDEFAULT); return; @@ -2110,10 +2005,6 @@ public class Tax_CardImpl extends MinimalEObjectImpl.Container implements Tax_Ca return tax_card_type != TAX_CARD_TYPE_EDEFAULT; case TaxationPackage.TAX_CARD__TAX_OFFICE: return tax_office != TAX_OFFICE_EDEFAULT; - case TaxationPackage.TAX_CARD__VALID_FROM_DATE: - return VALID_FROM_DATE_EDEFAULT == null ? valid_from_date != null : !VALID_FROM_DATE_EDEFAULT.equals(valid_from_date); - case TaxationPackage.TAX_CARD__VALID_UNTIL_DATE: - return VALID_UNTIL_DATE_EDEFAULT == null ? valid_until_date != null : !VALID_UNTIL_DATE_EDEFAULT.equals(valid_until_date); case TaxationPackage.TAX_CARD__PERCENTAGE_OF_WITHOLDING: return percentage_of_witholding != PERCENTAGE_OF_WITHOLDING_EDEFAULT; case TaxationPackage.TAX_CARD__TAX_PAYERS_NAME_SURNAME: @@ -2198,10 +2089,6 @@ public class Tax_CardImpl extends MinimalEObjectImpl.Container implements Tax_Ca result.append(tax_card_type); result.append(", tax_office: "); result.append(tax_office); - result.append(", valid_from_date: "); - result.append(valid_from_date); - result.append(", valid_until_date: "); - result.append(valid_until_date); result.append(", percentage_of_witholding: "); result.append(percentage_of_witholding); result.append(", tax_payers_name_surname: "); diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_PropertyImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_PropertyImpl.java index e1ed46e4..b8bb6ef3 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_PropertyImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_PropertyImpl.java @@ -5,6 +5,7 @@ package Taxation.impl; import Taxation.Legal_Union_Record; import Taxation.Tax_Property; import Taxation.TaxationPackage; + import org.eclipse.emf.common.notify.Notification; import org.eclipse.emf.common.notify.NotificationChain; diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Taxation.ecore b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Taxation.ecore deleted file mode 100644 index 7834561d..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Taxation.ecore +++ /dev/null @@ -1,1257 +0,0 @@ - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - - - - - - - - - - - - - -
    - - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - -
    - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - - - -
    - - - - -
    - - - - -
    - - - - -
    - - - - -
    - - - - -
    - - - - -
    - - - - - - - - - - - - - - - - - - -
    - - - - - - - - -
    - - - - -
    - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
    - - - - -
    - - - - -
    - - - - -
    - - - - -
    - - - - -
    - - - - -
    - - - - -
    - - - - -
    - - - - -
    - - - - -
    - - - - -
    - - - - -
    - - - - -
    - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - -
    - - - - - - - -
    - - - - -
    - - - - -
    - - - - - -
    - - - - - -
    - - - - - - -
    - - - - -
    - - - - -
    - - - - - - -
    - - - - -
    - - - - - - - - - - - - - - - - - - - -
    - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationPackageImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationPackageImpl.java index 61f42b3e..a174a065 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationPackageImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationPackageImpl.java @@ -73,6 +73,7 @@ import Taxation.Town; import Taxation.Trade_and_Business_Income; import Taxation.Travel_Expense_FD; import Taxation.Type_of_Rate; + import org.eclipse.emf.ecore.EAttribute; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.EEnum; @@ -1164,16 +1165,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(10); } - /** - * - * - * @generated - */ - @Override - public EReference getPhysical_Person_Owns_Address() { - return (EReference)physical_PersonEClass.getEStructuralFeatures().get(11); - } - /** * * @@ -1764,36 +1755,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return (EReference)incomeEClass.getEStructuralFeatures().get(1); } - /** - * - * - * @generated - */ - @Override - public EAttribute getIncome_Start_date_within_taxation_year() { - return (EAttribute)incomeEClass.getEStructuralFeatures().get(2); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getIncome_Start_date_of_contract() { - return (EAttribute)incomeEClass.getEStructuralFeatures().get(3); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getIncome_End_date_within_taxation_year() { - return (EAttribute)incomeEClass.getEStructuralFeatures().get(4); - } - /** * * @@ -1801,7 +1762,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getIncome_Tax_card() { - return (EReference)incomeEClass.getEStructuralFeatures().get(5); + return (EReference)incomeEClass.getEStructuralFeatures().get(2); } /** @@ -1811,7 +1772,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getIncome_Tax_liability() { - return (EAttribute)incomeEClass.getEStructuralFeatures().get(6); + return (EAttribute)incomeEClass.getEStructuralFeatures().get(3); } /** @@ -1821,7 +1782,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getIncome_TaxPayer() { - return (EReference)incomeEClass.getEStructuralFeatures().get(7); + return (EReference)incomeEClass.getEStructuralFeatures().get(4); } /** @@ -1831,7 +1792,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getIncome_Details() { - return (EReference)incomeEClass.getEStructuralFeatures().get(8); + return (EReference)incomeEClass.getEStructuralFeatures().get(5); } /** @@ -1841,7 +1802,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getIncome_Num() { - return (EAttribute)incomeEClass.getEStructuralFeatures().get(9); + return (EAttribute)incomeEClass.getEStructuralFeatures().get(6); } /** @@ -1851,7 +1812,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getIncome_Expenses() { - return (EReference)incomeEClass.getEStructuralFeatures().get(10); + return (EReference)incomeEClass.getEStructuralFeatures().get(7); } /** @@ -1934,26 +1895,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(2); } - /** - * - * - * @generated - */ - @Override - public EAttribute getTax_Card_Valid_from_date() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(3); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getTax_Card_Valid_until_date() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(4); - } - /** * * @@ -1961,7 +1902,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Percentage_of_witholding() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(5); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(3); } /** @@ -1971,7 +1912,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Tax_payers_name_surname() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(6); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(4); } /** @@ -1981,7 +1922,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Tax_payers_partner_name_surname() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(7); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(5); } /** @@ -1991,7 +1932,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getTax_Card_Tax_payers_address() { - return (EReference)tax_CardEClass.getEStructuralFeatures().get(8); + return (EReference)tax_CardEClass.getEStructuralFeatures().get(6); } /** @@ -2001,7 +1942,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Jobs_Employer_SSNo() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(9); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(7); } /** @@ -2011,7 +1952,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Jobs_employers_name() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(10); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(8); } /** @@ -2021,7 +1962,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Jobs_activity_type() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(11); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(9); } /** @@ -2031,7 +1972,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Jobs_place_of_work() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(12); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(10); } /** @@ -2041,7 +1982,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_FD_daily() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(13); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(11); } /** @@ -2051,7 +1992,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_FD_monthly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(14); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(12); } /** @@ -2061,7 +2002,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_AC_daily() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(15); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(13); } /** @@ -2071,7 +2012,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_AC_monthly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(16); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(14); } /** @@ -2081,7 +2022,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_AC_yearly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(17); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(15); } /** @@ -2091,7 +2032,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_CE_daily() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(18); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(16); } /** @@ -2101,7 +2042,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_CE_monthly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(19); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(17); } /** @@ -2111,7 +2052,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_CE_yearly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(20); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(18); } /** @@ -2121,7 +2062,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_DS_daily() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(21); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(19); } /** @@ -2131,7 +2072,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_DS_monthly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(22); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(20); } /** @@ -2141,7 +2082,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_FO_daily() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(23); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(21); } /** @@ -2151,7 +2092,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_FO_monthly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(24); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(22); } /** @@ -2161,7 +2102,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_FO_yearly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(25); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(23); } /** @@ -2171,7 +2112,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Credit_CIS_daily() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(26); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(24); } /** @@ -2181,7 +2122,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Credit_CIS_monthly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(27); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(25); } /** @@ -2191,7 +2132,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Credit_CIM_daily() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(28); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(26); } /** @@ -2201,7 +2142,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Validity() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(29); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(27); } /** @@ -2211,7 +2152,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getTax_Card_Income_Tax_Credit() { - return (EReference)tax_CardEClass.getEStructuralFeatures().get(30); + return (EReference)tax_CardEClass.getEStructuralFeatures().get(28); } /** @@ -2221,7 +2162,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getTax_Card_Previous() { - return (EReference)tax_CardEClass.getEStructuralFeatures().get(31); + return (EReference)tax_CardEClass.getEStructuralFeatures().get(29); } /** @@ -2231,7 +2172,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getTax_Card_Current_tax_card() { - return (EReference)tax_CardEClass.getEStructuralFeatures().get(32); + return (EReference)tax_CardEClass.getEStructuralFeatures().get(30); } /** @@ -2241,7 +2182,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Credit_CIM_yearly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(33); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(31); } /** @@ -2251,7 +2192,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_DS_Alimony_yearly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(34); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(32); } /** @@ -2261,7 +2202,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_DS_Debt_yearly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(35); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(33); } /** @@ -2271,7 +2212,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getTax_Card_Income() { - return (EReference)tax_CardEClass.getEStructuralFeatures().get(36); + return (EReference)tax_CardEClass.getEStructuralFeatures().get(34); } /** @@ -3415,7 +3356,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__BIRTH_DAY); createEReference(physical_PersonEClass, PHYSICAL_PERSON__EXPENSES); createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__IS_WIDOWER); - createEReference(physical_PersonEClass, PHYSICAL_PERSON__OWNS_ADDRESS); addressEClass = createEClass(ADDRESS); createEAttribute(addressEClass, ADDRESS__COUNTRY); @@ -3485,9 +3425,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage incomeEClass = createEClass(INCOME); createEAttribute(incomeEClass, INCOME__INCOME_AMOUNT); createEReference(incomeEClass, INCOME__INCOME_TYPE); - createEAttribute(incomeEClass, INCOME__START_DATE_WITHIN_TAXATION_YEAR); - createEAttribute(incomeEClass, INCOME__START_DATE_OF_CONTRACT); - createEAttribute(incomeEClass, INCOME__END_DATE_WITHIN_TAXATION_YEAR); createEReference(incomeEClass, INCOME__TAX_CARD); createEAttribute(incomeEClass, INCOME__TAX_LIABILITY); createEReference(incomeEClass, INCOME__TAX_PAYER); @@ -3504,8 +3441,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage createEAttribute(tax_CardEClass, TAX_CARD__CARD_IDENTIFIER); createEAttribute(tax_CardEClass, TAX_CARD__TAX_CARD_TYPE); createEAttribute(tax_CardEClass, TAX_CARD__TAX_OFFICE); - createEAttribute(tax_CardEClass, TAX_CARD__VALID_FROM_DATE); - createEAttribute(tax_CardEClass, TAX_CARD__VALID_UNTIL_DATE); createEAttribute(tax_CardEClass, TAX_CARD__PERCENTAGE_OF_WITHOLDING); createEAttribute(tax_CardEClass, TAX_CARD__TAX_PAYERS_NAME_SURNAME); createEAttribute(tax_CardEClass, TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME); @@ -3813,7 +3748,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage initEAttribute(getPhysical_Person_Birth_day(), ecorePackage.getEInt(), "birth_day", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); initEReference(getPhysical_Person_Expenses(), this.getExpense(), this.getExpense_Beneficiary(), "expenses", null, 0, -1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); initEAttribute(getPhysical_Person_Is_widower(), ecorePackage.getEBoolean(), "is_widower", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); - initEReference(getPhysical_Person_Owns_Address(), this.getAddress(), null, "owns_Address", null, 0, -1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(addressEClass, Address.class, "Address", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getAddress_Country(), this.getCountry(), "country", "ZZ", 1, 1, Address.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); @@ -3883,9 +3817,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage initEClass(incomeEClass, Income.class, "Income", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getIncome_Income_amount(), ecorePackage.getEDouble(), "income_amount", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); initEReference(getIncome_Income_type(), this.getIncome_Type(), this.getIncome_Type_Income(), "income_type", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getIncome_Start_date_within_taxation_year(), ecorePackage.getEDate(), "start_date_within_taxation_year", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); - initEAttribute(getIncome_Start_date_of_contract(), ecorePackage.getEDate(), "start_date_of_contract", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); - initEAttribute(getIncome_End_date_within_taxation_year(), ecorePackage.getEDate(), "end_date_within_taxation_year", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); initEReference(getIncome_Tax_card(), this.getTax_Card(), this.getTax_Card_Income(), "tax_card", null, 0, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getIncome_Tax_liability(), ecorePackage.getEDouble(), "tax_liability", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getIncome_TaxPayer(), this.getTax_Payer(), this.getTax_Payer_Incomes(), "taxPayer", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); @@ -3902,8 +3833,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage initEAttribute(getTax_Card_Card_identifier(), ecorePackage.getEString(), "card_identifier", null, 0, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getTax_Card_Tax_card_type(), this.getTax_Card_Type(), "tax_card_type", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); initEAttribute(getTax_Card_Tax_office(), this.getTax_Office(), "tax_office", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getTax_Card_Valid_from_date(), ecorePackage.getEDate(), "valid_from_date", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); - initEAttribute(getTax_Card_Valid_until_date(), ecorePackage.getEDate(), "valid_until_date", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); initEAttribute(getTax_Card_Percentage_of_witholding(), ecorePackage.getEDouble(), "percentage_of_witholding", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getTax_Card_Tax_payers_name_surname(), ecorePackage.getEString(), "tax_payers_name_surname", null, 0, -1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); initEAttribute(getTax_Card_Tax_payers_partner_name_surname(), ecorePackage.getEString(), "tax_payers_partner_name_surname", null, 0, -1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.classpath b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.classpath deleted file mode 100644 index 29ba3981..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.classpath +++ /dev/null @@ -1,9 +0,0 @@ - - - - - - - - - diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.project b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.project deleted file mode 100644 index 9080c4bb..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.project +++ /dev/null @@ -1,62 +0,0 @@ - - - case.study.pledge.run - - - - - - org.eclipse.ocl.pivot.ui.oclbuilder - - - disabledExtensions - *,essentialocl - - - disabledPaths - bin/**,target/** - - - enabledExtensions - ecore,ocl,oclinecore,oclstdlib,uml - - - enabledPaths - ** - - - - - org.eclipse.xtext.ui.shared.xtextBuilder - - - - - org.eclipse.viatra.query.tooling.ui.projectbuilder - - - - - org.eclipse.jdt.core.javabuilder - - - - - org.eclipse.pde.ManifestBuilder - - - - - org.eclipse.pde.SchemaBuilder - - - - - - org.eclipse.pde.PluginNature - org.eclipse.jdt.core.javanature - org.eclipse.xtext.ui.shared.xtextNature - org.eclipse.viatra.query.projectnature - org.eclipse.ocl.pivot.ui.oclnature - - diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.settings/org.eclipse.core.resources.prefs b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.settings/org.eclipse.core.resources.prefs deleted file mode 100644 index 4824b802..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.settings/org.eclipse.core.resources.prefs +++ /dev/null @@ -1,2 +0,0 @@ -eclipse.preferences.version=1 -encoding/=UTF-8 diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.settings/org.eclipse.jdt.core.prefs b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.settings/org.eclipse.jdt.core.prefs deleted file mode 100644 index 295926d9..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.settings/org.eclipse.jdt.core.prefs +++ /dev/null @@ -1,7 +0,0 @@ -eclipse.preferences.version=1 -org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled -org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 -org.eclipse.jdt.core.compiler.compliance=1.8 -org.eclipse.jdt.core.compiler.problem.assertIdentifier=error -org.eclipse.jdt.core.compiler.problem.enumIdentifier=error -org.eclipse.jdt.core.compiler.source=1.8 diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.settings/org.eclipse.pde.core.prefs b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.settings/org.eclipse.pde.core.prefs deleted file mode 100644 index 13325c95..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/.settings/org.eclipse.pde.core.prefs +++ /dev/null @@ -1,3 +0,0 @@ -eclipse.preferences.version=1 -pluginProject.equinox=false -resolve.requirebundle=false diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/META-INF/MANIFEST.MF b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/META-INF/MANIFEST.MF deleted file mode 100644 index 1ab2d276..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/META-INF/MANIFEST.MF +++ /dev/null @@ -1,24 +0,0 @@ -Manifest-Version: 1.0 -Bundle-ManifestVersion: 2 -Bundle-Name: case.study.a.queries -Bundle-SymbolicName: case.study.pledge.run;singleton:=true -Bundle-Version: 0.0.1.qualifier -Export-Package: queries -Require-Bundle: org.eclipse.emf.ecore, - org.eclipse.viatra.query.runtime, - org.eclipse.viatra.query.runtime.rete, - org.eclipse.viatra.query.runtime.localsearch, - org.eclipse.viatra.addon.querybasedfeatures.runtime;bundle-version="2.3.0", - org.eclipse.xtext.xbase.lib, - case.study.pledge.model;bundle-version="1.0.0", - test;bundle-version="0.1.0", - hu.bme.mit.inf.dslreasoner.ecore2logic;bundle-version="1.0.0", - hu.bme.mit.inf.dslreasoner.logic.model;bundle-version="1.0.0", - hu.bme.mit.inf.dslreasoner.logic2ecore;bundle-version="1.0.0", - hu.bme.mit.inf.dslreasoner.viatra2logic;bundle-version="1.0.0", - hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatraquery;bundle-version="1.0.0", - hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage;bundle-version="1.0.0", - hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner;bundle-version="1.0.0", - hu.bme.mit.inf.dslreasoner.visualisation;bundle-version="1.0.0" -Bundle-RequiredExecutionEnvironment: JavaSE-1.8 -Import-Package: org.apache.log4j diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/.gitignore b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/.gitignore deleted file mode 100644 index 3d70f0da..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/.gitignore +++ /dev/null @@ -1,2 +0,0 @@ -/queries/ -/run/ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/queries/.gitignore b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/queries/.gitignore deleted file mode 100644 index 527f3a0e..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/queries/.gitignore +++ /dev/null @@ -1,112 +0,0 @@ -/.Inv17.java._trace -/.Inv20.java._trace -/.Inv33_con.java._trace -/.Inv34.java._trace -/.Inv35.java._trace -/.Inv47.java._trace -/.Inv48.java._trace -/.Inv48_helper.java._trace -/.Case_study_A.java._trace -/.Inv49.java._trace -/.Inv49_con.java._trace -/.Inv49_helper.java._trace -/.H_inv49.java._trace -/.Ocl_inv49.java._trace -/.Vql_inv49.java._trace -/.Vql_inv492.java._trace -/.H1_inv48.java._trace -/.H2_inv48.java._trace -/.Vql_inv48.java._trace -/.H3_inv48.java._trace -/.H1_inv49.java._trace -/.H2_inv49.java._trace -/.H_inv47.java._trace -/.Inv35test.java._trace -/.Inv33.java._trace -/.X.java._trace -/.H_inv16_moreThan1.java._trace -/.H_inv48_1.java._trace -/.H_inv48_2.java._trace -/.H_inv48_3.java._trace -/.H_inv49_1.java._trace -/.H_inv49_2.java._trace -/.Inv16.java._trace -/.Inv15.java._trace -/.H_inv13.java._trace -/.Inv13.java._trace -/.Inv12.java._trace -/.H_inv12_notNonRes.java._trace -/.H_inv12_notZZ.java._trace -/.H_inv11_incOver100.java._trace -/.Inv11.java._trace -/.H_inv11_incNotOver100.java._trace -/.H_inv8_notEI.java._trace -/.Inv8.java._trace -/.H_inv08_notEI.java._trace -/.Inv08.java._trace -/.H_inv08_inRange.java._trace -/.X_inv08_inRange.java._trace -/.X_inv08_notEI.java._trace -/.X_inv11_incNotOver100.java._trace -/.X_inv11_incOver100.java._trace -/.X_inv12_notNonRes.java._trace -/.X_inv12_notZZ.java._trace -/.X_inv13.java._trace -/.X_inv47.java._trace -/.X_inv48_1.java._trace -/.X_inv48_2.java._trace -/.X_inv48_3.java._trace -/.X_inv49_1.java._trace -/.X_inv49_2.java._trace -/.X_inv48_Dis.java._trace -/.X_inv48_notDis.java._trace -/.X_inv08_noType.java._trace -/.X_inv08_invalidType.java._trace -/.Inv06.java._trace -/.X_inv06_inRange.java._trace -/.Inv05.java._trace -/.X_inv05_inRange.java._trace -/.Inv03.java._trace -/.X_inv03_noAll.java._trace -/.X_inv03_eligAll.java._trace -/.X_inv03_hasAll.java._trace -/.Inv07.java._trace -/.Inv10.java._trace -/.X_inv15.java._trace -/Inv03.java -/Inv05.java -/Inv06.java -/X_inv03_eligAll.java -/X_inv03_hasAll.java -/X_inv05_inRange.java -/Case_study_A.java -/Inv07.java -/Inv08.java -/Inv10.java -/Inv11.java -/Inv12.java -/Inv13.java -/Inv15.java -/Inv17.java -/Inv20.java -/Inv33.java -/Inv34.java -/Inv35.java -/Inv47.java -/Inv48.java -/Inv49.java -/X_inv08_inRange.java -/X_inv08_noType.java -/X_inv08_notEI.java -/X_inv11_incNotOver100.java -/X_inv11_incOver100.java -/X_inv12_notNonRes.java -/X_inv12_notZZ.java -/X_inv13.java -/X_inv15.java -/X_inv47.java -/X_inv48_3.java -/X_inv48_Dis.java -/X_inv48_notDis.java -/X_inv49_1.java -/X_inv49_2.java diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/queries/NewOCLFileX.ocl b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/queries/NewOCLFileX.ocl deleted file mode 100644 index 66ae728e..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/queries/NewOCLFileX.ocl +++ /dev/null @@ -1,45 +0,0 @@ -import 'file:/Users/Aren Babikian/git/VIATRA-Attributes/case.study.a.model/model/Taxation.ecore' - -package Taxation - ---context Income inv inv8: ---if(not self.income_type.oclIsTypeOf(Employment_Income)) then ---self.details->forAll(d| d.distance = 0) ---else ---self.details->forAll(d| d.distance >= 0.0 and d.distance <= 100) ---endif --- ---context Legal_Union_Record inv inv490: ---self.individual_A.oclIsKindOf(Tax_Payer) --- ---context Legal_Union_Record inv inv491: ---self.individual_B->forAll(i | i.oclIsKindOf(Physical_Person) ) --- ---context Legal_Union_Record inv inv492: ---self.individual_B->forAll(i | not i.oclIsTypeOf(Dependent) ) --- ---context Legal_Union_Record inv inv493: ---self.individual_A <> self.individual_B --- ---context Tax_Payer inv inv13: --- self.addresses->exists( hab_add:Address | hab_add.oclIsTypeOf(Habitual_Address) = true and hab_add.country=Country::ZZ) ---implies --- self.oclIsTypeOf(Resident_Tax_Payer) - - context Income inv inv7: -let val:Real =self.details->asOrderedSet()->first().distance in -self.details->forAll(d: Income_Detail|d.distance = val) - ---context External_Allowance inv inv15: ---let child:Dependent = self.person in ---let h:Household = Household.allInstances()->select(children->includes(child))->asOrderedSet()->first() in ---let t1:Set(Physical_Person) = Set{h.parents.individual_A}->union(h.parents.individual_B)->select(oclIsKindOf(Tax_Payer)) in ---if(t1->size()=1) then ---self.reciver = t1->asOrderedSet()->first() ---else ---self.reciver = t1->asOrderedSet()->at(2) or self.reciver = t1->asOrderedSet()->at(1) ---endif - - - -endpackage \ No newline at end of file diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/queries/case_study_A.vql b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/queries/case_study_A.vql deleted file mode 100644 index 5d46bf42..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/queries/case_study_A.vql +++ /dev/null @@ -1,334 +0,0 @@ -package queries - -import "http:///TaxCard.ecore" - -//AttributeRemoved -> DF - -//inv1-External_Allowance.amount is a derived feature (TODOcheck) -//inv2-Tax_Card.income.taxPayer.taxesDue is a derived feature (TODOcheck) - -//inv3-multiplicity adjusted -@Constraint(message = "inv03", severity = "error", key = {dep}) -pattern inv03(dep : Dependent) { - find x_inv03_eligAll(dep); - neg find x_inv03_hasAll(dep); -} or { - Dependent.birth_year(dep, by); - check(2018-by > 21); - Dependent.continued_studies(dep, false); - Dependent.allowances(dep, _); -} -pattern x_inv03_eligAll(dep : Dependent) { - Dependent.birth_year(dep, by); - check(2018-by <= 21); -} or { - Dependent.continued_studies(dep, true); -} -pattern x_inv03_hasAll(dep : Dependent) { - Dependent.allowances(dep, _); -} - -//inv5 - oclIsTypeOf - handled here -@Constraint(message = "inv05", severity = "error", key = {inc}) -pattern inv05(inc : Income) { - //income_type: None - neg find x_inv08_noType(inc); - Income.details.worked_days(inc, wd); - check(wd != 0); -} or { - //income_type: Not Employment_Income - Income.income_type(inc, type); - neg find x_inv08_notEI(type); - Income.details.worked_days(inc, wd); - check(wd != 0); -} or { - //income_type: Employment Income - Income.income_type(inc, type); - Employment_Income(type); - find x_inv05_inRange(inc); -} -pattern x_inv05_inRange(inc : Income) { - Income.details.worked_days(inc, wd); - check(wd < 1); -} or { - Income.details.worked_days(inc, wd); - check(wd > 25); -} - -//inv6-Does not make sens, but directly from OCL -//first part of or from definition of getAge() -@Constraint(message = "inv06", severity = "error", key = {tp}) -pattern inv06(tp : Tax_Payer) { - Tax_Payer.dependents(tp, _); - Tax_Payer.birth_year(tp, TPBy); - check(2018 - TPBy > 2018-16); -} or { - Tax_Payer.birth_year(tp, TPBy); - Tax_Payer.dependents(tp, dep); - Dependent.birth_year(dep, DepBy); - check(2018-DepBy <= 2018-TPBy-16); -} - -//inv7-OrderedSet -@Constraint(message = "inv07", severity = "error", key = {inc}) -pattern inv07(inc : Income) { - Income.details.distance(inc, d1); - Income.details.distance(inc, d2); - check(d1 != d2);//compare values -} - -//user_complete_details-AttributeRemoved - -//inv8 - oclIsTypeOf - handled here -@Constraint(message = "inv08", severity = "error", key = {inc}) -pattern inv08(inc : Income) { - //income_type: None - neg find x_inv08_noType(inc); - Income.details.distance(inc, dist); - check(dist != 0); -} or { - //income_type: Not Employment_Income - Income.income_type(inc, type); - neg find x_inv08_notEI(type); - Income.details.distance(inc, dist); - check(dist != 0); -} or { - //income_type: Employment Income - Income.income_type(inc, type); - Employment_Income(type); - find x_inv08_inRange(inc); -} -pattern x_inv08_notEI(type : Employment_Income) { - Employment_Income(type); -} -pattern x_inv08_noType(inc : Income) { - Income.income_type(inc, _); -} -pattern x_inv08_inRange(inc : Income) { - Income.details.distance(inc, dist); - check(dist < 0); -} or { - Income.details.distance(inc, dist); - check(dist > 100); -} -//inv9-DerivedFeature - -//inv10-Ordered Sets -@Constraint(message = "inv10", severity = "error", key = {inc}) -pattern inv10(inc : Income) { - Income.details.amount(inc, a1); - Income.details.amount(inc, a2); - check(a1 != a2);//compare values -} - -//inv11-attributes-handled by multiplicity -@Constraint(message = "inv11", severity = "error", key = {exp}) -pattern inv11(exp : Expense) { - find x_inv11_incOver100(exp); - find x_inv11_incNotOver100(exp); -} -pattern x_inv11_incOver100(exp : Expense) { - Expense.income.income_amount(exp, incVal); - check(incVal / 2 > 50); - -} or { - Expense.declared_amount(exp, decl); - check(decl != 50); -} -pattern x_inv11_incNotOver100(exp : Expense) { - Expense.income.income_amount(exp, incVal); - check(incVal / 2 <= 50); -} or { - Expense.declared_amount(exp, decl); - check(decl < 50); -} or { - Expense.income.income_amount(exp, incVal); - Expense.declared_amount(exp, decl); - check(decl > incVal/2); -} - -//inv12 -//exists - handled logically -@Constraint(message = "inv12", severity = "error", key = {tp}) -pattern inv12(tp : Tax_Payer) { - Tax_Payer.addresses(tp, hab_add); - Habitual_Address(hab_add); - neg find x_inv12_notZZ(hab_add); - Tax_Payer.incomes(tp, inc); - Local_Income(inc); - neg find x_inv12_notNonRes(tp); -} -pattern x_inv12_notNonRes(tp : Non_Resident_Tax_Payer) { - Non_Resident_Tax_Payer(tp); -} -pattern x_inv12_notZZ(hab_add : Habitual_Address) { - Address.country(hab_add, ::ZZ); -} - -//inv13 - Added new containment rel Phys_Pers->Address -//exists - handled logically -@Constraint(message = "inv13", severity = "error", key = {tp}) -pattern inv13(tp : Tax_Payer) { - Tax_Payer.addresses(tp, hab_add); - Habitual_Address(hab_add); - Address.country(hab_add, ::ZZ); - neg find x_inv13(tp); -} -pattern x_inv13(tp : Resident_Tax_Payer) { - Resident_Tax_Payer(tp); -} - -//inv14-MultiplicityChanged - -//inv15-Ordered Sets in assignment if block -//ERROR if no household object -@Constraint(message = "inv15", severity = "error", key = {ea}) -pattern inv15(ea : External_Allowance) { - neg find x_inv15(ea); -} -pattern x_inv15(ea : External_Allowance) { - External_Allowance.person(ea, child); - Household.children(h, child);//only one due to multiplicity - Household.parents.individual_A(h, iA); - Tax_Payer(iA); - External_Allowance.reciver(ea, iA); -} or { - External_Allowance.person(ea, child); - Household.children(h, child);//only one due to multiplicity - Household.parents.individual_B(h, iB); - Tax_Payer(iB); - External_Allowance.reciver(ea, iB); -} - -//inv16-Tax_Card.tax_card_type is a derived feature - -//inv17-attribute-handled by multiplicity -@Constraint(message = "inv17", severity = "error", key = {lur}) -pattern inv17(lur : Legal_Union_Record) { - Legal_Union_Record.start_year(lur, sy); - check(sy < 1950); -} or { - Legal_Union_Record.start_year(lur, sy); - check(sy > 2018); -} - -//inv18-MultiplicityChecked -//inv19-MultiplicityChecked - -//inv20-Useless constraint since both edges are containment (TODOCheck) -//OclIsUndefined-Handled by multiplicity -@Constraint(message = "inv20", severity = "error", key = {lur}) -pattern inv20(lur : Legal_Union_Record) { - Legal_Union_Record.individual_A(lur, iA); - Legal_Union_Record.individual_B(lur, iB); - iA == iB; -} -//inv21-MultiplicityChecked -//inv22-MultiplicityChecked -//inv23-MultiplicityChecked -//inv24-MultiplicityChecked -//inv25-MultiplicityChecked -//inv26-MultiplicityChanged -//inv27-dupOfInv24 -//inv28-dubOfInv23 -//inv29-MultiplicityChanged -//inv30-AttributeRemoved -//inv31-AttributeRemoved -//inv32-AttributeRemoved - -//inv33-attribute-handled by multiplicity -@Constraint(message = "inv33", severity = "error", key = {p}) -pattern inv33(p : Physical_Person) { - Physical_Person.birth_year(p, by); - check(2018-by < 0); -} or { - Physical_Person.birth_year(p, by); - check(2018-by > 100); -} - -//inv34-attribute-handled by multiplicity -@Constraint(message = "inv34", severity = "error", key = {p}) -pattern inv34(p : Physical_Person) { - Physical_Person.birth_month(p, birthMonth); - check(birthMonth < 1); -} or { - Physical_Person.birth_month(p, birthMonth); - check(birthMonth > 12); -} - -//inv35-attribute-handled by multiplicity -@Constraint(message = "inv35", severity = "error", key = {p}) -pattern inv35(p : Physical_Person) { - Physical_Person.birth_day(p, birthDay); - check(birthDay < 1); -} or { - Physical_Person.birth_day(p, birthDay); - check(birthDay > 28); -} - -//inv36-AttributeRemoved -//inv37-AttributeRemoved -//inv38-AttributeRemoved -//inv39-AttributeRemoved -//inv40-AttributeRemoved -//inv41-AttributeRemoved -//inv42-AttributeRemoved -//inv43-AttributeRemoved -//inv44-AttributeRemoved -//inv45-AttributeRemoved -//inv46-AttributeRemoved - -//inv47-attributes-handled by multiplicity -@Constraint(message = "inv47", severity = "error", key = {lur}) -pattern inv47(lur : Legal_Union_Record) { - Legal_Union_Record.end_year(lur, endY); - Legal_Union_Record.start_year(lur, startY); - neg find x_inv47(lur); - check(startY >= endY); -} -pattern x_inv47(lur : Legal_Union_Record) { - Legal_Union_Record.separation_cause(lur, ::NONE); - Legal_Union_Record.end_year(lur, -1); -} - -//inv48-attributes-handled by multiplicity -@Constraint(message = "inv48", severity = "error", key = {p}) -pattern inv48(p : Physical_Person) { - neg find x_inv48_notDis(p); - neg find x_inv48_Dis(p); -} -pattern x_inv48_notDis(p : Physical_Person) { - Physical_Person.disability_type(p, ::NONE); - Physical_Person.disability_percentage(p, 0.0); -} -pattern x_inv48_Dis(p : Physical_Person) { - neg find x_inv48_3(p); - Physical_Person.disability_percentage(p, disPer); - check(disPer > 0.0); - check(disPer <= 1.0); -} -pattern x_inv48_3(p : Physical_Person) { - Physical_Person.disability_type(p, ::NONE); -} - -//inv49-OclKindOf-handled by multiplicity -@Constraint(message = "inv49", severity = "error", key = {lur}) -pattern inv49(lur : Legal_Union_Record) { - neg find x_inv49_1(lur); -} -pattern x_inv49_1(lur : Legal_Union_Record) { - Legal_Union_Record.individual_A(lur, iA); - Legal_Union_Record.individual_B(lur, iB); - Tax_Payer(iA); - Physical_Person(iB); - neg find x_inv49_2(iB); - iA != iB; -} -pattern x_inv49_2(iB: Dependent) { - Dependent(iB); -} - -//inv50-MultiplicityChecked -//inv51-MultiplicityChecked -//inv52-MultiplicityChecked -//inv53-MultiplicityChecked \ No newline at end of file diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/run/.RunGenerator.xtendbin b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/run/.RunGenerator.xtendbin deleted file mode 100644 index e2021169..00000000 Binary files a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/run/.RunGenerator.xtendbin and /dev/null differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/run/.gitignore b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/run/.gitignore deleted file mode 100644 index 8e503b4a..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/bin/run/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -/.GenerateScenarios.java._trace -/.checkQueries.java._trace -/.RunGenerator.xtendbin -/GenerateScenarios.java diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/build.properties b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/build.properties deleted file mode 100644 index 88d3713e..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/build.properties +++ /dev/null @@ -1,6 +0,0 @@ -bin.includes = META-INF/,\ - .,\ - plugin.xml -source.. = src/,\ - src-gen/ -output.. = bin/ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/ocl/queries.ocl b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/ocl/queries.ocl deleted file mode 100644 index de770240..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/ocl/queries.ocl +++ /dev/null @@ -1,14 +0,0 @@ -import 'file:/Users/Aren Babikian/git/VIATRA-Attributes/original.PLEDGE.case.studies/model/CD_Case_A.uml' ---e.g., import 'file:/Users/User_X/CD_Case_A.uml' - -package Taxation - -context Income inv x: - let involved_details:Set(Income_Detail)=self.details->select(i:Income_Detail| i.is_worked=true) in - involved_details.amount->sum() - -context Expense inv inv11: -let max:Real = if((self.income.income_amount / 2)>50) then self.income.income_amount / 2 else 50 endif in -self.declared_amount >= 50 and self.declared_amount <= max - -endpackage \ No newline at end of file diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/plugin.xml b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/plugin.xml deleted file mode 100644 index 63aa0b02..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/plugin.xml +++ /dev/null @@ -1,42 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/.gitignore b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/.gitignore deleted file mode 100644 index 527f3a0e..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/.gitignore +++ /dev/null @@ -1,112 +0,0 @@ -/.Inv17.java._trace -/.Inv20.java._trace -/.Inv33_con.java._trace -/.Inv34.java._trace -/.Inv35.java._trace -/.Inv47.java._trace -/.Inv48.java._trace -/.Inv48_helper.java._trace -/.Case_study_A.java._trace -/.Inv49.java._trace -/.Inv49_con.java._trace -/.Inv49_helper.java._trace -/.H_inv49.java._trace -/.Ocl_inv49.java._trace -/.Vql_inv49.java._trace -/.Vql_inv492.java._trace -/.H1_inv48.java._trace -/.H2_inv48.java._trace -/.Vql_inv48.java._trace -/.H3_inv48.java._trace -/.H1_inv49.java._trace -/.H2_inv49.java._trace -/.H_inv47.java._trace -/.Inv35test.java._trace -/.Inv33.java._trace -/.X.java._trace -/.H_inv16_moreThan1.java._trace -/.H_inv48_1.java._trace -/.H_inv48_2.java._trace -/.H_inv48_3.java._trace -/.H_inv49_1.java._trace -/.H_inv49_2.java._trace -/.Inv16.java._trace -/.Inv15.java._trace -/.H_inv13.java._trace -/.Inv13.java._trace -/.Inv12.java._trace -/.H_inv12_notNonRes.java._trace -/.H_inv12_notZZ.java._trace -/.H_inv11_incOver100.java._trace -/.Inv11.java._trace -/.H_inv11_incNotOver100.java._trace -/.H_inv8_notEI.java._trace -/.Inv8.java._trace -/.H_inv08_notEI.java._trace -/.Inv08.java._trace -/.H_inv08_inRange.java._trace -/.X_inv08_inRange.java._trace -/.X_inv08_notEI.java._trace -/.X_inv11_incNotOver100.java._trace -/.X_inv11_incOver100.java._trace -/.X_inv12_notNonRes.java._trace -/.X_inv12_notZZ.java._trace -/.X_inv13.java._trace -/.X_inv47.java._trace -/.X_inv48_1.java._trace -/.X_inv48_2.java._trace -/.X_inv48_3.java._trace -/.X_inv49_1.java._trace -/.X_inv49_2.java._trace -/.X_inv48_Dis.java._trace -/.X_inv48_notDis.java._trace -/.X_inv08_noType.java._trace -/.X_inv08_invalidType.java._trace -/.Inv06.java._trace -/.X_inv06_inRange.java._trace -/.Inv05.java._trace -/.X_inv05_inRange.java._trace -/.Inv03.java._trace -/.X_inv03_noAll.java._trace -/.X_inv03_eligAll.java._trace -/.X_inv03_hasAll.java._trace -/.Inv07.java._trace -/.Inv10.java._trace -/.X_inv15.java._trace -/Inv03.java -/Inv05.java -/Inv06.java -/X_inv03_eligAll.java -/X_inv03_hasAll.java -/X_inv05_inRange.java -/Case_study_A.java -/Inv07.java -/Inv08.java -/Inv10.java -/Inv11.java -/Inv12.java -/Inv13.java -/Inv15.java -/Inv17.java -/Inv20.java -/Inv33.java -/Inv34.java -/Inv35.java -/Inv47.java -/Inv48.java -/Inv49.java -/X_inv08_inRange.java -/X_inv08_noType.java -/X_inv08_notEI.java -/X_inv11_incNotOver100.java -/X_inv11_incOver100.java -/X_inv12_notNonRes.java -/X_inv12_notZZ.java -/X_inv13.java -/X_inv15.java -/X_inv47.java -/X_inv48_3.java -/X_inv48_Dis.java -/X_inv48_notDis.java -/X_inv49_1.java -/X_inv49_2.java diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Case_study_A.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Case_study_A.java deleted file mode 100644 index 11c60d6f..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Case_study_A.java +++ /dev/null @@ -1,438 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedPatternGroup; -import queries.Inv03; -import queries.Inv05; -import queries.Inv06; -import queries.Inv07; -import queries.Inv08; -import queries.Inv10; -import queries.Inv11; -import queries.Inv12; -import queries.Inv13; -import queries.Inv15; -import queries.Inv17; -import queries.Inv20; -import queries.Inv33; -import queries.Inv34; -import queries.Inv35; -import queries.Inv47; -import queries.Inv48; -import queries.Inv49; -import queries.X_inv03_eligAll; -import queries.X_inv03_hasAll; -import queries.X_inv05_inRange; -import queries.X_inv08_inRange; -import queries.X_inv08_noType; -import queries.X_inv08_notEI; -import queries.X_inv11_incNotOver100; -import queries.X_inv11_incOver100; -import queries.X_inv12_notNonRes; -import queries.X_inv12_notZZ; -import queries.X_inv13; -import queries.X_inv15; -import queries.X_inv47; -import queries.X_inv48_3; -import queries.X_inv48_Dis; -import queries.X_inv48_notDis; -import queries.X_inv49_1; -import queries.X_inv49_2; - -/** - * A pattern group formed of all public patterns defined in case_study_A.vql. - * - *

    Use the static instance as any {@link interface org.eclipse.viatra.query.runtime.api.IQueryGroup}, to conveniently prepare - * a VIATRA Query engine for matching all patterns originally defined in file case_study_A.vql, - * in order to achieve better performance than one-by-one on-demand matcher initialization. - * - *

    From package queries, the group contains the definition of the following patterns:

      - *
    • inv03
    • - *
    • x_inv03_eligAll
    • - *
    • x_inv03_hasAll
    • - *
    • inv05
    • - *
    • x_inv05_inRange
    • - *
    • inv06
    • - *
    • inv07
    • - *
    • inv08
    • - *
    • x_inv08_notEI
    • - *
    • x_inv08_noType
    • - *
    • x_inv08_inRange
    • - *
    • inv10
    • - *
    • inv11
    • - *
    • x_inv11_incOver100
    • - *
    • x_inv11_incNotOver100
    • - *
    • inv12
    • - *
    • x_inv12_notNonRes
    • - *
    • x_inv12_notZZ
    • - *
    • inv13
    • - *
    • x_inv13
    • - *
    • inv15
    • - *
    • x_inv15
    • - *
    • inv17
    • - *
    • inv20
    • - *
    • inv33
    • - *
    • inv34
    • - *
    • inv35
    • - *
    • inv47
    • - *
    • x_inv47
    • - *
    • inv48
    • - *
    • x_inv48_notDis
    • - *
    • x_inv48_Dis
    • - *
    • x_inv48_3
    • - *
    • inv49
    • - *
    • x_inv49_1
    • - *
    • x_inv49_2
    • - *
    - * - * @see IQueryGroup - * - */ -@SuppressWarnings("all") -public final class Case_study_A extends BaseGeneratedPatternGroup { - /** - * Access the pattern group. - * - * @return the singleton instance of the group - * @throws ViatraQueryRuntimeException if there was an error loading the generated code of pattern specifications - * - */ - public static Case_study_A instance() { - if (INSTANCE == null) { - INSTANCE = new Case_study_A(); - } - return INSTANCE; - } - - private static Case_study_A INSTANCE; - - private Case_study_A() { - querySpecifications.add(Inv03.instance()); - querySpecifications.add(X_inv03_eligAll.instance()); - querySpecifications.add(X_inv03_hasAll.instance()); - querySpecifications.add(Inv05.instance()); - querySpecifications.add(X_inv05_inRange.instance()); - querySpecifications.add(Inv06.instance()); - querySpecifications.add(Inv07.instance()); - querySpecifications.add(Inv08.instance()); - querySpecifications.add(X_inv08_notEI.instance()); - querySpecifications.add(X_inv08_noType.instance()); - querySpecifications.add(X_inv08_inRange.instance()); - querySpecifications.add(Inv10.instance()); - querySpecifications.add(Inv11.instance()); - querySpecifications.add(X_inv11_incOver100.instance()); - querySpecifications.add(X_inv11_incNotOver100.instance()); - querySpecifications.add(Inv12.instance()); - querySpecifications.add(X_inv12_notNonRes.instance()); - querySpecifications.add(X_inv12_notZZ.instance()); - querySpecifications.add(Inv13.instance()); - querySpecifications.add(X_inv13.instance()); - querySpecifications.add(Inv15.instance()); - querySpecifications.add(X_inv15.instance()); - querySpecifications.add(Inv17.instance()); - querySpecifications.add(Inv20.instance()); - querySpecifications.add(Inv33.instance()); - querySpecifications.add(Inv34.instance()); - querySpecifications.add(Inv35.instance()); - querySpecifications.add(Inv47.instance()); - querySpecifications.add(X_inv47.instance()); - querySpecifications.add(Inv48.instance()); - querySpecifications.add(X_inv48_notDis.instance()); - querySpecifications.add(X_inv48_Dis.instance()); - querySpecifications.add(X_inv48_3.instance()); - querySpecifications.add(Inv49.instance()); - querySpecifications.add(X_inv49_1.instance()); - querySpecifications.add(X_inv49_2.instance()); - } - - public Inv03 getInv03() { - return Inv03.instance(); - } - - public Inv03.Matcher getInv03(final ViatraQueryEngine engine) { - return Inv03.Matcher.on(engine); - } - - public X_inv03_eligAll getX_inv03_eligAll() { - return X_inv03_eligAll.instance(); - } - - public X_inv03_eligAll.Matcher getX_inv03_eligAll(final ViatraQueryEngine engine) { - return X_inv03_eligAll.Matcher.on(engine); - } - - public X_inv03_hasAll getX_inv03_hasAll() { - return X_inv03_hasAll.instance(); - } - - public X_inv03_hasAll.Matcher getX_inv03_hasAll(final ViatraQueryEngine engine) { - return X_inv03_hasAll.Matcher.on(engine); - } - - public Inv05 getInv05() { - return Inv05.instance(); - } - - public Inv05.Matcher getInv05(final ViatraQueryEngine engine) { - return Inv05.Matcher.on(engine); - } - - public X_inv05_inRange getX_inv05_inRange() { - return X_inv05_inRange.instance(); - } - - public X_inv05_inRange.Matcher getX_inv05_inRange(final ViatraQueryEngine engine) { - return X_inv05_inRange.Matcher.on(engine); - } - - public Inv06 getInv06() { - return Inv06.instance(); - } - - public Inv06.Matcher getInv06(final ViatraQueryEngine engine) { - return Inv06.Matcher.on(engine); - } - - public Inv07 getInv07() { - return Inv07.instance(); - } - - public Inv07.Matcher getInv07(final ViatraQueryEngine engine) { - return Inv07.Matcher.on(engine); - } - - public Inv08 getInv08() { - return Inv08.instance(); - } - - public Inv08.Matcher getInv08(final ViatraQueryEngine engine) { - return Inv08.Matcher.on(engine); - } - - public X_inv08_notEI getX_inv08_notEI() { - return X_inv08_notEI.instance(); - } - - public X_inv08_notEI.Matcher getX_inv08_notEI(final ViatraQueryEngine engine) { - return X_inv08_notEI.Matcher.on(engine); - } - - public X_inv08_noType getX_inv08_noType() { - return X_inv08_noType.instance(); - } - - public X_inv08_noType.Matcher getX_inv08_noType(final ViatraQueryEngine engine) { - return X_inv08_noType.Matcher.on(engine); - } - - public X_inv08_inRange getX_inv08_inRange() { - return X_inv08_inRange.instance(); - } - - public X_inv08_inRange.Matcher getX_inv08_inRange(final ViatraQueryEngine engine) { - return X_inv08_inRange.Matcher.on(engine); - } - - public Inv10 getInv10() { - return Inv10.instance(); - } - - public Inv10.Matcher getInv10(final ViatraQueryEngine engine) { - return Inv10.Matcher.on(engine); - } - - public Inv11 getInv11() { - return Inv11.instance(); - } - - public Inv11.Matcher getInv11(final ViatraQueryEngine engine) { - return Inv11.Matcher.on(engine); - } - - public X_inv11_incOver100 getX_inv11_incOver100() { - return X_inv11_incOver100.instance(); - } - - public X_inv11_incOver100.Matcher getX_inv11_incOver100(final ViatraQueryEngine engine) { - return X_inv11_incOver100.Matcher.on(engine); - } - - public X_inv11_incNotOver100 getX_inv11_incNotOver100() { - return X_inv11_incNotOver100.instance(); - } - - public X_inv11_incNotOver100.Matcher getX_inv11_incNotOver100(final ViatraQueryEngine engine) { - return X_inv11_incNotOver100.Matcher.on(engine); - } - - public Inv12 getInv12() { - return Inv12.instance(); - } - - public Inv12.Matcher getInv12(final ViatraQueryEngine engine) { - return Inv12.Matcher.on(engine); - } - - public X_inv12_notNonRes getX_inv12_notNonRes() { - return X_inv12_notNonRes.instance(); - } - - public X_inv12_notNonRes.Matcher getX_inv12_notNonRes(final ViatraQueryEngine engine) { - return X_inv12_notNonRes.Matcher.on(engine); - } - - public X_inv12_notZZ getX_inv12_notZZ() { - return X_inv12_notZZ.instance(); - } - - public X_inv12_notZZ.Matcher getX_inv12_notZZ(final ViatraQueryEngine engine) { - return X_inv12_notZZ.Matcher.on(engine); - } - - public Inv13 getInv13() { - return Inv13.instance(); - } - - public Inv13.Matcher getInv13(final ViatraQueryEngine engine) { - return Inv13.Matcher.on(engine); - } - - public X_inv13 getX_inv13() { - return X_inv13.instance(); - } - - public X_inv13.Matcher getX_inv13(final ViatraQueryEngine engine) { - return X_inv13.Matcher.on(engine); - } - - public Inv15 getInv15() { - return Inv15.instance(); - } - - public Inv15.Matcher getInv15(final ViatraQueryEngine engine) { - return Inv15.Matcher.on(engine); - } - - public X_inv15 getX_inv15() { - return X_inv15.instance(); - } - - public X_inv15.Matcher getX_inv15(final ViatraQueryEngine engine) { - return X_inv15.Matcher.on(engine); - } - - public Inv17 getInv17() { - return Inv17.instance(); - } - - public Inv17.Matcher getInv17(final ViatraQueryEngine engine) { - return Inv17.Matcher.on(engine); - } - - public Inv20 getInv20() { - return Inv20.instance(); - } - - public Inv20.Matcher getInv20(final ViatraQueryEngine engine) { - return Inv20.Matcher.on(engine); - } - - public Inv33 getInv33() { - return Inv33.instance(); - } - - public Inv33.Matcher getInv33(final ViatraQueryEngine engine) { - return Inv33.Matcher.on(engine); - } - - public Inv34 getInv34() { - return Inv34.instance(); - } - - public Inv34.Matcher getInv34(final ViatraQueryEngine engine) { - return Inv34.Matcher.on(engine); - } - - public Inv35 getInv35() { - return Inv35.instance(); - } - - public Inv35.Matcher getInv35(final ViatraQueryEngine engine) { - return Inv35.Matcher.on(engine); - } - - public Inv47 getInv47() { - return Inv47.instance(); - } - - public Inv47.Matcher getInv47(final ViatraQueryEngine engine) { - return Inv47.Matcher.on(engine); - } - - public X_inv47 getX_inv47() { - return X_inv47.instance(); - } - - public X_inv47.Matcher getX_inv47(final ViatraQueryEngine engine) { - return X_inv47.Matcher.on(engine); - } - - public Inv48 getInv48() { - return Inv48.instance(); - } - - public Inv48.Matcher getInv48(final ViatraQueryEngine engine) { - return Inv48.Matcher.on(engine); - } - - public X_inv48_notDis getX_inv48_notDis() { - return X_inv48_notDis.instance(); - } - - public X_inv48_notDis.Matcher getX_inv48_notDis(final ViatraQueryEngine engine) { - return X_inv48_notDis.Matcher.on(engine); - } - - public X_inv48_Dis getX_inv48_Dis() { - return X_inv48_Dis.instance(); - } - - public X_inv48_Dis.Matcher getX_inv48_Dis(final ViatraQueryEngine engine) { - return X_inv48_Dis.Matcher.on(engine); - } - - public X_inv48_3 getX_inv48_3() { - return X_inv48_3.instance(); - } - - public X_inv48_3.Matcher getX_inv48_3(final ViatraQueryEngine engine) { - return X_inv48_3.Matcher.on(engine); - } - - public Inv49 getInv49() { - return Inv49.instance(); - } - - public Inv49.Matcher getInv49(final ViatraQueryEngine engine) { - return Inv49.Matcher.on(engine); - } - - public X_inv49_1 getX_inv49_1() { - return X_inv49_1.instance(); - } - - public X_inv49_1.Matcher getX_inv49_1(final ViatraQueryEngine engine) { - return X_inv49_1.Matcher.on(engine); - } - - public X_inv49_2 getX_inv49_2() { - return X_inv49_2.instance(); - } - - public X_inv49_2.Matcher getX_inv49_2(final ViatraQueryEngine engine) { - return X_inv49_2.Matcher.on(engine); - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv03.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv03.java deleted file mode 100644 index 9038ec4d..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv03.java +++ /dev/null @@ -1,652 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Dependent; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.IExpressionEvaluator; -import org.eclipse.viatra.query.runtime.matchers.psystem.IValueProvider; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.ParameterReference; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.NegativePatternCall; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.ConstantValue; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.PositivePatternCall; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; -import queries.X_inv03_eligAll; -import queries.X_inv03_hasAll; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         //AttributeRemoved -{@literal >} DF
    - *         
    - *         //inv1-External_Allowance.amount is a derived feature (TODOcheck)
    - *         //inv2-Tax_Card.income.taxPayer.taxesDue is a derived feature (TODOcheck)
    - *         
    - *         //inv3-multiplicity adjusted
    - *         {@literal @}Constraint(message = "inv03", severity = "error", key = {dep})
    - *         pattern inv03(dep : Dependent) {
    - *             find x_inv03_eligAll(dep);
    - *             neg find x_inv03_hasAll(dep);
    - *         } or {
    - *         	Dependent.birth_year(dep, by);
    - *             check(2018-by {@literal >} 21);
    - *         	Dependent.continued_studies(dep, false);
    - *             Dependent.allowances(dep, _);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class Inv03 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.inv03 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Dependent fDep; - - private static List parameterNames = makeImmutableList("dep"); - - private Match(final Dependent pDep) { - this.fDep = pDep; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "dep": return this.fDep; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fDep; - default: return null; - } - } - - public Dependent getDep() { - return this.fDep; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("dep".equals(parameterName) ) { - this.fDep = (Dependent) newValue; - return true; - } - return false; - } - - public void setDep(final Dependent pDep) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fDep = pDep; - } - - @Override - public String patternName() { - return "queries.inv03"; - } - - @Override - public List parameterNames() { - return Inv03.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fDep}; - } - - @Override - public Inv03.Match toImmutable() { - return isMutable() ? newMatch(fDep) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"dep\"=" + prettyPrintValue(fDep)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fDep); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof Inv03.Match)) { - Inv03.Match other = (Inv03.Match) obj; - return Objects.equals(fDep, other.fDep); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public Inv03 specification() { - return Inv03.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static Inv03.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static Inv03.Match newMutableMatch(final Dependent pDep) { - return new Mutable(pDep); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return the (partial) match object. - * - */ - public static Inv03.Match newMatch(final Dependent pDep) { - return new Immutable(pDep); - } - - private static final class Mutable extends Inv03.Match { - Mutable(final Dependent pDep) { - super(pDep); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends Inv03.Match { - Immutable(final Dependent pDep) { - super(pDep); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.inv03 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * //AttributeRemoved -{@literal >} DF
    -   * 
    -   * //inv1-External_Allowance.amount is a derived feature (TODOcheck)
    -   * //inv2-Tax_Card.income.taxPayer.taxesDue is a derived feature (TODOcheck)
    -   * 
    -   * //inv3-multiplicity adjusted
    -   * {@literal @}Constraint(message = "inv03", severity = "error", key = {dep})
    -   * pattern inv03(dep : Dependent) {
    -   *     find x_inv03_eligAll(dep);
    -   *     neg find x_inv03_hasAll(dep);
    -   * } or {
    -   * 	Dependent.birth_year(dep, by);
    -   *     check(2018-by {@literal >} 21);
    -   * 	Dependent.continued_studies(dep, false);
    -   *     Dependent.allowances(dep, _);
    -   * }
    -   * 
    - * - * @see Match - * @see Inv03 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static Inv03.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static Inv03.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_DEP = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(Inv03.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Dependent pDep) { - return rawStreamAllMatches(new Object[]{pDep}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Dependent pDep) { - return rawStreamAllMatches(new Object[]{pDep}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Dependent pDep) { - return rawGetOneArbitraryMatch(new Object[]{pDep}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Dependent pDep) { - return rawHasMatch(new Object[]{pDep}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Dependent pDep) { - return rawCountMatches(new Object[]{pDep}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Dependent pDep, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pDep}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return the (partial) match object. - * - */ - public Inv03.Match newMatch(final Dependent pDep) { - return Inv03.Match.newMatch(pDep); - } - - /** - * Retrieve the set of values that occur in matches for dep. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfdep(final Object[] parameters) { - return rawStreamAllValues(POSITION_DEP, parameters).map(Dependent.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for dep. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfdep() { - return rawStreamAllValuesOfdep(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for dep. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfdep() { - return rawStreamAllValuesOfdep(emptyArray()); - } - - @Override - protected Inv03.Match tupleToMatch(final Tuple t) { - try { - return Inv03.Match.newMatch((Dependent) t.get(POSITION_DEP)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected Inv03.Match arrayToMatch(final Object[] match) { - try { - return Inv03.Match.newMatch((Dependent) match[POSITION_DEP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected Inv03.Match arrayToMatchMutable(final Object[] match) { - try { - return Inv03.Match.newMutableMatch((Dependent) match[POSITION_DEP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return Inv03.instance(); - } - } - - private Inv03() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static Inv03 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected Inv03.Matcher instantiate(final ViatraQueryEngine engine) { - return Inv03.Matcher.on(engine); - } - - @Override - public Inv03.Matcher instantiate() { - return Inv03.Matcher.create(); - } - - @Override - public Inv03.Match newEmptyMatch() { - return Inv03.Match.newEmptyMatch(); - } - - @Override - public Inv03.Match newMatch(final Object... parameters) { - return Inv03.Match.newMatch((Taxation.Dependent) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link Inv03} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link Inv03#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final Inv03 INSTANCE = new Inv03(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final Inv03.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_dep = new PParameter("dep", "Taxation.Dependent", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Dependent")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_dep); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.inv03"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("dep"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_dep = body.getOrCreateVariableByName("dep"); - new TypeConstraint(body, Tuples.flatTupleOf(var_dep), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_dep, parameter_dep) - )); - // find x_inv03_eligAll(dep) - new PositivePatternCall(body, Tuples.flatTupleOf(var_dep), X_inv03_eligAll.instance().getInternalQueryRepresentation()); - // neg find x_inv03_hasAll(dep) - new NegativePatternCall(body, Tuples.flatTupleOf(var_dep), X_inv03_hasAll.instance().getInternalQueryRepresentation()); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_dep = body.getOrCreateVariableByName("dep"); - PVariable var_by = body.getOrCreateVariableByName("by"); - PVariable var___0_ = body.getOrCreateVariableByName("_<0>"); - new TypeConstraint(body, Tuples.flatTupleOf(var_dep), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_dep, parameter_dep) - )); - // Dependent.birth_year(dep, by) - new TypeConstraint(body, Tuples.flatTupleOf(var_dep), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_dep, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Physical_Person", "birth_year"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_0_, var_by); - // check(2018-by > 21) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern inv03"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("by");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Integer by = (Integer) provider.getValue("by"); - return evaluateExpression_2_1(by); - } - }, null); - // Dependent.continued_studies(dep, false) - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new ConstantValue(body, var__virtual_1_, false); - new TypeConstraint(body, Tuples.flatTupleOf(var_dep), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - PVariable var__virtual_2_ = body.getOrCreateVariableByName(".virtual{2}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_dep, var__virtual_2_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Dependent", "continued_studies"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_2_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EBoolean"))); - new Equality(body, var__virtual_2_, var__virtual_1_); - // Dependent.allowances(dep, _) - new TypeConstraint(body, Tuples.flatTupleOf(var_dep), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - PVariable var__virtual_3_ = body.getOrCreateVariableByName(".virtual{3}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_dep, var__virtual_3_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Dependent", "allowances"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_3_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "External_Allowance"))); - new Equality(body, var__virtual_3_, var___0_); - bodies.add(body); - } - { - PAnnotation annotation = new PAnnotation("Constraint"); - annotation.addAttribute("message", "inv03"); - annotation.addAttribute("severity", "error"); - annotation.addAttribute("key", Arrays.asList(new Object[] { - new ParameterReference("dep") - })); - addAnnotation(annotation); - } - return bodies; - } - } - - private static boolean evaluateExpression_2_1(final Integer by) { - return ((2018 - (by).intValue()) > 21); - } - - private static boolean evaluateExpression_2_2() { - return false; - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv05.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv05.java deleted file mode 100644 index 2dee094d..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv05.java +++ /dev/null @@ -1,701 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Income; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.IExpressionEvaluator; -import org.eclipse.viatra.query.runtime.matchers.psystem.IValueProvider; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.ParameterReference; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.NegativePatternCall; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.PositivePatternCall; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; -import queries.X_inv05_inRange; -import queries.X_inv08_noType; -import queries.X_inv08_notEI; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         //inv5 - oclIsTypeOf - handled here
    - *         {@literal @}Constraint(message = "inv05", severity = "error", key = {inc})
    - *         pattern inv05(inc : Income) {
    - *         	//income_type: None
    - *             neg find x_inv08_noType(inc);
    - *             Income.details.worked_days(inc, wd);
    - *             check(wd != 0);
    - *         } or {
    - *         	//income_type: Not Employment_Income
    - *             Income.income_type(inc, type);
    - *             neg find x_inv08_notEI(type);
    - *             Income.details.worked_days(inc, wd);
    - *             check(wd != 0);
    - *         } or {
    - *         	//income_type: Employment Income
    - *         	Income.income_type(inc, type);
    - *             Employment_Income(type);
    - *             find x_inv05_inRange(inc);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class Inv05 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.inv05 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Income fInc; - - private static List parameterNames = makeImmutableList("inc"); - - private Match(final Income pInc) { - this.fInc = pInc; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "inc": return this.fInc; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fInc; - default: return null; - } - } - - public Income getInc() { - return this.fInc; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("inc".equals(parameterName) ) { - this.fInc = (Income) newValue; - return true; - } - return false; - } - - public void setInc(final Income pInc) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fInc = pInc; - } - - @Override - public String patternName() { - return "queries.inv05"; - } - - @Override - public List parameterNames() { - return Inv05.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fInc}; - } - - @Override - public Inv05.Match toImmutable() { - return isMutable() ? newMatch(fInc) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"inc\"=" + prettyPrintValue(fInc)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fInc); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof Inv05.Match)) { - Inv05.Match other = (Inv05.Match) obj; - return Objects.equals(fInc, other.fInc); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public Inv05 specification() { - return Inv05.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static Inv05.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static Inv05.Match newMutableMatch(final Income pInc) { - return new Mutable(pInc); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the (partial) match object. - * - */ - public static Inv05.Match newMatch(final Income pInc) { - return new Immutable(pInc); - } - - private static final class Mutable extends Inv05.Match { - Mutable(final Income pInc) { - super(pInc); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends Inv05.Match { - Immutable(final Income pInc) { - super(pInc); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.inv05 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * //inv5 - oclIsTypeOf - handled here
    -   * {@literal @}Constraint(message = "inv05", severity = "error", key = {inc})
    -   * pattern inv05(inc : Income) {
    -   * 	//income_type: None
    -   *     neg find x_inv08_noType(inc);
    -   *     Income.details.worked_days(inc, wd);
    -   *     check(wd != 0);
    -   * } or {
    -   * 	//income_type: Not Employment_Income
    -   *     Income.income_type(inc, type);
    -   *     neg find x_inv08_notEI(type);
    -   *     Income.details.worked_days(inc, wd);
    -   *     check(wd != 0);
    -   * } or {
    -   * 	//income_type: Employment Income
    -   * 	Income.income_type(inc, type);
    -   *     Employment_Income(type);
    -   *     find x_inv05_inRange(inc);
    -   * }
    -   * 
    - * - * @see Match - * @see Inv05 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static Inv05.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static Inv05.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_INC = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(Inv05.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Income pInc) { - return rawStreamAllMatches(new Object[]{pInc}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Income pInc) { - return rawStreamAllMatches(new Object[]{pInc}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Income pInc) { - return rawGetOneArbitraryMatch(new Object[]{pInc}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Income pInc) { - return rawHasMatch(new Object[]{pInc}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Income pInc) { - return rawCountMatches(new Object[]{pInc}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Income pInc, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pInc}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the (partial) match object. - * - */ - public Inv05.Match newMatch(final Income pInc) { - return Inv05.Match.newMatch(pInc); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfinc(final Object[] parameters) { - return rawStreamAllValues(POSITION_INC, parameters).map(Income.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfinc() { - return rawStreamAllValuesOfinc(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfinc() { - return rawStreamAllValuesOfinc(emptyArray()); - } - - @Override - protected Inv05.Match tupleToMatch(final Tuple t) { - try { - return Inv05.Match.newMatch((Income) t.get(POSITION_INC)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected Inv05.Match arrayToMatch(final Object[] match) { - try { - return Inv05.Match.newMatch((Income) match[POSITION_INC]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected Inv05.Match arrayToMatchMutable(final Object[] match) { - try { - return Inv05.Match.newMutableMatch((Income) match[POSITION_INC]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return Inv05.instance(); - } - } - - private Inv05() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static Inv05 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected Inv05.Matcher instantiate(final ViatraQueryEngine engine) { - return Inv05.Matcher.on(engine); - } - - @Override - public Inv05.Matcher instantiate() { - return Inv05.Matcher.create(); - } - - @Override - public Inv05.Match newEmptyMatch() { - return Inv05.Match.newEmptyMatch(); - } - - @Override - public Inv05.Match newMatch(final Object... parameters) { - return Inv05.Match.newMatch((Taxation.Income) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link Inv05} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link Inv05#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final Inv05 INSTANCE = new Inv05(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final Inv05.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_inc = new PParameter("inc", "Taxation.Income", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Income")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_inc); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.inv05"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("inc"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_inc = body.getOrCreateVariableByName("inc"); - PVariable var_wd = body.getOrCreateVariableByName("wd"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_inc, parameter_inc) - )); - // //income_type: None neg find x_inv08_noType(inc) - new NegativePatternCall(body, Tuples.flatTupleOf(var_inc), X_inv08_noType.instance().getInternalQueryRepresentation()); - // Income.details.worked_days(inc, wd) - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "details"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income_Detail"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income_Detail", "worked_days"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_1_, var_wd); - // check(wd != 0) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern inv05"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("wd");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Integer wd = (Integer) provider.getValue("wd"); - return evaluateExpression_1_1(wd); - } - }, null); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_inc = body.getOrCreateVariableByName("inc"); - PVariable var_type = body.getOrCreateVariableByName("type"); - PVariable var_wd = body.getOrCreateVariableByName("wd"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_inc, parameter_inc) - )); - // //income_type: Not Employment_Income Income.income_type(inc, type) - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "income_type"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income_Type"))); - new Equality(body, var__virtual_0_, var_type); - // neg find x_inv08_notEI(type) - new NegativePatternCall(body, Tuples.flatTupleOf(var_type), X_inv08_notEI.instance().getInternalQueryRepresentation()); - // Income.details.worked_days(inc, wd) - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "details"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income_Detail"))); - PVariable var__virtual_2_ = body.getOrCreateVariableByName(".virtual{2}"); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_, var__virtual_2_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income_Detail", "worked_days"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_2_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_2_, var_wd); - // check(wd != 0) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern inv05"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("wd");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Integer wd = (Integer) provider.getValue("wd"); - return evaluateExpression_2_1(wd); - } - }, null); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_inc = body.getOrCreateVariableByName("inc"); - PVariable var_type = body.getOrCreateVariableByName("type"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_inc, parameter_inc) - )); - // //income_type: Employment Income Income.income_type(inc, type) - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "income_type"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income_Type"))); - new Equality(body, var__virtual_0_, var_type); - // Employment_Income(type) - new TypeConstraint(body, Tuples.flatTupleOf(var_type), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Employment_Income"))); - // find x_inv05_inRange(inc) - new PositivePatternCall(body, Tuples.flatTupleOf(var_inc), X_inv05_inRange.instance().getInternalQueryRepresentation()); - bodies.add(body); - } - { - PAnnotation annotation = new PAnnotation("Constraint"); - annotation.addAttribute("message", "inv05"); - annotation.addAttribute("severity", "error"); - annotation.addAttribute("key", Arrays.asList(new Object[] { - new ParameterReference("inc") - })); - addAnnotation(annotation); - } - return bodies; - } - } - - private static boolean evaluateExpression_1_1(final Integer wd) { - return ((wd).intValue() != 0); - } - - private static boolean evaluateExpression_2_1(final Integer wd) { - return ((wd).intValue() != 0); - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv06.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv06.java deleted file mode 100644 index aafdbe41..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv06.java +++ /dev/null @@ -1,669 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Tax_Payer; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.IExpressionEvaluator; -import org.eclipse.viatra.query.runtime.matchers.psystem.IValueProvider; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.ParameterReference; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         //inv6-Does not make sens, but directly from OCL
    - *         //first part of or from definition of getAge()
    - *         {@literal @}Constraint(message = "inv06", severity = "error", key = {tp})
    - *         pattern inv06(tp : Tax_Payer) {
    - *             Tax_Payer.dependents(tp, _);
    - *         	Tax_Payer.birth_year(tp, TPBy);
    - *         	check(2018 - TPBy {@literal >} 2018-16);
    - *         } or {
    - *         	Tax_Payer.birth_year(tp, TPBy);
    - *             Tax_Payer.dependents(tp, dep);
    - *             Dependent.birth_year(dep, DepBy);
    - *             check(2018-DepBy {@literal <}= 2018-TPBy-16);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class Inv06 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.inv06 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Tax_Payer fTp; - - private static List parameterNames = makeImmutableList("tp"); - - private Match(final Tax_Payer pTp) { - this.fTp = pTp; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "tp": return this.fTp; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fTp; - default: return null; - } - } - - public Tax_Payer getTp() { - return this.fTp; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("tp".equals(parameterName) ) { - this.fTp = (Tax_Payer) newValue; - return true; - } - return false; - } - - public void setTp(final Tax_Payer pTp) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fTp = pTp; - } - - @Override - public String patternName() { - return "queries.inv06"; - } - - @Override - public List parameterNames() { - return Inv06.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fTp}; - } - - @Override - public Inv06.Match toImmutable() { - return isMutable() ? newMatch(fTp) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"tp\"=" + prettyPrintValue(fTp)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fTp); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof Inv06.Match)) { - Inv06.Match other = (Inv06.Match) obj; - return Objects.equals(fTp, other.fTp); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public Inv06 specification() { - return Inv06.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static Inv06.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static Inv06.Match newMutableMatch(final Tax_Payer pTp) { - return new Mutable(pTp); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the (partial) match object. - * - */ - public static Inv06.Match newMatch(final Tax_Payer pTp) { - return new Immutable(pTp); - } - - private static final class Mutable extends Inv06.Match { - Mutable(final Tax_Payer pTp) { - super(pTp); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends Inv06.Match { - Immutable(final Tax_Payer pTp) { - super(pTp); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.inv06 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * //inv6-Does not make sens, but directly from OCL
    -   * //first part of or from definition of getAge()
    -   * {@literal @}Constraint(message = "inv06", severity = "error", key = {tp})
    -   * pattern inv06(tp : Tax_Payer) {
    -   *     Tax_Payer.dependents(tp, _);
    -   * 	Tax_Payer.birth_year(tp, TPBy);
    -   * 	check(2018 - TPBy {@literal >} 2018-16);
    -   * } or {
    -   * 	Tax_Payer.birth_year(tp, TPBy);
    -   *     Tax_Payer.dependents(tp, dep);
    -   *     Dependent.birth_year(dep, DepBy);
    -   *     check(2018-DepBy {@literal <}= 2018-TPBy-16);
    -   * }
    -   * 
    - * - * @see Match - * @see Inv06 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static Inv06.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static Inv06.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_TP = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(Inv06.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Tax_Payer pTp) { - return rawStreamAllMatches(new Object[]{pTp}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Tax_Payer pTp) { - return rawStreamAllMatches(new Object[]{pTp}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Tax_Payer pTp) { - return rawGetOneArbitraryMatch(new Object[]{pTp}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Tax_Payer pTp) { - return rawHasMatch(new Object[]{pTp}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Tax_Payer pTp) { - return rawCountMatches(new Object[]{pTp}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Tax_Payer pTp, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pTp}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the (partial) match object. - * - */ - public Inv06.Match newMatch(final Tax_Payer pTp) { - return Inv06.Match.newMatch(pTp); - } - - /** - * Retrieve the set of values that occur in matches for tp. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOftp(final Object[] parameters) { - return rawStreamAllValues(POSITION_TP, parameters).map(Tax_Payer.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for tp. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOftp() { - return rawStreamAllValuesOftp(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for tp. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOftp() { - return rawStreamAllValuesOftp(emptyArray()); - } - - @Override - protected Inv06.Match tupleToMatch(final Tuple t) { - try { - return Inv06.Match.newMatch((Tax_Payer) t.get(POSITION_TP)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected Inv06.Match arrayToMatch(final Object[] match) { - try { - return Inv06.Match.newMatch((Tax_Payer) match[POSITION_TP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected Inv06.Match arrayToMatchMutable(final Object[] match) { - try { - return Inv06.Match.newMutableMatch((Tax_Payer) match[POSITION_TP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return Inv06.instance(); - } - } - - private Inv06() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static Inv06 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected Inv06.Matcher instantiate(final ViatraQueryEngine engine) { - return Inv06.Matcher.on(engine); - } - - @Override - public Inv06.Matcher instantiate() { - return Inv06.Matcher.create(); - } - - @Override - public Inv06.Match newEmptyMatch() { - return Inv06.Match.newEmptyMatch(); - } - - @Override - public Inv06.Match newMatch(final Object... parameters) { - return Inv06.Match.newMatch((Taxation.Tax_Payer) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link Inv06} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link Inv06#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final Inv06 INSTANCE = new Inv06(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final Inv06.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_tp = new PParameter("tp", "Taxation.Tax_Payer", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Tax_Payer")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_tp); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.inv06"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("tp"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_tp = body.getOrCreateVariableByName("tp"); - PVariable var___0_ = body.getOrCreateVariableByName("_<0>"); - PVariable var_TPBy = body.getOrCreateVariableByName("TPBy"); - new TypeConstraint(body, Tuples.flatTupleOf(var_tp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Tax_Payer"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_tp, parameter_tp) - )); - // Tax_Payer.dependents(tp, _) - new TypeConstraint(body, Tuples.flatTupleOf(var_tp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Tax_Payer"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_tp, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Tax_Payer", "dependents"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - new Equality(body, var__virtual_0_, var___0_); - // Tax_Payer.birth_year(tp, TPBy) - new TypeConstraint(body, Tuples.flatTupleOf(var_tp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Tax_Payer"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_tp, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Physical_Person", "birth_year"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_1_, var_TPBy); - // check(2018 - TPBy > 2018-16) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern inv06"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("TPBy");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Integer TPBy = (Integer) provider.getValue("TPBy"); - return evaluateExpression_1_1(TPBy); - } - }, null); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_tp = body.getOrCreateVariableByName("tp"); - PVariable var_TPBy = body.getOrCreateVariableByName("TPBy"); - PVariable var_dep = body.getOrCreateVariableByName("dep"); - PVariable var_DepBy = body.getOrCreateVariableByName("DepBy"); - new TypeConstraint(body, Tuples.flatTupleOf(var_tp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Tax_Payer"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_tp, parameter_tp) - )); - // Tax_Payer.birth_year(tp, TPBy) - new TypeConstraint(body, Tuples.flatTupleOf(var_tp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Tax_Payer"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_tp, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Physical_Person", "birth_year"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_0_, var_TPBy); - // Tax_Payer.dependents(tp, dep) - new TypeConstraint(body, Tuples.flatTupleOf(var_tp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Tax_Payer"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_tp, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Tax_Payer", "dependents"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - new Equality(body, var__virtual_1_, var_dep); - // Dependent.birth_year(dep, DepBy) - new TypeConstraint(body, Tuples.flatTupleOf(var_dep), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - PVariable var__virtual_2_ = body.getOrCreateVariableByName(".virtual{2}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_dep, var__virtual_2_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Physical_Person", "birth_year"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_2_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_2_, var_DepBy); - // check(2018-DepBy <= 2018-TPBy-16) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern inv06"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("DepBy", "TPBy");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Integer DepBy = (Integer) provider.getValue("DepBy"); - Integer TPBy = (Integer) provider.getValue("TPBy"); - return evaluateExpression_2_1(DepBy, TPBy); - } - }, null); - bodies.add(body); - } - { - PAnnotation annotation = new PAnnotation("Constraint"); - annotation.addAttribute("message", "inv06"); - annotation.addAttribute("severity", "error"); - annotation.addAttribute("key", Arrays.asList(new Object[] { - new ParameterReference("tp") - })); - addAnnotation(annotation); - } - return bodies; - } - } - - private static boolean evaluateExpression_1_1(final Integer TPBy) { - return ((2018 - (TPBy).intValue()) > (2018 - 16)); - } - - private static boolean evaluateExpression_2_1(final Integer DepBy, final Integer TPBy) { - return ((2018 - (DepBy).intValue()) <= ((2018 - (TPBy).intValue()) - 16)); - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv07.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv07.java deleted file mode 100644 index 81665825..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv07.java +++ /dev/null @@ -1,612 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Income; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.IExpressionEvaluator; -import org.eclipse.viatra.query.runtime.matchers.psystem.IValueProvider; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.ParameterReference; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         //inv7-OrderedSet
    - *         {@literal @}Constraint(message = "inv07", severity = "error", key = {inc})
    - *         pattern inv07(inc : Income) {
    - *         	Income.details.distance(inc, d1);
    - *         	Income.details.distance(inc, d2);
    - *         	check(d1 != d2);//compare values
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class Inv07 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.inv07 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Income fInc; - - private static List parameterNames = makeImmutableList("inc"); - - private Match(final Income pInc) { - this.fInc = pInc; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "inc": return this.fInc; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fInc; - default: return null; - } - } - - public Income getInc() { - return this.fInc; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("inc".equals(parameterName) ) { - this.fInc = (Income) newValue; - return true; - } - return false; - } - - public void setInc(final Income pInc) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fInc = pInc; - } - - @Override - public String patternName() { - return "queries.inv07"; - } - - @Override - public List parameterNames() { - return Inv07.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fInc}; - } - - @Override - public Inv07.Match toImmutable() { - return isMutable() ? newMatch(fInc) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"inc\"=" + prettyPrintValue(fInc)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fInc); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof Inv07.Match)) { - Inv07.Match other = (Inv07.Match) obj; - return Objects.equals(fInc, other.fInc); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public Inv07 specification() { - return Inv07.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static Inv07.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static Inv07.Match newMutableMatch(final Income pInc) { - return new Mutable(pInc); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the (partial) match object. - * - */ - public static Inv07.Match newMatch(final Income pInc) { - return new Immutable(pInc); - } - - private static final class Mutable extends Inv07.Match { - Mutable(final Income pInc) { - super(pInc); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends Inv07.Match { - Immutable(final Income pInc) { - super(pInc); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.inv07 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * //inv7-OrderedSet
    -   * {@literal @}Constraint(message = "inv07", severity = "error", key = {inc})
    -   * pattern inv07(inc : Income) {
    -   * 	Income.details.distance(inc, d1);
    -   * 	Income.details.distance(inc, d2);
    -   * 	check(d1 != d2);//compare values
    -   * }
    -   * 
    - * - * @see Match - * @see Inv07 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static Inv07.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static Inv07.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_INC = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(Inv07.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Income pInc) { - return rawStreamAllMatches(new Object[]{pInc}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Income pInc) { - return rawStreamAllMatches(new Object[]{pInc}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Income pInc) { - return rawGetOneArbitraryMatch(new Object[]{pInc}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Income pInc) { - return rawHasMatch(new Object[]{pInc}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Income pInc) { - return rawCountMatches(new Object[]{pInc}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Income pInc, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pInc}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the (partial) match object. - * - */ - public Inv07.Match newMatch(final Income pInc) { - return Inv07.Match.newMatch(pInc); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfinc(final Object[] parameters) { - return rawStreamAllValues(POSITION_INC, parameters).map(Income.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfinc() { - return rawStreamAllValuesOfinc(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfinc() { - return rawStreamAllValuesOfinc(emptyArray()); - } - - @Override - protected Inv07.Match tupleToMatch(final Tuple t) { - try { - return Inv07.Match.newMatch((Income) t.get(POSITION_INC)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected Inv07.Match arrayToMatch(final Object[] match) { - try { - return Inv07.Match.newMatch((Income) match[POSITION_INC]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected Inv07.Match arrayToMatchMutable(final Object[] match) { - try { - return Inv07.Match.newMutableMatch((Income) match[POSITION_INC]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return Inv07.instance(); - } - } - - private Inv07() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static Inv07 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected Inv07.Matcher instantiate(final ViatraQueryEngine engine) { - return Inv07.Matcher.on(engine); - } - - @Override - public Inv07.Matcher instantiate() { - return Inv07.Matcher.create(); - } - - @Override - public Inv07.Match newEmptyMatch() { - return Inv07.Match.newEmptyMatch(); - } - - @Override - public Inv07.Match newMatch(final Object... parameters) { - return Inv07.Match.newMatch((Taxation.Income) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link Inv07} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link Inv07#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final Inv07 INSTANCE = new Inv07(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final Inv07.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_inc = new PParameter("inc", "Taxation.Income", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Income")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_inc); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.inv07"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("inc"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_inc = body.getOrCreateVariableByName("inc"); - PVariable var_d1 = body.getOrCreateVariableByName("d1"); - PVariable var_d2 = body.getOrCreateVariableByName("d2"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_inc, parameter_inc) - )); - // Income.details.distance(inc, d1) - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "details"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income_Detail"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income_Detail", "distance"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EDouble"))); - new Equality(body, var__virtual_1_, var_d1); - // Income.details.distance(inc, d2) - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_2_ = body.getOrCreateVariableByName(".virtual{2}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc, var__virtual_2_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "details"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_2_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income_Detail"))); - PVariable var__virtual_3_ = body.getOrCreateVariableByName(".virtual{3}"); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_2_, var__virtual_3_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income_Detail", "distance"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_3_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EDouble"))); - new Equality(body, var__virtual_3_, var_d2); - // check(d1 != d2) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern inv07"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("d1", "d2");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Double d1 = (Double) provider.getValue("d1"); - Double d2 = (Double) provider.getValue("d2"); - return evaluateExpression_1_1(d1, d2); - } - }, null); - bodies.add(body); - } - { - PAnnotation annotation = new PAnnotation("Constraint"); - annotation.addAttribute("message", "inv07"); - annotation.addAttribute("severity", "error"); - annotation.addAttribute("key", Arrays.asList(new Object[] { - new ParameterReference("inc") - })); - addAnnotation(annotation); - } - return bodies; - } - } - - private static boolean evaluateExpression_1_1(final Double d1, final Double d2) { - boolean _notEquals = (!com.google.common.base.Objects.equal(d1, d2)); - return _notEquals; - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv08.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv08.java deleted file mode 100644 index 9ecadd34..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv08.java +++ /dev/null @@ -1,705 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Income; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.IExpressionEvaluator; -import org.eclipse.viatra.query.runtime.matchers.psystem.IValueProvider; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.ParameterReference; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.NegativePatternCall; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.PositivePatternCall; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; -import queries.X_inv08_inRange; -import queries.X_inv08_noType; -import queries.X_inv08_notEI; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         //user_complete_details-AttributeRemoved
    - *         
    - *         //inv8 - oclIsTypeOf - handled here
    - *         {@literal @}Constraint(message = "inv08", severity = "error", key = {inc})
    - *         pattern inv08(inc : Income) {
    - *         	//income_type: None
    - *             neg find x_inv08_noType(inc);
    - *             Income.details.distance(inc, dist);
    - *             check(dist != 0);
    - *         } or {
    - *         	//income_type: Not Employment_Income
    - *             Income.income_type(inc, type);
    - *             neg find x_inv08_notEI(type);
    - *             Income.details.distance(inc, dist);
    - *             check(dist != 0);
    - *         } or {
    - *         	//income_type: Employment Income
    - *         	Income.income_type(inc, type);
    - *             Employment_Income(type);
    - *             find x_inv08_inRange(inc);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class Inv08 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.inv08 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Income fInc; - - private static List parameterNames = makeImmutableList("inc"); - - private Match(final Income pInc) { - this.fInc = pInc; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "inc": return this.fInc; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fInc; - default: return null; - } - } - - public Income getInc() { - return this.fInc; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("inc".equals(parameterName) ) { - this.fInc = (Income) newValue; - return true; - } - return false; - } - - public void setInc(final Income pInc) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fInc = pInc; - } - - @Override - public String patternName() { - return "queries.inv08"; - } - - @Override - public List parameterNames() { - return Inv08.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fInc}; - } - - @Override - public Inv08.Match toImmutable() { - return isMutable() ? newMatch(fInc) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"inc\"=" + prettyPrintValue(fInc)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fInc); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof Inv08.Match)) { - Inv08.Match other = (Inv08.Match) obj; - return Objects.equals(fInc, other.fInc); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public Inv08 specification() { - return Inv08.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static Inv08.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static Inv08.Match newMutableMatch(final Income pInc) { - return new Mutable(pInc); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the (partial) match object. - * - */ - public static Inv08.Match newMatch(final Income pInc) { - return new Immutable(pInc); - } - - private static final class Mutable extends Inv08.Match { - Mutable(final Income pInc) { - super(pInc); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends Inv08.Match { - Immutable(final Income pInc) { - super(pInc); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.inv08 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * //user_complete_details-AttributeRemoved
    -   * 
    -   * //inv8 - oclIsTypeOf - handled here
    -   * {@literal @}Constraint(message = "inv08", severity = "error", key = {inc})
    -   * pattern inv08(inc : Income) {
    -   * 	//income_type: None
    -   *     neg find x_inv08_noType(inc);
    -   *     Income.details.distance(inc, dist);
    -   *     check(dist != 0);
    -   * } or {
    -   * 	//income_type: Not Employment_Income
    -   *     Income.income_type(inc, type);
    -   *     neg find x_inv08_notEI(type);
    -   *     Income.details.distance(inc, dist);
    -   *     check(dist != 0);
    -   * } or {
    -   * 	//income_type: Employment Income
    -   * 	Income.income_type(inc, type);
    -   *     Employment_Income(type);
    -   *     find x_inv08_inRange(inc);
    -   * }
    -   * 
    - * - * @see Match - * @see Inv08 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static Inv08.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static Inv08.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_INC = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(Inv08.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Income pInc) { - return rawStreamAllMatches(new Object[]{pInc}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Income pInc) { - return rawStreamAllMatches(new Object[]{pInc}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Income pInc) { - return rawGetOneArbitraryMatch(new Object[]{pInc}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Income pInc) { - return rawHasMatch(new Object[]{pInc}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Income pInc) { - return rawCountMatches(new Object[]{pInc}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Income pInc, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pInc}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the (partial) match object. - * - */ - public Inv08.Match newMatch(final Income pInc) { - return Inv08.Match.newMatch(pInc); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfinc(final Object[] parameters) { - return rawStreamAllValues(POSITION_INC, parameters).map(Income.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfinc() { - return rawStreamAllValuesOfinc(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfinc() { - return rawStreamAllValuesOfinc(emptyArray()); - } - - @Override - protected Inv08.Match tupleToMatch(final Tuple t) { - try { - return Inv08.Match.newMatch((Income) t.get(POSITION_INC)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected Inv08.Match arrayToMatch(final Object[] match) { - try { - return Inv08.Match.newMatch((Income) match[POSITION_INC]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected Inv08.Match arrayToMatchMutable(final Object[] match) { - try { - return Inv08.Match.newMutableMatch((Income) match[POSITION_INC]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return Inv08.instance(); - } - } - - private Inv08() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static Inv08 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected Inv08.Matcher instantiate(final ViatraQueryEngine engine) { - return Inv08.Matcher.on(engine); - } - - @Override - public Inv08.Matcher instantiate() { - return Inv08.Matcher.create(); - } - - @Override - public Inv08.Match newEmptyMatch() { - return Inv08.Match.newEmptyMatch(); - } - - @Override - public Inv08.Match newMatch(final Object... parameters) { - return Inv08.Match.newMatch((Taxation.Income) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link Inv08} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link Inv08#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final Inv08 INSTANCE = new Inv08(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final Inv08.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_inc = new PParameter("inc", "Taxation.Income", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Income")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_inc); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.inv08"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("inc"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_inc = body.getOrCreateVariableByName("inc"); - PVariable var_dist = body.getOrCreateVariableByName("dist"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_inc, parameter_inc) - )); - // //income_type: None neg find x_inv08_noType(inc) - new NegativePatternCall(body, Tuples.flatTupleOf(var_inc), X_inv08_noType.instance().getInternalQueryRepresentation()); - // Income.details.distance(inc, dist) - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "details"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income_Detail"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income_Detail", "distance"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EDouble"))); - new Equality(body, var__virtual_1_, var_dist); - // check(dist != 0) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern inv08"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("dist");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Double dist = (Double) provider.getValue("dist"); - return evaluateExpression_1_1(dist); - } - }, null); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_inc = body.getOrCreateVariableByName("inc"); - PVariable var_type = body.getOrCreateVariableByName("type"); - PVariable var_dist = body.getOrCreateVariableByName("dist"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_inc, parameter_inc) - )); - // //income_type: Not Employment_Income Income.income_type(inc, type) - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "income_type"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income_Type"))); - new Equality(body, var__virtual_0_, var_type); - // neg find x_inv08_notEI(type) - new NegativePatternCall(body, Tuples.flatTupleOf(var_type), X_inv08_notEI.instance().getInternalQueryRepresentation()); - // Income.details.distance(inc, dist) - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "details"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income_Detail"))); - PVariable var__virtual_2_ = body.getOrCreateVariableByName(".virtual{2}"); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_, var__virtual_2_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income_Detail", "distance"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_2_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EDouble"))); - new Equality(body, var__virtual_2_, var_dist); - // check(dist != 0) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern inv08"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("dist");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Double dist = (Double) provider.getValue("dist"); - return evaluateExpression_2_1(dist); - } - }, null); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_inc = body.getOrCreateVariableByName("inc"); - PVariable var_type = body.getOrCreateVariableByName("type"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_inc, parameter_inc) - )); - // //income_type: Employment Income Income.income_type(inc, type) - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "income_type"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income_Type"))); - new Equality(body, var__virtual_0_, var_type); - // Employment_Income(type) - new TypeConstraint(body, Tuples.flatTupleOf(var_type), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Employment_Income"))); - // find x_inv08_inRange(inc) - new PositivePatternCall(body, Tuples.flatTupleOf(var_inc), X_inv08_inRange.instance().getInternalQueryRepresentation()); - bodies.add(body); - } - { - PAnnotation annotation = new PAnnotation("Constraint"); - annotation.addAttribute("message", "inv08"); - annotation.addAttribute("severity", "error"); - annotation.addAttribute("key", Arrays.asList(new Object[] { - new ParameterReference("inc") - })); - addAnnotation(annotation); - } - return bodies; - } - } - - private static boolean evaluateExpression_1_1(final Double dist) { - return ((dist).doubleValue() != 0); - } - - private static boolean evaluateExpression_2_1(final Double dist) { - return ((dist).doubleValue() != 0); - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv10.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv10.java deleted file mode 100644 index 6ee0111e..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv10.java +++ /dev/null @@ -1,616 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Income; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.IExpressionEvaluator; -import org.eclipse.viatra.query.runtime.matchers.psystem.IValueProvider; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.ParameterReference; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         //inv9-DerivedFeature
    - *         
    - *         //inv10-Ordered Sets
    - *         {@literal @}Constraint(message = "inv10", severity = "error", key = {inc})
    - *         pattern inv10(inc : Income) {
    - *         	Income.details.amount(inc, a1);
    - *         	Income.details.amount(inc, a2);
    - *         	check(a1 != a2);//compare values
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class Inv10 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.inv10 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Income fInc; - - private static List parameterNames = makeImmutableList("inc"); - - private Match(final Income pInc) { - this.fInc = pInc; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "inc": return this.fInc; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fInc; - default: return null; - } - } - - public Income getInc() { - return this.fInc; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("inc".equals(parameterName) ) { - this.fInc = (Income) newValue; - return true; - } - return false; - } - - public void setInc(final Income pInc) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fInc = pInc; - } - - @Override - public String patternName() { - return "queries.inv10"; - } - - @Override - public List parameterNames() { - return Inv10.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fInc}; - } - - @Override - public Inv10.Match toImmutable() { - return isMutable() ? newMatch(fInc) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"inc\"=" + prettyPrintValue(fInc)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fInc); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof Inv10.Match)) { - Inv10.Match other = (Inv10.Match) obj; - return Objects.equals(fInc, other.fInc); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public Inv10 specification() { - return Inv10.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static Inv10.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static Inv10.Match newMutableMatch(final Income pInc) { - return new Mutable(pInc); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the (partial) match object. - * - */ - public static Inv10.Match newMatch(final Income pInc) { - return new Immutable(pInc); - } - - private static final class Mutable extends Inv10.Match { - Mutable(final Income pInc) { - super(pInc); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends Inv10.Match { - Immutable(final Income pInc) { - super(pInc); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.inv10 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * //inv9-DerivedFeature
    -   * 
    -   * //inv10-Ordered Sets
    -   * {@literal @}Constraint(message = "inv10", severity = "error", key = {inc})
    -   * pattern inv10(inc : Income) {
    -   * 	Income.details.amount(inc, a1);
    -   * 	Income.details.amount(inc, a2);
    -   * 	check(a1 != a2);//compare values
    -   * }
    -   * 
    - * - * @see Match - * @see Inv10 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static Inv10.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static Inv10.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_INC = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(Inv10.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Income pInc) { - return rawStreamAllMatches(new Object[]{pInc}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Income pInc) { - return rawStreamAllMatches(new Object[]{pInc}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Income pInc) { - return rawGetOneArbitraryMatch(new Object[]{pInc}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Income pInc) { - return rawHasMatch(new Object[]{pInc}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Income pInc) { - return rawCountMatches(new Object[]{pInc}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Income pInc, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pInc}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the (partial) match object. - * - */ - public Inv10.Match newMatch(final Income pInc) { - return Inv10.Match.newMatch(pInc); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfinc(final Object[] parameters) { - return rawStreamAllValues(POSITION_INC, parameters).map(Income.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfinc() { - return rawStreamAllValuesOfinc(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfinc() { - return rawStreamAllValuesOfinc(emptyArray()); - } - - @Override - protected Inv10.Match tupleToMatch(final Tuple t) { - try { - return Inv10.Match.newMatch((Income) t.get(POSITION_INC)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected Inv10.Match arrayToMatch(final Object[] match) { - try { - return Inv10.Match.newMatch((Income) match[POSITION_INC]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected Inv10.Match arrayToMatchMutable(final Object[] match) { - try { - return Inv10.Match.newMutableMatch((Income) match[POSITION_INC]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return Inv10.instance(); - } - } - - private Inv10() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static Inv10 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected Inv10.Matcher instantiate(final ViatraQueryEngine engine) { - return Inv10.Matcher.on(engine); - } - - @Override - public Inv10.Matcher instantiate() { - return Inv10.Matcher.create(); - } - - @Override - public Inv10.Match newEmptyMatch() { - return Inv10.Match.newEmptyMatch(); - } - - @Override - public Inv10.Match newMatch(final Object... parameters) { - return Inv10.Match.newMatch((Taxation.Income) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link Inv10} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link Inv10#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final Inv10 INSTANCE = new Inv10(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final Inv10.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_inc = new PParameter("inc", "Taxation.Income", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Income")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_inc); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.inv10"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("inc"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_inc = body.getOrCreateVariableByName("inc"); - PVariable var_a1 = body.getOrCreateVariableByName("a1"); - PVariable var_a2 = body.getOrCreateVariableByName("a2"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_inc, parameter_inc) - )); - // Income.details.amount(inc, a1) - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "details"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income_Detail"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income_Detail", "amount"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EDouble"))); - new Equality(body, var__virtual_1_, var_a1); - // Income.details.amount(inc, a2) - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_2_ = body.getOrCreateVariableByName(".virtual{2}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc, var__virtual_2_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "details"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_2_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income_Detail"))); - PVariable var__virtual_3_ = body.getOrCreateVariableByName(".virtual{3}"); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_2_, var__virtual_3_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income_Detail", "amount"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_3_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EDouble"))); - new Equality(body, var__virtual_3_, var_a2); - // check(a1 != a2) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern inv10"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("a1", "a2");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Double a1 = (Double) provider.getValue("a1"); - Double a2 = (Double) provider.getValue("a2"); - return evaluateExpression_1_1(a1, a2); - } - }, null); - bodies.add(body); - } - { - PAnnotation annotation = new PAnnotation("Constraint"); - annotation.addAttribute("message", "inv10"); - annotation.addAttribute("severity", "error"); - annotation.addAttribute("key", Arrays.asList(new Object[] { - new ParameterReference("inc") - })); - addAnnotation(annotation); - } - return bodies; - } - } - - private static boolean evaluateExpression_1_1(final Double a1, final Double a2) { - boolean _notEquals = (!com.google.common.base.Objects.equal(a1, a2)); - return _notEquals; - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv11.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv11.java deleted file mode 100644 index 5dc82fc9..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv11.java +++ /dev/null @@ -1,566 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Expense; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.ParameterReference; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.PositivePatternCall; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; -import queries.X_inv11_incNotOver100; -import queries.X_inv11_incOver100; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         //inv11-attributes-handled by multiplicity
    - *         {@literal @}Constraint(message = "inv11", severity = "error", key = {exp})
    - *         pattern inv11(exp : Expense) {
    - *             find x_inv11_incOver100(exp);
    - *             find x_inv11_incNotOver100(exp);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class Inv11 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.inv11 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Expense fExp; - - private static List parameterNames = makeImmutableList("exp"); - - private Match(final Expense pExp) { - this.fExp = pExp; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "exp": return this.fExp; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fExp; - default: return null; - } - } - - public Expense getExp() { - return this.fExp; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("exp".equals(parameterName) ) { - this.fExp = (Expense) newValue; - return true; - } - return false; - } - - public void setExp(final Expense pExp) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fExp = pExp; - } - - @Override - public String patternName() { - return "queries.inv11"; - } - - @Override - public List parameterNames() { - return Inv11.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fExp}; - } - - @Override - public Inv11.Match toImmutable() { - return isMutable() ? newMatch(fExp) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"exp\"=" + prettyPrintValue(fExp)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fExp); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof Inv11.Match)) { - Inv11.Match other = (Inv11.Match) obj; - return Objects.equals(fExp, other.fExp); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public Inv11 specification() { - return Inv11.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static Inv11.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static Inv11.Match newMutableMatch(final Expense pExp) { - return new Mutable(pExp); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return the (partial) match object. - * - */ - public static Inv11.Match newMatch(final Expense pExp) { - return new Immutable(pExp); - } - - private static final class Mutable extends Inv11.Match { - Mutable(final Expense pExp) { - super(pExp); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends Inv11.Match { - Immutable(final Expense pExp) { - super(pExp); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.inv11 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * //inv11-attributes-handled by multiplicity
    -   * {@literal @}Constraint(message = "inv11", severity = "error", key = {exp})
    -   * pattern inv11(exp : Expense) {
    -   *     find x_inv11_incOver100(exp);
    -   *     find x_inv11_incNotOver100(exp);
    -   * }
    -   * 
    - * - * @see Match - * @see Inv11 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static Inv11.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static Inv11.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_EXP = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(Inv11.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Expense pExp) { - return rawStreamAllMatches(new Object[]{pExp}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Expense pExp) { - return rawStreamAllMatches(new Object[]{pExp}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Expense pExp) { - return rawGetOneArbitraryMatch(new Object[]{pExp}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Expense pExp) { - return rawHasMatch(new Object[]{pExp}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Expense pExp) { - return rawCountMatches(new Object[]{pExp}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Expense pExp, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pExp}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return the (partial) match object. - * - */ - public Inv11.Match newMatch(final Expense pExp) { - return Inv11.Match.newMatch(pExp); - } - - /** - * Retrieve the set of values that occur in matches for exp. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfexp(final Object[] parameters) { - return rawStreamAllValues(POSITION_EXP, parameters).map(Expense.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for exp. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfexp() { - return rawStreamAllValuesOfexp(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for exp. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfexp() { - return rawStreamAllValuesOfexp(emptyArray()); - } - - @Override - protected Inv11.Match tupleToMatch(final Tuple t) { - try { - return Inv11.Match.newMatch((Expense) t.get(POSITION_EXP)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected Inv11.Match arrayToMatch(final Object[] match) { - try { - return Inv11.Match.newMatch((Expense) match[POSITION_EXP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected Inv11.Match arrayToMatchMutable(final Object[] match) { - try { - return Inv11.Match.newMutableMatch((Expense) match[POSITION_EXP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return Inv11.instance(); - } - } - - private Inv11() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static Inv11 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected Inv11.Matcher instantiate(final ViatraQueryEngine engine) { - return Inv11.Matcher.on(engine); - } - - @Override - public Inv11.Matcher instantiate() { - return Inv11.Matcher.create(); - } - - @Override - public Inv11.Match newEmptyMatch() { - return Inv11.Match.newEmptyMatch(); - } - - @Override - public Inv11.Match newMatch(final Object... parameters) { - return Inv11.Match.newMatch((Taxation.Expense) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link Inv11} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link Inv11#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final Inv11 INSTANCE = new Inv11(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final Inv11.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_exp = new PParameter("exp", "Taxation.Expense", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Expense")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_exp); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.inv11"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("exp"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_exp = body.getOrCreateVariableByName("exp"); - new TypeConstraint(body, Tuples.flatTupleOf(var_exp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Expense"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_exp, parameter_exp) - )); - // find x_inv11_incOver100(exp) - new PositivePatternCall(body, Tuples.flatTupleOf(var_exp), X_inv11_incOver100.instance().getInternalQueryRepresentation()); - // find x_inv11_incNotOver100(exp) - new PositivePatternCall(body, Tuples.flatTupleOf(var_exp), X_inv11_incNotOver100.instance().getInternalQueryRepresentation()); - bodies.add(body); - } - { - PAnnotation annotation = new PAnnotation("Constraint"); - annotation.addAttribute("message", "inv11"); - annotation.addAttribute("severity", "error"); - annotation.addAttribute("key", Arrays.asList(new Object[] { - new ParameterReference("exp") - })); - addAnnotation(annotation); - } - return bodies; - } - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv12.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv12.java deleted file mode 100644 index fc1b0c62..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv12.java +++ /dev/null @@ -1,596 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Tax_Payer; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.ParameterReference; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.NegativePatternCall; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; -import queries.X_inv12_notNonRes; -import queries.X_inv12_notZZ; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         //inv12
    - *         //exists - handled logically
    - *         {@literal @}Constraint(message = "inv12", severity = "error", key = {tp})
    - *         pattern inv12(tp : Tax_Payer) {
    - *             Tax_Payer.addresses(tp, hab_add);
    - *             Habitual_Address(hab_add);
    - *             neg find x_inv12_notZZ(hab_add);
    - *             Tax_Payer.incomes(tp, inc);
    - *             Local_Income(inc);
    - *             neg find x_inv12_notNonRes(tp);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class Inv12 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.inv12 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Tax_Payer fTp; - - private static List parameterNames = makeImmutableList("tp"); - - private Match(final Tax_Payer pTp) { - this.fTp = pTp; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "tp": return this.fTp; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fTp; - default: return null; - } - } - - public Tax_Payer getTp() { - return this.fTp; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("tp".equals(parameterName) ) { - this.fTp = (Tax_Payer) newValue; - return true; - } - return false; - } - - public void setTp(final Tax_Payer pTp) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fTp = pTp; - } - - @Override - public String patternName() { - return "queries.inv12"; - } - - @Override - public List parameterNames() { - return Inv12.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fTp}; - } - - @Override - public Inv12.Match toImmutable() { - return isMutable() ? newMatch(fTp) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"tp\"=" + prettyPrintValue(fTp)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fTp); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof Inv12.Match)) { - Inv12.Match other = (Inv12.Match) obj; - return Objects.equals(fTp, other.fTp); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public Inv12 specification() { - return Inv12.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static Inv12.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static Inv12.Match newMutableMatch(final Tax_Payer pTp) { - return new Mutable(pTp); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the (partial) match object. - * - */ - public static Inv12.Match newMatch(final Tax_Payer pTp) { - return new Immutable(pTp); - } - - private static final class Mutable extends Inv12.Match { - Mutable(final Tax_Payer pTp) { - super(pTp); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends Inv12.Match { - Immutable(final Tax_Payer pTp) { - super(pTp); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.inv12 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * //inv12
    -   * //exists - handled logically
    -   * {@literal @}Constraint(message = "inv12", severity = "error", key = {tp})
    -   * pattern inv12(tp : Tax_Payer) {
    -   *     Tax_Payer.addresses(tp, hab_add);
    -   *     Habitual_Address(hab_add);
    -   *     neg find x_inv12_notZZ(hab_add);
    -   *     Tax_Payer.incomes(tp, inc);
    -   *     Local_Income(inc);
    -   *     neg find x_inv12_notNonRes(tp);
    -   * }
    -   * 
    - * - * @see Match - * @see Inv12 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static Inv12.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static Inv12.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_TP = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(Inv12.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Tax_Payer pTp) { - return rawStreamAllMatches(new Object[]{pTp}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Tax_Payer pTp) { - return rawStreamAllMatches(new Object[]{pTp}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Tax_Payer pTp) { - return rawGetOneArbitraryMatch(new Object[]{pTp}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Tax_Payer pTp) { - return rawHasMatch(new Object[]{pTp}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Tax_Payer pTp) { - return rawCountMatches(new Object[]{pTp}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Tax_Payer pTp, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pTp}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the (partial) match object. - * - */ - public Inv12.Match newMatch(final Tax_Payer pTp) { - return Inv12.Match.newMatch(pTp); - } - - /** - * Retrieve the set of values that occur in matches for tp. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOftp(final Object[] parameters) { - return rawStreamAllValues(POSITION_TP, parameters).map(Tax_Payer.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for tp. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOftp() { - return rawStreamAllValuesOftp(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for tp. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOftp() { - return rawStreamAllValuesOftp(emptyArray()); - } - - @Override - protected Inv12.Match tupleToMatch(final Tuple t) { - try { - return Inv12.Match.newMatch((Tax_Payer) t.get(POSITION_TP)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected Inv12.Match arrayToMatch(final Object[] match) { - try { - return Inv12.Match.newMatch((Tax_Payer) match[POSITION_TP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected Inv12.Match arrayToMatchMutable(final Object[] match) { - try { - return Inv12.Match.newMutableMatch((Tax_Payer) match[POSITION_TP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return Inv12.instance(); - } - } - - private Inv12() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static Inv12 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected Inv12.Matcher instantiate(final ViatraQueryEngine engine) { - return Inv12.Matcher.on(engine); - } - - @Override - public Inv12.Matcher instantiate() { - return Inv12.Matcher.create(); - } - - @Override - public Inv12.Match newEmptyMatch() { - return Inv12.Match.newEmptyMatch(); - } - - @Override - public Inv12.Match newMatch(final Object... parameters) { - return Inv12.Match.newMatch((Taxation.Tax_Payer) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link Inv12} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link Inv12#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final Inv12 INSTANCE = new Inv12(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final Inv12.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_tp = new PParameter("tp", "Taxation.Tax_Payer", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Tax_Payer")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_tp); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.inv12"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("tp"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_tp = body.getOrCreateVariableByName("tp"); - PVariable var_hab_add = body.getOrCreateVariableByName("hab_add"); - PVariable var_inc = body.getOrCreateVariableByName("inc"); - new TypeConstraint(body, Tuples.flatTupleOf(var_tp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Tax_Payer"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_tp, parameter_tp) - )); - // Tax_Payer.addresses(tp, hab_add) - new TypeConstraint(body, Tuples.flatTupleOf(var_tp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Tax_Payer"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_tp, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Physical_Person", "addresses"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Address"))); - new Equality(body, var__virtual_0_, var_hab_add); - // Habitual_Address(hab_add) - new TypeConstraint(body, Tuples.flatTupleOf(var_hab_add), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Habitual_Address"))); - // neg find x_inv12_notZZ(hab_add) - new NegativePatternCall(body, Tuples.flatTupleOf(var_hab_add), X_inv12_notZZ.instance().getInternalQueryRepresentation()); - // Tax_Payer.incomes(tp, inc) - new TypeConstraint(body, Tuples.flatTupleOf(var_tp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Tax_Payer"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_tp, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Tax_Payer", "incomes"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - new Equality(body, var__virtual_1_, var_inc); - // Local_Income(inc) - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Local_Income"))); - // neg find x_inv12_notNonRes(tp) - new NegativePatternCall(body, Tuples.flatTupleOf(var_tp), X_inv12_notNonRes.instance().getInternalQueryRepresentation()); - bodies.add(body); - } - { - PAnnotation annotation = new PAnnotation("Constraint"); - annotation.addAttribute("message", "inv12"); - annotation.addAttribute("severity", "error"); - annotation.addAttribute("key", Arrays.asList(new Object[] { - new ParameterReference("tp") - })); - addAnnotation(annotation); - } - return bodies; - } - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv13.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv13.java deleted file mode 100644 index a4aea47c..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv13.java +++ /dev/null @@ -1,591 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Tax_Payer; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.ParameterReference; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.NegativePatternCall; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.ConstantValue; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; -import queries.X_inv13; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         //inv13 - Added new containment rel Phys_Pers-{@literal >}Address
    - *         //exists - handled logically
    - *         {@literal @}Constraint(message = "inv13", severity = "error", key = {tp})
    - *         pattern inv13(tp : Tax_Payer) {
    - *             Tax_Payer.addresses(tp, hab_add);
    - *             Habitual_Address(hab_add);
    - *             Address.country(hab_add, ::ZZ);
    - *             neg find x_inv13(tp);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class Inv13 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.inv13 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Tax_Payer fTp; - - private static List parameterNames = makeImmutableList("tp"); - - private Match(final Tax_Payer pTp) { - this.fTp = pTp; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "tp": return this.fTp; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fTp; - default: return null; - } - } - - public Tax_Payer getTp() { - return this.fTp; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("tp".equals(parameterName) ) { - this.fTp = (Tax_Payer) newValue; - return true; - } - return false; - } - - public void setTp(final Tax_Payer pTp) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fTp = pTp; - } - - @Override - public String patternName() { - return "queries.inv13"; - } - - @Override - public List parameterNames() { - return Inv13.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fTp}; - } - - @Override - public Inv13.Match toImmutable() { - return isMutable() ? newMatch(fTp) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"tp\"=" + prettyPrintValue(fTp)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fTp); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof Inv13.Match)) { - Inv13.Match other = (Inv13.Match) obj; - return Objects.equals(fTp, other.fTp); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public Inv13 specification() { - return Inv13.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static Inv13.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static Inv13.Match newMutableMatch(final Tax_Payer pTp) { - return new Mutable(pTp); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the (partial) match object. - * - */ - public static Inv13.Match newMatch(final Tax_Payer pTp) { - return new Immutable(pTp); - } - - private static final class Mutable extends Inv13.Match { - Mutable(final Tax_Payer pTp) { - super(pTp); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends Inv13.Match { - Immutable(final Tax_Payer pTp) { - super(pTp); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.inv13 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * //inv13 - Added new containment rel Phys_Pers-{@literal >}Address
    -   * //exists - handled logically
    -   * {@literal @}Constraint(message = "inv13", severity = "error", key = {tp})
    -   * pattern inv13(tp : Tax_Payer) {
    -   *     Tax_Payer.addresses(tp, hab_add);
    -   *     Habitual_Address(hab_add);
    -   *     Address.country(hab_add, ::ZZ);
    -   *     neg find x_inv13(tp);
    -   * }
    -   * 
    - * - * @see Match - * @see Inv13 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static Inv13.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static Inv13.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_TP = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(Inv13.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Tax_Payer pTp) { - return rawStreamAllMatches(new Object[]{pTp}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Tax_Payer pTp) { - return rawStreamAllMatches(new Object[]{pTp}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Tax_Payer pTp) { - return rawGetOneArbitraryMatch(new Object[]{pTp}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Tax_Payer pTp) { - return rawHasMatch(new Object[]{pTp}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Tax_Payer pTp) { - return rawCountMatches(new Object[]{pTp}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Tax_Payer pTp, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pTp}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the (partial) match object. - * - */ - public Inv13.Match newMatch(final Tax_Payer pTp) { - return Inv13.Match.newMatch(pTp); - } - - /** - * Retrieve the set of values that occur in matches for tp. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOftp(final Object[] parameters) { - return rawStreamAllValues(POSITION_TP, parameters).map(Tax_Payer.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for tp. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOftp() { - return rawStreamAllValuesOftp(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for tp. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOftp() { - return rawStreamAllValuesOftp(emptyArray()); - } - - @Override - protected Inv13.Match tupleToMatch(final Tuple t) { - try { - return Inv13.Match.newMatch((Tax_Payer) t.get(POSITION_TP)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected Inv13.Match arrayToMatch(final Object[] match) { - try { - return Inv13.Match.newMatch((Tax_Payer) match[POSITION_TP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected Inv13.Match arrayToMatchMutable(final Object[] match) { - try { - return Inv13.Match.newMutableMatch((Tax_Payer) match[POSITION_TP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return Inv13.instance(); - } - } - - private Inv13() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static Inv13 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected Inv13.Matcher instantiate(final ViatraQueryEngine engine) { - return Inv13.Matcher.on(engine); - } - - @Override - public Inv13.Matcher instantiate() { - return Inv13.Matcher.create(); - } - - @Override - public Inv13.Match newEmptyMatch() { - return Inv13.Match.newEmptyMatch(); - } - - @Override - public Inv13.Match newMatch(final Object... parameters) { - return Inv13.Match.newMatch((Taxation.Tax_Payer) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link Inv13} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link Inv13#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final Inv13 INSTANCE = new Inv13(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final Inv13.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_tp = new PParameter("tp", "Taxation.Tax_Payer", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Tax_Payer")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_tp); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.inv13"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("tp"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_tp = body.getOrCreateVariableByName("tp"); - PVariable var_hab_add = body.getOrCreateVariableByName("hab_add"); - new TypeConstraint(body, Tuples.flatTupleOf(var_tp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Tax_Payer"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_tp, parameter_tp) - )); - // Tax_Payer.addresses(tp, hab_add) - new TypeConstraint(body, Tuples.flatTupleOf(var_tp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Tax_Payer"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_tp, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Physical_Person", "addresses"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Address"))); - new Equality(body, var__virtual_0_, var_hab_add); - // Habitual_Address(hab_add) - new TypeConstraint(body, Tuples.flatTupleOf(var_hab_add), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Habitual_Address"))); - // Address.country(hab_add, ::ZZ) - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new ConstantValue(body, var__virtual_1_, getEnumLiteral("http:///TaxCard.ecore", "Country", "ZZ").getInstance()); - new TypeConstraint(body, Tuples.flatTupleOf(var_hab_add), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Address"))); - PVariable var__virtual_2_ = body.getOrCreateVariableByName(".virtual{2}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_hab_add, var__virtual_2_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Address", "country"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_2_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http:///TaxCard.ecore", "Country"))); - new Equality(body, var__virtual_2_, var__virtual_1_); - // neg find x_inv13(tp) - new NegativePatternCall(body, Tuples.flatTupleOf(var_tp), X_inv13.instance().getInternalQueryRepresentation()); - bodies.add(body); - } - { - PAnnotation annotation = new PAnnotation("Constraint"); - annotation.addAttribute("message", "inv13"); - annotation.addAttribute("severity", "error"); - annotation.addAttribute("key", Arrays.asList(new Object[] { - new ParameterReference("tp") - })); - addAnnotation(annotation); - } - return bodies; - } - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv15.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv15.java deleted file mode 100644 index 3bfab503..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv15.java +++ /dev/null @@ -1,567 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.External_Allowance; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.ParameterReference; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.NegativePatternCall; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; -import queries.X_inv15; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         //inv14-MultiplicityChanged
    - *         
    - *         //inv15-Ordered Sets in assignment if block
    - *         //ERROR if no household object
    - *         {@literal @}Constraint(message = "inv15", severity = "error", key = {ea})
    - *         pattern inv15(ea : External_Allowance) {
    - *         	neg find x_inv15(ea);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class Inv15 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.inv15 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private External_Allowance fEa; - - private static List parameterNames = makeImmutableList("ea"); - - private Match(final External_Allowance pEa) { - this.fEa = pEa; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "ea": return this.fEa; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fEa; - default: return null; - } - } - - public External_Allowance getEa() { - return this.fEa; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("ea".equals(parameterName) ) { - this.fEa = (External_Allowance) newValue; - return true; - } - return false; - } - - public void setEa(final External_Allowance pEa) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fEa = pEa; - } - - @Override - public String patternName() { - return "queries.inv15"; - } - - @Override - public List parameterNames() { - return Inv15.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fEa}; - } - - @Override - public Inv15.Match toImmutable() { - return isMutable() ? newMatch(fEa) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"ea\"=" + prettyPrintValue(fEa)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fEa); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof Inv15.Match)) { - Inv15.Match other = (Inv15.Match) obj; - return Objects.equals(fEa, other.fEa); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public Inv15 specification() { - return Inv15.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static Inv15.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pEa the fixed value of pattern parameter ea, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static Inv15.Match newMutableMatch(final External_Allowance pEa) { - return new Mutable(pEa); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pEa the fixed value of pattern parameter ea, or null if not bound. - * @return the (partial) match object. - * - */ - public static Inv15.Match newMatch(final External_Allowance pEa) { - return new Immutable(pEa); - } - - private static final class Mutable extends Inv15.Match { - Mutable(final External_Allowance pEa) { - super(pEa); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends Inv15.Match { - Immutable(final External_Allowance pEa) { - super(pEa); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.inv15 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * //inv14-MultiplicityChanged
    -   * 
    -   * //inv15-Ordered Sets in assignment if block
    -   * //ERROR if no household object
    -   * {@literal @}Constraint(message = "inv15", severity = "error", key = {ea})
    -   * pattern inv15(ea : External_Allowance) {
    -   * 	neg find x_inv15(ea);
    -   * }
    -   * 
    - * - * @see Match - * @see Inv15 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static Inv15.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static Inv15.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_EA = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(Inv15.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pEa the fixed value of pattern parameter ea, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final External_Allowance pEa) { - return rawStreamAllMatches(new Object[]{pEa}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pEa the fixed value of pattern parameter ea, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final External_Allowance pEa) { - return rawStreamAllMatches(new Object[]{pEa}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pEa the fixed value of pattern parameter ea, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final External_Allowance pEa) { - return rawGetOneArbitraryMatch(new Object[]{pEa}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pEa the fixed value of pattern parameter ea, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final External_Allowance pEa) { - return rawHasMatch(new Object[]{pEa}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pEa the fixed value of pattern parameter ea, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final External_Allowance pEa) { - return rawCountMatches(new Object[]{pEa}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pEa the fixed value of pattern parameter ea, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final External_Allowance pEa, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pEa}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pEa the fixed value of pattern parameter ea, or null if not bound. - * @return the (partial) match object. - * - */ - public Inv15.Match newMatch(final External_Allowance pEa) { - return Inv15.Match.newMatch(pEa); - } - - /** - * Retrieve the set of values that occur in matches for ea. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfea(final Object[] parameters) { - return rawStreamAllValues(POSITION_EA, parameters).map(External_Allowance.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for ea. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfea() { - return rawStreamAllValuesOfea(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for ea. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfea() { - return rawStreamAllValuesOfea(emptyArray()); - } - - @Override - protected Inv15.Match tupleToMatch(final Tuple t) { - try { - return Inv15.Match.newMatch((External_Allowance) t.get(POSITION_EA)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected Inv15.Match arrayToMatch(final Object[] match) { - try { - return Inv15.Match.newMatch((External_Allowance) match[POSITION_EA]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected Inv15.Match arrayToMatchMutable(final Object[] match) { - try { - return Inv15.Match.newMutableMatch((External_Allowance) match[POSITION_EA]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return Inv15.instance(); - } - } - - private Inv15() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static Inv15 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected Inv15.Matcher instantiate(final ViatraQueryEngine engine) { - return Inv15.Matcher.on(engine); - } - - @Override - public Inv15.Matcher instantiate() { - return Inv15.Matcher.create(); - } - - @Override - public Inv15.Match newEmptyMatch() { - return Inv15.Match.newEmptyMatch(); - } - - @Override - public Inv15.Match newMatch(final Object... parameters) { - return Inv15.Match.newMatch((Taxation.External_Allowance) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link Inv15} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link Inv15#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final Inv15 INSTANCE = new Inv15(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final Inv15.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_ea = new PParameter("ea", "Taxation.External_Allowance", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "External_Allowance")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_ea); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.inv15"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("ea"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_ea = body.getOrCreateVariableByName("ea"); - new TypeConstraint(body, Tuples.flatTupleOf(var_ea), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "External_Allowance"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_ea, parameter_ea) - )); - // neg find x_inv15(ea) - new NegativePatternCall(body, Tuples.flatTupleOf(var_ea), X_inv15.instance().getInternalQueryRepresentation()); - bodies.add(body); - } - { - PAnnotation annotation = new PAnnotation("Constraint"); - annotation.addAttribute("message", "inv15"); - annotation.addAttribute("severity", "error"); - annotation.addAttribute("key", Arrays.asList(new Object[] { - new ParameterReference("ea") - })); - addAnnotation(annotation); - } - return bodies; - } - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv17.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv17.java deleted file mode 100644 index 4a10d4f4..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv17.java +++ /dev/null @@ -1,643 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Legal_Union_Record; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.IExpressionEvaluator; -import org.eclipse.viatra.query.runtime.matchers.psystem.IValueProvider; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.ParameterReference; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         //inv16-Tax_Card.tax_card_type is a derived feature
    - *         
    - *         //inv17-attribute-handled by multiplicity
    - *         {@literal @}Constraint(message = "inv17", severity = "error", key = {lur})
    - *         pattern inv17(lur : Legal_Union_Record) {
    - *             Legal_Union_Record.start_year(lur, sy);
    - *             check(sy {@literal <} 1950);
    - *         } or {
    - *         	Legal_Union_Record.start_year(lur, sy);
    - *         	check(sy {@literal >} 2018);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class Inv17 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.inv17 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Legal_Union_Record fLur; - - private static List parameterNames = makeImmutableList("lur"); - - private Match(final Legal_Union_Record pLur) { - this.fLur = pLur; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "lur": return this.fLur; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fLur; - default: return null; - } - } - - public Legal_Union_Record getLur() { - return this.fLur; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("lur".equals(parameterName) ) { - this.fLur = (Legal_Union_Record) newValue; - return true; - } - return false; - } - - public void setLur(final Legal_Union_Record pLur) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fLur = pLur; - } - - @Override - public String patternName() { - return "queries.inv17"; - } - - @Override - public List parameterNames() { - return Inv17.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fLur}; - } - - @Override - public Inv17.Match toImmutable() { - return isMutable() ? newMatch(fLur) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"lur\"=" + prettyPrintValue(fLur)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fLur); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof Inv17.Match)) { - Inv17.Match other = (Inv17.Match) obj; - return Objects.equals(fLur, other.fLur); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public Inv17 specification() { - return Inv17.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static Inv17.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static Inv17.Match newMutableMatch(final Legal_Union_Record pLur) { - return new Mutable(pLur); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the (partial) match object. - * - */ - public static Inv17.Match newMatch(final Legal_Union_Record pLur) { - return new Immutable(pLur); - } - - private static final class Mutable extends Inv17.Match { - Mutable(final Legal_Union_Record pLur) { - super(pLur); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends Inv17.Match { - Immutable(final Legal_Union_Record pLur) { - super(pLur); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.inv17 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * //inv16-Tax_Card.tax_card_type is a derived feature
    -   * 
    -   * //inv17-attribute-handled by multiplicity
    -   * {@literal @}Constraint(message = "inv17", severity = "error", key = {lur})
    -   * pattern inv17(lur : Legal_Union_Record) {
    -   *     Legal_Union_Record.start_year(lur, sy);
    -   *     check(sy {@literal <} 1950);
    -   * } or {
    -   * 	Legal_Union_Record.start_year(lur, sy);
    -   * 	check(sy {@literal >} 2018);
    -   * }
    -   * 
    - * - * @see Match - * @see Inv17 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static Inv17.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static Inv17.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_LUR = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(Inv17.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Legal_Union_Record pLur) { - return rawStreamAllMatches(new Object[]{pLur}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Legal_Union_Record pLur) { - return rawStreamAllMatches(new Object[]{pLur}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Legal_Union_Record pLur) { - return rawGetOneArbitraryMatch(new Object[]{pLur}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Legal_Union_Record pLur) { - return rawHasMatch(new Object[]{pLur}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Legal_Union_Record pLur) { - return rawCountMatches(new Object[]{pLur}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Legal_Union_Record pLur, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pLur}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the (partial) match object. - * - */ - public Inv17.Match newMatch(final Legal_Union_Record pLur) { - return Inv17.Match.newMatch(pLur); - } - - /** - * Retrieve the set of values that occur in matches for lur. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOflur(final Object[] parameters) { - return rawStreamAllValues(POSITION_LUR, parameters).map(Legal_Union_Record.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for lur. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOflur() { - return rawStreamAllValuesOflur(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for lur. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOflur() { - return rawStreamAllValuesOflur(emptyArray()); - } - - @Override - protected Inv17.Match tupleToMatch(final Tuple t) { - try { - return Inv17.Match.newMatch((Legal_Union_Record) t.get(POSITION_LUR)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected Inv17.Match arrayToMatch(final Object[] match) { - try { - return Inv17.Match.newMatch((Legal_Union_Record) match[POSITION_LUR]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected Inv17.Match arrayToMatchMutable(final Object[] match) { - try { - return Inv17.Match.newMutableMatch((Legal_Union_Record) match[POSITION_LUR]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return Inv17.instance(); - } - } - - private Inv17() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static Inv17 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected Inv17.Matcher instantiate(final ViatraQueryEngine engine) { - return Inv17.Matcher.on(engine); - } - - @Override - public Inv17.Matcher instantiate() { - return Inv17.Matcher.create(); - } - - @Override - public Inv17.Match newEmptyMatch() { - return Inv17.Match.newEmptyMatch(); - } - - @Override - public Inv17.Match newMatch(final Object... parameters) { - return Inv17.Match.newMatch((Taxation.Legal_Union_Record) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link Inv17} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link Inv17#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final Inv17 INSTANCE = new Inv17(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final Inv17.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_lur = new PParameter("lur", "Taxation.Legal_Union_Record", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Legal_Union_Record")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_lur); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.inv17"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("lur"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_lur = body.getOrCreateVariableByName("lur"); - PVariable var_sy = body.getOrCreateVariableByName("sy"); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_lur, parameter_lur) - )); - // Legal_Union_Record.start_year(lur, sy) - new TypeConstraint(body, Tuples.flatTupleOf(var_lur), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Legal_Union_Record", "start_year"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_0_, var_sy); - // check(sy < 1950) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern inv17"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("sy");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Integer sy = (Integer) provider.getValue("sy"); - return evaluateExpression_1_1(sy); - } - }, null); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_lur = body.getOrCreateVariableByName("lur"); - PVariable var_sy = body.getOrCreateVariableByName("sy"); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_lur, parameter_lur) - )); - // Legal_Union_Record.start_year(lur, sy) - new TypeConstraint(body, Tuples.flatTupleOf(var_lur), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Legal_Union_Record", "start_year"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_0_, var_sy); - // check(sy > 2018) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern inv17"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("sy");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Integer sy = (Integer) provider.getValue("sy"); - return evaluateExpression_2_1(sy); - } - }, null); - bodies.add(body); - } - { - PAnnotation annotation = new PAnnotation("Constraint"); - annotation.addAttribute("message", "inv17"); - annotation.addAttribute("severity", "error"); - annotation.addAttribute("key", Arrays.asList(new Object[] { - new ParameterReference("lur") - })); - addAnnotation(annotation); - } - return bodies; - } - } - - private static boolean evaluateExpression_1_1(final Integer sy) { - return ((sy).intValue() < 1950); - } - - private static boolean evaluateExpression_2_1(final Integer sy) { - return ((sy).intValue() > 2018); - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv20.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv20.java deleted file mode 100644 index 6fcc3b7d..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv20.java +++ /dev/null @@ -1,587 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Legal_Union_Record; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.ParameterReference; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         //inv18-MultiplicityChecked
    - *         //inv19-MultiplicityChecked
    - *         
    - *         //inv20-Useless constraint since both edges are containment (TODOCheck)
    - *         //OclIsUndefined-Handled by multiplicity
    - *         {@literal @}Constraint(message = "inv20", severity = "error", key = {lur})
    - *         pattern inv20(lur : Legal_Union_Record) {
    - *             Legal_Union_Record.individual_A(lur, iA);
    - *             Legal_Union_Record.individual_B(lur, iB);
    - *             iA == iB;
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class Inv20 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.inv20 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Legal_Union_Record fLur; - - private static List parameterNames = makeImmutableList("lur"); - - private Match(final Legal_Union_Record pLur) { - this.fLur = pLur; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "lur": return this.fLur; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fLur; - default: return null; - } - } - - public Legal_Union_Record getLur() { - return this.fLur; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("lur".equals(parameterName) ) { - this.fLur = (Legal_Union_Record) newValue; - return true; - } - return false; - } - - public void setLur(final Legal_Union_Record pLur) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fLur = pLur; - } - - @Override - public String patternName() { - return "queries.inv20"; - } - - @Override - public List parameterNames() { - return Inv20.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fLur}; - } - - @Override - public Inv20.Match toImmutable() { - return isMutable() ? newMatch(fLur) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"lur\"=" + prettyPrintValue(fLur)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fLur); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof Inv20.Match)) { - Inv20.Match other = (Inv20.Match) obj; - return Objects.equals(fLur, other.fLur); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public Inv20 specification() { - return Inv20.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static Inv20.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static Inv20.Match newMutableMatch(final Legal_Union_Record pLur) { - return new Mutable(pLur); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the (partial) match object. - * - */ - public static Inv20.Match newMatch(final Legal_Union_Record pLur) { - return new Immutable(pLur); - } - - private static final class Mutable extends Inv20.Match { - Mutable(final Legal_Union_Record pLur) { - super(pLur); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends Inv20.Match { - Immutable(final Legal_Union_Record pLur) { - super(pLur); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.inv20 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * //inv18-MultiplicityChecked
    -   * //inv19-MultiplicityChecked
    -   * 
    -   * //inv20-Useless constraint since both edges are containment (TODOCheck)
    -   * //OclIsUndefined-Handled by multiplicity
    -   * {@literal @}Constraint(message = "inv20", severity = "error", key = {lur})
    -   * pattern inv20(lur : Legal_Union_Record) {
    -   *     Legal_Union_Record.individual_A(lur, iA);
    -   *     Legal_Union_Record.individual_B(lur, iB);
    -   *     iA == iB;
    -   * }
    -   * 
    - * - * @see Match - * @see Inv20 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static Inv20.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static Inv20.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_LUR = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(Inv20.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Legal_Union_Record pLur) { - return rawStreamAllMatches(new Object[]{pLur}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Legal_Union_Record pLur) { - return rawStreamAllMatches(new Object[]{pLur}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Legal_Union_Record pLur) { - return rawGetOneArbitraryMatch(new Object[]{pLur}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Legal_Union_Record pLur) { - return rawHasMatch(new Object[]{pLur}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Legal_Union_Record pLur) { - return rawCountMatches(new Object[]{pLur}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Legal_Union_Record pLur, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pLur}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the (partial) match object. - * - */ - public Inv20.Match newMatch(final Legal_Union_Record pLur) { - return Inv20.Match.newMatch(pLur); - } - - /** - * Retrieve the set of values that occur in matches for lur. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOflur(final Object[] parameters) { - return rawStreamAllValues(POSITION_LUR, parameters).map(Legal_Union_Record.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for lur. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOflur() { - return rawStreamAllValuesOflur(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for lur. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOflur() { - return rawStreamAllValuesOflur(emptyArray()); - } - - @Override - protected Inv20.Match tupleToMatch(final Tuple t) { - try { - return Inv20.Match.newMatch((Legal_Union_Record) t.get(POSITION_LUR)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected Inv20.Match arrayToMatch(final Object[] match) { - try { - return Inv20.Match.newMatch((Legal_Union_Record) match[POSITION_LUR]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected Inv20.Match arrayToMatchMutable(final Object[] match) { - try { - return Inv20.Match.newMutableMatch((Legal_Union_Record) match[POSITION_LUR]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return Inv20.instance(); - } - } - - private Inv20() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static Inv20 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected Inv20.Matcher instantiate(final ViatraQueryEngine engine) { - return Inv20.Matcher.on(engine); - } - - @Override - public Inv20.Matcher instantiate() { - return Inv20.Matcher.create(); - } - - @Override - public Inv20.Match newEmptyMatch() { - return Inv20.Match.newEmptyMatch(); - } - - @Override - public Inv20.Match newMatch(final Object... parameters) { - return Inv20.Match.newMatch((Taxation.Legal_Union_Record) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link Inv20} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link Inv20#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final Inv20 INSTANCE = new Inv20(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final Inv20.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_lur = new PParameter("lur", "Taxation.Legal_Union_Record", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Legal_Union_Record")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_lur); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.inv20"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("lur"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_lur = body.getOrCreateVariableByName("lur"); - PVariable var_iA = body.getOrCreateVariableByName("iA"); - PVariable var_iB = body.getOrCreateVariableByName("iB"); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_lur, parameter_lur) - )); - // Legal_Union_Record.individual_A(lur, iA) - new TypeConstraint(body, Tuples.flatTupleOf(var_lur), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Legal_Union_Record", "individual_A"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - new Equality(body, var__virtual_0_, var_iA); - // Legal_Union_Record.individual_B(lur, iB) - new TypeConstraint(body, Tuples.flatTupleOf(var_lur), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Legal_Union_Record", "individual_B"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - new Equality(body, var__virtual_1_, var_iB); - // iA == iB - new Equality(body, var_iA, var_iB); - bodies.add(body); - } - { - PAnnotation annotation = new PAnnotation("Constraint"); - annotation.addAttribute("message", "inv20"); - annotation.addAttribute("severity", "error"); - annotation.addAttribute("key", Arrays.asList(new Object[] { - new ParameterReference("lur") - })); - addAnnotation(annotation); - } - return bodies; - } - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv33.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv33.java deleted file mode 100644 index 1672290c..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv33.java +++ /dev/null @@ -1,665 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Physical_Person; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.IExpressionEvaluator; -import org.eclipse.viatra.query.runtime.matchers.psystem.IValueProvider; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.ParameterReference; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         //inv21-MultiplicityChecked
    - *         //inv22-MultiplicityChecked
    - *         //inv23-MultiplicityChecked
    - *         //inv24-MultiplicityChecked
    - *         //inv25-MultiplicityChecked
    - *         //inv26-MultiplicityChanged
    - *         //inv27-dupOfInv24
    - *         //inv28-dubOfInv23
    - *         //inv29-MultiplicityChanged
    - *         //inv30-AttributeRemoved
    - *         //inv31-AttributeRemoved
    - *         //inv32-AttributeRemoved
    - *         
    - *         //inv33-attribute-handled by multiplicity
    - *         {@literal @}Constraint(message = "inv33", severity = "error", key = {p})
    - *         pattern inv33(p : Physical_Person) {
    - *         	Physical_Person.birth_year(p, by); 
    - *         	check(2018-by {@literal <} 0);
    - *         } or {
    - *         	Physical_Person.birth_year(p, by); 
    - *         	check(2018-by {@literal >} 100);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class Inv33 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.inv33 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Physical_Person fP; - - private static List parameterNames = makeImmutableList("p"); - - private Match(final Physical_Person pP) { - this.fP = pP; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "p": return this.fP; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fP; - default: return null; - } - } - - public Physical_Person getP() { - return this.fP; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("p".equals(parameterName) ) { - this.fP = (Physical_Person) newValue; - return true; - } - return false; - } - - public void setP(final Physical_Person pP) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fP = pP; - } - - @Override - public String patternName() { - return "queries.inv33"; - } - - @Override - public List parameterNames() { - return Inv33.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fP}; - } - - @Override - public Inv33.Match toImmutable() { - return isMutable() ? newMatch(fP) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"p\"=" + prettyPrintValue(fP)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fP); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof Inv33.Match)) { - Inv33.Match other = (Inv33.Match) obj; - return Objects.equals(fP, other.fP); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public Inv33 specification() { - return Inv33.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static Inv33.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static Inv33.Match newMutableMatch(final Physical_Person pP) { - return new Mutable(pP); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the (partial) match object. - * - */ - public static Inv33.Match newMatch(final Physical_Person pP) { - return new Immutable(pP); - } - - private static final class Mutable extends Inv33.Match { - Mutable(final Physical_Person pP) { - super(pP); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends Inv33.Match { - Immutable(final Physical_Person pP) { - super(pP); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.inv33 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * //inv21-MultiplicityChecked
    -   * //inv22-MultiplicityChecked
    -   * //inv23-MultiplicityChecked
    -   * //inv24-MultiplicityChecked
    -   * //inv25-MultiplicityChecked
    -   * //inv26-MultiplicityChanged
    -   * //inv27-dupOfInv24
    -   * //inv28-dubOfInv23
    -   * //inv29-MultiplicityChanged
    -   * //inv30-AttributeRemoved
    -   * //inv31-AttributeRemoved
    -   * //inv32-AttributeRemoved
    -   * 
    -   * //inv33-attribute-handled by multiplicity
    -   * {@literal @}Constraint(message = "inv33", severity = "error", key = {p})
    -   * pattern inv33(p : Physical_Person) {
    -   * 	Physical_Person.birth_year(p, by); 
    -   * 	check(2018-by {@literal <} 0);
    -   * } or {
    -   * 	Physical_Person.birth_year(p, by); 
    -   * 	check(2018-by {@literal >} 100);
    -   * }
    -   * 
    - * - * @see Match - * @see Inv33 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static Inv33.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static Inv33.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_P = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(Inv33.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Physical_Person pP) { - return rawStreamAllMatches(new Object[]{pP}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Physical_Person pP) { - return rawStreamAllMatches(new Object[]{pP}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Physical_Person pP) { - return rawGetOneArbitraryMatch(new Object[]{pP}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Physical_Person pP) { - return rawHasMatch(new Object[]{pP}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Physical_Person pP) { - return rawCountMatches(new Object[]{pP}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Physical_Person pP, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pP}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the (partial) match object. - * - */ - public Inv33.Match newMatch(final Physical_Person pP) { - return Inv33.Match.newMatch(pP); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfp(final Object[] parameters) { - return rawStreamAllValues(POSITION_P, parameters).map(Physical_Person.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfp() { - return rawStreamAllValuesOfp(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfp() { - return rawStreamAllValuesOfp(emptyArray()); - } - - @Override - protected Inv33.Match tupleToMatch(final Tuple t) { - try { - return Inv33.Match.newMatch((Physical_Person) t.get(POSITION_P)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected Inv33.Match arrayToMatch(final Object[] match) { - try { - return Inv33.Match.newMatch((Physical_Person) match[POSITION_P]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected Inv33.Match arrayToMatchMutable(final Object[] match) { - try { - return Inv33.Match.newMutableMatch((Physical_Person) match[POSITION_P]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return Inv33.instance(); - } - } - - private Inv33() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static Inv33 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected Inv33.Matcher instantiate(final ViatraQueryEngine engine) { - return Inv33.Matcher.on(engine); - } - - @Override - public Inv33.Matcher instantiate() { - return Inv33.Matcher.create(); - } - - @Override - public Inv33.Match newEmptyMatch() { - return Inv33.Match.newEmptyMatch(); - } - - @Override - public Inv33.Match newMatch(final Object... parameters) { - return Inv33.Match.newMatch((Taxation.Physical_Person) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link Inv33} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link Inv33#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final Inv33 INSTANCE = new Inv33(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final Inv33.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_p = new PParameter("p", "Taxation.Physical_Person", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Physical_Person")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_p); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.inv33"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("p"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_p = body.getOrCreateVariableByName("p"); - PVariable var_by = body.getOrCreateVariableByName("by"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_p, parameter_p) - )); - // Physical_Person.birth_year(p, by) - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Physical_Person", "birth_year"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_0_, var_by); - // check(2018-by < 0) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern inv33"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("by");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Integer by = (Integer) provider.getValue("by"); - return evaluateExpression_1_1(by); - } - }, null); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_p = body.getOrCreateVariableByName("p"); - PVariable var_by = body.getOrCreateVariableByName("by"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_p, parameter_p) - )); - // Physical_Person.birth_year(p, by) - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Physical_Person", "birth_year"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_0_, var_by); - // check(2018-by > 100) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern inv33"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("by");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Integer by = (Integer) provider.getValue("by"); - return evaluateExpression_2_1(by); - } - }, null); - bodies.add(body); - } - { - PAnnotation annotation = new PAnnotation("Constraint"); - annotation.addAttribute("message", "inv33"); - annotation.addAttribute("severity", "error"); - annotation.addAttribute("key", Arrays.asList(new Object[] { - new ParameterReference("p") - })); - addAnnotation(annotation); - } - return bodies; - } - } - - private static boolean evaluateExpression_1_1(final Integer by) { - return ((2018 - (by).intValue()) < 0); - } - - private static boolean evaluateExpression_2_1(final Integer by) { - return ((2018 - (by).intValue()) > 100); - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv34.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv34.java deleted file mode 100644 index b9b28986..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv34.java +++ /dev/null @@ -1,639 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Physical_Person; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.IExpressionEvaluator; -import org.eclipse.viatra.query.runtime.matchers.psystem.IValueProvider; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.ParameterReference; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         //inv34-attribute-handled by multiplicity
    - *         {@literal @}Constraint(message = "inv34", severity = "error", key = {p})
    - *         pattern inv34(p : Physical_Person) {
    - *             Physical_Person.birth_month(p, birthMonth);
    - *             check(birthMonth {@literal <} 1);    
    - *         } or {
    - *         	Physical_Person.birth_month(p, birthMonth);
    - *             check(birthMonth {@literal >} 12);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class Inv34 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.inv34 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Physical_Person fP; - - private static List parameterNames = makeImmutableList("p"); - - private Match(final Physical_Person pP) { - this.fP = pP; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "p": return this.fP; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fP; - default: return null; - } - } - - public Physical_Person getP() { - return this.fP; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("p".equals(parameterName) ) { - this.fP = (Physical_Person) newValue; - return true; - } - return false; - } - - public void setP(final Physical_Person pP) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fP = pP; - } - - @Override - public String patternName() { - return "queries.inv34"; - } - - @Override - public List parameterNames() { - return Inv34.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fP}; - } - - @Override - public Inv34.Match toImmutable() { - return isMutable() ? newMatch(fP) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"p\"=" + prettyPrintValue(fP)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fP); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof Inv34.Match)) { - Inv34.Match other = (Inv34.Match) obj; - return Objects.equals(fP, other.fP); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public Inv34 specification() { - return Inv34.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static Inv34.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static Inv34.Match newMutableMatch(final Physical_Person pP) { - return new Mutable(pP); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the (partial) match object. - * - */ - public static Inv34.Match newMatch(final Physical_Person pP) { - return new Immutable(pP); - } - - private static final class Mutable extends Inv34.Match { - Mutable(final Physical_Person pP) { - super(pP); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends Inv34.Match { - Immutable(final Physical_Person pP) { - super(pP); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.inv34 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * //inv34-attribute-handled by multiplicity
    -   * {@literal @}Constraint(message = "inv34", severity = "error", key = {p})
    -   * pattern inv34(p : Physical_Person) {
    -   *     Physical_Person.birth_month(p, birthMonth);
    -   *     check(birthMonth {@literal <} 1);    
    -   * } or {
    -   * 	Physical_Person.birth_month(p, birthMonth);
    -   *     check(birthMonth {@literal >} 12);
    -   * }
    -   * 
    - * - * @see Match - * @see Inv34 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static Inv34.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static Inv34.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_P = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(Inv34.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Physical_Person pP) { - return rawStreamAllMatches(new Object[]{pP}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Physical_Person pP) { - return rawStreamAllMatches(new Object[]{pP}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Physical_Person pP) { - return rawGetOneArbitraryMatch(new Object[]{pP}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Physical_Person pP) { - return rawHasMatch(new Object[]{pP}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Physical_Person pP) { - return rawCountMatches(new Object[]{pP}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Physical_Person pP, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pP}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the (partial) match object. - * - */ - public Inv34.Match newMatch(final Physical_Person pP) { - return Inv34.Match.newMatch(pP); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfp(final Object[] parameters) { - return rawStreamAllValues(POSITION_P, parameters).map(Physical_Person.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfp() { - return rawStreamAllValuesOfp(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfp() { - return rawStreamAllValuesOfp(emptyArray()); - } - - @Override - protected Inv34.Match tupleToMatch(final Tuple t) { - try { - return Inv34.Match.newMatch((Physical_Person) t.get(POSITION_P)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected Inv34.Match arrayToMatch(final Object[] match) { - try { - return Inv34.Match.newMatch((Physical_Person) match[POSITION_P]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected Inv34.Match arrayToMatchMutable(final Object[] match) { - try { - return Inv34.Match.newMutableMatch((Physical_Person) match[POSITION_P]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return Inv34.instance(); - } - } - - private Inv34() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static Inv34 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected Inv34.Matcher instantiate(final ViatraQueryEngine engine) { - return Inv34.Matcher.on(engine); - } - - @Override - public Inv34.Matcher instantiate() { - return Inv34.Matcher.create(); - } - - @Override - public Inv34.Match newEmptyMatch() { - return Inv34.Match.newEmptyMatch(); - } - - @Override - public Inv34.Match newMatch(final Object... parameters) { - return Inv34.Match.newMatch((Taxation.Physical_Person) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link Inv34} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link Inv34#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final Inv34 INSTANCE = new Inv34(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final Inv34.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_p = new PParameter("p", "Taxation.Physical_Person", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Physical_Person")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_p); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.inv34"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("p"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_p = body.getOrCreateVariableByName("p"); - PVariable var_birthMonth = body.getOrCreateVariableByName("birthMonth"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_p, parameter_p) - )); - // Physical_Person.birth_month(p, birthMonth) - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Physical_Person", "birth_month"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_0_, var_birthMonth); - // check(birthMonth < 1) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern inv34"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("birthMonth");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Integer birthMonth = (Integer) provider.getValue("birthMonth"); - return evaluateExpression_1_1(birthMonth); - } - }, null); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_p = body.getOrCreateVariableByName("p"); - PVariable var_birthMonth = body.getOrCreateVariableByName("birthMonth"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_p, parameter_p) - )); - // Physical_Person.birth_month(p, birthMonth) - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Physical_Person", "birth_month"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_0_, var_birthMonth); - // check(birthMonth > 12) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern inv34"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("birthMonth");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Integer birthMonth = (Integer) provider.getValue("birthMonth"); - return evaluateExpression_2_1(birthMonth); - } - }, null); - bodies.add(body); - } - { - PAnnotation annotation = new PAnnotation("Constraint"); - annotation.addAttribute("message", "inv34"); - annotation.addAttribute("severity", "error"); - annotation.addAttribute("key", Arrays.asList(new Object[] { - new ParameterReference("p") - })); - addAnnotation(annotation); - } - return bodies; - } - } - - private static boolean evaluateExpression_1_1(final Integer birthMonth) { - return ((birthMonth).intValue() < 1); - } - - private static boolean evaluateExpression_2_1(final Integer birthMonth) { - return ((birthMonth).intValue() > 12); - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv35.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv35.java deleted file mode 100644 index c67325ac..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv35.java +++ /dev/null @@ -1,639 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Physical_Person; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.IExpressionEvaluator; -import org.eclipse.viatra.query.runtime.matchers.psystem.IValueProvider; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.ParameterReference; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         //inv35-attribute-handled by multiplicity
    - *         {@literal @}Constraint(message = "inv35", severity = "error", key = {p})
    - *         pattern inv35(p : Physical_Person) {
    - *             Physical_Person.birth_day(p, birthDay);
    - *             check(birthDay {@literal <} 1);    
    - *         } or {
    - *         	Physical_Person.birth_day(p, birthDay);
    - *             check(birthDay {@literal >} 28);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class Inv35 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.inv35 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Physical_Person fP; - - private static List parameterNames = makeImmutableList("p"); - - private Match(final Physical_Person pP) { - this.fP = pP; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "p": return this.fP; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fP; - default: return null; - } - } - - public Physical_Person getP() { - return this.fP; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("p".equals(parameterName) ) { - this.fP = (Physical_Person) newValue; - return true; - } - return false; - } - - public void setP(final Physical_Person pP) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fP = pP; - } - - @Override - public String patternName() { - return "queries.inv35"; - } - - @Override - public List parameterNames() { - return Inv35.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fP}; - } - - @Override - public Inv35.Match toImmutable() { - return isMutable() ? newMatch(fP) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"p\"=" + prettyPrintValue(fP)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fP); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof Inv35.Match)) { - Inv35.Match other = (Inv35.Match) obj; - return Objects.equals(fP, other.fP); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public Inv35 specification() { - return Inv35.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static Inv35.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static Inv35.Match newMutableMatch(final Physical_Person pP) { - return new Mutable(pP); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the (partial) match object. - * - */ - public static Inv35.Match newMatch(final Physical_Person pP) { - return new Immutable(pP); - } - - private static final class Mutable extends Inv35.Match { - Mutable(final Physical_Person pP) { - super(pP); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends Inv35.Match { - Immutable(final Physical_Person pP) { - super(pP); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.inv35 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * //inv35-attribute-handled by multiplicity
    -   * {@literal @}Constraint(message = "inv35", severity = "error", key = {p})
    -   * pattern inv35(p : Physical_Person) {
    -   *     Physical_Person.birth_day(p, birthDay);
    -   *     check(birthDay {@literal <} 1);    
    -   * } or {
    -   * 	Physical_Person.birth_day(p, birthDay);
    -   *     check(birthDay {@literal >} 28);
    -   * }
    -   * 
    - * - * @see Match - * @see Inv35 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static Inv35.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static Inv35.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_P = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(Inv35.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Physical_Person pP) { - return rawStreamAllMatches(new Object[]{pP}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Physical_Person pP) { - return rawStreamAllMatches(new Object[]{pP}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Physical_Person pP) { - return rawGetOneArbitraryMatch(new Object[]{pP}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Physical_Person pP) { - return rawHasMatch(new Object[]{pP}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Physical_Person pP) { - return rawCountMatches(new Object[]{pP}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Physical_Person pP, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pP}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the (partial) match object. - * - */ - public Inv35.Match newMatch(final Physical_Person pP) { - return Inv35.Match.newMatch(pP); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfp(final Object[] parameters) { - return rawStreamAllValues(POSITION_P, parameters).map(Physical_Person.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfp() { - return rawStreamAllValuesOfp(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfp() { - return rawStreamAllValuesOfp(emptyArray()); - } - - @Override - protected Inv35.Match tupleToMatch(final Tuple t) { - try { - return Inv35.Match.newMatch((Physical_Person) t.get(POSITION_P)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected Inv35.Match arrayToMatch(final Object[] match) { - try { - return Inv35.Match.newMatch((Physical_Person) match[POSITION_P]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected Inv35.Match arrayToMatchMutable(final Object[] match) { - try { - return Inv35.Match.newMutableMatch((Physical_Person) match[POSITION_P]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return Inv35.instance(); - } - } - - private Inv35() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static Inv35 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected Inv35.Matcher instantiate(final ViatraQueryEngine engine) { - return Inv35.Matcher.on(engine); - } - - @Override - public Inv35.Matcher instantiate() { - return Inv35.Matcher.create(); - } - - @Override - public Inv35.Match newEmptyMatch() { - return Inv35.Match.newEmptyMatch(); - } - - @Override - public Inv35.Match newMatch(final Object... parameters) { - return Inv35.Match.newMatch((Taxation.Physical_Person) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link Inv35} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link Inv35#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final Inv35 INSTANCE = new Inv35(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final Inv35.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_p = new PParameter("p", "Taxation.Physical_Person", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Physical_Person")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_p); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.inv35"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("p"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_p = body.getOrCreateVariableByName("p"); - PVariable var_birthDay = body.getOrCreateVariableByName("birthDay"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_p, parameter_p) - )); - // Physical_Person.birth_day(p, birthDay) - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Physical_Person", "birth_day"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_0_, var_birthDay); - // check(birthDay < 1) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern inv35"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("birthDay");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Integer birthDay = (Integer) provider.getValue("birthDay"); - return evaluateExpression_1_1(birthDay); - } - }, null); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_p = body.getOrCreateVariableByName("p"); - PVariable var_birthDay = body.getOrCreateVariableByName("birthDay"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_p, parameter_p) - )); - // Physical_Person.birth_day(p, birthDay) - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Physical_Person", "birth_day"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_0_, var_birthDay); - // check(birthDay > 28) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern inv35"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("birthDay");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Integer birthDay = (Integer) provider.getValue("birthDay"); - return evaluateExpression_2_1(birthDay); - } - }, null); - bodies.add(body); - } - { - PAnnotation annotation = new PAnnotation("Constraint"); - annotation.addAttribute("message", "inv35"); - annotation.addAttribute("severity", "error"); - annotation.addAttribute("key", Arrays.asList(new Object[] { - new ParameterReference("p") - })); - addAnnotation(annotation); - } - return bodies; - } - } - - private static boolean evaluateExpression_1_1(final Integer birthDay) { - return ((birthDay).intValue() < 1); - } - - private static boolean evaluateExpression_2_1(final Integer birthDay) { - return ((birthDay).intValue() > 28); - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv47.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv47.java deleted file mode 100644 index 10ba19d6..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv47.java +++ /dev/null @@ -1,636 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Legal_Union_Record; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.IExpressionEvaluator; -import org.eclipse.viatra.query.runtime.matchers.psystem.IValueProvider; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.ParameterReference; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.NegativePatternCall; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; -import queries.X_inv47; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         //inv36-AttributeRemoved
    - *         //inv37-AttributeRemoved
    - *         //inv38-AttributeRemoved
    - *         //inv39-AttributeRemoved
    - *         //inv40-AttributeRemoved
    - *         //inv41-AttributeRemoved
    - *         //inv42-AttributeRemoved
    - *         //inv43-AttributeRemoved
    - *         //inv44-AttributeRemoved
    - *         //inv45-AttributeRemoved
    - *         //inv46-AttributeRemoved
    - *         
    - *         //inv47-attributes-handled by multiplicity
    - *         {@literal @}Constraint(message = "inv47", severity = "error", key = {lur})
    - *         pattern inv47(lur : Legal_Union_Record) {
    - *             Legal_Union_Record.end_year(lur, endY);
    - *             Legal_Union_Record.start_year(lur, startY);
    - *             neg find x_inv47(lur);
    - *             check(startY {@literal >}= endY);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class Inv47 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.inv47 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Legal_Union_Record fLur; - - private static List parameterNames = makeImmutableList("lur"); - - private Match(final Legal_Union_Record pLur) { - this.fLur = pLur; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "lur": return this.fLur; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fLur; - default: return null; - } - } - - public Legal_Union_Record getLur() { - return this.fLur; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("lur".equals(parameterName) ) { - this.fLur = (Legal_Union_Record) newValue; - return true; - } - return false; - } - - public void setLur(final Legal_Union_Record pLur) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fLur = pLur; - } - - @Override - public String patternName() { - return "queries.inv47"; - } - - @Override - public List parameterNames() { - return Inv47.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fLur}; - } - - @Override - public Inv47.Match toImmutable() { - return isMutable() ? newMatch(fLur) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"lur\"=" + prettyPrintValue(fLur)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fLur); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof Inv47.Match)) { - Inv47.Match other = (Inv47.Match) obj; - return Objects.equals(fLur, other.fLur); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public Inv47 specification() { - return Inv47.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static Inv47.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static Inv47.Match newMutableMatch(final Legal_Union_Record pLur) { - return new Mutable(pLur); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the (partial) match object. - * - */ - public static Inv47.Match newMatch(final Legal_Union_Record pLur) { - return new Immutable(pLur); - } - - private static final class Mutable extends Inv47.Match { - Mutable(final Legal_Union_Record pLur) { - super(pLur); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends Inv47.Match { - Immutable(final Legal_Union_Record pLur) { - super(pLur); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.inv47 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * //inv36-AttributeRemoved
    -   * //inv37-AttributeRemoved
    -   * //inv38-AttributeRemoved
    -   * //inv39-AttributeRemoved
    -   * //inv40-AttributeRemoved
    -   * //inv41-AttributeRemoved
    -   * //inv42-AttributeRemoved
    -   * //inv43-AttributeRemoved
    -   * //inv44-AttributeRemoved
    -   * //inv45-AttributeRemoved
    -   * //inv46-AttributeRemoved
    -   * 
    -   * //inv47-attributes-handled by multiplicity
    -   * {@literal @}Constraint(message = "inv47", severity = "error", key = {lur})
    -   * pattern inv47(lur : Legal_Union_Record) {
    -   *     Legal_Union_Record.end_year(lur, endY);
    -   *     Legal_Union_Record.start_year(lur, startY);
    -   *     neg find x_inv47(lur);
    -   *     check(startY {@literal >}= endY);
    -   * }
    -   * 
    - * - * @see Match - * @see Inv47 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static Inv47.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static Inv47.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_LUR = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(Inv47.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Legal_Union_Record pLur) { - return rawStreamAllMatches(new Object[]{pLur}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Legal_Union_Record pLur) { - return rawStreamAllMatches(new Object[]{pLur}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Legal_Union_Record pLur) { - return rawGetOneArbitraryMatch(new Object[]{pLur}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Legal_Union_Record pLur) { - return rawHasMatch(new Object[]{pLur}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Legal_Union_Record pLur) { - return rawCountMatches(new Object[]{pLur}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Legal_Union_Record pLur, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pLur}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the (partial) match object. - * - */ - public Inv47.Match newMatch(final Legal_Union_Record pLur) { - return Inv47.Match.newMatch(pLur); - } - - /** - * Retrieve the set of values that occur in matches for lur. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOflur(final Object[] parameters) { - return rawStreamAllValues(POSITION_LUR, parameters).map(Legal_Union_Record.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for lur. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOflur() { - return rawStreamAllValuesOflur(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for lur. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOflur() { - return rawStreamAllValuesOflur(emptyArray()); - } - - @Override - protected Inv47.Match tupleToMatch(final Tuple t) { - try { - return Inv47.Match.newMatch((Legal_Union_Record) t.get(POSITION_LUR)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected Inv47.Match arrayToMatch(final Object[] match) { - try { - return Inv47.Match.newMatch((Legal_Union_Record) match[POSITION_LUR]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected Inv47.Match arrayToMatchMutable(final Object[] match) { - try { - return Inv47.Match.newMutableMatch((Legal_Union_Record) match[POSITION_LUR]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return Inv47.instance(); - } - } - - private Inv47() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static Inv47 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected Inv47.Matcher instantiate(final ViatraQueryEngine engine) { - return Inv47.Matcher.on(engine); - } - - @Override - public Inv47.Matcher instantiate() { - return Inv47.Matcher.create(); - } - - @Override - public Inv47.Match newEmptyMatch() { - return Inv47.Match.newEmptyMatch(); - } - - @Override - public Inv47.Match newMatch(final Object... parameters) { - return Inv47.Match.newMatch((Taxation.Legal_Union_Record) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link Inv47} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link Inv47#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final Inv47 INSTANCE = new Inv47(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final Inv47.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_lur = new PParameter("lur", "Taxation.Legal_Union_Record", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Legal_Union_Record")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_lur); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.inv47"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("lur"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_lur = body.getOrCreateVariableByName("lur"); - PVariable var_endY = body.getOrCreateVariableByName("endY"); - PVariable var_startY = body.getOrCreateVariableByName("startY"); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_lur, parameter_lur) - )); - // Legal_Union_Record.end_year(lur, endY) - new TypeConstraint(body, Tuples.flatTupleOf(var_lur), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Legal_Union_Record", "end_year"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_0_, var_endY); - // Legal_Union_Record.start_year(lur, startY) - new TypeConstraint(body, Tuples.flatTupleOf(var_lur), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Legal_Union_Record", "start_year"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_1_, var_startY); - // neg find x_inv47(lur) - new NegativePatternCall(body, Tuples.flatTupleOf(var_lur), X_inv47.instance().getInternalQueryRepresentation()); - // check(startY >= endY) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern inv47"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("endY", "startY");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Integer endY = (Integer) provider.getValue("endY"); - Integer startY = (Integer) provider.getValue("startY"); - return evaluateExpression_1_1(endY, startY); - } - }, null); - bodies.add(body); - } - { - PAnnotation annotation = new PAnnotation("Constraint"); - annotation.addAttribute("message", "inv47"); - annotation.addAttribute("severity", "error"); - annotation.addAttribute("key", Arrays.asList(new Object[] { - new ParameterReference("lur") - })); - addAnnotation(annotation); - } - return bodies; - } - } - - private static boolean evaluateExpression_1_1(final Integer endY, final Integer startY) { - boolean _greaterEqualsThan = (startY.compareTo(endY) >= 0); - return _greaterEqualsThan; - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv48.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv48.java deleted file mode 100644 index 67133328..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv48.java +++ /dev/null @@ -1,566 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Physical_Person; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.ParameterReference; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.NegativePatternCall; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; -import queries.X_inv48_Dis; -import queries.X_inv48_notDis; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         //inv48-attributes-handled by multiplicity
    - *         {@literal @}Constraint(message = "inv48", severity = "error", key = {p})
    - *         pattern inv48(p : Physical_Person) {
    - *         	neg find x_inv48_notDis(p);
    - *         	neg find x_inv48_Dis(p);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class Inv48 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.inv48 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Physical_Person fP; - - private static List parameterNames = makeImmutableList("p"); - - private Match(final Physical_Person pP) { - this.fP = pP; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "p": return this.fP; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fP; - default: return null; - } - } - - public Physical_Person getP() { - return this.fP; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("p".equals(parameterName) ) { - this.fP = (Physical_Person) newValue; - return true; - } - return false; - } - - public void setP(final Physical_Person pP) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fP = pP; - } - - @Override - public String patternName() { - return "queries.inv48"; - } - - @Override - public List parameterNames() { - return Inv48.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fP}; - } - - @Override - public Inv48.Match toImmutable() { - return isMutable() ? newMatch(fP) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"p\"=" + prettyPrintValue(fP)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fP); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof Inv48.Match)) { - Inv48.Match other = (Inv48.Match) obj; - return Objects.equals(fP, other.fP); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public Inv48 specification() { - return Inv48.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static Inv48.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static Inv48.Match newMutableMatch(final Physical_Person pP) { - return new Mutable(pP); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the (partial) match object. - * - */ - public static Inv48.Match newMatch(final Physical_Person pP) { - return new Immutable(pP); - } - - private static final class Mutable extends Inv48.Match { - Mutable(final Physical_Person pP) { - super(pP); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends Inv48.Match { - Immutable(final Physical_Person pP) { - super(pP); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.inv48 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * //inv48-attributes-handled by multiplicity
    -   * {@literal @}Constraint(message = "inv48", severity = "error", key = {p})
    -   * pattern inv48(p : Physical_Person) {
    -   * 	neg find x_inv48_notDis(p);
    -   * 	neg find x_inv48_Dis(p);
    -   * }
    -   * 
    - * - * @see Match - * @see Inv48 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static Inv48.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static Inv48.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_P = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(Inv48.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Physical_Person pP) { - return rawStreamAllMatches(new Object[]{pP}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Physical_Person pP) { - return rawStreamAllMatches(new Object[]{pP}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Physical_Person pP) { - return rawGetOneArbitraryMatch(new Object[]{pP}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Physical_Person pP) { - return rawHasMatch(new Object[]{pP}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Physical_Person pP) { - return rawCountMatches(new Object[]{pP}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Physical_Person pP, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pP}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the (partial) match object. - * - */ - public Inv48.Match newMatch(final Physical_Person pP) { - return Inv48.Match.newMatch(pP); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfp(final Object[] parameters) { - return rawStreamAllValues(POSITION_P, parameters).map(Physical_Person.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfp() { - return rawStreamAllValuesOfp(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfp() { - return rawStreamAllValuesOfp(emptyArray()); - } - - @Override - protected Inv48.Match tupleToMatch(final Tuple t) { - try { - return Inv48.Match.newMatch((Physical_Person) t.get(POSITION_P)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected Inv48.Match arrayToMatch(final Object[] match) { - try { - return Inv48.Match.newMatch((Physical_Person) match[POSITION_P]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected Inv48.Match arrayToMatchMutable(final Object[] match) { - try { - return Inv48.Match.newMutableMatch((Physical_Person) match[POSITION_P]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return Inv48.instance(); - } - } - - private Inv48() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static Inv48 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected Inv48.Matcher instantiate(final ViatraQueryEngine engine) { - return Inv48.Matcher.on(engine); - } - - @Override - public Inv48.Matcher instantiate() { - return Inv48.Matcher.create(); - } - - @Override - public Inv48.Match newEmptyMatch() { - return Inv48.Match.newEmptyMatch(); - } - - @Override - public Inv48.Match newMatch(final Object... parameters) { - return Inv48.Match.newMatch((Taxation.Physical_Person) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link Inv48} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link Inv48#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final Inv48 INSTANCE = new Inv48(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final Inv48.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_p = new PParameter("p", "Taxation.Physical_Person", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Physical_Person")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_p); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.inv48"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("p"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_p = body.getOrCreateVariableByName("p"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_p, parameter_p) - )); - // neg find x_inv48_notDis(p) - new NegativePatternCall(body, Tuples.flatTupleOf(var_p), X_inv48_notDis.instance().getInternalQueryRepresentation()); - // neg find x_inv48_Dis(p) - new NegativePatternCall(body, Tuples.flatTupleOf(var_p), X_inv48_Dis.instance().getInternalQueryRepresentation()); - bodies.add(body); - } - { - PAnnotation annotation = new PAnnotation("Constraint"); - annotation.addAttribute("message", "inv48"); - annotation.addAttribute("severity", "error"); - annotation.addAttribute("key", Arrays.asList(new Object[] { - new ParameterReference("p") - })); - addAnnotation(annotation); - } - return bodies; - } - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv49.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv49.java deleted file mode 100644 index 66bca24a..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/Inv49.java +++ /dev/null @@ -1,561 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Legal_Union_Record; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.ParameterReference; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.NegativePatternCall; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; -import queries.X_inv49_1; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         //inv49-OclKindOf-handled by multiplicity
    - *         {@literal @}Constraint(message = "inv49", severity = "error", key = {lur})
    - *         pattern inv49(lur : Legal_Union_Record) {
    - *             neg find x_inv49_1(lur);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class Inv49 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.inv49 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Legal_Union_Record fLur; - - private static List parameterNames = makeImmutableList("lur"); - - private Match(final Legal_Union_Record pLur) { - this.fLur = pLur; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "lur": return this.fLur; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fLur; - default: return null; - } - } - - public Legal_Union_Record getLur() { - return this.fLur; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("lur".equals(parameterName) ) { - this.fLur = (Legal_Union_Record) newValue; - return true; - } - return false; - } - - public void setLur(final Legal_Union_Record pLur) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fLur = pLur; - } - - @Override - public String patternName() { - return "queries.inv49"; - } - - @Override - public List parameterNames() { - return Inv49.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fLur}; - } - - @Override - public Inv49.Match toImmutable() { - return isMutable() ? newMatch(fLur) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"lur\"=" + prettyPrintValue(fLur)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fLur); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof Inv49.Match)) { - Inv49.Match other = (Inv49.Match) obj; - return Objects.equals(fLur, other.fLur); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public Inv49 specification() { - return Inv49.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static Inv49.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static Inv49.Match newMutableMatch(final Legal_Union_Record pLur) { - return new Mutable(pLur); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the (partial) match object. - * - */ - public static Inv49.Match newMatch(final Legal_Union_Record pLur) { - return new Immutable(pLur); - } - - private static final class Mutable extends Inv49.Match { - Mutable(final Legal_Union_Record pLur) { - super(pLur); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends Inv49.Match { - Immutable(final Legal_Union_Record pLur) { - super(pLur); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.inv49 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * //inv49-OclKindOf-handled by multiplicity
    -   * {@literal @}Constraint(message = "inv49", severity = "error", key = {lur})
    -   * pattern inv49(lur : Legal_Union_Record) {
    -   *     neg find x_inv49_1(lur);
    -   * }
    -   * 
    - * - * @see Match - * @see Inv49 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static Inv49.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static Inv49.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_LUR = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(Inv49.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Legal_Union_Record pLur) { - return rawStreamAllMatches(new Object[]{pLur}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Legal_Union_Record pLur) { - return rawStreamAllMatches(new Object[]{pLur}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Legal_Union_Record pLur) { - return rawGetOneArbitraryMatch(new Object[]{pLur}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Legal_Union_Record pLur) { - return rawHasMatch(new Object[]{pLur}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Legal_Union_Record pLur) { - return rawCountMatches(new Object[]{pLur}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Legal_Union_Record pLur, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pLur}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the (partial) match object. - * - */ - public Inv49.Match newMatch(final Legal_Union_Record pLur) { - return Inv49.Match.newMatch(pLur); - } - - /** - * Retrieve the set of values that occur in matches for lur. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOflur(final Object[] parameters) { - return rawStreamAllValues(POSITION_LUR, parameters).map(Legal_Union_Record.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for lur. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOflur() { - return rawStreamAllValuesOflur(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for lur. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOflur() { - return rawStreamAllValuesOflur(emptyArray()); - } - - @Override - protected Inv49.Match tupleToMatch(final Tuple t) { - try { - return Inv49.Match.newMatch((Legal_Union_Record) t.get(POSITION_LUR)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected Inv49.Match arrayToMatch(final Object[] match) { - try { - return Inv49.Match.newMatch((Legal_Union_Record) match[POSITION_LUR]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected Inv49.Match arrayToMatchMutable(final Object[] match) { - try { - return Inv49.Match.newMutableMatch((Legal_Union_Record) match[POSITION_LUR]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return Inv49.instance(); - } - } - - private Inv49() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static Inv49 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected Inv49.Matcher instantiate(final ViatraQueryEngine engine) { - return Inv49.Matcher.on(engine); - } - - @Override - public Inv49.Matcher instantiate() { - return Inv49.Matcher.create(); - } - - @Override - public Inv49.Match newEmptyMatch() { - return Inv49.Match.newEmptyMatch(); - } - - @Override - public Inv49.Match newMatch(final Object... parameters) { - return Inv49.Match.newMatch((Taxation.Legal_Union_Record) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link Inv49} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link Inv49#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final Inv49 INSTANCE = new Inv49(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final Inv49.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_lur = new PParameter("lur", "Taxation.Legal_Union_Record", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Legal_Union_Record")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_lur); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.inv49"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("lur"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_lur = body.getOrCreateVariableByName("lur"); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_lur, parameter_lur) - )); - // neg find x_inv49_1(lur) - new NegativePatternCall(body, Tuples.flatTupleOf(var_lur), X_inv49_1.instance().getInternalQueryRepresentation()); - bodies.add(body); - } - { - PAnnotation annotation = new PAnnotation("Constraint"); - annotation.addAttribute("message", "inv49"); - annotation.addAttribute("severity", "error"); - annotation.addAttribute("key", Arrays.asList(new Object[] { - new ParameterReference("lur") - })); - addAnnotation(annotation); - } - return bodies; - } - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv03_eligAll.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv03_eligAll.java deleted file mode 100644 index 0bfffe93..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv03_eligAll.java +++ /dev/null @@ -1,606 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Dependent; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.IExpressionEvaluator; -import org.eclipse.viatra.query.runtime.matchers.psystem.IValueProvider; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.ConstantValue; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         pattern x_inv03_eligAll(dep : Dependent) {
    - *             Dependent.birth_year(dep, by);
    - *             check(2018-by {@literal <}= 21);
    - *         } or {
    - *         	Dependent.continued_studies(dep, true);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class X_inv03_eligAll extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.x_inv03_eligAll pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Dependent fDep; - - private static List parameterNames = makeImmutableList("dep"); - - private Match(final Dependent pDep) { - this.fDep = pDep; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "dep": return this.fDep; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fDep; - default: return null; - } - } - - public Dependent getDep() { - return this.fDep; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("dep".equals(parameterName) ) { - this.fDep = (Dependent) newValue; - return true; - } - return false; - } - - public void setDep(final Dependent pDep) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fDep = pDep; - } - - @Override - public String patternName() { - return "queries.x_inv03_eligAll"; - } - - @Override - public List parameterNames() { - return X_inv03_eligAll.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fDep}; - } - - @Override - public X_inv03_eligAll.Match toImmutable() { - return isMutable() ? newMatch(fDep) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"dep\"=" + prettyPrintValue(fDep)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fDep); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof X_inv03_eligAll.Match)) { - X_inv03_eligAll.Match other = (X_inv03_eligAll.Match) obj; - return Objects.equals(fDep, other.fDep); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public X_inv03_eligAll specification() { - return X_inv03_eligAll.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static X_inv03_eligAll.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static X_inv03_eligAll.Match newMutableMatch(final Dependent pDep) { - return new Mutable(pDep); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return the (partial) match object. - * - */ - public static X_inv03_eligAll.Match newMatch(final Dependent pDep) { - return new Immutable(pDep); - } - - private static final class Mutable extends X_inv03_eligAll.Match { - Mutable(final Dependent pDep) { - super(pDep); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends X_inv03_eligAll.Match { - Immutable(final Dependent pDep) { - super(pDep); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.x_inv03_eligAll pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * pattern x_inv03_eligAll(dep : Dependent) {
    -   *     Dependent.birth_year(dep, by);
    -   *     check(2018-by {@literal <}= 21);
    -   * } or {
    -   * 	Dependent.continued_studies(dep, true);
    -   * }
    -   * 
    - * - * @see Match - * @see X_inv03_eligAll - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static X_inv03_eligAll.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static X_inv03_eligAll.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_DEP = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(X_inv03_eligAll.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Dependent pDep) { - return rawStreamAllMatches(new Object[]{pDep}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Dependent pDep) { - return rawStreamAllMatches(new Object[]{pDep}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Dependent pDep) { - return rawGetOneArbitraryMatch(new Object[]{pDep}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Dependent pDep) { - return rawHasMatch(new Object[]{pDep}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Dependent pDep) { - return rawCountMatches(new Object[]{pDep}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Dependent pDep, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pDep}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return the (partial) match object. - * - */ - public X_inv03_eligAll.Match newMatch(final Dependent pDep) { - return X_inv03_eligAll.Match.newMatch(pDep); - } - - /** - * Retrieve the set of values that occur in matches for dep. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfdep(final Object[] parameters) { - return rawStreamAllValues(POSITION_DEP, parameters).map(Dependent.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for dep. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfdep() { - return rawStreamAllValuesOfdep(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for dep. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfdep() { - return rawStreamAllValuesOfdep(emptyArray()); - } - - @Override - protected X_inv03_eligAll.Match tupleToMatch(final Tuple t) { - try { - return X_inv03_eligAll.Match.newMatch((Dependent) t.get(POSITION_DEP)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected X_inv03_eligAll.Match arrayToMatch(final Object[] match) { - try { - return X_inv03_eligAll.Match.newMatch((Dependent) match[POSITION_DEP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected X_inv03_eligAll.Match arrayToMatchMutable(final Object[] match) { - try { - return X_inv03_eligAll.Match.newMutableMatch((Dependent) match[POSITION_DEP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return X_inv03_eligAll.instance(); - } - } - - private X_inv03_eligAll() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static X_inv03_eligAll instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected X_inv03_eligAll.Matcher instantiate(final ViatraQueryEngine engine) { - return X_inv03_eligAll.Matcher.on(engine); - } - - @Override - public X_inv03_eligAll.Matcher instantiate() { - return X_inv03_eligAll.Matcher.create(); - } - - @Override - public X_inv03_eligAll.Match newEmptyMatch() { - return X_inv03_eligAll.Match.newEmptyMatch(); - } - - @Override - public X_inv03_eligAll.Match newMatch(final Object... parameters) { - return X_inv03_eligAll.Match.newMatch((Taxation.Dependent) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link X_inv03_eligAll} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link X_inv03_eligAll#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final X_inv03_eligAll INSTANCE = new X_inv03_eligAll(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final X_inv03_eligAll.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_dep = new PParameter("dep", "Taxation.Dependent", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Dependent")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_dep); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.x_inv03_eligAll"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("dep"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_dep = body.getOrCreateVariableByName("dep"); - PVariable var_by = body.getOrCreateVariableByName("by"); - new TypeConstraint(body, Tuples.flatTupleOf(var_dep), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_dep, parameter_dep) - )); - // Dependent.birth_year(dep, by) - new TypeConstraint(body, Tuples.flatTupleOf(var_dep), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_dep, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Physical_Person", "birth_year"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_0_, var_by); - // check(2018-by <= 21) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern x_inv03_eligAll"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("by");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Integer by = (Integer) provider.getValue("by"); - return evaluateExpression_1_1(by); - } - }, null); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_dep = body.getOrCreateVariableByName("dep"); - new TypeConstraint(body, Tuples.flatTupleOf(var_dep), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_dep, parameter_dep) - )); - // Dependent.continued_studies(dep, true) - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new ConstantValue(body, var__virtual_0_, true); - new TypeConstraint(body, Tuples.flatTupleOf(var_dep), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_dep, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Dependent", "continued_studies"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EBoolean"))); - new Equality(body, var__virtual_1_, var__virtual_0_); - bodies.add(body); - } - return bodies; - } - } - - private static boolean evaluateExpression_1_1(final Integer by) { - return ((2018 - (by).intValue()) <= 21); - } - - private static boolean evaluateExpression_2_1() { - return true; - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv03_hasAll.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv03_hasAll.java deleted file mode 100644 index 90deb92d..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv03_hasAll.java +++ /dev/null @@ -1,551 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Dependent; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         pattern x_inv03_hasAll(dep : Dependent) {
    - *             Dependent.allowances(dep, _);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class X_inv03_hasAll extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.x_inv03_hasAll pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Dependent fDep; - - private static List parameterNames = makeImmutableList("dep"); - - private Match(final Dependent pDep) { - this.fDep = pDep; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "dep": return this.fDep; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fDep; - default: return null; - } - } - - public Dependent getDep() { - return this.fDep; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("dep".equals(parameterName) ) { - this.fDep = (Dependent) newValue; - return true; - } - return false; - } - - public void setDep(final Dependent pDep) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fDep = pDep; - } - - @Override - public String patternName() { - return "queries.x_inv03_hasAll"; - } - - @Override - public List parameterNames() { - return X_inv03_hasAll.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fDep}; - } - - @Override - public X_inv03_hasAll.Match toImmutable() { - return isMutable() ? newMatch(fDep) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"dep\"=" + prettyPrintValue(fDep)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fDep); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof X_inv03_hasAll.Match)) { - X_inv03_hasAll.Match other = (X_inv03_hasAll.Match) obj; - return Objects.equals(fDep, other.fDep); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public X_inv03_hasAll specification() { - return X_inv03_hasAll.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static X_inv03_hasAll.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static X_inv03_hasAll.Match newMutableMatch(final Dependent pDep) { - return new Mutable(pDep); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return the (partial) match object. - * - */ - public static X_inv03_hasAll.Match newMatch(final Dependent pDep) { - return new Immutable(pDep); - } - - private static final class Mutable extends X_inv03_hasAll.Match { - Mutable(final Dependent pDep) { - super(pDep); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends X_inv03_hasAll.Match { - Immutable(final Dependent pDep) { - super(pDep); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.x_inv03_hasAll pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * pattern x_inv03_hasAll(dep : Dependent) {
    -   *     Dependent.allowances(dep, _);
    -   * }
    -   * 
    - * - * @see Match - * @see X_inv03_hasAll - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static X_inv03_hasAll.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static X_inv03_hasAll.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_DEP = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(X_inv03_hasAll.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Dependent pDep) { - return rawStreamAllMatches(new Object[]{pDep}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Dependent pDep) { - return rawStreamAllMatches(new Object[]{pDep}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Dependent pDep) { - return rawGetOneArbitraryMatch(new Object[]{pDep}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Dependent pDep) { - return rawHasMatch(new Object[]{pDep}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Dependent pDep) { - return rawCountMatches(new Object[]{pDep}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Dependent pDep, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pDep}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pDep the fixed value of pattern parameter dep, or null if not bound. - * @return the (partial) match object. - * - */ - public X_inv03_hasAll.Match newMatch(final Dependent pDep) { - return X_inv03_hasAll.Match.newMatch(pDep); - } - - /** - * Retrieve the set of values that occur in matches for dep. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfdep(final Object[] parameters) { - return rawStreamAllValues(POSITION_DEP, parameters).map(Dependent.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for dep. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfdep() { - return rawStreamAllValuesOfdep(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for dep. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfdep() { - return rawStreamAllValuesOfdep(emptyArray()); - } - - @Override - protected X_inv03_hasAll.Match tupleToMatch(final Tuple t) { - try { - return X_inv03_hasAll.Match.newMatch((Dependent) t.get(POSITION_DEP)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected X_inv03_hasAll.Match arrayToMatch(final Object[] match) { - try { - return X_inv03_hasAll.Match.newMatch((Dependent) match[POSITION_DEP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected X_inv03_hasAll.Match arrayToMatchMutable(final Object[] match) { - try { - return X_inv03_hasAll.Match.newMutableMatch((Dependent) match[POSITION_DEP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return X_inv03_hasAll.instance(); - } - } - - private X_inv03_hasAll() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static X_inv03_hasAll instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected X_inv03_hasAll.Matcher instantiate(final ViatraQueryEngine engine) { - return X_inv03_hasAll.Matcher.on(engine); - } - - @Override - public X_inv03_hasAll.Matcher instantiate() { - return X_inv03_hasAll.Matcher.create(); - } - - @Override - public X_inv03_hasAll.Match newEmptyMatch() { - return X_inv03_hasAll.Match.newEmptyMatch(); - } - - @Override - public X_inv03_hasAll.Match newMatch(final Object... parameters) { - return X_inv03_hasAll.Match.newMatch((Taxation.Dependent) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link X_inv03_hasAll} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link X_inv03_hasAll#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final X_inv03_hasAll INSTANCE = new X_inv03_hasAll(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final X_inv03_hasAll.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_dep = new PParameter("dep", "Taxation.Dependent", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Dependent")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_dep); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.x_inv03_hasAll"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("dep"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_dep = body.getOrCreateVariableByName("dep"); - PVariable var___0_ = body.getOrCreateVariableByName("_<0>"); - new TypeConstraint(body, Tuples.flatTupleOf(var_dep), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_dep, parameter_dep) - )); - // Dependent.allowances(dep, _) - new TypeConstraint(body, Tuples.flatTupleOf(var_dep), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_dep, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Dependent", "allowances"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "External_Allowance"))); - new Equality(body, var__virtual_0_, var___0_); - bodies.add(body); - } - return bodies; - } - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv05_inRange.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv05_inRange.java deleted file mode 100644 index aea94873..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv05_inRange.java +++ /dev/null @@ -1,630 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Income; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.IExpressionEvaluator; -import org.eclipse.viatra.query.runtime.matchers.psystem.IValueProvider; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         pattern x_inv05_inRange(inc : Income) {
    - *             Income.details.worked_days(inc, wd);
    - *             check(wd {@literal <} 1);
    - *         } or {
    - *             Income.details.worked_days(inc, wd);
    - *             check(wd {@literal >} 25);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class X_inv05_inRange extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.x_inv05_inRange pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Income fInc; - - private static List parameterNames = makeImmutableList("inc"); - - private Match(final Income pInc) { - this.fInc = pInc; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "inc": return this.fInc; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fInc; - default: return null; - } - } - - public Income getInc() { - return this.fInc; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("inc".equals(parameterName) ) { - this.fInc = (Income) newValue; - return true; - } - return false; - } - - public void setInc(final Income pInc) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fInc = pInc; - } - - @Override - public String patternName() { - return "queries.x_inv05_inRange"; - } - - @Override - public List parameterNames() { - return X_inv05_inRange.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fInc}; - } - - @Override - public X_inv05_inRange.Match toImmutable() { - return isMutable() ? newMatch(fInc) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"inc\"=" + prettyPrintValue(fInc)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fInc); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof X_inv05_inRange.Match)) { - X_inv05_inRange.Match other = (X_inv05_inRange.Match) obj; - return Objects.equals(fInc, other.fInc); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public X_inv05_inRange specification() { - return X_inv05_inRange.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static X_inv05_inRange.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static X_inv05_inRange.Match newMutableMatch(final Income pInc) { - return new Mutable(pInc); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the (partial) match object. - * - */ - public static X_inv05_inRange.Match newMatch(final Income pInc) { - return new Immutable(pInc); - } - - private static final class Mutable extends X_inv05_inRange.Match { - Mutable(final Income pInc) { - super(pInc); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends X_inv05_inRange.Match { - Immutable(final Income pInc) { - super(pInc); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.x_inv05_inRange pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * pattern x_inv05_inRange(inc : Income) {
    -   *     Income.details.worked_days(inc, wd);
    -   *     check(wd {@literal <} 1);
    -   * } or {
    -   *     Income.details.worked_days(inc, wd);
    -   *     check(wd {@literal >} 25);
    -   * }
    -   * 
    - * - * @see Match - * @see X_inv05_inRange - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static X_inv05_inRange.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static X_inv05_inRange.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_INC = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(X_inv05_inRange.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Income pInc) { - return rawStreamAllMatches(new Object[]{pInc}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Income pInc) { - return rawStreamAllMatches(new Object[]{pInc}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Income pInc) { - return rawGetOneArbitraryMatch(new Object[]{pInc}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Income pInc) { - return rawHasMatch(new Object[]{pInc}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Income pInc) { - return rawCountMatches(new Object[]{pInc}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Income pInc, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pInc}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the (partial) match object. - * - */ - public X_inv05_inRange.Match newMatch(final Income pInc) { - return X_inv05_inRange.Match.newMatch(pInc); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfinc(final Object[] parameters) { - return rawStreamAllValues(POSITION_INC, parameters).map(Income.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfinc() { - return rawStreamAllValuesOfinc(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfinc() { - return rawStreamAllValuesOfinc(emptyArray()); - } - - @Override - protected X_inv05_inRange.Match tupleToMatch(final Tuple t) { - try { - return X_inv05_inRange.Match.newMatch((Income) t.get(POSITION_INC)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected X_inv05_inRange.Match arrayToMatch(final Object[] match) { - try { - return X_inv05_inRange.Match.newMatch((Income) match[POSITION_INC]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected X_inv05_inRange.Match arrayToMatchMutable(final Object[] match) { - try { - return X_inv05_inRange.Match.newMutableMatch((Income) match[POSITION_INC]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return X_inv05_inRange.instance(); - } - } - - private X_inv05_inRange() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static X_inv05_inRange instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected X_inv05_inRange.Matcher instantiate(final ViatraQueryEngine engine) { - return X_inv05_inRange.Matcher.on(engine); - } - - @Override - public X_inv05_inRange.Matcher instantiate() { - return X_inv05_inRange.Matcher.create(); - } - - @Override - public X_inv05_inRange.Match newEmptyMatch() { - return X_inv05_inRange.Match.newEmptyMatch(); - } - - @Override - public X_inv05_inRange.Match newMatch(final Object... parameters) { - return X_inv05_inRange.Match.newMatch((Taxation.Income) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link X_inv05_inRange} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link X_inv05_inRange#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final X_inv05_inRange INSTANCE = new X_inv05_inRange(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final X_inv05_inRange.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_inc = new PParameter("inc", "Taxation.Income", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Income")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_inc); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.x_inv05_inRange"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("inc"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_inc = body.getOrCreateVariableByName("inc"); - PVariable var_wd = body.getOrCreateVariableByName("wd"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_inc, parameter_inc) - )); - // Income.details.worked_days(inc, wd) - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "details"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income_Detail"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income_Detail", "worked_days"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_1_, var_wd); - // check(wd < 1) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern x_inv05_inRange"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("wd");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Integer wd = (Integer) provider.getValue("wd"); - return evaluateExpression_1_1(wd); - } - }, null); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_inc = body.getOrCreateVariableByName("inc"); - PVariable var_wd = body.getOrCreateVariableByName("wd"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_inc, parameter_inc) - )); - // Income.details.worked_days(inc, wd) - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "details"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income_Detail"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income_Detail", "worked_days"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_1_, var_wd); - // check(wd > 25) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern x_inv05_inRange"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("wd");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Integer wd = (Integer) provider.getValue("wd"); - return evaluateExpression_2_1(wd); - } - }, null); - bodies.add(body); - } - return bodies; - } - } - - private static boolean evaluateExpression_1_1(final Integer wd) { - return ((wd).intValue() < 1); - } - - private static boolean evaluateExpression_2_1(final Integer wd) { - return ((wd).intValue() > 25); - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv08_inRange.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv08_inRange.java deleted file mode 100644 index b3efea21..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv08_inRange.java +++ /dev/null @@ -1,630 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Income; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.IExpressionEvaluator; -import org.eclipse.viatra.query.runtime.matchers.psystem.IValueProvider; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         pattern x_inv08_inRange(inc : Income) {
    - *             Income.details.distance(inc, dist);
    - *             check(dist {@literal <} 0);
    - *         } or {
    - *             Income.details.distance(inc, dist);
    - *             check(dist {@literal >} 100);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class X_inv08_inRange extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.x_inv08_inRange pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Income fInc; - - private static List parameterNames = makeImmutableList("inc"); - - private Match(final Income pInc) { - this.fInc = pInc; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "inc": return this.fInc; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fInc; - default: return null; - } - } - - public Income getInc() { - return this.fInc; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("inc".equals(parameterName) ) { - this.fInc = (Income) newValue; - return true; - } - return false; - } - - public void setInc(final Income pInc) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fInc = pInc; - } - - @Override - public String patternName() { - return "queries.x_inv08_inRange"; - } - - @Override - public List parameterNames() { - return X_inv08_inRange.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fInc}; - } - - @Override - public X_inv08_inRange.Match toImmutable() { - return isMutable() ? newMatch(fInc) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"inc\"=" + prettyPrintValue(fInc)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fInc); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof X_inv08_inRange.Match)) { - X_inv08_inRange.Match other = (X_inv08_inRange.Match) obj; - return Objects.equals(fInc, other.fInc); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public X_inv08_inRange specification() { - return X_inv08_inRange.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static X_inv08_inRange.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static X_inv08_inRange.Match newMutableMatch(final Income pInc) { - return new Mutable(pInc); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the (partial) match object. - * - */ - public static X_inv08_inRange.Match newMatch(final Income pInc) { - return new Immutable(pInc); - } - - private static final class Mutable extends X_inv08_inRange.Match { - Mutable(final Income pInc) { - super(pInc); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends X_inv08_inRange.Match { - Immutable(final Income pInc) { - super(pInc); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.x_inv08_inRange pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * pattern x_inv08_inRange(inc : Income) {
    -   *     Income.details.distance(inc, dist);
    -   *     check(dist {@literal <} 0);
    -   * } or {
    -   *     Income.details.distance(inc, dist);
    -   *     check(dist {@literal >} 100);
    -   * }
    -   * 
    - * - * @see Match - * @see X_inv08_inRange - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static X_inv08_inRange.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static X_inv08_inRange.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_INC = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(X_inv08_inRange.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Income pInc) { - return rawStreamAllMatches(new Object[]{pInc}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Income pInc) { - return rawStreamAllMatches(new Object[]{pInc}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Income pInc) { - return rawGetOneArbitraryMatch(new Object[]{pInc}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Income pInc) { - return rawHasMatch(new Object[]{pInc}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Income pInc) { - return rawCountMatches(new Object[]{pInc}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Income pInc, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pInc}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the (partial) match object. - * - */ - public X_inv08_inRange.Match newMatch(final Income pInc) { - return X_inv08_inRange.Match.newMatch(pInc); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfinc(final Object[] parameters) { - return rawStreamAllValues(POSITION_INC, parameters).map(Income.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfinc() { - return rawStreamAllValuesOfinc(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfinc() { - return rawStreamAllValuesOfinc(emptyArray()); - } - - @Override - protected X_inv08_inRange.Match tupleToMatch(final Tuple t) { - try { - return X_inv08_inRange.Match.newMatch((Income) t.get(POSITION_INC)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected X_inv08_inRange.Match arrayToMatch(final Object[] match) { - try { - return X_inv08_inRange.Match.newMatch((Income) match[POSITION_INC]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected X_inv08_inRange.Match arrayToMatchMutable(final Object[] match) { - try { - return X_inv08_inRange.Match.newMutableMatch((Income) match[POSITION_INC]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return X_inv08_inRange.instance(); - } - } - - private X_inv08_inRange() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static X_inv08_inRange instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected X_inv08_inRange.Matcher instantiate(final ViatraQueryEngine engine) { - return X_inv08_inRange.Matcher.on(engine); - } - - @Override - public X_inv08_inRange.Matcher instantiate() { - return X_inv08_inRange.Matcher.create(); - } - - @Override - public X_inv08_inRange.Match newEmptyMatch() { - return X_inv08_inRange.Match.newEmptyMatch(); - } - - @Override - public X_inv08_inRange.Match newMatch(final Object... parameters) { - return X_inv08_inRange.Match.newMatch((Taxation.Income) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link X_inv08_inRange} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link X_inv08_inRange#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final X_inv08_inRange INSTANCE = new X_inv08_inRange(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final X_inv08_inRange.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_inc = new PParameter("inc", "Taxation.Income", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Income")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_inc); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.x_inv08_inRange"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("inc"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_inc = body.getOrCreateVariableByName("inc"); - PVariable var_dist = body.getOrCreateVariableByName("dist"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_inc, parameter_inc) - )); - // Income.details.distance(inc, dist) - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "details"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income_Detail"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income_Detail", "distance"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EDouble"))); - new Equality(body, var__virtual_1_, var_dist); - // check(dist < 0) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern x_inv08_inRange"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("dist");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Double dist = (Double) provider.getValue("dist"); - return evaluateExpression_1_1(dist); - } - }, null); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_inc = body.getOrCreateVariableByName("inc"); - PVariable var_dist = body.getOrCreateVariableByName("dist"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_inc, parameter_inc) - )); - // Income.details.distance(inc, dist) - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "details"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income_Detail"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income_Detail", "distance"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EDouble"))); - new Equality(body, var__virtual_1_, var_dist); - // check(dist > 100) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern x_inv08_inRange"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("dist");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Double dist = (Double) provider.getValue("dist"); - return evaluateExpression_2_1(dist); - } - }, null); - bodies.add(body); - } - return bodies; - } - } - - private static boolean evaluateExpression_1_1(final Double dist) { - return ((dist).doubleValue() < 0); - } - - private static boolean evaluateExpression_2_1(final Double dist) { - return ((dist).doubleValue() > 100); - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv08_noType.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv08_noType.java deleted file mode 100644 index 451d7d66..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv08_noType.java +++ /dev/null @@ -1,551 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Income; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         pattern x_inv08_noType(inc : Income) {
    - *             Income.income_type(inc, _);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class X_inv08_noType extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.x_inv08_noType pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Income fInc; - - private static List parameterNames = makeImmutableList("inc"); - - private Match(final Income pInc) { - this.fInc = pInc; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "inc": return this.fInc; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fInc; - default: return null; - } - } - - public Income getInc() { - return this.fInc; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("inc".equals(parameterName) ) { - this.fInc = (Income) newValue; - return true; - } - return false; - } - - public void setInc(final Income pInc) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fInc = pInc; - } - - @Override - public String patternName() { - return "queries.x_inv08_noType"; - } - - @Override - public List parameterNames() { - return X_inv08_noType.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fInc}; - } - - @Override - public X_inv08_noType.Match toImmutable() { - return isMutable() ? newMatch(fInc) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"inc\"=" + prettyPrintValue(fInc)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fInc); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof X_inv08_noType.Match)) { - X_inv08_noType.Match other = (X_inv08_noType.Match) obj; - return Objects.equals(fInc, other.fInc); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public X_inv08_noType specification() { - return X_inv08_noType.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static X_inv08_noType.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static X_inv08_noType.Match newMutableMatch(final Income pInc) { - return new Mutable(pInc); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the (partial) match object. - * - */ - public static X_inv08_noType.Match newMatch(final Income pInc) { - return new Immutable(pInc); - } - - private static final class Mutable extends X_inv08_noType.Match { - Mutable(final Income pInc) { - super(pInc); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends X_inv08_noType.Match { - Immutable(final Income pInc) { - super(pInc); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.x_inv08_noType pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * pattern x_inv08_noType(inc : Income) {
    -   *     Income.income_type(inc, _);
    -   * }
    -   * 
    - * - * @see Match - * @see X_inv08_noType - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static X_inv08_noType.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static X_inv08_noType.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_INC = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(X_inv08_noType.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Income pInc) { - return rawStreamAllMatches(new Object[]{pInc}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Income pInc) { - return rawStreamAllMatches(new Object[]{pInc}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Income pInc) { - return rawGetOneArbitraryMatch(new Object[]{pInc}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Income pInc) { - return rawHasMatch(new Object[]{pInc}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Income pInc) { - return rawCountMatches(new Object[]{pInc}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Income pInc, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pInc}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pInc the fixed value of pattern parameter inc, or null if not bound. - * @return the (partial) match object. - * - */ - public X_inv08_noType.Match newMatch(final Income pInc) { - return X_inv08_noType.Match.newMatch(pInc); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfinc(final Object[] parameters) { - return rawStreamAllValues(POSITION_INC, parameters).map(Income.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfinc() { - return rawStreamAllValuesOfinc(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for inc. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfinc() { - return rawStreamAllValuesOfinc(emptyArray()); - } - - @Override - protected X_inv08_noType.Match tupleToMatch(final Tuple t) { - try { - return X_inv08_noType.Match.newMatch((Income) t.get(POSITION_INC)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected X_inv08_noType.Match arrayToMatch(final Object[] match) { - try { - return X_inv08_noType.Match.newMatch((Income) match[POSITION_INC]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected X_inv08_noType.Match arrayToMatchMutable(final Object[] match) { - try { - return X_inv08_noType.Match.newMutableMatch((Income) match[POSITION_INC]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return X_inv08_noType.instance(); - } - } - - private X_inv08_noType() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static X_inv08_noType instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected X_inv08_noType.Matcher instantiate(final ViatraQueryEngine engine) { - return X_inv08_noType.Matcher.on(engine); - } - - @Override - public X_inv08_noType.Matcher instantiate() { - return X_inv08_noType.Matcher.create(); - } - - @Override - public X_inv08_noType.Match newEmptyMatch() { - return X_inv08_noType.Match.newEmptyMatch(); - } - - @Override - public X_inv08_noType.Match newMatch(final Object... parameters) { - return X_inv08_noType.Match.newMatch((Taxation.Income) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link X_inv08_noType} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link X_inv08_noType#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final X_inv08_noType INSTANCE = new X_inv08_noType(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final X_inv08_noType.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_inc = new PParameter("inc", "Taxation.Income", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Income")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_inc); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.x_inv08_noType"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("inc"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_inc = body.getOrCreateVariableByName("inc"); - PVariable var___0_ = body.getOrCreateVariableByName("_<0>"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_inc, parameter_inc) - )); - // Income.income_type(inc, _) - new TypeConstraint(body, Tuples.flatTupleOf(var_inc), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_inc, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "income_type"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income_Type"))); - new Equality(body, var__virtual_0_, var___0_); - bodies.add(body); - } - return bodies; - } - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv08_notEI.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv08_notEI.java deleted file mode 100644 index 07236028..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv08_notEI.java +++ /dev/null @@ -1,544 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Employment_Income; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         pattern x_inv08_notEI(type : Employment_Income) {
    - *             Employment_Income(type);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class X_inv08_notEI extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.x_inv08_notEI pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Employment_Income fType; - - private static List parameterNames = makeImmutableList("type"); - - private Match(final Employment_Income pType) { - this.fType = pType; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "type": return this.fType; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fType; - default: return null; - } - } - - public Employment_Income getType() { - return this.fType; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("type".equals(parameterName) ) { - this.fType = (Employment_Income) newValue; - return true; - } - return false; - } - - public void setType(final Employment_Income pType) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fType = pType; - } - - @Override - public String patternName() { - return "queries.x_inv08_notEI"; - } - - @Override - public List parameterNames() { - return X_inv08_notEI.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fType}; - } - - @Override - public X_inv08_notEI.Match toImmutable() { - return isMutable() ? newMatch(fType) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"type\"=" + prettyPrintValue(fType)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fType); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof X_inv08_notEI.Match)) { - X_inv08_notEI.Match other = (X_inv08_notEI.Match) obj; - return Objects.equals(fType, other.fType); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public X_inv08_notEI specification() { - return X_inv08_notEI.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static X_inv08_notEI.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pType the fixed value of pattern parameter type, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static X_inv08_notEI.Match newMutableMatch(final Employment_Income pType) { - return new Mutable(pType); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pType the fixed value of pattern parameter type, or null if not bound. - * @return the (partial) match object. - * - */ - public static X_inv08_notEI.Match newMatch(final Employment_Income pType) { - return new Immutable(pType); - } - - private static final class Mutable extends X_inv08_notEI.Match { - Mutable(final Employment_Income pType) { - super(pType); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends X_inv08_notEI.Match { - Immutable(final Employment_Income pType) { - super(pType); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.x_inv08_notEI pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * pattern x_inv08_notEI(type : Employment_Income) {
    -   *     Employment_Income(type);
    -   * }
    -   * 
    - * - * @see Match - * @see X_inv08_notEI - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static X_inv08_notEI.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static X_inv08_notEI.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_TYPE = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(X_inv08_notEI.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pType the fixed value of pattern parameter type, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Employment_Income pType) { - return rawStreamAllMatches(new Object[]{pType}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pType the fixed value of pattern parameter type, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Employment_Income pType) { - return rawStreamAllMatches(new Object[]{pType}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pType the fixed value of pattern parameter type, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Employment_Income pType) { - return rawGetOneArbitraryMatch(new Object[]{pType}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pType the fixed value of pattern parameter type, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Employment_Income pType) { - return rawHasMatch(new Object[]{pType}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pType the fixed value of pattern parameter type, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Employment_Income pType) { - return rawCountMatches(new Object[]{pType}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pType the fixed value of pattern parameter type, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Employment_Income pType, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pType}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pType the fixed value of pattern parameter type, or null if not bound. - * @return the (partial) match object. - * - */ - public X_inv08_notEI.Match newMatch(final Employment_Income pType) { - return X_inv08_notEI.Match.newMatch(pType); - } - - /** - * Retrieve the set of values that occur in matches for type. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOftype(final Object[] parameters) { - return rawStreamAllValues(POSITION_TYPE, parameters).map(Employment_Income.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for type. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOftype() { - return rawStreamAllValuesOftype(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for type. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOftype() { - return rawStreamAllValuesOftype(emptyArray()); - } - - @Override - protected X_inv08_notEI.Match tupleToMatch(final Tuple t) { - try { - return X_inv08_notEI.Match.newMatch((Employment_Income) t.get(POSITION_TYPE)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected X_inv08_notEI.Match arrayToMatch(final Object[] match) { - try { - return X_inv08_notEI.Match.newMatch((Employment_Income) match[POSITION_TYPE]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected X_inv08_notEI.Match arrayToMatchMutable(final Object[] match) { - try { - return X_inv08_notEI.Match.newMutableMatch((Employment_Income) match[POSITION_TYPE]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return X_inv08_notEI.instance(); - } - } - - private X_inv08_notEI() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static X_inv08_notEI instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected X_inv08_notEI.Matcher instantiate(final ViatraQueryEngine engine) { - return X_inv08_notEI.Matcher.on(engine); - } - - @Override - public X_inv08_notEI.Matcher instantiate() { - return X_inv08_notEI.Matcher.create(); - } - - @Override - public X_inv08_notEI.Match newEmptyMatch() { - return X_inv08_notEI.Match.newEmptyMatch(); - } - - @Override - public X_inv08_notEI.Match newMatch(final Object... parameters) { - return X_inv08_notEI.Match.newMatch((Taxation.Employment_Income) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link X_inv08_notEI} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link X_inv08_notEI#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final X_inv08_notEI INSTANCE = new X_inv08_notEI(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final X_inv08_notEI.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_type = new PParameter("type", "Taxation.Employment_Income", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Employment_Income")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_type); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.x_inv08_notEI"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("type"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_type = body.getOrCreateVariableByName("type"); - new TypeConstraint(body, Tuples.flatTupleOf(var_type), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Employment_Income"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_type, parameter_type) - )); - // Employment_Income(type) - new TypeConstraint(body, Tuples.flatTupleOf(var_type), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Employment_Income"))); - bodies.add(body); - } - return bodies; - } - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv11_incNotOver100.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv11_incNotOver100.java deleted file mode 100644 index 995946eb..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv11_incNotOver100.java +++ /dev/null @@ -1,684 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Expense; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.IExpressionEvaluator; -import org.eclipse.viatra.query.runtime.matchers.psystem.IValueProvider; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         pattern x_inv11_incNotOver100(exp : Expense) {
    - *             Expense.income.income_amount(exp, incVal);
    - *             check(incVal / 2 {@literal <}= 50);
    - *         } or {
    - *         	Expense.declared_amount(exp, decl);
    - *             check(decl {@literal <} 50);
    - *         } or {
    - *         	Expense.income.income_amount(exp, incVal);
    - *         	Expense.declared_amount(exp, decl);
    - *         	check(decl {@literal >} incVal/2);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class X_inv11_incNotOver100 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.x_inv11_incNotOver100 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Expense fExp; - - private static List parameterNames = makeImmutableList("exp"); - - private Match(final Expense pExp) { - this.fExp = pExp; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "exp": return this.fExp; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fExp; - default: return null; - } - } - - public Expense getExp() { - return this.fExp; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("exp".equals(parameterName) ) { - this.fExp = (Expense) newValue; - return true; - } - return false; - } - - public void setExp(final Expense pExp) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fExp = pExp; - } - - @Override - public String patternName() { - return "queries.x_inv11_incNotOver100"; - } - - @Override - public List parameterNames() { - return X_inv11_incNotOver100.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fExp}; - } - - @Override - public X_inv11_incNotOver100.Match toImmutable() { - return isMutable() ? newMatch(fExp) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"exp\"=" + prettyPrintValue(fExp)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fExp); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof X_inv11_incNotOver100.Match)) { - X_inv11_incNotOver100.Match other = (X_inv11_incNotOver100.Match) obj; - return Objects.equals(fExp, other.fExp); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public X_inv11_incNotOver100 specification() { - return X_inv11_incNotOver100.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static X_inv11_incNotOver100.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static X_inv11_incNotOver100.Match newMutableMatch(final Expense pExp) { - return new Mutable(pExp); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return the (partial) match object. - * - */ - public static X_inv11_incNotOver100.Match newMatch(final Expense pExp) { - return new Immutable(pExp); - } - - private static final class Mutable extends X_inv11_incNotOver100.Match { - Mutable(final Expense pExp) { - super(pExp); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends X_inv11_incNotOver100.Match { - Immutable(final Expense pExp) { - super(pExp); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.x_inv11_incNotOver100 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * pattern x_inv11_incNotOver100(exp : Expense) {
    -   *     Expense.income.income_amount(exp, incVal);
    -   *     check(incVal / 2 {@literal <}= 50);
    -   * } or {
    -   * 	Expense.declared_amount(exp, decl);
    -   *     check(decl {@literal <} 50);
    -   * } or {
    -   * 	Expense.income.income_amount(exp, incVal);
    -   * 	Expense.declared_amount(exp, decl);
    -   * 	check(decl {@literal >} incVal/2);
    -   * }
    -   * 
    - * - * @see Match - * @see X_inv11_incNotOver100 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static X_inv11_incNotOver100.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static X_inv11_incNotOver100.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_EXP = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(X_inv11_incNotOver100.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Expense pExp) { - return rawStreamAllMatches(new Object[]{pExp}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Expense pExp) { - return rawStreamAllMatches(new Object[]{pExp}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Expense pExp) { - return rawGetOneArbitraryMatch(new Object[]{pExp}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Expense pExp) { - return rawHasMatch(new Object[]{pExp}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Expense pExp) { - return rawCountMatches(new Object[]{pExp}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Expense pExp, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pExp}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return the (partial) match object. - * - */ - public X_inv11_incNotOver100.Match newMatch(final Expense pExp) { - return X_inv11_incNotOver100.Match.newMatch(pExp); - } - - /** - * Retrieve the set of values that occur in matches for exp. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfexp(final Object[] parameters) { - return rawStreamAllValues(POSITION_EXP, parameters).map(Expense.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for exp. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfexp() { - return rawStreamAllValuesOfexp(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for exp. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfexp() { - return rawStreamAllValuesOfexp(emptyArray()); - } - - @Override - protected X_inv11_incNotOver100.Match tupleToMatch(final Tuple t) { - try { - return X_inv11_incNotOver100.Match.newMatch((Expense) t.get(POSITION_EXP)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected X_inv11_incNotOver100.Match arrayToMatch(final Object[] match) { - try { - return X_inv11_incNotOver100.Match.newMatch((Expense) match[POSITION_EXP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected X_inv11_incNotOver100.Match arrayToMatchMutable(final Object[] match) { - try { - return X_inv11_incNotOver100.Match.newMutableMatch((Expense) match[POSITION_EXP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return X_inv11_incNotOver100.instance(); - } - } - - private X_inv11_incNotOver100() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static X_inv11_incNotOver100 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected X_inv11_incNotOver100.Matcher instantiate(final ViatraQueryEngine engine) { - return X_inv11_incNotOver100.Matcher.on(engine); - } - - @Override - public X_inv11_incNotOver100.Matcher instantiate() { - return X_inv11_incNotOver100.Matcher.create(); - } - - @Override - public X_inv11_incNotOver100.Match newEmptyMatch() { - return X_inv11_incNotOver100.Match.newEmptyMatch(); - } - - @Override - public X_inv11_incNotOver100.Match newMatch(final Object... parameters) { - return X_inv11_incNotOver100.Match.newMatch((Taxation.Expense) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link X_inv11_incNotOver100} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link X_inv11_incNotOver100#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final X_inv11_incNotOver100 INSTANCE = new X_inv11_incNotOver100(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final X_inv11_incNotOver100.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_exp = new PParameter("exp", "Taxation.Expense", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Expense")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_exp); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.x_inv11_incNotOver100"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("exp"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_exp = body.getOrCreateVariableByName("exp"); - PVariable var_incVal = body.getOrCreateVariableByName("incVal"); - new TypeConstraint(body, Tuples.flatTupleOf(var_exp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Expense"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_exp, parameter_exp) - )); - // Expense.income.income_amount(exp, incVal) - new TypeConstraint(body, Tuples.flatTupleOf(var_exp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Expense"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_exp, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Expense", "income"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "income_amount"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EDouble"))); - new Equality(body, var__virtual_1_, var_incVal); - // check(incVal / 2 <= 50) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern x_inv11_incNotOver100"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("incVal");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Double incVal = (Double) provider.getValue("incVal"); - return evaluateExpression_1_1(incVal); - } - }, null); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_exp = body.getOrCreateVariableByName("exp"); - PVariable var_decl = body.getOrCreateVariableByName("decl"); - new TypeConstraint(body, Tuples.flatTupleOf(var_exp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Expense"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_exp, parameter_exp) - )); - // Expense.declared_amount(exp, decl) - new TypeConstraint(body, Tuples.flatTupleOf(var_exp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Expense"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_exp, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Expense", "declared_amount"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EDouble"))); - new Equality(body, var__virtual_0_, var_decl); - // check(decl < 50) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern x_inv11_incNotOver100"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("decl");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Double decl = (Double) provider.getValue("decl"); - return evaluateExpression_2_1(decl); - } - }, null); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_exp = body.getOrCreateVariableByName("exp"); - PVariable var_incVal = body.getOrCreateVariableByName("incVal"); - PVariable var_decl = body.getOrCreateVariableByName("decl"); - new TypeConstraint(body, Tuples.flatTupleOf(var_exp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Expense"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_exp, parameter_exp) - )); - // Expense.income.income_amount(exp, incVal) - new TypeConstraint(body, Tuples.flatTupleOf(var_exp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Expense"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_exp, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Expense", "income"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "income_amount"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EDouble"))); - new Equality(body, var__virtual_1_, var_incVal); - // Expense.declared_amount(exp, decl) - new TypeConstraint(body, Tuples.flatTupleOf(var_exp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Expense"))); - PVariable var__virtual_2_ = body.getOrCreateVariableByName(".virtual{2}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_exp, var__virtual_2_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Expense", "declared_amount"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_2_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EDouble"))); - new Equality(body, var__virtual_2_, var_decl); - // check(decl > incVal/2) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern x_inv11_incNotOver100"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("decl", "incVal");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Double decl = (Double) provider.getValue("decl"); - Double incVal = (Double) provider.getValue("incVal"); - return evaluateExpression_3_1(decl, incVal); - } - }, null); - bodies.add(body); - } - return bodies; - } - } - - private static boolean evaluateExpression_1_1(final Double incVal) { - return (((incVal).doubleValue() / 2) <= 50); - } - - private static boolean evaluateExpression_2_1(final Double decl) { - return ((decl).doubleValue() < 50); - } - - private static boolean evaluateExpression_3_1(final Double decl, final Double incVal) { - return ((decl).doubleValue() > ((incVal).doubleValue() / 2)); - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv11_incOver100.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv11_incOver100.java deleted file mode 100644 index 65ae5dd6..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv11_incOver100.java +++ /dev/null @@ -1,629 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Expense; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.IExpressionEvaluator; -import org.eclipse.viatra.query.runtime.matchers.psystem.IValueProvider; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         pattern x_inv11_incOver100(exp : Expense) {
    - *             Expense.income.income_amount(exp, incVal);
    - *             check(incVal / 2 {@literal >} 50);
    - *         
    - *         } or {
    - *         	Expense.declared_amount(exp, decl);
    - *             check(decl != 50);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class X_inv11_incOver100 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.x_inv11_incOver100 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Expense fExp; - - private static List parameterNames = makeImmutableList("exp"); - - private Match(final Expense pExp) { - this.fExp = pExp; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "exp": return this.fExp; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fExp; - default: return null; - } - } - - public Expense getExp() { - return this.fExp; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("exp".equals(parameterName) ) { - this.fExp = (Expense) newValue; - return true; - } - return false; - } - - public void setExp(final Expense pExp) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fExp = pExp; - } - - @Override - public String patternName() { - return "queries.x_inv11_incOver100"; - } - - @Override - public List parameterNames() { - return X_inv11_incOver100.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fExp}; - } - - @Override - public X_inv11_incOver100.Match toImmutable() { - return isMutable() ? newMatch(fExp) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"exp\"=" + prettyPrintValue(fExp)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fExp); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof X_inv11_incOver100.Match)) { - X_inv11_incOver100.Match other = (X_inv11_incOver100.Match) obj; - return Objects.equals(fExp, other.fExp); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public X_inv11_incOver100 specification() { - return X_inv11_incOver100.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static X_inv11_incOver100.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static X_inv11_incOver100.Match newMutableMatch(final Expense pExp) { - return new Mutable(pExp); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return the (partial) match object. - * - */ - public static X_inv11_incOver100.Match newMatch(final Expense pExp) { - return new Immutable(pExp); - } - - private static final class Mutable extends X_inv11_incOver100.Match { - Mutable(final Expense pExp) { - super(pExp); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends X_inv11_incOver100.Match { - Immutable(final Expense pExp) { - super(pExp); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.x_inv11_incOver100 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * pattern x_inv11_incOver100(exp : Expense) {
    -   *     Expense.income.income_amount(exp, incVal);
    -   *     check(incVal / 2 {@literal >} 50);
    -   * 
    -   * } or {
    -   * 	Expense.declared_amount(exp, decl);
    -   *     check(decl != 50);
    -   * }
    -   * 
    - * - * @see Match - * @see X_inv11_incOver100 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static X_inv11_incOver100.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static X_inv11_incOver100.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_EXP = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(X_inv11_incOver100.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Expense pExp) { - return rawStreamAllMatches(new Object[]{pExp}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Expense pExp) { - return rawStreamAllMatches(new Object[]{pExp}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Expense pExp) { - return rawGetOneArbitraryMatch(new Object[]{pExp}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Expense pExp) { - return rawHasMatch(new Object[]{pExp}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Expense pExp) { - return rawCountMatches(new Object[]{pExp}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Expense pExp, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pExp}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pExp the fixed value of pattern parameter exp, or null if not bound. - * @return the (partial) match object. - * - */ - public X_inv11_incOver100.Match newMatch(final Expense pExp) { - return X_inv11_incOver100.Match.newMatch(pExp); - } - - /** - * Retrieve the set of values that occur in matches for exp. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfexp(final Object[] parameters) { - return rawStreamAllValues(POSITION_EXP, parameters).map(Expense.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for exp. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfexp() { - return rawStreamAllValuesOfexp(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for exp. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfexp() { - return rawStreamAllValuesOfexp(emptyArray()); - } - - @Override - protected X_inv11_incOver100.Match tupleToMatch(final Tuple t) { - try { - return X_inv11_incOver100.Match.newMatch((Expense) t.get(POSITION_EXP)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected X_inv11_incOver100.Match arrayToMatch(final Object[] match) { - try { - return X_inv11_incOver100.Match.newMatch((Expense) match[POSITION_EXP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected X_inv11_incOver100.Match arrayToMatchMutable(final Object[] match) { - try { - return X_inv11_incOver100.Match.newMutableMatch((Expense) match[POSITION_EXP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return X_inv11_incOver100.instance(); - } - } - - private X_inv11_incOver100() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static X_inv11_incOver100 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected X_inv11_incOver100.Matcher instantiate(final ViatraQueryEngine engine) { - return X_inv11_incOver100.Matcher.on(engine); - } - - @Override - public X_inv11_incOver100.Matcher instantiate() { - return X_inv11_incOver100.Matcher.create(); - } - - @Override - public X_inv11_incOver100.Match newEmptyMatch() { - return X_inv11_incOver100.Match.newEmptyMatch(); - } - - @Override - public X_inv11_incOver100.Match newMatch(final Object... parameters) { - return X_inv11_incOver100.Match.newMatch((Taxation.Expense) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link X_inv11_incOver100} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link X_inv11_incOver100#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final X_inv11_incOver100 INSTANCE = new X_inv11_incOver100(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final X_inv11_incOver100.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_exp = new PParameter("exp", "Taxation.Expense", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Expense")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_exp); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.x_inv11_incOver100"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("exp"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_exp = body.getOrCreateVariableByName("exp"); - PVariable var_incVal = body.getOrCreateVariableByName("incVal"); - new TypeConstraint(body, Tuples.flatTupleOf(var_exp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Expense"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_exp, parameter_exp) - )); - // Expense.income.income_amount(exp, incVal) - new TypeConstraint(body, Tuples.flatTupleOf(var_exp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Expense"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_exp, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Expense", "income"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Income"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Income", "income_amount"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EDouble"))); - new Equality(body, var__virtual_1_, var_incVal); - // check(incVal / 2 > 50) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern x_inv11_incOver100"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("incVal");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Double incVal = (Double) provider.getValue("incVal"); - return evaluateExpression_1_1(incVal); - } - }, null); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_exp = body.getOrCreateVariableByName("exp"); - PVariable var_decl = body.getOrCreateVariableByName("decl"); - new TypeConstraint(body, Tuples.flatTupleOf(var_exp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Expense"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_exp, parameter_exp) - )); - // Expense.declared_amount(exp, decl) - new TypeConstraint(body, Tuples.flatTupleOf(var_exp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Expense"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_exp, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Expense", "declared_amount"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EDouble"))); - new Equality(body, var__virtual_0_, var_decl); - // check(decl != 50) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern x_inv11_incOver100"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("decl");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Double decl = (Double) provider.getValue("decl"); - return evaluateExpression_2_1(decl); - } - }, null); - bodies.add(body); - } - return bodies; - } - } - - private static boolean evaluateExpression_1_1(final Double incVal) { - return (((incVal).doubleValue() / 2) > 50); - } - - private static boolean evaluateExpression_2_1(final Double decl) { - return ((decl).doubleValue() != 50); - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv12_notNonRes.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv12_notNonRes.java deleted file mode 100644 index 96aea5e8..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv12_notNonRes.java +++ /dev/null @@ -1,544 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Non_Resident_Tax_Payer; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         pattern x_inv12_notNonRes(tp : Non_Resident_Tax_Payer) {
    - *             Non_Resident_Tax_Payer(tp);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class X_inv12_notNonRes extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.x_inv12_notNonRes pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Non_Resident_Tax_Payer fTp; - - private static List parameterNames = makeImmutableList("tp"); - - private Match(final Non_Resident_Tax_Payer pTp) { - this.fTp = pTp; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "tp": return this.fTp; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fTp; - default: return null; - } - } - - public Non_Resident_Tax_Payer getTp() { - return this.fTp; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("tp".equals(parameterName) ) { - this.fTp = (Non_Resident_Tax_Payer) newValue; - return true; - } - return false; - } - - public void setTp(final Non_Resident_Tax_Payer pTp) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fTp = pTp; - } - - @Override - public String patternName() { - return "queries.x_inv12_notNonRes"; - } - - @Override - public List parameterNames() { - return X_inv12_notNonRes.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fTp}; - } - - @Override - public X_inv12_notNonRes.Match toImmutable() { - return isMutable() ? newMatch(fTp) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"tp\"=" + prettyPrintValue(fTp)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fTp); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof X_inv12_notNonRes.Match)) { - X_inv12_notNonRes.Match other = (X_inv12_notNonRes.Match) obj; - return Objects.equals(fTp, other.fTp); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public X_inv12_notNonRes specification() { - return X_inv12_notNonRes.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static X_inv12_notNonRes.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static X_inv12_notNonRes.Match newMutableMatch(final Non_Resident_Tax_Payer pTp) { - return new Mutable(pTp); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the (partial) match object. - * - */ - public static X_inv12_notNonRes.Match newMatch(final Non_Resident_Tax_Payer pTp) { - return new Immutable(pTp); - } - - private static final class Mutable extends X_inv12_notNonRes.Match { - Mutable(final Non_Resident_Tax_Payer pTp) { - super(pTp); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends X_inv12_notNonRes.Match { - Immutable(final Non_Resident_Tax_Payer pTp) { - super(pTp); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.x_inv12_notNonRes pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * pattern x_inv12_notNonRes(tp : Non_Resident_Tax_Payer) {
    -   *     Non_Resident_Tax_Payer(tp);
    -   * }
    -   * 
    - * - * @see Match - * @see X_inv12_notNonRes - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static X_inv12_notNonRes.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static X_inv12_notNonRes.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_TP = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(X_inv12_notNonRes.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Non_Resident_Tax_Payer pTp) { - return rawStreamAllMatches(new Object[]{pTp}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Non_Resident_Tax_Payer pTp) { - return rawStreamAllMatches(new Object[]{pTp}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Non_Resident_Tax_Payer pTp) { - return rawGetOneArbitraryMatch(new Object[]{pTp}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Non_Resident_Tax_Payer pTp) { - return rawHasMatch(new Object[]{pTp}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Non_Resident_Tax_Payer pTp) { - return rawCountMatches(new Object[]{pTp}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Non_Resident_Tax_Payer pTp, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pTp}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the (partial) match object. - * - */ - public X_inv12_notNonRes.Match newMatch(final Non_Resident_Tax_Payer pTp) { - return X_inv12_notNonRes.Match.newMatch(pTp); - } - - /** - * Retrieve the set of values that occur in matches for tp. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOftp(final Object[] parameters) { - return rawStreamAllValues(POSITION_TP, parameters).map(Non_Resident_Tax_Payer.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for tp. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOftp() { - return rawStreamAllValuesOftp(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for tp. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOftp() { - return rawStreamAllValuesOftp(emptyArray()); - } - - @Override - protected X_inv12_notNonRes.Match tupleToMatch(final Tuple t) { - try { - return X_inv12_notNonRes.Match.newMatch((Non_Resident_Tax_Payer) t.get(POSITION_TP)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected X_inv12_notNonRes.Match arrayToMatch(final Object[] match) { - try { - return X_inv12_notNonRes.Match.newMatch((Non_Resident_Tax_Payer) match[POSITION_TP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected X_inv12_notNonRes.Match arrayToMatchMutable(final Object[] match) { - try { - return X_inv12_notNonRes.Match.newMutableMatch((Non_Resident_Tax_Payer) match[POSITION_TP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return X_inv12_notNonRes.instance(); - } - } - - private X_inv12_notNonRes() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static X_inv12_notNonRes instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected X_inv12_notNonRes.Matcher instantiate(final ViatraQueryEngine engine) { - return X_inv12_notNonRes.Matcher.on(engine); - } - - @Override - public X_inv12_notNonRes.Matcher instantiate() { - return X_inv12_notNonRes.Matcher.create(); - } - - @Override - public X_inv12_notNonRes.Match newEmptyMatch() { - return X_inv12_notNonRes.Match.newEmptyMatch(); - } - - @Override - public X_inv12_notNonRes.Match newMatch(final Object... parameters) { - return X_inv12_notNonRes.Match.newMatch((Taxation.Non_Resident_Tax_Payer) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link X_inv12_notNonRes} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link X_inv12_notNonRes#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final X_inv12_notNonRes INSTANCE = new X_inv12_notNonRes(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final X_inv12_notNonRes.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_tp = new PParameter("tp", "Taxation.Non_Resident_Tax_Payer", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Non_Resident_Tax_Payer")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_tp); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.x_inv12_notNonRes"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("tp"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_tp = body.getOrCreateVariableByName("tp"); - new TypeConstraint(body, Tuples.flatTupleOf(var_tp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Non_Resident_Tax_Payer"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_tp, parameter_tp) - )); - // Non_Resident_Tax_Payer(tp) - new TypeConstraint(body, Tuples.flatTupleOf(var_tp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Non_Resident_Tax_Payer"))); - bodies.add(body); - } - return bodies; - } - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv12_notZZ.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv12_notZZ.java deleted file mode 100644 index f8e7da17..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv12_notZZ.java +++ /dev/null @@ -1,555 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Habitual_Address; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.ConstantValue; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         pattern x_inv12_notZZ(hab_add : Habitual_Address) {
    - *             Address.country(hab_add, ::ZZ);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class X_inv12_notZZ extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.x_inv12_notZZ pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Habitual_Address fHab_add; - - private static List parameterNames = makeImmutableList("hab_add"); - - private Match(final Habitual_Address pHab_add) { - this.fHab_add = pHab_add; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "hab_add": return this.fHab_add; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fHab_add; - default: return null; - } - } - - public Habitual_Address getHab_add() { - return this.fHab_add; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("hab_add".equals(parameterName) ) { - this.fHab_add = (Habitual_Address) newValue; - return true; - } - return false; - } - - public void setHab_add(final Habitual_Address pHab_add) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fHab_add = pHab_add; - } - - @Override - public String patternName() { - return "queries.x_inv12_notZZ"; - } - - @Override - public List parameterNames() { - return X_inv12_notZZ.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fHab_add}; - } - - @Override - public X_inv12_notZZ.Match toImmutable() { - return isMutable() ? newMatch(fHab_add) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"hab_add\"=" + prettyPrintValue(fHab_add)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fHab_add); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof X_inv12_notZZ.Match)) { - X_inv12_notZZ.Match other = (X_inv12_notZZ.Match) obj; - return Objects.equals(fHab_add, other.fHab_add); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public X_inv12_notZZ specification() { - return X_inv12_notZZ.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static X_inv12_notZZ.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pHab_add the fixed value of pattern parameter hab_add, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static X_inv12_notZZ.Match newMutableMatch(final Habitual_Address pHab_add) { - return new Mutable(pHab_add); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pHab_add the fixed value of pattern parameter hab_add, or null if not bound. - * @return the (partial) match object. - * - */ - public static X_inv12_notZZ.Match newMatch(final Habitual_Address pHab_add) { - return new Immutable(pHab_add); - } - - private static final class Mutable extends X_inv12_notZZ.Match { - Mutable(final Habitual_Address pHab_add) { - super(pHab_add); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends X_inv12_notZZ.Match { - Immutable(final Habitual_Address pHab_add) { - super(pHab_add); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.x_inv12_notZZ pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * pattern x_inv12_notZZ(hab_add : Habitual_Address) {
    -   *     Address.country(hab_add, ::ZZ);
    -   * }
    -   * 
    - * - * @see Match - * @see X_inv12_notZZ - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static X_inv12_notZZ.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static X_inv12_notZZ.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_HAB_ADD = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(X_inv12_notZZ.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pHab_add the fixed value of pattern parameter hab_add, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Habitual_Address pHab_add) { - return rawStreamAllMatches(new Object[]{pHab_add}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pHab_add the fixed value of pattern parameter hab_add, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Habitual_Address pHab_add) { - return rawStreamAllMatches(new Object[]{pHab_add}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pHab_add the fixed value of pattern parameter hab_add, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Habitual_Address pHab_add) { - return rawGetOneArbitraryMatch(new Object[]{pHab_add}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pHab_add the fixed value of pattern parameter hab_add, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Habitual_Address pHab_add) { - return rawHasMatch(new Object[]{pHab_add}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pHab_add the fixed value of pattern parameter hab_add, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Habitual_Address pHab_add) { - return rawCountMatches(new Object[]{pHab_add}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pHab_add the fixed value of pattern parameter hab_add, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Habitual_Address pHab_add, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pHab_add}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pHab_add the fixed value of pattern parameter hab_add, or null if not bound. - * @return the (partial) match object. - * - */ - public X_inv12_notZZ.Match newMatch(final Habitual_Address pHab_add) { - return X_inv12_notZZ.Match.newMatch(pHab_add); - } - - /** - * Retrieve the set of values that occur in matches for hab_add. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfhab_add(final Object[] parameters) { - return rawStreamAllValues(POSITION_HAB_ADD, parameters).map(Habitual_Address.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for hab_add. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfhab_add() { - return rawStreamAllValuesOfhab_add(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for hab_add. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfhab_add() { - return rawStreamAllValuesOfhab_add(emptyArray()); - } - - @Override - protected X_inv12_notZZ.Match tupleToMatch(final Tuple t) { - try { - return X_inv12_notZZ.Match.newMatch((Habitual_Address) t.get(POSITION_HAB_ADD)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected X_inv12_notZZ.Match arrayToMatch(final Object[] match) { - try { - return X_inv12_notZZ.Match.newMatch((Habitual_Address) match[POSITION_HAB_ADD]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected X_inv12_notZZ.Match arrayToMatchMutable(final Object[] match) { - try { - return X_inv12_notZZ.Match.newMutableMatch((Habitual_Address) match[POSITION_HAB_ADD]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return X_inv12_notZZ.instance(); - } - } - - private X_inv12_notZZ() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static X_inv12_notZZ instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected X_inv12_notZZ.Matcher instantiate(final ViatraQueryEngine engine) { - return X_inv12_notZZ.Matcher.on(engine); - } - - @Override - public X_inv12_notZZ.Matcher instantiate() { - return X_inv12_notZZ.Matcher.create(); - } - - @Override - public X_inv12_notZZ.Match newEmptyMatch() { - return X_inv12_notZZ.Match.newEmptyMatch(); - } - - @Override - public X_inv12_notZZ.Match newMatch(final Object... parameters) { - return X_inv12_notZZ.Match.newMatch((Taxation.Habitual_Address) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link X_inv12_notZZ} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link X_inv12_notZZ#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final X_inv12_notZZ INSTANCE = new X_inv12_notZZ(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final X_inv12_notZZ.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_hab_add = new PParameter("hab_add", "Taxation.Habitual_Address", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Habitual_Address")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_hab_add); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.x_inv12_notZZ"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("hab_add"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_hab_add = body.getOrCreateVariableByName("hab_add"); - new TypeConstraint(body, Tuples.flatTupleOf(var_hab_add), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Habitual_Address"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_hab_add, parameter_hab_add) - )); - // Address.country(hab_add, ::ZZ) - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new ConstantValue(body, var__virtual_0_, getEnumLiteral("http:///TaxCard.ecore", "Country", "ZZ").getInstance()); - new TypeConstraint(body, Tuples.flatTupleOf(var_hab_add), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Address"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_hab_add, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Address", "country"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http:///TaxCard.ecore", "Country"))); - new Equality(body, var__virtual_1_, var__virtual_0_); - bodies.add(body); - } - return bodies; - } - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv13.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv13.java deleted file mode 100644 index 42afdd70..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv13.java +++ /dev/null @@ -1,544 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Resident_Tax_Payer; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         pattern x_inv13(tp : Resident_Tax_Payer) {
    - *             Resident_Tax_Payer(tp);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class X_inv13 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.x_inv13 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Resident_Tax_Payer fTp; - - private static List parameterNames = makeImmutableList("tp"); - - private Match(final Resident_Tax_Payer pTp) { - this.fTp = pTp; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "tp": return this.fTp; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fTp; - default: return null; - } - } - - public Resident_Tax_Payer getTp() { - return this.fTp; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("tp".equals(parameterName) ) { - this.fTp = (Resident_Tax_Payer) newValue; - return true; - } - return false; - } - - public void setTp(final Resident_Tax_Payer pTp) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fTp = pTp; - } - - @Override - public String patternName() { - return "queries.x_inv13"; - } - - @Override - public List parameterNames() { - return X_inv13.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fTp}; - } - - @Override - public X_inv13.Match toImmutable() { - return isMutable() ? newMatch(fTp) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"tp\"=" + prettyPrintValue(fTp)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fTp); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof X_inv13.Match)) { - X_inv13.Match other = (X_inv13.Match) obj; - return Objects.equals(fTp, other.fTp); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public X_inv13 specification() { - return X_inv13.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static X_inv13.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static X_inv13.Match newMutableMatch(final Resident_Tax_Payer pTp) { - return new Mutable(pTp); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the (partial) match object. - * - */ - public static X_inv13.Match newMatch(final Resident_Tax_Payer pTp) { - return new Immutable(pTp); - } - - private static final class Mutable extends X_inv13.Match { - Mutable(final Resident_Tax_Payer pTp) { - super(pTp); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends X_inv13.Match { - Immutable(final Resident_Tax_Payer pTp) { - super(pTp); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.x_inv13 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * pattern x_inv13(tp : Resident_Tax_Payer) {
    -   *     Resident_Tax_Payer(tp);
    -   * }
    -   * 
    - * - * @see Match - * @see X_inv13 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static X_inv13.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static X_inv13.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_TP = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(X_inv13.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Resident_Tax_Payer pTp) { - return rawStreamAllMatches(new Object[]{pTp}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Resident_Tax_Payer pTp) { - return rawStreamAllMatches(new Object[]{pTp}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Resident_Tax_Payer pTp) { - return rawGetOneArbitraryMatch(new Object[]{pTp}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Resident_Tax_Payer pTp) { - return rawHasMatch(new Object[]{pTp}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Resident_Tax_Payer pTp) { - return rawCountMatches(new Object[]{pTp}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Resident_Tax_Payer pTp, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pTp}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pTp the fixed value of pattern parameter tp, or null if not bound. - * @return the (partial) match object. - * - */ - public X_inv13.Match newMatch(final Resident_Tax_Payer pTp) { - return X_inv13.Match.newMatch(pTp); - } - - /** - * Retrieve the set of values that occur in matches for tp. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOftp(final Object[] parameters) { - return rawStreamAllValues(POSITION_TP, parameters).map(Resident_Tax_Payer.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for tp. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOftp() { - return rawStreamAllValuesOftp(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for tp. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOftp() { - return rawStreamAllValuesOftp(emptyArray()); - } - - @Override - protected X_inv13.Match tupleToMatch(final Tuple t) { - try { - return X_inv13.Match.newMatch((Resident_Tax_Payer) t.get(POSITION_TP)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected X_inv13.Match arrayToMatch(final Object[] match) { - try { - return X_inv13.Match.newMatch((Resident_Tax_Payer) match[POSITION_TP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected X_inv13.Match arrayToMatchMutable(final Object[] match) { - try { - return X_inv13.Match.newMutableMatch((Resident_Tax_Payer) match[POSITION_TP]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return X_inv13.instance(); - } - } - - private X_inv13() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static X_inv13 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected X_inv13.Matcher instantiate(final ViatraQueryEngine engine) { - return X_inv13.Matcher.on(engine); - } - - @Override - public X_inv13.Matcher instantiate() { - return X_inv13.Matcher.create(); - } - - @Override - public X_inv13.Match newEmptyMatch() { - return X_inv13.Match.newEmptyMatch(); - } - - @Override - public X_inv13.Match newMatch(final Object... parameters) { - return X_inv13.Match.newMatch((Taxation.Resident_Tax_Payer) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link X_inv13} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link X_inv13#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final X_inv13 INSTANCE = new X_inv13(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final X_inv13.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_tp = new PParameter("tp", "Taxation.Resident_Tax_Payer", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Resident_Tax_Payer")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_tp); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.x_inv13"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("tp"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_tp = body.getOrCreateVariableByName("tp"); - new TypeConstraint(body, Tuples.flatTupleOf(var_tp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Resident_Tax_Payer"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_tp, parameter_tp) - )); - // Resident_Tax_Payer(tp) - new TypeConstraint(body, Tuples.flatTupleOf(var_tp), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Resident_Tax_Payer"))); - bodies.add(body); - } - return bodies; - } - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv15.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv15.java deleted file mode 100644 index d162542d..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv15.java +++ /dev/null @@ -1,637 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.External_Allowance; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         pattern x_inv15(ea : External_Allowance) {
    - *             External_Allowance.person(ea, child);
    - *             Household.children(h, child);//only one due to multiplicity
    - *             Household.parents.individual_A(h, iA);
    - *             Tax_Payer(iA);
    - *             External_Allowance.reciver(ea, iA);
    - *         } or {
    - *             External_Allowance.person(ea, child);
    - *             Household.children(h, child);//only one due to multiplicity
    - *             Household.parents.individual_B(h, iB);
    - *             Tax_Payer(iB);
    - *             External_Allowance.reciver(ea, iB);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class X_inv15 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.x_inv15 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private External_Allowance fEa; - - private static List parameterNames = makeImmutableList("ea"); - - private Match(final External_Allowance pEa) { - this.fEa = pEa; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "ea": return this.fEa; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fEa; - default: return null; - } - } - - public External_Allowance getEa() { - return this.fEa; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("ea".equals(parameterName) ) { - this.fEa = (External_Allowance) newValue; - return true; - } - return false; - } - - public void setEa(final External_Allowance pEa) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fEa = pEa; - } - - @Override - public String patternName() { - return "queries.x_inv15"; - } - - @Override - public List parameterNames() { - return X_inv15.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fEa}; - } - - @Override - public X_inv15.Match toImmutable() { - return isMutable() ? newMatch(fEa) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"ea\"=" + prettyPrintValue(fEa)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fEa); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof X_inv15.Match)) { - X_inv15.Match other = (X_inv15.Match) obj; - return Objects.equals(fEa, other.fEa); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public X_inv15 specification() { - return X_inv15.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static X_inv15.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pEa the fixed value of pattern parameter ea, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static X_inv15.Match newMutableMatch(final External_Allowance pEa) { - return new Mutable(pEa); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pEa the fixed value of pattern parameter ea, or null if not bound. - * @return the (partial) match object. - * - */ - public static X_inv15.Match newMatch(final External_Allowance pEa) { - return new Immutable(pEa); - } - - private static final class Mutable extends X_inv15.Match { - Mutable(final External_Allowance pEa) { - super(pEa); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends X_inv15.Match { - Immutable(final External_Allowance pEa) { - super(pEa); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.x_inv15 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * pattern x_inv15(ea : External_Allowance) {
    -   *     External_Allowance.person(ea, child);
    -   *     Household.children(h, child);//only one due to multiplicity
    -   *     Household.parents.individual_A(h, iA);
    -   *     Tax_Payer(iA);
    -   *     External_Allowance.reciver(ea, iA);
    -   * } or {
    -   *     External_Allowance.person(ea, child);
    -   *     Household.children(h, child);//only one due to multiplicity
    -   *     Household.parents.individual_B(h, iB);
    -   *     Tax_Payer(iB);
    -   *     External_Allowance.reciver(ea, iB);
    -   * }
    -   * 
    - * - * @see Match - * @see X_inv15 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static X_inv15.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static X_inv15.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_EA = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(X_inv15.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pEa the fixed value of pattern parameter ea, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final External_Allowance pEa) { - return rawStreamAllMatches(new Object[]{pEa}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pEa the fixed value of pattern parameter ea, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final External_Allowance pEa) { - return rawStreamAllMatches(new Object[]{pEa}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pEa the fixed value of pattern parameter ea, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final External_Allowance pEa) { - return rawGetOneArbitraryMatch(new Object[]{pEa}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pEa the fixed value of pattern parameter ea, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final External_Allowance pEa) { - return rawHasMatch(new Object[]{pEa}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pEa the fixed value of pattern parameter ea, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final External_Allowance pEa) { - return rawCountMatches(new Object[]{pEa}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pEa the fixed value of pattern parameter ea, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final External_Allowance pEa, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pEa}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pEa the fixed value of pattern parameter ea, or null if not bound. - * @return the (partial) match object. - * - */ - public X_inv15.Match newMatch(final External_Allowance pEa) { - return X_inv15.Match.newMatch(pEa); - } - - /** - * Retrieve the set of values that occur in matches for ea. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfea(final Object[] parameters) { - return rawStreamAllValues(POSITION_EA, parameters).map(External_Allowance.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for ea. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfea() { - return rawStreamAllValuesOfea(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for ea. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfea() { - return rawStreamAllValuesOfea(emptyArray()); - } - - @Override - protected X_inv15.Match tupleToMatch(final Tuple t) { - try { - return X_inv15.Match.newMatch((External_Allowance) t.get(POSITION_EA)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected X_inv15.Match arrayToMatch(final Object[] match) { - try { - return X_inv15.Match.newMatch((External_Allowance) match[POSITION_EA]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected X_inv15.Match arrayToMatchMutable(final Object[] match) { - try { - return X_inv15.Match.newMutableMatch((External_Allowance) match[POSITION_EA]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return X_inv15.instance(); - } - } - - private X_inv15() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static X_inv15 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected X_inv15.Matcher instantiate(final ViatraQueryEngine engine) { - return X_inv15.Matcher.on(engine); - } - - @Override - public X_inv15.Matcher instantiate() { - return X_inv15.Matcher.create(); - } - - @Override - public X_inv15.Match newEmptyMatch() { - return X_inv15.Match.newEmptyMatch(); - } - - @Override - public X_inv15.Match newMatch(final Object... parameters) { - return X_inv15.Match.newMatch((Taxation.External_Allowance) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link X_inv15} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link X_inv15#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final X_inv15 INSTANCE = new X_inv15(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final X_inv15.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_ea = new PParameter("ea", "Taxation.External_Allowance", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "External_Allowance")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_ea); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.x_inv15"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("ea"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_ea = body.getOrCreateVariableByName("ea"); - PVariable var_child = body.getOrCreateVariableByName("child"); - PVariable var_h = body.getOrCreateVariableByName("h"); - PVariable var_iA = body.getOrCreateVariableByName("iA"); - new TypeConstraint(body, Tuples.flatTupleOf(var_ea), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "External_Allowance"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_ea, parameter_ea) - )); - // External_Allowance.person(ea, child) - new TypeConstraint(body, Tuples.flatTupleOf(var_ea), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "External_Allowance"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_ea, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "External_Allowance", "person"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - new Equality(body, var__virtual_0_, var_child); - // Household.children(h, child) - new TypeConstraint(body, Tuples.flatTupleOf(var_h), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Household"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_h, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Household", "children"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - new Equality(body, var__virtual_1_, var_child); - // //only one due to multiplicity Household.parents.individual_A(h, iA) - new TypeConstraint(body, Tuples.flatTupleOf(var_h), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Household"))); - PVariable var__virtual_2_ = body.getOrCreateVariableByName(".virtual{2}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_h, var__virtual_2_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Household", "parents"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_2_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - PVariable var__virtual_3_ = body.getOrCreateVariableByName(".virtual{3}"); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_2_, var__virtual_3_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Legal_Union_Record", "individual_A"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_3_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - new Equality(body, var__virtual_3_, var_iA); - // Tax_Payer(iA) - new TypeConstraint(body, Tuples.flatTupleOf(var_iA), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Tax_Payer"))); - // External_Allowance.reciver(ea, iA) - new TypeConstraint(body, Tuples.flatTupleOf(var_ea), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "External_Allowance"))); - PVariable var__virtual_4_ = body.getOrCreateVariableByName(".virtual{4}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_ea, var__virtual_4_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "External_Allowance", "reciver"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_4_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - new Equality(body, var__virtual_4_, var_iA); - bodies.add(body); - } - { - PBody body = new PBody(this); - PVariable var_ea = body.getOrCreateVariableByName("ea"); - PVariable var_child = body.getOrCreateVariableByName("child"); - PVariable var_h = body.getOrCreateVariableByName("h"); - PVariable var_iB = body.getOrCreateVariableByName("iB"); - new TypeConstraint(body, Tuples.flatTupleOf(var_ea), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "External_Allowance"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_ea, parameter_ea) - )); - // External_Allowance.person(ea, child) - new TypeConstraint(body, Tuples.flatTupleOf(var_ea), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "External_Allowance"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_ea, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "External_Allowance", "person"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - new Equality(body, var__virtual_0_, var_child); - // Household.children(h, child) - new TypeConstraint(body, Tuples.flatTupleOf(var_h), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Household"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_h, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Household", "children"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - new Equality(body, var__virtual_1_, var_child); - // //only one due to multiplicity Household.parents.individual_B(h, iB) - new TypeConstraint(body, Tuples.flatTupleOf(var_h), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Household"))); - PVariable var__virtual_2_ = body.getOrCreateVariableByName(".virtual{2}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_h, var__virtual_2_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Household", "parents"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_2_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - PVariable var__virtual_3_ = body.getOrCreateVariableByName(".virtual{3}"); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_2_, var__virtual_3_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Legal_Union_Record", "individual_B"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_3_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - new Equality(body, var__virtual_3_, var_iB); - // Tax_Payer(iB) - new TypeConstraint(body, Tuples.flatTupleOf(var_iB), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Tax_Payer"))); - // External_Allowance.reciver(ea, iB) - new TypeConstraint(body, Tuples.flatTupleOf(var_ea), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "External_Allowance"))); - PVariable var__virtual_4_ = body.getOrCreateVariableByName(".virtual{4}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_ea, var__virtual_4_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "External_Allowance", "reciver"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_4_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - new Equality(body, var__virtual_4_, var_iB); - bodies.add(body); - } - return bodies; - } - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv47.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv47.java deleted file mode 100644 index c602f8d4..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv47.java +++ /dev/null @@ -1,569 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Legal_Union_Record; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.ConstantValue; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         pattern x_inv47(lur : Legal_Union_Record) {
    - *             Legal_Union_Record.separation_cause(lur, ::NONE);
    - *             Legal_Union_Record.end_year(lur, -1);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class X_inv47 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.x_inv47 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Legal_Union_Record fLur; - - private static List parameterNames = makeImmutableList("lur"); - - private Match(final Legal_Union_Record pLur) { - this.fLur = pLur; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "lur": return this.fLur; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fLur; - default: return null; - } - } - - public Legal_Union_Record getLur() { - return this.fLur; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("lur".equals(parameterName) ) { - this.fLur = (Legal_Union_Record) newValue; - return true; - } - return false; - } - - public void setLur(final Legal_Union_Record pLur) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fLur = pLur; - } - - @Override - public String patternName() { - return "queries.x_inv47"; - } - - @Override - public List parameterNames() { - return X_inv47.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fLur}; - } - - @Override - public X_inv47.Match toImmutable() { - return isMutable() ? newMatch(fLur) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"lur\"=" + prettyPrintValue(fLur)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fLur); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof X_inv47.Match)) { - X_inv47.Match other = (X_inv47.Match) obj; - return Objects.equals(fLur, other.fLur); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public X_inv47 specification() { - return X_inv47.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static X_inv47.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static X_inv47.Match newMutableMatch(final Legal_Union_Record pLur) { - return new Mutable(pLur); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the (partial) match object. - * - */ - public static X_inv47.Match newMatch(final Legal_Union_Record pLur) { - return new Immutable(pLur); - } - - private static final class Mutable extends X_inv47.Match { - Mutable(final Legal_Union_Record pLur) { - super(pLur); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends X_inv47.Match { - Immutable(final Legal_Union_Record pLur) { - super(pLur); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.x_inv47 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * pattern x_inv47(lur : Legal_Union_Record) {
    -   *     Legal_Union_Record.separation_cause(lur, ::NONE);
    -   *     Legal_Union_Record.end_year(lur, -1);
    -   * }
    -   * 
    - * - * @see Match - * @see X_inv47 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static X_inv47.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static X_inv47.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_LUR = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(X_inv47.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Legal_Union_Record pLur) { - return rawStreamAllMatches(new Object[]{pLur}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Legal_Union_Record pLur) { - return rawStreamAllMatches(new Object[]{pLur}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Legal_Union_Record pLur) { - return rawGetOneArbitraryMatch(new Object[]{pLur}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Legal_Union_Record pLur) { - return rawHasMatch(new Object[]{pLur}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Legal_Union_Record pLur) { - return rawCountMatches(new Object[]{pLur}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Legal_Union_Record pLur, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pLur}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the (partial) match object. - * - */ - public X_inv47.Match newMatch(final Legal_Union_Record pLur) { - return X_inv47.Match.newMatch(pLur); - } - - /** - * Retrieve the set of values that occur in matches for lur. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOflur(final Object[] parameters) { - return rawStreamAllValues(POSITION_LUR, parameters).map(Legal_Union_Record.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for lur. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOflur() { - return rawStreamAllValuesOflur(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for lur. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOflur() { - return rawStreamAllValuesOflur(emptyArray()); - } - - @Override - protected X_inv47.Match tupleToMatch(final Tuple t) { - try { - return X_inv47.Match.newMatch((Legal_Union_Record) t.get(POSITION_LUR)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected X_inv47.Match arrayToMatch(final Object[] match) { - try { - return X_inv47.Match.newMatch((Legal_Union_Record) match[POSITION_LUR]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected X_inv47.Match arrayToMatchMutable(final Object[] match) { - try { - return X_inv47.Match.newMutableMatch((Legal_Union_Record) match[POSITION_LUR]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return X_inv47.instance(); - } - } - - private X_inv47() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static X_inv47 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected X_inv47.Matcher instantiate(final ViatraQueryEngine engine) { - return X_inv47.Matcher.on(engine); - } - - @Override - public X_inv47.Matcher instantiate() { - return X_inv47.Matcher.create(); - } - - @Override - public X_inv47.Match newEmptyMatch() { - return X_inv47.Match.newEmptyMatch(); - } - - @Override - public X_inv47.Match newMatch(final Object... parameters) { - return X_inv47.Match.newMatch((Taxation.Legal_Union_Record) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link X_inv47} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link X_inv47#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final X_inv47 INSTANCE = new X_inv47(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final X_inv47.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_lur = new PParameter("lur", "Taxation.Legal_Union_Record", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Legal_Union_Record")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_lur); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.x_inv47"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("lur"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_lur = body.getOrCreateVariableByName("lur"); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_lur, parameter_lur) - )); - // Legal_Union_Record.separation_cause(lur, ::NONE) - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new ConstantValue(body, var__virtual_0_, getEnumLiteral("http:///TaxCard.ecore", "Separation_Causes", "NONE").getInstance()); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Legal_Union_Record", "separation_cause"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http:///TaxCard.ecore", "Separation_Causes"))); - new Equality(body, var__virtual_1_, var__virtual_0_); - // Legal_Union_Record.end_year(lur, -1) - PVariable var__virtual_2_ = body.getOrCreateVariableByName(".virtual{2}"); - new ConstantValue(body, var__virtual_2_, -1); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - PVariable var__virtual_3_ = body.getOrCreateVariableByName(".virtual{3}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur, var__virtual_3_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Legal_Union_Record", "end_year"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_3_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EInt"))); - new Equality(body, var__virtual_3_, var__virtual_2_); - bodies.add(body); - } - return bodies; - } - } - - private static int evaluateExpression_1_1() { - return 1; - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv48_3.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv48_3.java deleted file mode 100644 index 913e9c7e..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv48_3.java +++ /dev/null @@ -1,555 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Physical_Person; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.ConstantValue; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         pattern x_inv48_3(p : Physical_Person) {
    - *             Physical_Person.disability_type(p, ::NONE);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class X_inv48_3 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.x_inv48_3 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Physical_Person fP; - - private static List parameterNames = makeImmutableList("p"); - - private Match(final Physical_Person pP) { - this.fP = pP; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "p": return this.fP; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fP; - default: return null; - } - } - - public Physical_Person getP() { - return this.fP; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("p".equals(parameterName) ) { - this.fP = (Physical_Person) newValue; - return true; - } - return false; - } - - public void setP(final Physical_Person pP) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fP = pP; - } - - @Override - public String patternName() { - return "queries.x_inv48_3"; - } - - @Override - public List parameterNames() { - return X_inv48_3.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fP}; - } - - @Override - public X_inv48_3.Match toImmutable() { - return isMutable() ? newMatch(fP) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"p\"=" + prettyPrintValue(fP)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fP); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof X_inv48_3.Match)) { - X_inv48_3.Match other = (X_inv48_3.Match) obj; - return Objects.equals(fP, other.fP); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public X_inv48_3 specification() { - return X_inv48_3.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static X_inv48_3.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static X_inv48_3.Match newMutableMatch(final Physical_Person pP) { - return new Mutable(pP); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the (partial) match object. - * - */ - public static X_inv48_3.Match newMatch(final Physical_Person pP) { - return new Immutable(pP); - } - - private static final class Mutable extends X_inv48_3.Match { - Mutable(final Physical_Person pP) { - super(pP); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends X_inv48_3.Match { - Immutable(final Physical_Person pP) { - super(pP); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.x_inv48_3 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * pattern x_inv48_3(p : Physical_Person) {
    -   *     Physical_Person.disability_type(p, ::NONE);
    -   * }
    -   * 
    - * - * @see Match - * @see X_inv48_3 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static X_inv48_3.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static X_inv48_3.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_P = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(X_inv48_3.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Physical_Person pP) { - return rawStreamAllMatches(new Object[]{pP}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Physical_Person pP) { - return rawStreamAllMatches(new Object[]{pP}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Physical_Person pP) { - return rawGetOneArbitraryMatch(new Object[]{pP}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Physical_Person pP) { - return rawHasMatch(new Object[]{pP}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Physical_Person pP) { - return rawCountMatches(new Object[]{pP}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Physical_Person pP, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pP}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the (partial) match object. - * - */ - public X_inv48_3.Match newMatch(final Physical_Person pP) { - return X_inv48_3.Match.newMatch(pP); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfp(final Object[] parameters) { - return rawStreamAllValues(POSITION_P, parameters).map(Physical_Person.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfp() { - return rawStreamAllValuesOfp(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfp() { - return rawStreamAllValuesOfp(emptyArray()); - } - - @Override - protected X_inv48_3.Match tupleToMatch(final Tuple t) { - try { - return X_inv48_3.Match.newMatch((Physical_Person) t.get(POSITION_P)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected X_inv48_3.Match arrayToMatch(final Object[] match) { - try { - return X_inv48_3.Match.newMatch((Physical_Person) match[POSITION_P]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected X_inv48_3.Match arrayToMatchMutable(final Object[] match) { - try { - return X_inv48_3.Match.newMutableMatch((Physical_Person) match[POSITION_P]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return X_inv48_3.instance(); - } - } - - private X_inv48_3() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static X_inv48_3 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected X_inv48_3.Matcher instantiate(final ViatraQueryEngine engine) { - return X_inv48_3.Matcher.on(engine); - } - - @Override - public X_inv48_3.Matcher instantiate() { - return X_inv48_3.Matcher.create(); - } - - @Override - public X_inv48_3.Match newEmptyMatch() { - return X_inv48_3.Match.newEmptyMatch(); - } - - @Override - public X_inv48_3.Match newMatch(final Object... parameters) { - return X_inv48_3.Match.newMatch((Taxation.Physical_Person) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link X_inv48_3} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link X_inv48_3#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final X_inv48_3 INSTANCE = new X_inv48_3(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final X_inv48_3.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_p = new PParameter("p", "Taxation.Physical_Person", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Physical_Person")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_p); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.x_inv48_3"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("p"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_p = body.getOrCreateVariableByName("p"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_p, parameter_p) - )); - // Physical_Person.disability_type(p, ::NONE) - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new ConstantValue(body, var__virtual_0_, getEnumLiteral("http:///TaxCard.ecore", "Disability_Types", "NONE").getInstance()); - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Physical_Person", "disability_type"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http:///TaxCard.ecore", "Disability_Types"))); - new Equality(body, var__virtual_1_, var__virtual_0_); - bodies.add(body); - } - return bodies; - } - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv48_Dis.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv48_Dis.java deleted file mode 100644 index 08de1250..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv48_Dis.java +++ /dev/null @@ -1,610 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Physical_Person; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.IExpressionEvaluator; -import org.eclipse.viatra.query.runtime.matchers.psystem.IValueProvider; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExpressionEvaluation; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.NegativePatternCall; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; -import queries.X_inv48_3; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         pattern x_inv48_Dis(p : Physical_Person) {
    - *         	neg find x_inv48_3(p);
    - *         	Physical_Person.disability_percentage(p, disPer);
    - *             check(disPer {@literal >} 0.0);
    - *             check(disPer {@literal <}= 1.0);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class X_inv48_Dis extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.x_inv48_Dis pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Physical_Person fP; - - private static List parameterNames = makeImmutableList("p"); - - private Match(final Physical_Person pP) { - this.fP = pP; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "p": return this.fP; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fP; - default: return null; - } - } - - public Physical_Person getP() { - return this.fP; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("p".equals(parameterName) ) { - this.fP = (Physical_Person) newValue; - return true; - } - return false; - } - - public void setP(final Physical_Person pP) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fP = pP; - } - - @Override - public String patternName() { - return "queries.x_inv48_Dis"; - } - - @Override - public List parameterNames() { - return X_inv48_Dis.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fP}; - } - - @Override - public X_inv48_Dis.Match toImmutable() { - return isMutable() ? newMatch(fP) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"p\"=" + prettyPrintValue(fP)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fP); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof X_inv48_Dis.Match)) { - X_inv48_Dis.Match other = (X_inv48_Dis.Match) obj; - return Objects.equals(fP, other.fP); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public X_inv48_Dis specification() { - return X_inv48_Dis.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static X_inv48_Dis.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static X_inv48_Dis.Match newMutableMatch(final Physical_Person pP) { - return new Mutable(pP); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the (partial) match object. - * - */ - public static X_inv48_Dis.Match newMatch(final Physical_Person pP) { - return new Immutable(pP); - } - - private static final class Mutable extends X_inv48_Dis.Match { - Mutable(final Physical_Person pP) { - super(pP); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends X_inv48_Dis.Match { - Immutable(final Physical_Person pP) { - super(pP); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.x_inv48_Dis pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * pattern x_inv48_Dis(p : Physical_Person) {
    -   * 	neg find x_inv48_3(p);
    -   * 	Physical_Person.disability_percentage(p, disPer);
    -   *     check(disPer {@literal >} 0.0);
    -   *     check(disPer {@literal <}= 1.0);
    -   * }
    -   * 
    - * - * @see Match - * @see X_inv48_Dis - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static X_inv48_Dis.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static X_inv48_Dis.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_P = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(X_inv48_Dis.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Physical_Person pP) { - return rawStreamAllMatches(new Object[]{pP}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Physical_Person pP) { - return rawStreamAllMatches(new Object[]{pP}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Physical_Person pP) { - return rawGetOneArbitraryMatch(new Object[]{pP}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Physical_Person pP) { - return rawHasMatch(new Object[]{pP}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Physical_Person pP) { - return rawCountMatches(new Object[]{pP}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Physical_Person pP, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pP}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the (partial) match object. - * - */ - public X_inv48_Dis.Match newMatch(final Physical_Person pP) { - return X_inv48_Dis.Match.newMatch(pP); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfp(final Object[] parameters) { - return rawStreamAllValues(POSITION_P, parameters).map(Physical_Person.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfp() { - return rawStreamAllValuesOfp(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfp() { - return rawStreamAllValuesOfp(emptyArray()); - } - - @Override - protected X_inv48_Dis.Match tupleToMatch(final Tuple t) { - try { - return X_inv48_Dis.Match.newMatch((Physical_Person) t.get(POSITION_P)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected X_inv48_Dis.Match arrayToMatch(final Object[] match) { - try { - return X_inv48_Dis.Match.newMatch((Physical_Person) match[POSITION_P]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected X_inv48_Dis.Match arrayToMatchMutable(final Object[] match) { - try { - return X_inv48_Dis.Match.newMutableMatch((Physical_Person) match[POSITION_P]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return X_inv48_Dis.instance(); - } - } - - private X_inv48_Dis() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static X_inv48_Dis instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected X_inv48_Dis.Matcher instantiate(final ViatraQueryEngine engine) { - return X_inv48_Dis.Matcher.on(engine); - } - - @Override - public X_inv48_Dis.Matcher instantiate() { - return X_inv48_Dis.Matcher.create(); - } - - @Override - public X_inv48_Dis.Match newEmptyMatch() { - return X_inv48_Dis.Match.newEmptyMatch(); - } - - @Override - public X_inv48_Dis.Match newMatch(final Object... parameters) { - return X_inv48_Dis.Match.newMatch((Taxation.Physical_Person) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link X_inv48_Dis} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link X_inv48_Dis#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final X_inv48_Dis INSTANCE = new X_inv48_Dis(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final X_inv48_Dis.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_p = new PParameter("p", "Taxation.Physical_Person", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Physical_Person")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_p); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.x_inv48_Dis"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("p"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_p = body.getOrCreateVariableByName("p"); - PVariable var_disPer = body.getOrCreateVariableByName("disPer"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_p, parameter_p) - )); - // neg find x_inv48_3(p) - new NegativePatternCall(body, Tuples.flatTupleOf(var_p), X_inv48_3.instance().getInternalQueryRepresentation()); - // Physical_Person.disability_percentage(p, disPer) - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Physical_Person", "disability_percentage"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EDouble"))); - new Equality(body, var__virtual_0_, var_disPer); - // check(disPer > 0.0) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern x_inv48_Dis"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("disPer");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Double disPer = (Double) provider.getValue("disPer"); - return evaluateExpression_1_1(disPer); - } - }, null); - // check(disPer <= 1.0) - new ExpressionEvaluation(body, new IExpressionEvaluator() { - - @Override - public String getShortDescription() { - return "Expression evaluation from pattern x_inv48_Dis"; - } - - @Override - public Iterable getInputParameterNames() { - return Arrays.asList("disPer");} - - @Override - public Object evaluateExpression(IValueProvider provider) throws Exception { - Double disPer = (Double) provider.getValue("disPer"); - return evaluateExpression_1_2(disPer); - } - }, null); - bodies.add(body); - } - return bodies; - } - } - - private static boolean evaluateExpression_1_1(final Double disPer) { - return ((disPer).doubleValue() > 0.0); - } - - private static boolean evaluateExpression_1_2(final Double disPer) { - return ((disPer).doubleValue() <= 1.0); - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv48_notDis.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv48_notDis.java deleted file mode 100644 index 21dcc068..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv48_notDis.java +++ /dev/null @@ -1,569 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Physical_Person; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EDataType; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.ConstantValue; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         pattern x_inv48_notDis(p : Physical_Person) {
    - *             Physical_Person.disability_type(p, ::NONE);
    - *             Physical_Person.disability_percentage(p, 0.0);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class X_inv48_notDis extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.x_inv48_notDis pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Physical_Person fP; - - private static List parameterNames = makeImmutableList("p"); - - private Match(final Physical_Person pP) { - this.fP = pP; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "p": return this.fP; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fP; - default: return null; - } - } - - public Physical_Person getP() { - return this.fP; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("p".equals(parameterName) ) { - this.fP = (Physical_Person) newValue; - return true; - } - return false; - } - - public void setP(final Physical_Person pP) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fP = pP; - } - - @Override - public String patternName() { - return "queries.x_inv48_notDis"; - } - - @Override - public List parameterNames() { - return X_inv48_notDis.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fP}; - } - - @Override - public X_inv48_notDis.Match toImmutable() { - return isMutable() ? newMatch(fP) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"p\"=" + prettyPrintValue(fP)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fP); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof X_inv48_notDis.Match)) { - X_inv48_notDis.Match other = (X_inv48_notDis.Match) obj; - return Objects.equals(fP, other.fP); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public X_inv48_notDis specification() { - return X_inv48_notDis.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static X_inv48_notDis.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static X_inv48_notDis.Match newMutableMatch(final Physical_Person pP) { - return new Mutable(pP); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the (partial) match object. - * - */ - public static X_inv48_notDis.Match newMatch(final Physical_Person pP) { - return new Immutable(pP); - } - - private static final class Mutable extends X_inv48_notDis.Match { - Mutable(final Physical_Person pP) { - super(pP); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends X_inv48_notDis.Match { - Immutable(final Physical_Person pP) { - super(pP); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.x_inv48_notDis pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * pattern x_inv48_notDis(p : Physical_Person) {
    -   *     Physical_Person.disability_type(p, ::NONE);
    -   *     Physical_Person.disability_percentage(p, 0.0);
    -   * }
    -   * 
    - * - * @see Match - * @see X_inv48_notDis - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static X_inv48_notDis.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static X_inv48_notDis.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_P = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(X_inv48_notDis.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Physical_Person pP) { - return rawStreamAllMatches(new Object[]{pP}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Physical_Person pP) { - return rawStreamAllMatches(new Object[]{pP}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Physical_Person pP) { - return rawGetOneArbitraryMatch(new Object[]{pP}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Physical_Person pP) { - return rawHasMatch(new Object[]{pP}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Physical_Person pP) { - return rawCountMatches(new Object[]{pP}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Physical_Person pP, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pP}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pP the fixed value of pattern parameter p, or null if not bound. - * @return the (partial) match object. - * - */ - public X_inv48_notDis.Match newMatch(final Physical_Person pP) { - return X_inv48_notDis.Match.newMatch(pP); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfp(final Object[] parameters) { - return rawStreamAllValues(POSITION_P, parameters).map(Physical_Person.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfp() { - return rawStreamAllValuesOfp(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for p. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfp() { - return rawStreamAllValuesOfp(emptyArray()); - } - - @Override - protected X_inv48_notDis.Match tupleToMatch(final Tuple t) { - try { - return X_inv48_notDis.Match.newMatch((Physical_Person) t.get(POSITION_P)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected X_inv48_notDis.Match arrayToMatch(final Object[] match) { - try { - return X_inv48_notDis.Match.newMatch((Physical_Person) match[POSITION_P]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected X_inv48_notDis.Match arrayToMatchMutable(final Object[] match) { - try { - return X_inv48_notDis.Match.newMutableMatch((Physical_Person) match[POSITION_P]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return X_inv48_notDis.instance(); - } - } - - private X_inv48_notDis() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static X_inv48_notDis instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected X_inv48_notDis.Matcher instantiate(final ViatraQueryEngine engine) { - return X_inv48_notDis.Matcher.on(engine); - } - - @Override - public X_inv48_notDis.Matcher instantiate() { - return X_inv48_notDis.Matcher.create(); - } - - @Override - public X_inv48_notDis.Match newEmptyMatch() { - return X_inv48_notDis.Match.newEmptyMatch(); - } - - @Override - public X_inv48_notDis.Match newMatch(final Object... parameters) { - return X_inv48_notDis.Match.newMatch((Taxation.Physical_Person) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link X_inv48_notDis} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link X_inv48_notDis#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final X_inv48_notDis INSTANCE = new X_inv48_notDis(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final X_inv48_notDis.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_p = new PParameter("p", "Taxation.Physical_Person", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Physical_Person")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_p); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.x_inv48_notDis"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("p"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_p = body.getOrCreateVariableByName("p"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_p, parameter_p) - )); - // Physical_Person.disability_type(p, ::NONE) - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new ConstantValue(body, var__virtual_0_, getEnumLiteral("http:///TaxCard.ecore", "Disability_Types", "NONE").getInstance()); - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Physical_Person", "disability_type"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http:///TaxCard.ecore", "Disability_Types"))); - new Equality(body, var__virtual_1_, var__virtual_0_); - // Physical_Person.disability_percentage(p, 0.0) - PVariable var__virtual_2_ = body.getOrCreateVariableByName(".virtual{2}"); - new ConstantValue(body, var__virtual_2_, 0.0); - new TypeConstraint(body, Tuples.flatTupleOf(var_p), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - PVariable var__virtual_3_ = body.getOrCreateVariableByName(".virtual{3}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_p, var__virtual_3_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Physical_Person", "disability_percentage"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_3_), new EDataTypeInSlotsKey((EDataType)getClassifierLiteral("http://www.eclipse.org/emf/2002/Ecore", "EDouble"))); - new Equality(body, var__virtual_3_, var__virtual_2_); - bodies.add(body); - } - return bodies; - } - } - - private static double evaluateExpression_1_1() { - return 0.0; - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv49_1.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv49_1.java deleted file mode 100644 index 67915440..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv49_1.java +++ /dev/null @@ -1,579 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Legal_Union_Record; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Inequality; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.NegativePatternCall; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; -import queries.X_inv49_2; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         pattern x_inv49_1(lur : Legal_Union_Record) {
    - *         	Legal_Union_Record.individual_A(lur, iA);
    - *         	Legal_Union_Record.individual_B(lur, iB);
    - *             Tax_Payer(iA);
    - *             Physical_Person(iB);
    - *             neg find x_inv49_2(iB);
    - *             iA != iB;
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class X_inv49_1 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.x_inv49_1 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Legal_Union_Record fLur; - - private static List parameterNames = makeImmutableList("lur"); - - private Match(final Legal_Union_Record pLur) { - this.fLur = pLur; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "lur": return this.fLur; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fLur; - default: return null; - } - } - - public Legal_Union_Record getLur() { - return this.fLur; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("lur".equals(parameterName) ) { - this.fLur = (Legal_Union_Record) newValue; - return true; - } - return false; - } - - public void setLur(final Legal_Union_Record pLur) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fLur = pLur; - } - - @Override - public String patternName() { - return "queries.x_inv49_1"; - } - - @Override - public List parameterNames() { - return X_inv49_1.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fLur}; - } - - @Override - public X_inv49_1.Match toImmutable() { - return isMutable() ? newMatch(fLur) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"lur\"=" + prettyPrintValue(fLur)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fLur); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof X_inv49_1.Match)) { - X_inv49_1.Match other = (X_inv49_1.Match) obj; - return Objects.equals(fLur, other.fLur); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public X_inv49_1 specification() { - return X_inv49_1.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static X_inv49_1.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static X_inv49_1.Match newMutableMatch(final Legal_Union_Record pLur) { - return new Mutable(pLur); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the (partial) match object. - * - */ - public static X_inv49_1.Match newMatch(final Legal_Union_Record pLur) { - return new Immutable(pLur); - } - - private static final class Mutable extends X_inv49_1.Match { - Mutable(final Legal_Union_Record pLur) { - super(pLur); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends X_inv49_1.Match { - Immutable(final Legal_Union_Record pLur) { - super(pLur); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.x_inv49_1 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * pattern x_inv49_1(lur : Legal_Union_Record) {
    -   * 	Legal_Union_Record.individual_A(lur, iA);
    -   * 	Legal_Union_Record.individual_B(lur, iB);
    -   *     Tax_Payer(iA);
    -   *     Physical_Person(iB);
    -   *     neg find x_inv49_2(iB);
    -   *     iA != iB;
    -   * }
    -   * 
    - * - * @see Match - * @see X_inv49_1 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static X_inv49_1.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static X_inv49_1.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_LUR = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(X_inv49_1.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Legal_Union_Record pLur) { - return rawStreamAllMatches(new Object[]{pLur}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Legal_Union_Record pLur) { - return rawStreamAllMatches(new Object[]{pLur}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Legal_Union_Record pLur) { - return rawGetOneArbitraryMatch(new Object[]{pLur}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Legal_Union_Record pLur) { - return rawHasMatch(new Object[]{pLur}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Legal_Union_Record pLur) { - return rawCountMatches(new Object[]{pLur}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Legal_Union_Record pLur, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pLur}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pLur the fixed value of pattern parameter lur, or null if not bound. - * @return the (partial) match object. - * - */ - public X_inv49_1.Match newMatch(final Legal_Union_Record pLur) { - return X_inv49_1.Match.newMatch(pLur); - } - - /** - * Retrieve the set of values that occur in matches for lur. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOflur(final Object[] parameters) { - return rawStreamAllValues(POSITION_LUR, parameters).map(Legal_Union_Record.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for lur. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOflur() { - return rawStreamAllValuesOflur(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for lur. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOflur() { - return rawStreamAllValuesOflur(emptyArray()); - } - - @Override - protected X_inv49_1.Match tupleToMatch(final Tuple t) { - try { - return X_inv49_1.Match.newMatch((Legal_Union_Record) t.get(POSITION_LUR)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected X_inv49_1.Match arrayToMatch(final Object[] match) { - try { - return X_inv49_1.Match.newMatch((Legal_Union_Record) match[POSITION_LUR]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected X_inv49_1.Match arrayToMatchMutable(final Object[] match) { - try { - return X_inv49_1.Match.newMutableMatch((Legal_Union_Record) match[POSITION_LUR]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return X_inv49_1.instance(); - } - } - - private X_inv49_1() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static X_inv49_1 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected X_inv49_1.Matcher instantiate(final ViatraQueryEngine engine) { - return X_inv49_1.Matcher.on(engine); - } - - @Override - public X_inv49_1.Matcher instantiate() { - return X_inv49_1.Matcher.create(); - } - - @Override - public X_inv49_1.Match newEmptyMatch() { - return X_inv49_1.Match.newEmptyMatch(); - } - - @Override - public X_inv49_1.Match newMatch(final Object... parameters) { - return X_inv49_1.Match.newMatch((Taxation.Legal_Union_Record) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link X_inv49_1} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link X_inv49_1#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final X_inv49_1 INSTANCE = new X_inv49_1(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final X_inv49_1.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_lur = new PParameter("lur", "Taxation.Legal_Union_Record", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Legal_Union_Record")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_lur); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.x_inv49_1"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("lur"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_lur = body.getOrCreateVariableByName("lur"); - PVariable var_iA = body.getOrCreateVariableByName("iA"); - PVariable var_iB = body.getOrCreateVariableByName("iB"); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_lur, parameter_lur) - )); - // Legal_Union_Record.individual_A(lur, iA) - new TypeConstraint(body, Tuples.flatTupleOf(var_lur), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - PVariable var__virtual_0_ = body.getOrCreateVariableByName(".virtual{0}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur, var__virtual_0_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Legal_Union_Record", "individual_A"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_0_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - new Equality(body, var__virtual_0_, var_iA); - // Legal_Union_Record.individual_B(lur, iB) - new TypeConstraint(body, Tuples.flatTupleOf(var_lur), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Legal_Union_Record"))); - PVariable var__virtual_1_ = body.getOrCreateVariableByName(".virtual{1}"); - new TypeConstraint(body, Tuples.flatTupleOf(var_lur, var__virtual_1_), new EStructuralFeatureInstancesKey(getFeatureLiteral("http:///TaxCard.ecore", "Legal_Union_Record", "individual_B"))); - new TypeConstraint(body, Tuples.flatTupleOf(var__virtual_1_), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - new Equality(body, var__virtual_1_, var_iB); - // Tax_Payer(iA) - new TypeConstraint(body, Tuples.flatTupleOf(var_iA), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Tax_Payer"))); - // Physical_Person(iB) - new TypeConstraint(body, Tuples.flatTupleOf(var_iB), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Physical_Person"))); - // neg find x_inv49_2(iB) - new NegativePatternCall(body, Tuples.flatTupleOf(var_iB), X_inv49_2.instance().getInternalQueryRepresentation()); - // iA != iB - new Inequality(body, var_iA, var_iB); - bodies.add(body); - } - return bodies; - } - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv49_2.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv49_2.java deleted file mode 100644 index 66decdb4..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src-gen/queries/X_inv49_2.java +++ /dev/null @@ -1,544 +0,0 @@ -/** - * Generated from platform:/resource/case.study.pledge.run/src/queries/case_study_A.vql - */ -package queries; - -import Taxation.Dependent; -import java.util.Arrays; -import java.util.Collection; -import java.util.LinkedHashSet; -import java.util.List; -import java.util.Objects; -import java.util.Optional; -import java.util.Set; -import java.util.function.Consumer; -import java.util.stream.Collectors; -import java.util.stream.Stream; -import org.apache.log4j.Logger; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.viatra.query.runtime.api.IPatternMatch; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.api.ViatraQueryEngine; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFPQuery; -import org.eclipse.viatra.query.runtime.api.impl.BaseGeneratedEMFQuerySpecification; -import org.eclipse.viatra.query.runtime.api.impl.BaseMatcher; -import org.eclipse.viatra.query.runtime.api.impl.BasePatternMatch; -import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey; -import org.eclipse.viatra.query.runtime.matchers.backend.QueryEvaluationHint; -import org.eclipse.viatra.query.runtime.matchers.psystem.PBody; -import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameterDirection; -import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PVisibility; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuple; -import org.eclipse.viatra.query.runtime.matchers.tuple.Tuples; -import org.eclipse.viatra.query.runtime.util.ViatraQueryLoggingUtil; - -/** - * A pattern-specific query specification that can instantiate Matcher in a type-safe way. - * - *

    Original source: - *

    - *         pattern x_inv49_2(iB: Dependent) {
    - *             Dependent(iB);
    - *         }
    - * 
    - * - * @see Matcher - * @see Match - * - */ -@SuppressWarnings("all") -public final class X_inv49_2 extends BaseGeneratedEMFQuerySpecification { - /** - * Pattern-specific match representation of the queries.x_inv49_2 pattern, - * to be used in conjunction with {@link Matcher}. - * - *

    Class fields correspond to parameters of the pattern. Fields with value null are considered unassigned. - * Each instance is a (possibly partial) substitution of pattern parameters, - * usable to represent a match of the pattern in the result of a query, - * or to specify the bound (fixed) input parameters when issuing a query. - * - * @see Matcher - * - */ - public static abstract class Match extends BasePatternMatch { - private Dependent fIB; - - private static List parameterNames = makeImmutableList("iB"); - - private Match(final Dependent pIB) { - this.fIB = pIB; - } - - @Override - public Object get(final String parameterName) { - switch(parameterName) { - case "iB": return this.fIB; - default: return null; - } - } - - @Override - public Object get(final int index) { - switch(index) { - case 0: return this.fIB; - default: return null; - } - } - - public Dependent getIB() { - return this.fIB; - } - - @Override - public boolean set(final String parameterName, final Object newValue) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - if ("iB".equals(parameterName) ) { - this.fIB = (Dependent) newValue; - return true; - } - return false; - } - - public void setIB(final Dependent pIB) { - if (!isMutable()) throw new java.lang.UnsupportedOperationException(); - this.fIB = pIB; - } - - @Override - public String patternName() { - return "queries.x_inv49_2"; - } - - @Override - public List parameterNames() { - return X_inv49_2.Match.parameterNames; - } - - @Override - public Object[] toArray() { - return new Object[]{fIB}; - } - - @Override - public X_inv49_2.Match toImmutable() { - return isMutable() ? newMatch(fIB) : this; - } - - @Override - public String prettyPrint() { - StringBuilder result = new StringBuilder(); - result.append("\"iB\"=" + prettyPrintValue(fIB)); - return result.toString(); - } - - @Override - public int hashCode() { - return Objects.hash(fIB); - } - - @Override - public boolean equals(final Object obj) { - if (this == obj) - return true; - if (obj == null) { - return false; - } - if ((obj instanceof X_inv49_2.Match)) { - X_inv49_2.Match other = (X_inv49_2.Match) obj; - return Objects.equals(fIB, other.fIB); - } else { - // this should be infrequent - if (!(obj instanceof IPatternMatch)) { - return false; - } - IPatternMatch otherSig = (IPatternMatch) obj; - return Objects.equals(specification(), otherSig.specification()) && Arrays.deepEquals(toArray(), otherSig.toArray()); - } - } - - @Override - public X_inv49_2 specification() { - return X_inv49_2.instance(); - } - - /** - * Returns an empty, mutable match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @return the empty match. - * - */ - public static X_inv49_2.Match newEmptyMatch() { - return new Mutable(null); - } - - /** - * Returns a mutable (partial) match. - * Fields of the mutable match can be filled to create a partial match, usable as matcher input. - * - * @param pIB the fixed value of pattern parameter iB, or null if not bound. - * @return the new, mutable (partial) match object. - * - */ - public static X_inv49_2.Match newMutableMatch(final Dependent pIB) { - return new Mutable(pIB); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pIB the fixed value of pattern parameter iB, or null if not bound. - * @return the (partial) match object. - * - */ - public static X_inv49_2.Match newMatch(final Dependent pIB) { - return new Immutable(pIB); - } - - private static final class Mutable extends X_inv49_2.Match { - Mutable(final Dependent pIB) { - super(pIB); - } - - @Override - public boolean isMutable() { - return true; - } - } - - private static final class Immutable extends X_inv49_2.Match { - Immutable(final Dependent pIB) { - super(pIB); - } - - @Override - public boolean isMutable() { - return false; - } - } - } - - /** - * Generated pattern matcher API of the queries.x_inv49_2 pattern, - * providing pattern-specific query methods. - * - *

    Use the pattern matcher on a given model via {@link #on(ViatraQueryEngine)}, - * e.g. in conjunction with {@link ViatraQueryEngine#on(QueryScope)}. - * - *

    Matches of the pattern will be represented as {@link Match}. - * - *

    Original source: - *

    -   * pattern x_inv49_2(iB: Dependent) {
    -   *     Dependent(iB);
    -   * }
    -   * 
    - * - * @see Match - * @see X_inv49_2 - * - */ - public static class Matcher extends BaseMatcher { - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - public static X_inv49_2.Matcher on(final ViatraQueryEngine engine) { - // check if matcher already exists - Matcher matcher = engine.getExistingMatcher(querySpecification()); - if (matcher == null) { - matcher = (Matcher)engine.getMatcher(querySpecification()); - } - return matcher; - } - - /** - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * @return an initialized matcher - * @noreference This method is for internal matcher initialization by the framework, do not call it manually. - * - */ - public static X_inv49_2.Matcher create() { - return new Matcher(); - } - - private static final int POSITION_IB = 0; - - private static final Logger LOGGER = ViatraQueryLoggingUtil.getLogger(X_inv49_2.Matcher.class); - - /** - * Initializes the pattern matcher within an existing VIATRA Query engine. - * If the pattern matcher is already constructed in the engine, only a light-weight reference is returned. - * - * @param engine the existing VIATRA Query engine in which this matcher will be created. - * @throws ViatraQueryRuntimeException if an error occurs during pattern matcher creation - * - */ - private Matcher() { - super(querySpecification()); - } - - /** - * Returns the set of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pIB the fixed value of pattern parameter iB, or null if not bound. - * @return matches represented as a Match object. - * - */ - public Collection getAllMatches(final Dependent pIB) { - return rawStreamAllMatches(new Object[]{pIB}).collect(Collectors.toSet()); - } - - /** - * Returns a stream of all matches of the pattern that conform to the given fixed values of some parameters. - *

    - * NOTE: It is important not to modify the source model while the stream is being processed. - * If the match set of the pattern changes during processing, the contents of the stream is undefined. - * In such cases, either rely on {@link #getAllMatches()} or collect the results of the stream in end-user code. - * @param pIB the fixed value of pattern parameter iB, or null if not bound. - * @return a stream of matches represented as a Match object. - * - */ - public Stream streamAllMatches(final Dependent pIB) { - return rawStreamAllMatches(new Object[]{pIB}); - } - - /** - * Returns an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pIB the fixed value of pattern parameter iB, or null if not bound. - * @return a match represented as a Match object, or null if no match is found. - * - */ - public Optional getOneArbitraryMatch(final Dependent pIB) { - return rawGetOneArbitraryMatch(new Object[]{pIB}); - } - - /** - * Indicates whether the given combination of specified pattern parameters constitute a valid pattern match, - * under any possible substitution of the unspecified parameters (if any). - * @param pIB the fixed value of pattern parameter iB, or null if not bound. - * @return true if the input is a valid (partial) match of the pattern. - * - */ - public boolean hasMatch(final Dependent pIB) { - return rawHasMatch(new Object[]{pIB}); - } - - /** - * Returns the number of all matches of the pattern that conform to the given fixed values of some parameters. - * @param pIB the fixed value of pattern parameter iB, or null if not bound. - * @return the number of pattern matches found. - * - */ - public int countMatches(final Dependent pIB) { - return rawCountMatches(new Object[]{pIB}); - } - - /** - * Executes the given processor on an arbitrarily chosen match of the pattern that conforms to the given fixed values of some parameters. - * Neither determinism nor randomness of selection is guaranteed. - * @param pIB the fixed value of pattern parameter iB, or null if not bound. - * @param processor the action that will process the selected match. - * @return true if the pattern has at least one match with the given parameter values, false if the processor was not invoked - * - */ - public boolean forOneArbitraryMatch(final Dependent pIB, final Consumer processor) { - return rawForOneArbitraryMatch(new Object[]{pIB}, processor); - } - - /** - * Returns a new (partial) match. - * This can be used e.g. to call the matcher with a partial match. - *

    The returned match will be immutable. Use {@link #newEmptyMatch()} to obtain a mutable match object. - * @param pIB the fixed value of pattern parameter iB, or null if not bound. - * @return the (partial) match object. - * - */ - public X_inv49_2.Match newMatch(final Dependent pIB) { - return X_inv49_2.Match.newMatch(pIB); - } - - /** - * Retrieve the set of values that occur in matches for iB. - * @return the Set of all values or empty set if there are no matches - * - */ - protected Stream rawStreamAllValuesOfiB(final Object[] parameters) { - return rawStreamAllValues(POSITION_IB, parameters).map(Dependent.class::cast); - } - - /** - * Retrieve the set of values that occur in matches for iB. - * @return the Set of all values or empty set if there are no matches - * - */ - public Set getAllValuesOfiB() { - return rawStreamAllValuesOfiB(emptyArray()).collect(Collectors.toSet()); - } - - /** - * Retrieve the set of values that occur in matches for iB. - * @return the Set of all values or empty set if there are no matches - * - */ - public Stream streamAllValuesOfiB() { - return rawStreamAllValuesOfiB(emptyArray()); - } - - @Override - protected X_inv49_2.Match tupleToMatch(final Tuple t) { - try { - return X_inv49_2.Match.newMatch((Dependent) t.get(POSITION_IB)); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in tuple not properly typed!",e); - return null; - } - } - - @Override - protected X_inv49_2.Match arrayToMatch(final Object[] match) { - try { - return X_inv49_2.Match.newMatch((Dependent) match[POSITION_IB]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - @Override - protected X_inv49_2.Match arrayToMatchMutable(final Object[] match) { - try { - return X_inv49_2.Match.newMutableMatch((Dependent) match[POSITION_IB]); - } catch(ClassCastException e) { - LOGGER.error("Element(s) in array not properly typed!",e); - return null; - } - } - - /** - * @return the singleton instance of the query specification of this pattern - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static IQuerySpecification querySpecification() { - return X_inv49_2.instance(); - } - } - - private X_inv49_2() { - super(GeneratedPQuery.INSTANCE); - } - - /** - * @return the singleton instance of the query specification - * @throws ViatraQueryRuntimeException if the pattern definition could not be loaded - * - */ - public static X_inv49_2 instance() { - try{ - return LazyHolder.INSTANCE; - } catch (ExceptionInInitializerError err) { - throw processInitializerError(err); - } - } - - @Override - protected X_inv49_2.Matcher instantiate(final ViatraQueryEngine engine) { - return X_inv49_2.Matcher.on(engine); - } - - @Override - public X_inv49_2.Matcher instantiate() { - return X_inv49_2.Matcher.create(); - } - - @Override - public X_inv49_2.Match newEmptyMatch() { - return X_inv49_2.Match.newEmptyMatch(); - } - - @Override - public X_inv49_2.Match newMatch(final Object... parameters) { - return X_inv49_2.Match.newMatch((Taxation.Dependent) parameters[0]); - } - - /** - * Inner class allowing the singleton instance of {@link X_inv49_2} to be created - * not at the class load time of the outer class, - * but rather at the first call to {@link X_inv49_2#instance()}. - * - *

    This workaround is required e.g. to support recursion. - * - */ - private static class LazyHolder { - private static final X_inv49_2 INSTANCE = new X_inv49_2(); - - /** - * Statically initializes the query specification after the field {@link #INSTANCE} is assigned. - * This initialization order is required to support indirect recursion. - * - *

    The static initializer is defined using a helper field to work around limitations of the code generator. - * - */ - private static final Object STATIC_INITIALIZER = ensureInitialized(); - - public static Object ensureInitialized() { - INSTANCE.ensureInitializedInternal(); - return null; - } - } - - private static class GeneratedPQuery extends BaseGeneratedEMFPQuery { - private static final X_inv49_2.GeneratedPQuery INSTANCE = new GeneratedPQuery(); - - private final PParameter parameter_iB = new PParameter("iB", "Taxation.Dependent", new EClassTransitiveInstancesKey((EClass)getClassifierLiteralSafe("http:///TaxCard.ecore", "Dependent")), PParameterDirection.INOUT); - - private final List parameters = Arrays.asList(parameter_iB); - - private GeneratedPQuery() { - super(PVisibility.PUBLIC); - } - - @Override - public String getFullyQualifiedName() { - return "queries.x_inv49_2"; - } - - @Override - public List getParameterNames() { - return Arrays.asList("iB"); - } - - @Override - public List getParameters() { - return parameters; - } - - @Override - public Set doGetContainedBodies() { - setEvaluationHints(new QueryEvaluationHint(null, QueryEvaluationHint.BackendRequirement.UNSPECIFIED)); - Set bodies = new LinkedHashSet<>(); - { - PBody body = new PBody(this); - PVariable var_iB = body.getOrCreateVariableByName("iB"); - new TypeConstraint(body, Tuples.flatTupleOf(var_iB), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - body.setSymbolicParameters(Arrays.asList( - new ExportedParameter(body, var_iB, parameter_iB) - )); - // Dependent(iB) - new TypeConstraint(body, Tuples.flatTupleOf(var_iB), new EClassTransitiveInstancesKey((EClass)getClassifierLiteral("http:///TaxCard.ecore", "Dependent"))); - bodies.add(body); - } - return bodies; - } - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src/queries/NewOCLFileX.ocl b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src/queries/NewOCLFileX.ocl deleted file mode 100644 index 66ae728e..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src/queries/NewOCLFileX.ocl +++ /dev/null @@ -1,45 +0,0 @@ -import 'file:/Users/Aren Babikian/git/VIATRA-Attributes/case.study.a.model/model/Taxation.ecore' - -package Taxation - ---context Income inv inv8: ---if(not self.income_type.oclIsTypeOf(Employment_Income)) then ---self.details->forAll(d| d.distance = 0) ---else ---self.details->forAll(d| d.distance >= 0.0 and d.distance <= 100) ---endif --- ---context Legal_Union_Record inv inv490: ---self.individual_A.oclIsKindOf(Tax_Payer) --- ---context Legal_Union_Record inv inv491: ---self.individual_B->forAll(i | i.oclIsKindOf(Physical_Person) ) --- ---context Legal_Union_Record inv inv492: ---self.individual_B->forAll(i | not i.oclIsTypeOf(Dependent) ) --- ---context Legal_Union_Record inv inv493: ---self.individual_A <> self.individual_B --- ---context Tax_Payer inv inv13: --- self.addresses->exists( hab_add:Address | hab_add.oclIsTypeOf(Habitual_Address) = true and hab_add.country=Country::ZZ) ---implies --- self.oclIsTypeOf(Resident_Tax_Payer) - - context Income inv inv7: -let val:Real =self.details->asOrderedSet()->first().distance in -self.details->forAll(d: Income_Detail|d.distance = val) - ---context External_Allowance inv inv15: ---let child:Dependent = self.person in ---let h:Household = Household.allInstances()->select(children->includes(child))->asOrderedSet()->first() in ---let t1:Set(Physical_Person) = Set{h.parents.individual_A}->union(h.parents.individual_B)->select(oclIsKindOf(Tax_Payer)) in ---if(t1->size()=1) then ---self.reciver = t1->asOrderedSet()->first() ---else ---self.reciver = t1->asOrderedSet()->at(2) or self.reciver = t1->asOrderedSet()->at(1) ---endif - - - -endpackage \ No newline at end of file diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src/queries/case_study_A.vql b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src/queries/case_study_A.vql deleted file mode 100644 index 5d46bf42..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src/queries/case_study_A.vql +++ /dev/null @@ -1,334 +0,0 @@ -package queries - -import "http:///TaxCard.ecore" - -//AttributeRemoved -> DF - -//inv1-External_Allowance.amount is a derived feature (TODOcheck) -//inv2-Tax_Card.income.taxPayer.taxesDue is a derived feature (TODOcheck) - -//inv3-multiplicity adjusted -@Constraint(message = "inv03", severity = "error", key = {dep}) -pattern inv03(dep : Dependent) { - find x_inv03_eligAll(dep); - neg find x_inv03_hasAll(dep); -} or { - Dependent.birth_year(dep, by); - check(2018-by > 21); - Dependent.continued_studies(dep, false); - Dependent.allowances(dep, _); -} -pattern x_inv03_eligAll(dep : Dependent) { - Dependent.birth_year(dep, by); - check(2018-by <= 21); -} or { - Dependent.continued_studies(dep, true); -} -pattern x_inv03_hasAll(dep : Dependent) { - Dependent.allowances(dep, _); -} - -//inv5 - oclIsTypeOf - handled here -@Constraint(message = "inv05", severity = "error", key = {inc}) -pattern inv05(inc : Income) { - //income_type: None - neg find x_inv08_noType(inc); - Income.details.worked_days(inc, wd); - check(wd != 0); -} or { - //income_type: Not Employment_Income - Income.income_type(inc, type); - neg find x_inv08_notEI(type); - Income.details.worked_days(inc, wd); - check(wd != 0); -} or { - //income_type: Employment Income - Income.income_type(inc, type); - Employment_Income(type); - find x_inv05_inRange(inc); -} -pattern x_inv05_inRange(inc : Income) { - Income.details.worked_days(inc, wd); - check(wd < 1); -} or { - Income.details.worked_days(inc, wd); - check(wd > 25); -} - -//inv6-Does not make sens, but directly from OCL -//first part of or from definition of getAge() -@Constraint(message = "inv06", severity = "error", key = {tp}) -pattern inv06(tp : Tax_Payer) { - Tax_Payer.dependents(tp, _); - Tax_Payer.birth_year(tp, TPBy); - check(2018 - TPBy > 2018-16); -} or { - Tax_Payer.birth_year(tp, TPBy); - Tax_Payer.dependents(tp, dep); - Dependent.birth_year(dep, DepBy); - check(2018-DepBy <= 2018-TPBy-16); -} - -//inv7-OrderedSet -@Constraint(message = "inv07", severity = "error", key = {inc}) -pattern inv07(inc : Income) { - Income.details.distance(inc, d1); - Income.details.distance(inc, d2); - check(d1 != d2);//compare values -} - -//user_complete_details-AttributeRemoved - -//inv8 - oclIsTypeOf - handled here -@Constraint(message = "inv08", severity = "error", key = {inc}) -pattern inv08(inc : Income) { - //income_type: None - neg find x_inv08_noType(inc); - Income.details.distance(inc, dist); - check(dist != 0); -} or { - //income_type: Not Employment_Income - Income.income_type(inc, type); - neg find x_inv08_notEI(type); - Income.details.distance(inc, dist); - check(dist != 0); -} or { - //income_type: Employment Income - Income.income_type(inc, type); - Employment_Income(type); - find x_inv08_inRange(inc); -} -pattern x_inv08_notEI(type : Employment_Income) { - Employment_Income(type); -} -pattern x_inv08_noType(inc : Income) { - Income.income_type(inc, _); -} -pattern x_inv08_inRange(inc : Income) { - Income.details.distance(inc, dist); - check(dist < 0); -} or { - Income.details.distance(inc, dist); - check(dist > 100); -} -//inv9-DerivedFeature - -//inv10-Ordered Sets -@Constraint(message = "inv10", severity = "error", key = {inc}) -pattern inv10(inc : Income) { - Income.details.amount(inc, a1); - Income.details.amount(inc, a2); - check(a1 != a2);//compare values -} - -//inv11-attributes-handled by multiplicity -@Constraint(message = "inv11", severity = "error", key = {exp}) -pattern inv11(exp : Expense) { - find x_inv11_incOver100(exp); - find x_inv11_incNotOver100(exp); -} -pattern x_inv11_incOver100(exp : Expense) { - Expense.income.income_amount(exp, incVal); - check(incVal / 2 > 50); - -} or { - Expense.declared_amount(exp, decl); - check(decl != 50); -} -pattern x_inv11_incNotOver100(exp : Expense) { - Expense.income.income_amount(exp, incVal); - check(incVal / 2 <= 50); -} or { - Expense.declared_amount(exp, decl); - check(decl < 50); -} or { - Expense.income.income_amount(exp, incVal); - Expense.declared_amount(exp, decl); - check(decl > incVal/2); -} - -//inv12 -//exists - handled logically -@Constraint(message = "inv12", severity = "error", key = {tp}) -pattern inv12(tp : Tax_Payer) { - Tax_Payer.addresses(tp, hab_add); - Habitual_Address(hab_add); - neg find x_inv12_notZZ(hab_add); - Tax_Payer.incomes(tp, inc); - Local_Income(inc); - neg find x_inv12_notNonRes(tp); -} -pattern x_inv12_notNonRes(tp : Non_Resident_Tax_Payer) { - Non_Resident_Tax_Payer(tp); -} -pattern x_inv12_notZZ(hab_add : Habitual_Address) { - Address.country(hab_add, ::ZZ); -} - -//inv13 - Added new containment rel Phys_Pers->Address -//exists - handled logically -@Constraint(message = "inv13", severity = "error", key = {tp}) -pattern inv13(tp : Tax_Payer) { - Tax_Payer.addresses(tp, hab_add); - Habitual_Address(hab_add); - Address.country(hab_add, ::ZZ); - neg find x_inv13(tp); -} -pattern x_inv13(tp : Resident_Tax_Payer) { - Resident_Tax_Payer(tp); -} - -//inv14-MultiplicityChanged - -//inv15-Ordered Sets in assignment if block -//ERROR if no household object -@Constraint(message = "inv15", severity = "error", key = {ea}) -pattern inv15(ea : External_Allowance) { - neg find x_inv15(ea); -} -pattern x_inv15(ea : External_Allowance) { - External_Allowance.person(ea, child); - Household.children(h, child);//only one due to multiplicity - Household.parents.individual_A(h, iA); - Tax_Payer(iA); - External_Allowance.reciver(ea, iA); -} or { - External_Allowance.person(ea, child); - Household.children(h, child);//only one due to multiplicity - Household.parents.individual_B(h, iB); - Tax_Payer(iB); - External_Allowance.reciver(ea, iB); -} - -//inv16-Tax_Card.tax_card_type is a derived feature - -//inv17-attribute-handled by multiplicity -@Constraint(message = "inv17", severity = "error", key = {lur}) -pattern inv17(lur : Legal_Union_Record) { - Legal_Union_Record.start_year(lur, sy); - check(sy < 1950); -} or { - Legal_Union_Record.start_year(lur, sy); - check(sy > 2018); -} - -//inv18-MultiplicityChecked -//inv19-MultiplicityChecked - -//inv20-Useless constraint since both edges are containment (TODOCheck) -//OclIsUndefined-Handled by multiplicity -@Constraint(message = "inv20", severity = "error", key = {lur}) -pattern inv20(lur : Legal_Union_Record) { - Legal_Union_Record.individual_A(lur, iA); - Legal_Union_Record.individual_B(lur, iB); - iA == iB; -} -//inv21-MultiplicityChecked -//inv22-MultiplicityChecked -//inv23-MultiplicityChecked -//inv24-MultiplicityChecked -//inv25-MultiplicityChecked -//inv26-MultiplicityChanged -//inv27-dupOfInv24 -//inv28-dubOfInv23 -//inv29-MultiplicityChanged -//inv30-AttributeRemoved -//inv31-AttributeRemoved -//inv32-AttributeRemoved - -//inv33-attribute-handled by multiplicity -@Constraint(message = "inv33", severity = "error", key = {p}) -pattern inv33(p : Physical_Person) { - Physical_Person.birth_year(p, by); - check(2018-by < 0); -} or { - Physical_Person.birth_year(p, by); - check(2018-by > 100); -} - -//inv34-attribute-handled by multiplicity -@Constraint(message = "inv34", severity = "error", key = {p}) -pattern inv34(p : Physical_Person) { - Physical_Person.birth_month(p, birthMonth); - check(birthMonth < 1); -} or { - Physical_Person.birth_month(p, birthMonth); - check(birthMonth > 12); -} - -//inv35-attribute-handled by multiplicity -@Constraint(message = "inv35", severity = "error", key = {p}) -pattern inv35(p : Physical_Person) { - Physical_Person.birth_day(p, birthDay); - check(birthDay < 1); -} or { - Physical_Person.birth_day(p, birthDay); - check(birthDay > 28); -} - -//inv36-AttributeRemoved -//inv37-AttributeRemoved -//inv38-AttributeRemoved -//inv39-AttributeRemoved -//inv40-AttributeRemoved -//inv41-AttributeRemoved -//inv42-AttributeRemoved -//inv43-AttributeRemoved -//inv44-AttributeRemoved -//inv45-AttributeRemoved -//inv46-AttributeRemoved - -//inv47-attributes-handled by multiplicity -@Constraint(message = "inv47", severity = "error", key = {lur}) -pattern inv47(lur : Legal_Union_Record) { - Legal_Union_Record.end_year(lur, endY); - Legal_Union_Record.start_year(lur, startY); - neg find x_inv47(lur); - check(startY >= endY); -} -pattern x_inv47(lur : Legal_Union_Record) { - Legal_Union_Record.separation_cause(lur, ::NONE); - Legal_Union_Record.end_year(lur, -1); -} - -//inv48-attributes-handled by multiplicity -@Constraint(message = "inv48", severity = "error", key = {p}) -pattern inv48(p : Physical_Person) { - neg find x_inv48_notDis(p); - neg find x_inv48_Dis(p); -} -pattern x_inv48_notDis(p : Physical_Person) { - Physical_Person.disability_type(p, ::NONE); - Physical_Person.disability_percentage(p, 0.0); -} -pattern x_inv48_Dis(p : Physical_Person) { - neg find x_inv48_3(p); - Physical_Person.disability_percentage(p, disPer); - check(disPer > 0.0); - check(disPer <= 1.0); -} -pattern x_inv48_3(p : Physical_Person) { - Physical_Person.disability_type(p, ::NONE); -} - -//inv49-OclKindOf-handled by multiplicity -@Constraint(message = "inv49", severity = "error", key = {lur}) -pattern inv49(lur : Legal_Union_Record) { - neg find x_inv49_1(lur); -} -pattern x_inv49_1(lur : Legal_Union_Record) { - Legal_Union_Record.individual_A(lur, iA); - Legal_Union_Record.individual_B(lur, iB); - Tax_Payer(iA); - Physical_Person(iB); - neg find x_inv49_2(iB); - iA != iB; -} -pattern x_inv49_2(iB: Dependent) { - Dependent(iB); -} - -//inv50-MultiplicityChecked -//inv51-MultiplicityChecked -//inv52-MultiplicityChecked -//inv53-MultiplicityChecked \ No newline at end of file diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src/run/RunGenerator.xtend b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src/run/RunGenerator.xtend deleted file mode 100644 index 8bd70919..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/src/run/RunGenerator.xtend +++ /dev/null @@ -1,151 +0,0 @@ -package run - -import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic -import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2LogicConfiguration -import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic_Trace -import hu.bme.mit.inf.dslreasoner.ecore2logic.EcoreMetamodelDescriptor -import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.Type -import hu.bme.mit.inf.dslreasoner.logic.model.logicresult.LogicResult -import hu.bme.mit.inf.dslreasoner.logic.model.logicresult.impl.ModelResultImpl -import hu.bme.mit.inf.dslreasoner.logic2ecore.Logic2Ecore -import hu.bme.mit.inf.dslreasoner.viatra2logic.Viatra2Logic -import hu.bme.mit.inf.dslreasoner.viatra2logic.Viatra2LogicConfiguration -import hu.bme.mit.inf.dslreasoner.viatra2logic.ViatraQuerySetDescriptor -import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretation2logic.InstanceModel2Logic -import hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.ViatraReasoner -import hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.ViatraReasonerConfiguration -import hu.bme.mit.inf.dslreasoner.workspace.FileSystemWorkspace -import hu.bme.mit.inf.dslreasoner.workspace.ReasonerWorkspace -import java.io.PrintWriter -import java.text.SimpleDateFormat -import java.util.Date -import java.util.HashMap -import java.util.List -import java.util.Map -import org.eclipse.emf.ecore.EAttribute -import org.eclipse.emf.ecore.EClass -import org.eclipse.emf.ecore.EEnum -import org.eclipse.emf.ecore.EEnumLiteral -import org.eclipse.emf.ecore.EObject -import org.eclipse.emf.ecore.EPackage -import org.eclipse.emf.ecore.EReference -import org.eclipse.emf.ecore.resource.Resource -import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl -import org.eclipse.viatra.query.runtime.api.IQueryGroup -import Taxation.TaxationPackage - -class GenerateScenarios { - def static void main(String[] args) { - val Ecore2Logic ecore2Logic = new Ecore2Logic -// val Logic2Ecore logic2Ecore = new Logic2Ecore(ecore2Logic) -// val Viatra2Logic viatra2Logic = new Viatra2Logic(ecore2Logic) -// val InstanceModel2Logic instanceModel2Logic = new InstanceModel2Logic - // Workspace setup - val Date date = new Date(System.currentTimeMillis) - val SimpleDateFormat format = new SimpleDateFormat("dd-HHmm"); - val formattedDate = format.format(date) - - val workspace = new FileSystemWorkspace('''output/''' + formattedDate + '''/''', "") - workspace.initAndClear - - // Logicproblem writing setup - val reg = Resource.Factory.Registry.INSTANCE - val map = reg.extensionToFactoryMap - map.put("logicproblem", new XMIResourceFactoryImpl) - - println("Input and output workspaces are created") - - print(TaxationPackage.eINSTANCE.getEClassifiers.filter(EClass).toList.get(0)) - - val metamodel = loadMetamodel(TaxationPackage.eINSTANCE) -// val partialModel = loadPartialModel(inputs, "yakindu/Yakindu.xmi") -// val queries = loadQueries(metamodel, Patterns.instance) - println("DSL loaded") - - val SIZE = 10 - var REPS = 1 - - val RUNTIME = 300 - - val modelGenerationProblem = ecore2Logic.transformMetamodel(metamodel, new Ecore2LogicConfiguration()) -// var modelExtensionProblem = instanceModel2Logic.transform(modelGenerationProblem, partialModel) -// var validModelExtensionProblem = viatra2Logic.transformQueries(queries, modelExtensionProblem, -// new Viatra2LogicConfiguration) - var problem = modelGenerationProblem.output - workspace.writeModel(problem, "scenario.logicproblem") - println("Problem created") - - for (var i = 0; i <= REPS; i++) { - - var ViatraReasoner reasoner = new ViatraReasoner - - // ///////////////////////////////////////////////////// - // Define Config File - val solverConfig = new ViatraReasonerConfiguration => [ - // add configuration things, in config file first -// it.documentationLevel = DocumentationLevel::FULL -// it.iteration = iter - it.runtimeLimit = RUNTIME - it.typeScopes.maxNewElements = SIZE - it.typeScopes.minNewElements = SIZE - ] - - var solution = reasoner.solve(problem, solverConfig, workspace) - print("Problem Solved") - - // Run Garbage Collector - val Runtime r = Runtime.getRuntime(); - r.gc(); - r.gc(); - r.gc(); - Thread.sleep(3000) - } - - } - - def static Map getTypeMap(Map classMap, EcoreMetamodelDescriptor metamodel, - Ecore2Logic e2l, Ecore2Logic_Trace trace) { - val typeMap = new HashMap - val listMap = metamodel.classes.toMap[s|s.name] - - for (Class elem : classMap.keySet) { - typeMap.put(e2l.TypeofEClass( - trace, - listMap.get(elem.simpleName) - ), classMap.get(elem)) - } - return typeMap - } - - def static loadMetamodel(EPackage pckg) { - val List classes = pckg.getEClassifiers.filter(EClass).toList - val List enums = pckg.getEClassifiers.filter(EEnum).toList - val List literals = enums.map[getELiterals].flatten.toList - val List references = classes.map[getEReferences].flatten.toList - val List attributes = classes.map[getEAttributes].flatten.toList - return new EcoreMetamodelDescriptor(classes, #{}, false, enums, literals, references, attributes) - } - - def static loadPartialModel(ReasonerWorkspace inputs, String path) { - Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("*", new XMIResourceFactoryImpl()) - inputs.readModel(EObject, path).eResource.contents -// inputs.readModel(EObject,"FamInstance.xmi").eResource.allContents.toList - } - - def static loadQueries(EcoreMetamodelDescriptor metamodel, IQueryGroup i) { - val patterns = i.specifications.toList - val wfPatterns = patterns.filter[it.allAnnotations.exists[it.name == "Constraint"]].toSet - val derivedFeatures = emptyMap - // NO DERIVED FEATURES -// val derivedFeatures = new LinkedHashMap -// derivedFeatures.put(i.type,metamodel.attributes.filter[it.name == "type"].head) -// derivedFeatures.put(i.model,metamodel.references.filter[it.name == "model"].head) - val res = new ViatraQuerySetDescriptor( - patterns, - wfPatterns, - derivedFeatures - ) - return res - } - -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/xtend-gen/run/.RunGenerator.xtendbin b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/xtend-gen/run/.RunGenerator.xtendbin deleted file mode 100644 index e2021169..00000000 Binary files a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/xtend-gen/run/.RunGenerator.xtendbin and /dev/null differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/xtend-gen/run/.gitignore b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/xtend-gen/run/.gitignore deleted file mode 100644 index 8e503b4a..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/xtend-gen/run/.gitignore +++ /dev/null @@ -1,4 +0,0 @@ -/.GenerateScenarios.java._trace -/.checkQueries.java._trace -/.RunGenerator.xtendbin -/GenerateScenarios.java diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/xtend-gen/run/GenerateScenarios.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/xtend-gen/run/GenerateScenarios.java deleted file mode 100644 index 7ec45124..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.queries/xtend-gen/run/GenerateScenarios.java +++ /dev/null @@ -1,165 +0,0 @@ -package run; - -import Taxation.TaxationPackage; -import com.google.common.base.Objects; -import com.google.common.collect.Iterables; -import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic; -import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2LogicConfiguration; -import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic_Trace; -import hu.bme.mit.inf.dslreasoner.ecore2logic.EcoreMetamodelDescriptor; -import hu.bme.mit.inf.dslreasoner.logic.model.builder.TracedOutput; -import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.Type; -import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.LogicProblem; -import hu.bme.mit.inf.dslreasoner.logic.model.logicresult.LogicResult; -import hu.bme.mit.inf.dslreasoner.viatra2logic.ViatraQuerySetDescriptor; -import hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.ViatraReasoner; -import hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.ViatraReasonerConfiguration; -import hu.bme.mit.inf.dslreasoner.workspace.FileSystemWorkspace; -import hu.bme.mit.inf.dslreasoner.workspace.ReasonerWorkspace; -import java.text.SimpleDateFormat; -import java.util.Collections; -import java.util.Date; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Set; -import org.eclipse.emf.common.util.EList; -import org.eclipse.emf.ecore.EAttribute; -import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.EEnum; -import org.eclipse.emf.ecore.EEnumLiteral; -import org.eclipse.emf.ecore.EObject; -import org.eclipse.emf.ecore.EPackage; -import org.eclipse.emf.ecore.EReference; -import org.eclipse.emf.ecore.EStructuralFeature; -import org.eclipse.emf.ecore.resource.Resource; -import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl; -import org.eclipse.viatra.query.runtime.api.IQueryGroup; -import org.eclipse.viatra.query.runtime.api.IQuerySpecification; -import org.eclipse.viatra.query.runtime.matchers.psystem.annotations.PAnnotation; -import org.eclipse.xtend2.lib.StringConcatenation; -import org.eclipse.xtext.xbase.lib.CollectionLiterals; -import org.eclipse.xtext.xbase.lib.Exceptions; -import org.eclipse.xtext.xbase.lib.Functions.Function1; -import org.eclipse.xtext.xbase.lib.InputOutput; -import org.eclipse.xtext.xbase.lib.IterableExtensions; -import org.eclipse.xtext.xbase.lib.ListExtensions; -import org.eclipse.xtext.xbase.lib.ObjectExtensions; -import org.eclipse.xtext.xbase.lib.Procedures.Procedure1; - -@SuppressWarnings("all") -public class GenerateScenarios { - public static void main(final String[] args) { - try { - final Ecore2Logic ecore2Logic = new Ecore2Logic(); - long _currentTimeMillis = System.currentTimeMillis(); - final Date date = new Date(_currentTimeMillis); - final SimpleDateFormat format = new SimpleDateFormat("dd-HHmm"); - final String formattedDate = format.format(date); - StringConcatenation _builder = new StringConcatenation(); - _builder.append("output/"); - String _plus = (_builder.toString() + formattedDate); - StringConcatenation _builder_1 = new StringConcatenation(); - _builder_1.append("/"); - String _plus_1 = (_plus + _builder_1); - final FileSystemWorkspace workspace = new FileSystemWorkspace(_plus_1, ""); - workspace.initAndClear(); - final Resource.Factory.Registry reg = Resource.Factory.Registry.INSTANCE; - final Map map = reg.getExtensionToFactoryMap(); - XMIResourceFactoryImpl _xMIResourceFactoryImpl = new XMIResourceFactoryImpl(); - map.put("logicproblem", _xMIResourceFactoryImpl); - InputOutput.println("Input and output workspaces are created"); - InputOutput.print(IterableExtensions.toList(Iterables.filter(TaxationPackage.eINSTANCE.getEClassifiers(), EClass.class)).get(0)); - final EcoreMetamodelDescriptor metamodel = GenerateScenarios.loadMetamodel(TaxationPackage.eINSTANCE); - InputOutput.println("DSL loaded"); - final int SIZE = 10; - int REPS = 1; - final int RUNTIME = 300; - Ecore2LogicConfiguration _ecore2LogicConfiguration = new Ecore2LogicConfiguration(); - final TracedOutput modelGenerationProblem = ecore2Logic.transformMetamodel(metamodel, _ecore2LogicConfiguration); - LogicProblem problem = modelGenerationProblem.getOutput(); - workspace.writeModel(problem, "scenario.logicproblem"); - InputOutput.println("Problem created"); - for (int i = 0; (i <= REPS); i++) { - { - ViatraReasoner reasoner = new ViatraReasoner(); - ViatraReasonerConfiguration _viatraReasonerConfiguration = new ViatraReasonerConfiguration(); - final Procedure1 _function = (ViatraReasonerConfiguration it) -> { - it.runtimeLimit = RUNTIME; - it.typeScopes.maxNewElements = SIZE; - it.typeScopes.minNewElements = SIZE; - }; - final ViatraReasonerConfiguration solverConfig = ObjectExtensions.operator_doubleArrow(_viatraReasonerConfiguration, _function); - LogicResult solution = reasoner.solve(problem, solverConfig, workspace); - InputOutput.print("Problem Solved"); - final Runtime r = Runtime.getRuntime(); - r.gc(); - r.gc(); - r.gc(); - Thread.sleep(3000); - } - } - } catch (Throwable _e) { - throw Exceptions.sneakyThrow(_e); - } - } - - public static Map getTypeMap(final Map classMap, final EcoreMetamodelDescriptor metamodel, final Ecore2Logic e2l, final Ecore2Logic_Trace trace) { - final HashMap typeMap = new HashMap(); - final Function1 _function = (EClass s) -> { - return s.getName(); - }; - final Map listMap = IterableExtensions.toMap(metamodel.getClasses(), _function); - Set _keySet = classMap.keySet(); - for (final Class elem : _keySet) { - typeMap.put( - e2l.TypeofEClass(trace, - listMap.get(elem.getSimpleName())), classMap.get(elem)); - } - return typeMap; - } - - public static EcoreMetamodelDescriptor loadMetamodel(final EPackage pckg) { - final List classes = IterableExtensions.toList(Iterables.filter(pckg.getEClassifiers(), EClass.class)); - final List enums = IterableExtensions.toList(Iterables.filter(pckg.getEClassifiers(), EEnum.class)); - final Function1> _function = (EEnum it) -> { - return it.getELiterals(); - }; - final List literals = IterableExtensions.toList(Iterables.concat(ListExtensions.>map(enums, _function))); - final Function1> _function_1 = (EClass it) -> { - return it.getEReferences(); - }; - final List references = IterableExtensions.toList(Iterables.concat(ListExtensions.>map(classes, _function_1))); - final Function1> _function_2 = (EClass it) -> { - return it.getEAttributes(); - }; - final List attributes = IterableExtensions.toList(Iterables.concat(ListExtensions.>map(classes, _function_2))); - return new EcoreMetamodelDescriptor(classes, Collections.unmodifiableSet(CollectionLiterals.newHashSet()), false, enums, literals, references, attributes); - } - - public static EList loadPartialModel(final ReasonerWorkspace inputs, final String path) { - EList _xblockexpression = null; - { - Map _extensionToFactoryMap = Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap(); - XMIResourceFactoryImpl _xMIResourceFactoryImpl = new XMIResourceFactoryImpl(); - _extensionToFactoryMap.put("*", _xMIResourceFactoryImpl); - _xblockexpression = inputs.readModel(EObject.class, path).eResource().getContents(); - } - return _xblockexpression; - } - - public static ViatraQuerySetDescriptor loadQueries(final EcoreMetamodelDescriptor metamodel, final IQueryGroup i) { - final List> patterns = IterableExtensions.>toList(i.getSpecifications()); - final Function1, Boolean> _function = (IQuerySpecification it) -> { - final Function1 _function_1 = (PAnnotation it_1) -> { - String _name = it_1.getName(); - return Boolean.valueOf(Objects.equal(_name, "Constraint")); - }; - return Boolean.valueOf(IterableExtensions.exists(it.getAllAnnotations(), _function_1)); - }; - final Set> wfPatterns = IterableExtensions.>toSet(IterableExtensions.>filter(patterns, _function)); - final Map, EStructuralFeature> derivedFeatures = CollectionLiterals., EStructuralFeature>emptyMap(); - final ViatraQuerySetDescriptor res = new ViatraQuerySetDescriptor(patterns, wfPatterns, derivedFeatures); - return res; - } -} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/.classpath b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/.classpath new file mode 100644 index 00000000..29ba3981 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/.classpath @@ -0,0 +1,9 @@ + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/.project b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/.project new file mode 100644 index 00000000..9080c4bb --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/.project @@ -0,0 +1,62 @@ + + + case.study.pledge.run + + + + + + org.eclipse.ocl.pivot.ui.oclbuilder + + + disabledExtensions + *,essentialocl + + + disabledPaths + bin/**,target/** + + + enabledExtensions + ecore,ocl,oclinecore,oclstdlib,uml + + + enabledPaths + ** + + + + + org.eclipse.xtext.ui.shared.xtextBuilder + + + + + org.eclipse.viatra.query.tooling.ui.projectbuilder + + + + + org.eclipse.jdt.core.javabuilder + + + + + org.eclipse.pde.ManifestBuilder + + + + + org.eclipse.pde.SchemaBuilder + + + + + + org.eclipse.pde.PluginNature + org.eclipse.jdt.core.javanature + org.eclipse.xtext.ui.shared.xtextNature + org.eclipse.viatra.query.projectnature + org.eclipse.ocl.pivot.ui.oclnature + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/.settings/org.eclipse.core.resources.prefs b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/.settings/org.eclipse.core.resources.prefs new file mode 100644 index 00000000..4824b802 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/.settings/org.eclipse.core.resources.prefs @@ -0,0 +1,2 @@ +eclipse.preferences.version=1 +encoding/=UTF-8 diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/.settings/org.eclipse.jdt.core.prefs b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000..295926d9 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/.settings/org.eclipse.jdt.core.prefs @@ -0,0 +1,7 @@ +eclipse.preferences.version=1 +org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled +org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 +org.eclipse.jdt.core.compiler.compliance=1.8 +org.eclipse.jdt.core.compiler.problem.assertIdentifier=error +org.eclipse.jdt.core.compiler.problem.enumIdentifier=error +org.eclipse.jdt.core.compiler.source=1.8 diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/.settings/org.eclipse.pde.core.prefs b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/.settings/org.eclipse.pde.core.prefs new file mode 100644 index 00000000..13325c95 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/.settings/org.eclipse.pde.core.prefs @@ -0,0 +1,3 @@ +eclipse.preferences.version=1 +pluginProject.equinox=false +resolve.requirebundle=false diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/META-INF/MANIFEST.MF b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/META-INF/MANIFEST.MF new file mode 100644 index 00000000..e616e6c1 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/META-INF/MANIFEST.MF @@ -0,0 +1,37 @@ +Manifest-Version: 1.0 +Bundle-ManifestVersion: 2 +Bundle-Name: case.study.pledge.run +Bundle-SymbolicName: case.study.pledge.run;singleton:=true +Bundle-Version: 0.0.1.qualifier +Export-Package: queries +Require-Bundle: org.eclipse.emf.ecore, + org.eclipse.viatra.query.runtime, + org.eclipse.viatra.query.runtime.rete, + org.eclipse.viatra.query.runtime.localsearch, + org.eclipse.viatra.query.patternlanguage.emf;bundle-version="2.3.1", + org.eclipse.viatra.addon.querybasedfeatures.runtime;bundle-version="2.3.0", + org.eclipse.core.runtime;bundle-version="3.17.0", + com.google.guava, + com.google.inject;bundle-version="3.0.0", + org.eclipse.xtext.xbase.lib, + org.eclipse.xtend.lib;bundle-version="2.21.0", + org.eclipse.xtend.lib.macro;bundle-version="2.21.0", + org.eclipse.collections;bundle-version="10.1.0", + org.eclipse.emf;bundle-version="2.8.0", + org.eclipse.emf.codegen;bundle-version="2.19.0", + org.eclipse.emf.codegen.ecore;bundle-version="2.21.0", + org.eclipse.emf.ecore.xmi;bundle-version="2.16.0", + hu.bme.mit.inf.dslreasoner.ecore2logic;bundle-version="1.0.0", + hu.bme.mit.inf.dslreasoner.logic.model;bundle-version="1.0.0", + hu.bme.mit.inf.dslreasoner.logic2ecore;bundle-version="1.0.0", + hu.bme.mit.inf.dslreasoner.viatra2logic;bundle-version="1.0.0", + hu.bme.mit.inf.dslreasoner.viatrasolver.logic2viatraquery;bundle-version="1.0.0", + hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage;bundle-version="1.0.0", + hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner;bundle-version="1.0.0", + hu.bme.mit.inf.dslreasoner.visualisation;bundle-version="1.0.0", + case.study.familyTree.model;bundle-version="1.0.0", + case.study.familyTree.run;bundle-version="0.0.1", + case.study.pledge.model;bundle-version="1.0.0" +Bundle-RequiredExecutionEnvironment: JavaSE-1.8 +Import-Package: org.apache.log4j +Automatic-Module-Name: casw.study.pledge.run diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/bin/.gitignore b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/bin/.gitignore new file mode 100644 index 00000000..3d70f0da --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/bin/.gitignore @@ -0,0 +1,2 @@ +/queries/ +/run/ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/build.properties b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/build.properties new file mode 100644 index 00000000..88d3713e --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/build.properties @@ -0,0 +1,6 @@ +bin.includes = META-INF/,\ + .,\ + plugin.xml +source.. = src/,\ + src-gen/ +output.. = bin/ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/inputs/Household.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/inputs/Household.xmi new file mode 100644 index 00000000..a38fc9d7 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/inputs/Household.xmi @@ -0,0 +1,3 @@ + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/inputs/Resident_Tax_Payer.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/inputs/Resident_Tax_Payer.xmi new file mode 100644 index 00000000..8a1a2c56 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/inputs/Resident_Tax_Payer.xmi @@ -0,0 +1,3 @@ + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/ocl/queries.ocl b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/ocl/queries.ocl new file mode 100644 index 00000000..de770240 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/ocl/queries.ocl @@ -0,0 +1,14 @@ +import 'file:/Users/Aren Babikian/git/VIATRA-Attributes/original.PLEDGE.case.studies/model/CD_Case_A.uml' +--e.g., import 'file:/Users/User_X/CD_Case_A.uml' + +package Taxation + +context Income inv x: + let involved_details:Set(Income_Detail)=self.details->select(i:Income_Detail| i.is_worked=true) in + involved_details.amount->sum() + +context Expense inv inv11: +let max:Real = if((self.income.income_amount / 2)>50) then self.income.income_amount / 2 else 50 endif in +self.declared_amount >= 50 and self.declared_amount <= max + +endpackage \ No newline at end of file diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1503/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1503/problem.logicproblem new file mode 100644 index 00000000..eaf86353 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1503/problem.logicproblem @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1503/solution0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1503/solution0.gml new file mode 100644 index 00000000..1916581b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1503/solution0.gml @@ -0,0 +1,1081 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 8 + target 9 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 10 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 11 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 12 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 12 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 12 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 12 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 6 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 6 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 5 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 6 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1503/solution0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1503/solution0.png new file mode 100644 index 00000000..20583143 Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1503/solution0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1503/solution0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1503/solution0.xmi new file mode 100644 index 00000000..6e6e5c9a --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1503/solution0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1504/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1504/problem.logicproblem new file mode 100644 index 00000000..eaf86353 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1504/problem.logicproblem @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1504/solution0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1504/solution0.gml new file mode 100644 index 00000000..77c8bce5 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1504/solution0.gml @@ -0,0 +1,1081 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 8 + target 9 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 10 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 11 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 12 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 12 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 7 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 5 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 2 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 4 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1504/solution0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1504/solution0.png new file mode 100644 index 00000000..56c5151a Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1504/solution0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1504/solution0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1504/solution0.xmi new file mode 100644 index 00000000..8c5585ad --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1504/solution0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1505/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1505/problem.logicproblem new file mode 100644 index 00000000..eaf86353 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1505/problem.logicproblem @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1505/solution0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1505/solution0.gml new file mode 100644 index 00000000..3123e29e --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1505/solution0.gml @@ -0,0 +1,1081 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 8 + target 9 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 10 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 11 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 12 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 12 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 12 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 7 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 7 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 5 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 7 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1505/solution0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1505/solution0.png new file mode 100644 index 00000000..0394a987 Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1505/solution0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1505/solution0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1505/solution0.xmi new file mode 100644 index 00000000..31dd612c --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1505/solution0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/problem.logicproblem new file mode 100644 index 00000000..eaf86353 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/problem.logicproblem @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution0_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution0_0.gml new file mode 100644 index 00000000..c2f6b485 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution0_0.gml @@ -0,0 +1,1043 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 8 + target 9 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 10 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 11 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 12 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 12 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 4 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 6 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 3 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 6 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution0_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution0_0.png new file mode 100644 index 00000000..4acfe88d Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution0_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution0_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution0_0.xmi new file mode 100644 index 00000000..255353a6 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution0_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution1_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution1_0.gml new file mode 100644 index 00000000..e1729d03 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution1_0.gml @@ -0,0 +1,1043 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 8 + target 9 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 10 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 11 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 12 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 12 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 12 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 4 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 4 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 6 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 2 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution1_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution1_0.png new file mode 100644 index 00000000..a6aa6728 Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution1_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution1_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution1_0.xmi new file mode 100644 index 00000000..2d48fe01 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1508/solution1_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/problem.logicproblem new file mode 100644 index 00000000..eaf86353 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/problem.logicproblem @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution0_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution0_0.gml new file mode 100644 index 00000000..1305dcec --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution0_0.gml @@ -0,0 +1,1043 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 8 + target 9 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 10 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 11 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 12 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 6 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 6 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 5 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 2 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution0_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution0_0.png new file mode 100644 index 00000000..dd7598cc Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution0_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution0_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution0_0.xmi new file mode 100644 index 00000000..f57655c1 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution0_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution1_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution1_0.gml new file mode 100644 index 00000000..781f8e1b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution1_0.gml @@ -0,0 +1,815 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 8 + target 9 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 10 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 11 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 12 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 2 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 2 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution1_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution1_0.png new file mode 100644 index 00000000..661fee52 Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution1_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution1_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution1_0.xmi new file mode 100644 index 00000000..8a2365ef --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1514/solution1_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/problem.logicproblem new file mode 100644 index 00000000..eaf86353 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/problem.logicproblem @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution0_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution0_0.gml new file mode 100644 index 00000000..22d19f9c --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution0_0.gml @@ -0,0 +1,1043 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 8 + target 9 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 10 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 11 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 12 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 12 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 12 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 6 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 6 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 2 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 7 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution0_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution0_0.png new file mode 100644 index 00000000..ff79a104 Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution0_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution0_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution0_0.xmi new file mode 100644 index 00000000..b4633ed1 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution0_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution1_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution1_0.gml new file mode 100644 index 00000000..2e4ddd6b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution1_0.gml @@ -0,0 +1,1119 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 8 + target 9 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 10 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 11 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 12 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 8 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 12 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 12 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 12 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 12 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 9 + target 2 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 10 + target 7 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 11 + target 3 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 2 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution1_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution1_0.png new file mode 100644 index 00000000..ec63baf3 Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution1_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution1_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution1_0.xmi new file mode 100644 index 00000000..3d95ed5b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1520/solution1_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/problem.logicproblem new file mode 100644 index 00000000..47899e9b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/problem.logicproblem @@ -0,0 +1,190 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution0_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution0_0.gml new file mode 100644 index 00000000..b23226f6 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution0_0.gml @@ -0,0 +1,1259 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "6" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "7" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "8" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "9" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 18 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 19 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 20 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 21 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 12 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 14 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 15 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 16 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 17 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 8 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 7 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 4 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution0_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution0_0.png new file mode 100644 index 00000000..c2f1b152 Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution0_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution0_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution0_0.xmi new file mode 100644 index 00000000..36597bae --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution0_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution1_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution1_0.gml new file mode 100644 index 00000000..5a6561f0 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution1_0.gml @@ -0,0 +1,1221 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "6" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "7" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "8" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "9" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 18 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 19 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 20 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 21 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 12 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 14 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 15 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 16 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 17 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 4 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 8 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 5 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution1_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution1_0.png new file mode 100644 index 00000000..b862f22d Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution1_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution1_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution1_0.xmi new file mode 100644 index 00000000..11368091 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1526/solution1_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1533/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1533/problem.logicproblem new file mode 100644 index 00000000..b859d985 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1533/problem.logicproblem @@ -0,0 +1,10009 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1535/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1535/problem.logicproblem new file mode 100644 index 00000000..b859d985 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1535/problem.logicproblem @@ -0,0 +1,10009 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1543/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1543/problem.logicproblem new file mode 100644 index 00000000..b859d985 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1543/problem.logicproblem @@ -0,0 +1,10009 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1543/solution0_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1543/solution0_0.gml new file mode 100644 index 00000000..884bb23b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1543/solution0_0.gml @@ -0,0 +1,3083 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "WWW literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Employer literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "MMM literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "UUU literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "YYY literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OOO literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 261.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "beug literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 261.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "NONE literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "A literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "B literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "C literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "D literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "E literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "ZZ literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "FF literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "BB literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "DD literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 18 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "NN literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 19 + graphics + [ + w 191.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 20 + graphics + [ + w 279.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Principal literal Tax_Card_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Card_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 21 + graphics + [ + w 288.20000000000005 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Additional literal Tax_Card_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Card_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 22 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RTS_2 literal Tax_Office" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Office enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 23 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RTS_3 literal Tax_Office" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Office enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 24 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RTS_4 literal Tax_Office" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Office enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 25 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RTS_5 literal Tax_Office" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Office enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 26 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "One literal Tax_Class_Category" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Class_Category enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 27 + graphics + [ + w 288.20000000000005 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "One_A literal Tax_Class_Category" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Class_Category enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 28 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Two literal Tax_Class_Category" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Class_Category enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 29 + graphics + [ + w 244.20000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Salary literal Job_Activity" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Job_Activity enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 30 + graphics + [ + w 253.00000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Pension literal Job_Activity" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Job_Activity enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 31 + graphics + [ + w 253.00000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Annuity literal Job_Activity" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Job_Activity enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 32 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "LL literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 33 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "BB literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 34 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "SS literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 35 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "TT literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 36 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Other literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 37 + graphics + [ + w 253.00000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "REGULAR literal Type_of_Rate" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Type_of_Rate enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 38 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "REAL_COST literal Type_of_Rate" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Type_of_Rate enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 39 + graphics + [ + w 349.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "INALIDITY_AND_INFIRMITY literal CE_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + CE_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 40 + graphics + [ + w 675.4000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD literal CE_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + CE_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 41 + graphics + [ + w 543.4000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD literal CE_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + CE_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 42 + graphics + [ + w 305.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "HOUSE_CARE literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 43 + graphics + [ + w 305.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "CHILD_CARE literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 44 + graphics + [ + w 349.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "DEPENDENCE_CARE literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 45 + graphics + [ + w 261.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 46 + graphics + [ + w 279.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "ALIMONY literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 47 + graphics + [ + w 341.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RECURRENT_DEPT literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 48 + graphics + [ + w 253.00000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "CHILD literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 49 + graphics + [ + w 261.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "SPOUSE literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 50 + graphics + [ + w 279.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RELATIVE literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 51 + graphics + [ + w 376.20000000000005 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER_FAMILY_MEMBER literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 52 + graphics + [ + w 323.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "NOT_OWN_CHILD literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 53 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "NONE literal Separation_Causes" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Separation_Causes enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 54 + graphics + [ + w 297.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "DIVORCE literal Separation_Causes" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Separation_Causes enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 55 + graphics + [ + w 393.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "SEPARATION_DE_FAIT literal Separation_Causes" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Separation_Causes enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 56 + graphics + [ + w 402.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "SEPARATION_BY_COURT literal Separation_Causes" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Separation_Causes enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 57 + graphics + [ + w 499.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "MISCELLANEOUS_DEBT literal Category_of_Permanent_Expense" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Permanent_Expense enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 58 + graphics + [ + w 402.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "ALIMONY literal Category_of_Permanent_Expense" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Permanent_Expense enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 59 + graphics + [ + w 781.0000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "MANDATORY_HEALTH_AND_PENSION_INSURANCE literal Category_of_Health_and_Pension_Insurances" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Health_and_Pension_Insurances enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 60 + graphics + [ + w 781.0000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "ADDITIONAL_EMPLOYERS_PENSION_INSURANCE literal Category_of_Health_and_Pension_Insurances" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Health_and_Pension_Insurances enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 61 + graphics + [ + w 781.0000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "CONTINUED_HEALTH_AND_PENSION_INSURANCE literal Category_of_Health_and_Pension_Insurances" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Health_and_Pension_Insurances enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 62 + graphics + [ + w 569.8000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "PRIVATE_INSURANCE literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 63 + graphics + [ + w 613.8000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "PRIVATE_LIFE_INSURANCE literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 64 + graphics + [ + w 710.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "COMPANY_MEMBERS_PRIVATE_INSURANCE literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 65 + graphics + [ + w 587.4000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "HOUSING_SAVING_PLAN literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 66 + graphics + [ + w 596.2 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OLD_AGE_PENSION_PLAN literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 67 + graphics + [ + w 297.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "MARIAGE literal Legal_Union_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Legal_Union_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 68 + graphics + [ + w 332.20000000000005 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "PARTNERSHIP literal Legal_Union_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Legal_Union_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 69 + graphics + [ + w 279.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER literal Legal_Union_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Legal_Union_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 70 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 71 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 72 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 73 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 74 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 75 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 76 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 77 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 78 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "6" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 79 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "7" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 80 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "8" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 81 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "9" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 82 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 83 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 84 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 85 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1543/solution0_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1543/solution0_0.png new file mode 100644 index 00000000..347e1310 Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1543/solution0_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1548/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1548/problem.logicproblem new file mode 100644 index 00000000..b859d985 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1548/problem.logicproblem @@ -0,0 +1,10009 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/problem.logicproblem new file mode 100644 index 00000000..ac0d6576 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/problem.logicproblem @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution0_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution0_0.gml new file mode 100644 index 00000000..78f48008 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution0_0.gml @@ -0,0 +1,1259 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "6" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "7" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "8" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "9" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 18 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 19 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 20 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 21 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 12 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 14 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 15 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 16 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 17 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 4 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 2 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 4 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 7 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution0_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution0_0.png new file mode 100644 index 00000000..5c5d00ed Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution0_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution0_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution0_0.xmi new file mode 100644 index 00000000..9a93a5d0 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution0_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution1_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution1_0.gml new file mode 100644 index 00000000..cb102af1 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution1_0.gml @@ -0,0 +1,1259 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "6" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "7" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "8" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "9" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 18 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 19 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 20 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 21 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 12 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 14 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 15 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 16 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 17 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 6 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 3 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 4 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 6 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution1_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution1_0.png new file mode 100644 index 00000000..35440ab3 Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution1_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution1_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution1_0.xmi new file mode 100644 index 00000000..704b755b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1557/solution1_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/problem.logicproblem new file mode 100644 index 00000000..ac0d6576 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/problem.logicproblem @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution0_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution0_0.gml new file mode 100644 index 00000000..2552a01c --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution0_0.gml @@ -0,0 +1,1221 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "6" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "7" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "8" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "9" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 18 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 19 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 20 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 21 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 12 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 14 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 15 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 16 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 17 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 7 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 4 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 2 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution0_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution0_0.png new file mode 100644 index 00000000..ca46a0d3 Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution0_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution0_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution0_0.xmi new file mode 100644 index 00000000..38d54fd5 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution0_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution1_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution1_0.gml new file mode 100644 index 00000000..2d7b97b7 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution1_0.gml @@ -0,0 +1,1221 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "6" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "7" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "8" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "9" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 18 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 19 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 20 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 21 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 12 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 14 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 15 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 16 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 17 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 6 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 7 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution1_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution1_0.png new file mode 100644 index 00000000..37a9045b Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution1_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution1_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution1_0.xmi new file mode 100644 index 00000000..8a85fa5f --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1610/solution1_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/problem.logicproblem new file mode 100644 index 00000000..ac0d6576 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/problem.logicproblem @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution0_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution0_0.gml new file mode 100644 index 00000000..25555139 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution0_0.gml @@ -0,0 +1,1164 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "6" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "7" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "8" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "9" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 18 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 19 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 20 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 21 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 12 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 14 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 15 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 16 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 17 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 4 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 6 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution0_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution0_0.png new file mode 100644 index 00000000..aca1cc34 Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution0_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution0_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution0_0.xmi new file mode 100644 index 00000000..b4a29090 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution0_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution1_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution1_0.gml new file mode 100644 index 00000000..ced9739e --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution1_0.gml @@ -0,0 +1,1050 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "6" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "7" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "8" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "9" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 18 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 19 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 20 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 21 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 12 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 14 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 15 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 16 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 17 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 8 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 7 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution1_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution1_0.png new file mode 100644 index 00000000..fe94a87a Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution1_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution1_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution1_0.xmi new file mode 100644 index 00000000..a5c411d9 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1613/solution1_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/problem.logicproblem new file mode 100644 index 00000000..ac0d6576 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/problem.logicproblem @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution0_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution0_0.gml new file mode 100644 index 00000000..72f6ddc4 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution0_0.gml @@ -0,0 +1,1259 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "6" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "7" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "8" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "9" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 18 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 19 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 20 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 21 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 12 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 14 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 15 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 16 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 17 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 8 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 2 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 5 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution0_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution0_0.png new file mode 100644 index 00000000..5bff6991 Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution0_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution0_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution0_0.xmi new file mode 100644 index 00000000..59ef8a75 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution0_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution1_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution1_0.gml new file mode 100644 index 00000000..5fff793c --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution1_0.gml @@ -0,0 +1,1221 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "6" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "7" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "8" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "9" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 18 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 19 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 20 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 21 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 12 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 14 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 15 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 16 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 17 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 5 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 3 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution1_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution1_0.png new file mode 100644 index 00000000..67db3ac2 Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution1_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution1_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution1_0.xmi new file mode 100644 index 00000000..6ef0f356 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1622/solution1_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/problem.logicproblem new file mode 100644 index 00000000..ac0d6576 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/problem.logicproblem @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution0_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution0_0.gml new file mode 100644 index 00000000..f57e31e2 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution0_0.gml @@ -0,0 +1,1259 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "6" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "7" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "8" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "9" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 18 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 19 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 20 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 21 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 12 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 14 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 15 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 16 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 17 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 6 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 6 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution0_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution0_0.png new file mode 100644 index 00000000..4115674a Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution0_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution0_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution0_0.xmi new file mode 100644 index 00000000..52707ad5 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution0_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution1_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution1_0.gml new file mode 100644 index 00000000..5cba67ef --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution1_0.gml @@ -0,0 +1,1145 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "6" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "7" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "8" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "9" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 18 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 19 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 20 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 21 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 12 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 14 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 15 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 16 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 17 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 7 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 2 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution1_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution1_0.png new file mode 100644 index 00000000..775b1213 Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution1_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution1_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution1_0.xmi new file mode 100644 index 00000000..defcabbd --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1623/solution1_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/problem.logicproblem new file mode 100644 index 00000000..ac0d6576 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/problem.logicproblem @@ -0,0 +1,151 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution0_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution0_0.gml new file mode 100644 index 00000000..dc97175f --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution0_0.gml @@ -0,0 +1,1183 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "6" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "7" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "8" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "9" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 18 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 19 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 20 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 21 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 12 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 14 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 15 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 16 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 17 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 8 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 10 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 9 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution0_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution0_0.png new file mode 100644 index 00000000..774aed57 Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution0_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution0_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution0_0.xmi new file mode 100644 index 00000000..7e47d43b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution0_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution1_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution1_0.gml new file mode 100644 index 00000000..015da3d4 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution1_0.gml @@ -0,0 +1,1259 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "1" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "2" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "3" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "4" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "5" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "6" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "7" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "8" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "9" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + FamilyTree class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 107.80000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "null" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Member class + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 18 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 19 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 20 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 21 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + edge + [ + source 12 + target 13 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 14 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 15 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 16 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 12 + target 17 + graphics + [ + fill "#000000" + width 3 + targetArrow "standard" + ] + LabelGraphics + [ + text "members reference FamilyTree" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "children reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 13 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 14 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 15 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 16 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "parents reference Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 13 + target 3 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 14 + target 11 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 15 + target 8 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] + edge + [ + source 16 + target 2 + graphics + [ + fill "#000000" + targetArrow "standard" + ] + LabelGraphics + [ + text "age attribute Member" + fontSize 14 + fontName "Consolas" + configuration "AutoFlippingLabel" + model "six_pos" + position "thead" + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution1_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution1_0.png new file mode 100644 index 00000000..14262d9e Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution1_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution1_0.xmi b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution1_0.xmi new file mode 100644 index 00000000..9c1fe50c --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1624/solution1_0.xmi @@ -0,0 +1,8 @@ + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1628/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1628/problem.logicproblem new file mode 100644 index 00000000..b859d985 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1628/problem.logicproblem @@ -0,0 +1,10009 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1641/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1641/problem.logicproblem new file mode 100644 index 00000000..b859d985 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1641/problem.logicproblem @@ -0,0 +1,10009 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1645/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1645/problem.logicproblem new file mode 100644 index 00000000..b859d985 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1645/problem.logicproblem @@ -0,0 +1,10009 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1645/solution0_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1645/solution0_0.gml new file mode 100644 index 00000000..fc094082 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1645/solution0_0.gml @@ -0,0 +1,2768 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "WWW literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Employer literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "MMM literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "UUU literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "YYY literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OOO literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 261.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "beug literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 261.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "NONE literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "A literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "B literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "C literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "D literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "E literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "ZZ literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "FF literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "BB literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "DD literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 18 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "NN literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 19 + graphics + [ + w 191.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 20 + graphics + [ + w 279.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Principal literal Tax_Card_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Card_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 21 + graphics + [ + w 288.20000000000005 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Additional literal Tax_Card_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Card_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 22 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RTS_2 literal Tax_Office" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Office enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 23 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RTS_3 literal Tax_Office" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Office enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 24 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RTS_4 literal Tax_Office" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Office enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 25 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RTS_5 literal Tax_Office" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Office enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 26 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "One literal Tax_Class_Category" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Class_Category enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 27 + graphics + [ + w 288.20000000000005 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "One_A literal Tax_Class_Category" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Class_Category enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 28 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Two literal Tax_Class_Category" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Class_Category enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 29 + graphics + [ + w 244.20000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Salary literal Job_Activity" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Job_Activity enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 30 + graphics + [ + w 253.00000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Pension literal Job_Activity" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Job_Activity enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 31 + graphics + [ + w 253.00000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Annuity literal Job_Activity" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Job_Activity enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 32 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "LL literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 33 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "BB literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 34 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "SS literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 35 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "TT literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 36 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Other literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 37 + graphics + [ + w 253.00000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "REGULAR literal Type_of_Rate" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Type_of_Rate enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 38 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "REAL_COST literal Type_of_Rate" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Type_of_Rate enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 39 + graphics + [ + w 349.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "INALIDITY_AND_INFIRMITY literal CE_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + CE_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 40 + graphics + [ + w 675.4000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD literal CE_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + CE_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 41 + graphics + [ + w 543.4000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD literal CE_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + CE_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 42 + graphics + [ + w 305.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "HOUSE_CARE literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 43 + graphics + [ + w 305.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "CHILD_CARE literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 44 + graphics + [ + w 349.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "DEPENDENCE_CARE literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 45 + graphics + [ + w 261.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 46 + graphics + [ + w 279.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "ALIMONY literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 47 + graphics + [ + w 341.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RECURRENT_DEPT literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 48 + graphics + [ + w 253.00000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "CHILD literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 49 + graphics + [ + w 261.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "SPOUSE literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 50 + graphics + [ + w 279.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RELATIVE literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 51 + graphics + [ + w 376.20000000000005 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER_FAMILY_MEMBER literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 52 + graphics + [ + w 323.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "NOT_OWN_CHILD literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 53 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "NONE literal Separation_Causes" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Separation_Causes enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 54 + graphics + [ + w 297.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "DIVORCE literal Separation_Causes" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Separation_Causes enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 55 + graphics + [ + w 393.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "SEPARATION_DE_FAIT literal Separation_Causes" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Separation_Causes enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 56 + graphics + [ + w 402.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "SEPARATION_BY_COURT literal Separation_Causes" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Separation_Causes enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 57 + graphics + [ + w 499.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "MISCELLANEOUS_DEBT literal Category_of_Permanent_Expense" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Permanent_Expense enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 58 + graphics + [ + w 402.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "ALIMONY literal Category_of_Permanent_Expense" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Permanent_Expense enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 59 + graphics + [ + w 781.0000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "MANDATORY_HEALTH_AND_PENSION_INSURANCE literal Category_of_Health_and_Pension_Insurances" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Health_and_Pension_Insurances enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 60 + graphics + [ + w 781.0000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "ADDITIONAL_EMPLOYERS_PENSION_INSURANCE literal Category_of_Health_and_Pension_Insurances" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Health_and_Pension_Insurances enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 61 + graphics + [ + w 781.0000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "CONTINUED_HEALTH_AND_PENSION_INSURANCE literal Category_of_Health_and_Pension_Insurances" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Health_and_Pension_Insurances enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 62 + graphics + [ + w 569.8000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "PRIVATE_INSURANCE literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 63 + graphics + [ + w 613.8000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "PRIVATE_LIFE_INSURANCE literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 64 + graphics + [ + w 710.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "COMPANY_MEMBERS_PRIVATE_INSURANCE literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 65 + graphics + [ + w 587.4000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "HOUSING_SAVING_PLAN literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 66 + graphics + [ + w 596.2 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OLD_AGE_PENSION_PLAN literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 67 + graphics + [ + w 297.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "MARIAGE literal Legal_Union_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Legal_Union_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 68 + graphics + [ + w 332.20000000000005 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "PARTNERSHIP literal Legal_Union_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Legal_Union_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 69 + graphics + [ + w 279.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER literal Legal_Union_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Legal_Union_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 70 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 71 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 72 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 73 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 74 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 75 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 76 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1645/solution0_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1645/solution0_0.png new file mode 100644 index 00000000..8cabb708 Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1645/solution0_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1701/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1701/problem.logicproblem new file mode 100644 index 00000000..b859d985 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1701/problem.logicproblem @@ -0,0 +1,10009 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1714/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1714/problem.logicproblem new file mode 100644 index 00000000..606dbf44 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1714/problem.logicproblem @@ -0,0 +1,10067 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1718/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1718/problem.logicproblem new file mode 100644 index 00000000..606dbf44 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1718/problem.logicproblem @@ -0,0 +1,10067 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1733/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1733/problem.logicproblem new file mode 100644 index 00000000..b859d985 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1733/problem.logicproblem @@ -0,0 +1,10009 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1733/solution0_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1733/solution0_0.gml new file mode 100644 index 00000000..b412a46a --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1733/solution0_0.gml @@ -0,0 +1,2803 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "WWW literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Employer literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "MMM literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "UUU literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "YYY literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OOO literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 261.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "beug literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 261.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "NONE literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "A literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "B literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "C literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "D literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "E literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "ZZ literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "FF literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "BB literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "DD literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 18 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "NN literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 19 + graphics + [ + w 191.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 20 + graphics + [ + w 279.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Principal literal Tax_Card_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Card_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 21 + graphics + [ + w 288.20000000000005 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Additional literal Tax_Card_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Card_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 22 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RTS_2 literal Tax_Office" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Office enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 23 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RTS_3 literal Tax_Office" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Office enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 24 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RTS_4 literal Tax_Office" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Office enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 25 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RTS_5 literal Tax_Office" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Office enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 26 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "One literal Tax_Class_Category" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Class_Category enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 27 + graphics + [ + w 288.20000000000005 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "One_A literal Tax_Class_Category" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Class_Category enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 28 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Two literal Tax_Class_Category" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Class_Category enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 29 + graphics + [ + w 244.20000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Salary literal Job_Activity" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Job_Activity enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 30 + graphics + [ + w 253.00000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Pension literal Job_Activity" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Job_Activity enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 31 + graphics + [ + w 253.00000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Annuity literal Job_Activity" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Job_Activity enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 32 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "LL literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 33 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "BB literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 34 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "SS literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 35 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "TT literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 36 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Other literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 37 + graphics + [ + w 253.00000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "REGULAR literal Type_of_Rate" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Type_of_Rate enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 38 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "REAL_COST literal Type_of_Rate" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Type_of_Rate enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 39 + graphics + [ + w 349.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "INALIDITY_AND_INFIRMITY literal CE_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + CE_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 40 + graphics + [ + w 675.4000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD literal CE_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + CE_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 41 + graphics + [ + w 543.4000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD literal CE_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + CE_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 42 + graphics + [ + w 305.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "HOUSE_CARE literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 43 + graphics + [ + w 305.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "CHILD_CARE literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 44 + graphics + [ + w 349.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "DEPENDENCE_CARE literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 45 + graphics + [ + w 261.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 46 + graphics + [ + w 279.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "ALIMONY literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 47 + graphics + [ + w 341.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RECURRENT_DEPT literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 48 + graphics + [ + w 253.00000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "CHILD literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 49 + graphics + [ + w 261.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "SPOUSE literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 50 + graphics + [ + w 279.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RELATIVE literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 51 + graphics + [ + w 376.20000000000005 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER_FAMILY_MEMBER literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 52 + graphics + [ + w 323.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "NOT_OWN_CHILD literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 53 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "NONE literal Separation_Causes" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Separation_Causes enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 54 + graphics + [ + w 297.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "DIVORCE literal Separation_Causes" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Separation_Causes enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 55 + graphics + [ + w 393.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "SEPARATION_DE_FAIT literal Separation_Causes" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Separation_Causes enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 56 + graphics + [ + w 402.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "SEPARATION_BY_COURT literal Separation_Causes" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Separation_Causes enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 57 + graphics + [ + w 499.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "MISCELLANEOUS_DEBT literal Category_of_Permanent_Expense" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Permanent_Expense enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 58 + graphics + [ + w 402.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "ALIMONY literal Category_of_Permanent_Expense" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Permanent_Expense enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 59 + graphics + [ + w 781.0000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "MANDATORY_HEALTH_AND_PENSION_INSURANCE literal Category_of_Health_and_Pension_Insurances" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Health_and_Pension_Insurances enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 60 + graphics + [ + w 781.0000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "ADDITIONAL_EMPLOYERS_PENSION_INSURANCE literal Category_of_Health_and_Pension_Insurances" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Health_and_Pension_Insurances enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 61 + graphics + [ + w 781.0000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "CONTINUED_HEALTH_AND_PENSION_INSURANCE literal Category_of_Health_and_Pension_Insurances" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Health_and_Pension_Insurances enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 62 + graphics + [ + w 569.8000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "PRIVATE_INSURANCE literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 63 + graphics + [ + w 613.8000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "PRIVATE_LIFE_INSURANCE literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 64 + graphics + [ + w 710.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "COMPANY_MEMBERS_PRIVATE_INSURANCE literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 65 + graphics + [ + w 587.4000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "HOUSING_SAVING_PLAN literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 66 + graphics + [ + w 596.2 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OLD_AGE_PENSION_PLAN literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 67 + graphics + [ + w 297.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "MARIAGE literal Legal_Union_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Legal_Union_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 68 + graphics + [ + w 332.20000000000005 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "PARTNERSHIP literal Legal_Union_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Legal_Union_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 69 + graphics + [ + w 279.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER literal Legal_Union_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Legal_Union_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 70 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 71 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 72 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 73 + graphics + [ + w 33.0 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0.0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 74 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 75 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 76 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 77 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1733/solution0_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1733/solution0_0.png new file mode 100644 index 00000000..ca7320ac Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1733/solution0_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1933/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1933/problem.logicproblem new file mode 100644 index 00000000..b859d985 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1933/problem.logicproblem @@ -0,0 +1,10009 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1933/solution0_0.gml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1933/solution0_0.gml new file mode 100644 index 00000000..b412a46a --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1933/solution0_0.gml @@ -0,0 +1,2803 @@ +graph +[ + node + [ + id 0 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "WWW literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 1 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Employer literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 2 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "MMM literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 3 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "UUU literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 4 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "YYY literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 5 + graphics + [ + w 173.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OOO literal Grantor" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Grantor enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 6 + graphics + [ + w 261.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "beug literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 7 + graphics + [ + w 261.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "NONE literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 8 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "A literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 9 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "B literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 10 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "C literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 11 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "D literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 12 + graphics + [ + w 235.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "E literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 13 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER literal Disability_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Disability_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 14 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "ZZ literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 15 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "FF literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 16 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "BB literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 17 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "DD literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 18 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "NN literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 19 + graphics + [ + w 191.4 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER literal Country" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Country enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 20 + graphics + [ + w 279.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Principal literal Tax_Card_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Card_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 21 + graphics + [ + w 288.20000000000005 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Additional literal Tax_Card_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Card_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 22 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RTS_2 literal Tax_Office" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Office enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 23 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RTS_3 literal Tax_Office" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Office enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 24 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RTS_4 literal Tax_Office" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Office enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 25 + graphics + [ + w 217.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RTS_5 literal Tax_Office" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Office enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 26 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "One literal Tax_Class_Category" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Class_Category enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 27 + graphics + [ + w 288.20000000000005 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "One_A literal Tax_Class_Category" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Class_Category enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 28 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Two literal Tax_Class_Category" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Tax_Class_Category enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 29 + graphics + [ + w 244.20000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Salary literal Job_Activity" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Job_Activity enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 30 + graphics + [ + w 253.00000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Pension literal Job_Activity" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Job_Activity enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 31 + graphics + [ + w 253.00000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Annuity literal Job_Activity" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Job_Activity enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 32 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "LL literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 33 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "BB literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 34 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "SS literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 35 + graphics + [ + w 138.60000000000002 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "TT literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 36 + graphics + [ + w 165.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "Other literal Town" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Town enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 37 + graphics + [ + w 253.00000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "REGULAR literal Type_of_Rate" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Type_of_Rate enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 38 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "REAL_COST literal Type_of_Rate" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Type_of_Rate enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 39 + graphics + [ + w 349.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "INALIDITY_AND_INFIRMITY literal CE_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + CE_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 40 + graphics + [ + w 675.4000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD literal CE_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + CE_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 41 + graphics + [ + w 543.4000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD literal CE_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + CE_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 42 + graphics + [ + w 305.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "HOUSE_CARE literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 43 + graphics + [ + w 305.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "CHILD_CARE literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 44 + graphics + [ + w 349.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "DEPENDENCE_CARE literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 45 + graphics + [ + w 261.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 46 + graphics + [ + w 279.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "ALIMONY literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 47 + graphics + [ + w 341.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RECURRENT_DEPT literal Expense_Purpose" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Expense_Purpose enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 48 + graphics + [ + w 253.00000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "CHILD literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 49 + graphics + [ + w 261.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "SPOUSE literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 50 + graphics + [ + w 279.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "RELATIVE literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 51 + graphics + [ + w 376.20000000000005 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER_FAMILY_MEMBER literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 52 + graphics + [ + w 323.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "NOT_OWN_CHILD literal Dependent_Type" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Dependent_Type enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 53 + graphics + [ + w 270.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "NONE literal Separation_Causes" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Separation_Causes enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 54 + graphics + [ + w 297.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "DIVORCE literal Separation_Causes" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Separation_Causes enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 55 + graphics + [ + w 393.8 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "SEPARATION_DE_FAIT literal Separation_Causes" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Separation_Causes enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 56 + graphics + [ + w 402.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "SEPARATION_BY_COURT literal Separation_Causes" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Separation_Causes enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 57 + graphics + [ + w 499.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "MISCELLANEOUS_DEBT literal Category_of_Permanent_Expense" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Permanent_Expense enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 58 + graphics + [ + w 402.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "ALIMONY literal Category_of_Permanent_Expense" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Permanent_Expense enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 59 + graphics + [ + w 781.0000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "MANDATORY_HEALTH_AND_PENSION_INSURANCE literal Category_of_Health_and_Pension_Insurances" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Health_and_Pension_Insurances enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 60 + graphics + [ + w 781.0000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "ADDITIONAL_EMPLOYERS_PENSION_INSURANCE literal Category_of_Health_and_Pension_Insurances" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Health_and_Pension_Insurances enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 61 + graphics + [ + w 781.0000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "CONTINUED_HEALTH_AND_PENSION_INSURANCE literal Category_of_Health_and_Pension_Insurances" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Health_and_Pension_Insurances enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 62 + graphics + [ + w 569.8000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "PRIVATE_INSURANCE literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 63 + graphics + [ + w 613.8000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "PRIVATE_LIFE_INSURANCE literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 64 + graphics + [ + w 710.6 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "COMPANY_MEMBERS_PRIVATE_INSURANCE literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 65 + graphics + [ + w 587.4000000000001 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "HOUSING_SAVING_PLAN literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 66 + graphics + [ + w 596.2 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OLD_AGE_PENSION_PLAN literal Category_of_Private_Insurance_and_Plan" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Category_of_Private_Insurance_and_Plan enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 67 + graphics + [ + w 297.0 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "MARIAGE literal Legal_Union_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Legal_Union_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 68 + graphics + [ + w 332.20000000000005 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "PARTNERSHIP literal Legal_Union_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Legal_Union_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 69 + graphics + [ + w 279.40000000000003 + h 40 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "OTHER literal Legal_Union_Types" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + Legal_Union_Types enum + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 70 + graphics + [ + w 41.800000000000004 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "true" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 71 + graphics + [ + w 50.6 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "false" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 72 + graphics + [ + w 15.400000000000002 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 73 + graphics + [ + w 33.0 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "0.0" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 74 + graphics + [ + w 112.2 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Integers" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 75 + graphics + [ + w 85.80000000000001 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Reals" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 76 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Strings" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] + + node + [ + id 77 + graphics + [ + w 103.4 + h 26 + type "rectangle" + fill "#FFFFFF" + fill2 "#FFFFFF" + outline "#000000" + ] + LabelGraphics + [ + text "New Objects" + outline "#000000" + fill "#FFFFFF" + fontSize 16 + fontName "Monospace" + autoSizePolicy "node_width" + anchor "t" + borderDistance 0.0 + ] + LabelGraphics + [ + text " + " + fontSize 14 + fontName "Consolas" + alignment "left" + anchor "tl" + borderDistance 6 + ] + ] +] + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1933/solution0_0.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1933/solution0_0.png new file mode 100644 index 00000000..df1ce269 Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1933/solution0_0.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1946/problem.logicproblem b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1946/problem.logicproblem new file mode 100644 index 00000000..43fe1da3 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/output/27-1946/problem.logicproblem @@ -0,0 +1,10014 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/plugin.xml b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/plugin.xml new file mode 100644 index 00000000..2f4febdb --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/plugin.xml @@ -0,0 +1 @@ + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/src-gen/queries/.gitignore b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/src-gen/queries/.gitignore new file mode 100644 index 00000000..527f3a0e --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/src-gen/queries/.gitignore @@ -0,0 +1,112 @@ +/.Inv17.java._trace +/.Inv20.java._trace +/.Inv33_con.java._trace +/.Inv34.java._trace +/.Inv35.java._trace +/.Inv47.java._trace +/.Inv48.java._trace +/.Inv48_helper.java._trace +/.Case_study_A.java._trace +/.Inv49.java._trace +/.Inv49_con.java._trace +/.Inv49_helper.java._trace +/.H_inv49.java._trace +/.Ocl_inv49.java._trace +/.Vql_inv49.java._trace +/.Vql_inv492.java._trace +/.H1_inv48.java._trace +/.H2_inv48.java._trace +/.Vql_inv48.java._trace +/.H3_inv48.java._trace +/.H1_inv49.java._trace +/.H2_inv49.java._trace +/.H_inv47.java._trace +/.Inv35test.java._trace +/.Inv33.java._trace +/.X.java._trace +/.H_inv16_moreThan1.java._trace +/.H_inv48_1.java._trace +/.H_inv48_2.java._trace +/.H_inv48_3.java._trace +/.H_inv49_1.java._trace +/.H_inv49_2.java._trace +/.Inv16.java._trace +/.Inv15.java._trace +/.H_inv13.java._trace +/.Inv13.java._trace +/.Inv12.java._trace +/.H_inv12_notNonRes.java._trace +/.H_inv12_notZZ.java._trace +/.H_inv11_incOver100.java._trace +/.Inv11.java._trace +/.H_inv11_incNotOver100.java._trace +/.H_inv8_notEI.java._trace +/.Inv8.java._trace +/.H_inv08_notEI.java._trace +/.Inv08.java._trace +/.H_inv08_inRange.java._trace +/.X_inv08_inRange.java._trace +/.X_inv08_notEI.java._trace +/.X_inv11_incNotOver100.java._trace +/.X_inv11_incOver100.java._trace +/.X_inv12_notNonRes.java._trace +/.X_inv12_notZZ.java._trace +/.X_inv13.java._trace +/.X_inv47.java._trace +/.X_inv48_1.java._trace +/.X_inv48_2.java._trace +/.X_inv48_3.java._trace +/.X_inv49_1.java._trace +/.X_inv49_2.java._trace +/.X_inv48_Dis.java._trace +/.X_inv48_notDis.java._trace +/.X_inv08_noType.java._trace +/.X_inv08_invalidType.java._trace +/.Inv06.java._trace +/.X_inv06_inRange.java._trace +/.Inv05.java._trace +/.X_inv05_inRange.java._trace +/.Inv03.java._trace +/.X_inv03_noAll.java._trace +/.X_inv03_eligAll.java._trace +/.X_inv03_hasAll.java._trace +/.Inv07.java._trace +/.Inv10.java._trace +/.X_inv15.java._trace +/Inv03.java +/Inv05.java +/Inv06.java +/X_inv03_eligAll.java +/X_inv03_hasAll.java +/X_inv05_inRange.java +/Case_study_A.java +/Inv07.java +/Inv08.java +/Inv10.java +/Inv11.java +/Inv12.java +/Inv13.java +/Inv15.java +/Inv17.java +/Inv20.java +/Inv33.java +/Inv34.java +/Inv35.java +/Inv47.java +/Inv48.java +/Inv49.java +/X_inv08_inRange.java +/X_inv08_noType.java +/X_inv08_notEI.java +/X_inv11_incNotOver100.java +/X_inv11_incOver100.java +/X_inv12_notNonRes.java +/X_inv12_notZZ.java +/X_inv13.java +/X_inv15.java +/X_inv47.java +/X_inv48_3.java +/X_inv48_Dis.java +/X_inv48_notDis.java +/X_inv49_1.java +/X_inv49_2.java diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/queries/NewOCLFileX.ocl b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/queries/NewOCLFileX.ocl new file mode 100644 index 00000000..66ae728e --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/queries/NewOCLFileX.ocl @@ -0,0 +1,45 @@ +import 'file:/Users/Aren Babikian/git/VIATRA-Attributes/case.study.a.model/model/Taxation.ecore' + +package Taxation + +--context Income inv inv8: +--if(not self.income_type.oclIsTypeOf(Employment_Income)) then +--self.details->forAll(d| d.distance = 0) +--else +--self.details->forAll(d| d.distance >= 0.0 and d.distance <= 100) +--endif +-- +--context Legal_Union_Record inv inv490: +--self.individual_A.oclIsKindOf(Tax_Payer) +-- +--context Legal_Union_Record inv inv491: +--self.individual_B->forAll(i | i.oclIsKindOf(Physical_Person) ) +-- +--context Legal_Union_Record inv inv492: +--self.individual_B->forAll(i | not i.oclIsTypeOf(Dependent) ) +-- +--context Legal_Union_Record inv inv493: +--self.individual_A <> self.individual_B +-- +--context Tax_Payer inv inv13: +-- self.addresses->exists( hab_add:Address | hab_add.oclIsTypeOf(Habitual_Address) = true and hab_add.country=Country::ZZ) +--implies +-- self.oclIsTypeOf(Resident_Tax_Payer) + + context Income inv inv7: +let val:Real =self.details->asOrderedSet()->first().distance in +self.details->forAll(d: Income_Detail|d.distance = val) + +--context External_Allowance inv inv15: +--let child:Dependent = self.person in +--let h:Household = Household.allInstances()->select(children->includes(child))->asOrderedSet()->first() in +--let t1:Set(Physical_Person) = Set{h.parents.individual_A}->union(h.parents.individual_B)->select(oclIsKindOf(Tax_Payer)) in +--if(t1->size()=1) then +--self.reciver = t1->asOrderedSet()->first() +--else +--self.reciver = t1->asOrderedSet()->at(2) or self.reciver = t1->asOrderedSet()->at(1) +--endif + + + +endpackage \ No newline at end of file diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/queries/case_study_A.vql b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/queries/case_study_A.vql new file mode 100644 index 00000000..f736ec58 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/queries/case_study_A.vql @@ -0,0 +1,334 @@ +package queries + +import "http:///TaxCard.ecore" + +//AttributeRemoved -> DF + +//inv1-External_Allowance.amount is a derived feature (TODOcheck) +//inv2-Tax_Card.income.taxPayer.taxesDue is a derived feature (TODOcheck) + +//inv3-multiplicity adjusted +@Constraint(message = "inv03", severity = "error", key = {dep}) +pattern inv03(dep : Dependent) { + find x_inv03_eligAll(dep); + neg find x_inv03_hasAll(dep); +} or { + Dependent.birth_year(dep, by); + check(2018-by > 21); + Dependent.continued_studies(dep, false); + Dependent.allowances(dep, _); +} +pattern x_inv03_eligAll(dep : Dependent) { + Dependent.birth_year(dep, by); + check(2018-by <= 21); +} or { + Dependent.continued_studies(dep, true); +} +pattern x_inv03_hasAll(dep : Dependent) { + Dependent.allowances(dep, _); +} + +//inv5 - oclIsTypeOf - handled here +@Constraint(message = "inv05", severity = "error", key = {inc}) +pattern inv05(inc : Income) { + //income_type: None + neg find x_inv08_noType(inc); + Income.details.worked_days(inc, wd); + check(wd != 0); +} or { + //income_type: Not Employment_Income + Income.income_type(inc, type); + neg find x_inv08_notEI(type); + Income.details.worked_days(inc, wd); + check(wd != 0); +} or { + //income_type: Employment Income + Income.income_type(inc, type); + Employment_Income(type); + find x_inv05_inRange(inc); +} +pattern x_inv05_inRange(inc : Income) { + Income.details.worked_days(inc, wd); + check(wd < 1); +} or { + Income.details.worked_days(inc, wd); + check(wd > 25); +} + +//inv6-Does not make sens, but directly from OCL +//first part of or from definition of getAge() +@Constraint(message = "inv06", severity = "error", key = {tp}) +pattern inv06(tp : Tax_Payer) { + Tax_Payer.dependents(tp, _); + Tax_Payer.birth_year(tp, TPBy); + check(2018 - TPBy > 2018-16); +} or { + Tax_Payer.birth_year(tp, TPBy); + Tax_Payer.dependents(tp, dep); + Dependent.birth_year(dep, DepBy); + check(2018-DepBy <= 2018-TPBy-16); +} + +//inv7-OrderedSet +@Constraint(message = "inv07", severity = "error", key = {inc}) +pattern inv07(inc : Income) { + Income.details.distance(inc, d1); + Income.details.distance(inc, d2); + check(d1 != d2);//compare values +} + +//user_complete_details-AttributeRemoved + +//inv8 - oclIsTypeOf - handled here +@Constraint(message = "inv08", severity = "error", key = {inc}) +pattern inv08(inc : Income) { + //income_type: None + neg find x_inv08_noType(inc); + Income.details.distance(inc, dist); + check(dist != 0); +} or { + //income_type: Not Employment_Income + Income.income_type(inc, type); + neg find x_inv08_notEI(type); + Income.details.distance(inc, dist); + check(dist != 0); +} or { + //income_type: Employment Income + Income.income_type(inc, type); + Employment_Income(type); + find x_inv08_inRange(inc); +} +pattern x_inv08_notEI(type : Employment_Income) { + Employment_Income(type); +} +pattern x_inv08_noType(inc : Income) { + Income.income_type(inc, _); +} +pattern x_inv08_inRange(inc : Income) { + Income.details.distance(inc, dist); + check(dist < 0); +} or { + Income.details.distance(inc, dist); + check(dist > 100); +} +//inv9-DerivedFeature + +//inv10-Ordered Sets +@Constraint(message = "inv10", severity = "error", key = {inc}) +pattern inv10(inc : Income) { + Income.details.amount(inc, a1); + Income.details.amount(inc, a2); + check(a1 != a2);//compare values +} + +//inv11-attributes-handled by multiplicity +@Constraint(message = "inv11", severity = "error", key = {exp}) +pattern inv11(exp : Expense) { + find x_inv11_incOver100(exp); + find x_inv11_incNotOver100(exp); +} +pattern x_inv11_incOver100(exp : Expense) { + Expense.income.income_amount(exp, incVal); + check(incVal / 2 > 50); + +} or { + Expense.declared_amount(exp, decl); + check(decl != 50); +} +pattern x_inv11_incNotOver100(exp : Expense) { + Expense.income.income_amount(exp, incVal); + check(incVal / 2 <= 50); +} or { + Expense.declared_amount(exp, decl); + check(decl < 50); +} or { + Expense.income.income_amount(exp, incVal); + Expense.declared_amount(exp, decl); + check(decl > incVal/2); +} + +//inv12 +//exists - handled logically +@Constraint(message = "inv12", severity = "error", key = {tp}) +pattern inv12(tp : Tax_Payer) { + Tax_Payer.addresses(tp, hab_add); + Habitual_Address(hab_add); + neg find x_inv12_notZZ(hab_add); + Tax_Payer.incomes(tp, inc); + Local_Income(inc); + neg find x_inv12_notNonRes(tp); +} +pattern x_inv12_notNonRes(tp : Non_Resident_Tax_Payer) { + Non_Resident_Tax_Payer(tp); +} +pattern x_inv12_notZZ(hab_add : Habitual_Address) { + Address.country(hab_add, ::ZZ); +} + +//inv13 - Added new containment rel Phys_Pers->Address +//exists - handled logically +@Constraint(message = "inv13", severity = "error", key = {tp}) +pattern inv13(tp : Tax_Payer) { + Tax_Payer.addresses(tp, hab_add); + Habitual_Address(hab_add); + Address.country(hab_add, ::ZZ); + neg find x_inv13(tp); +} +pattern x_inv13(tp : Resident_Tax_Payer) { + Resident_Tax_Payer(tp); +} + +//inv14-MultiplicityChanged + +//inv15-Ordered Sets in assignment if block +//ERROR if no household object +@Constraint(message = "inv15", severity = "error", key = {ea}) +pattern inv15(ea : External_Allowance) { + neg find x_inv15(ea); +} +pattern x_inv15(ea : External_Allowance) { + External_Allowance.person(ea, child); + Household.children(h, child);//only one due to multiplicity + Household.parents.individual_A(h, iA); + Tax_Payer(iA); + External_Allowance.reciver(ea, iA); +} or { + External_Allowance.person(ea, child); + Household.children(h, child);//only one due to multiplicity + Household.parents.individual_B(h, iB); + Tax_Payer(iB); + External_Allowance.reciver(ea, iB); +} + +//inv16-Tax_Card.tax_card_type is a derived feature + +//inv17-attribute-handled by multiplicity +@Constraint(message = "inv17", severity = "error", key = {lur}) +pattern inv17(lur : Legal_Union_Record) { + Legal_Union_Record.start_year(lur, sy); + check(sy < 1950); +} or { + Legal_Union_Record.start_year(lur, sy); + check(sy > 2018); +} + +//inv18-MultiplicityChecked +//inv19-MultiplicityChecked + +//inv20-Useless constraint since both edges are containment (TODOCheck) +//OclIsUndefined-Handled by multiplicity +@Constraint(message = "inv20", severity = "error", key = {lur}) +pattern inv20(lur : Legal_Union_Record) { + Legal_Union_Record.individual_A(lur, iA); + Legal_Union_Record.individual_B(lur, iB); + iA == iB; +} +//inv21-MultiplicityChecked +//inv22-MultiplicityChecked +//inv23-MultiplicityChecked +//inv24-MultiplicityChecked +//inv25-MultiplicityChecked +//inv26-MultiplicityChanged +//inv27-dupOfInv24 +//inv28-dubOfInv23 +//inv29-MultiplicityChanged +//inv30-AttributeRemoved +//inv31-AttributeRemoved +//inv32-AttributeRemoved + +//inv33-attribute-handled by multiplicity +@Constraint(message = "inv33", severity = "error", key = {p}) +pattern inv33(p : Physical_Person) { + Physical_Person.birth_year(p, by); + check(2018-by < 0); +} or { + Physical_Person.birth_year(p, by); + check(2018-by > 100); +} + +//inv34-attribute-handled by multiplicity +@Constraint(message = "inv34", severity = "error", key = {p}) +pattern inv34(p : Physical_Person) { + Physical_Person.birth_month(p, birthMonth); + check(birthMonth < 1); +} or { + Physical_Person.birth_month(p, birthMonth); + check(birthMonth > 12); +} + +//inv35-attribute-handled by multiplicity +@Constraint(message = "inv35", severity = "error", key = {p}) +pattern inv35(p : Physical_Person) { + Physical_Person.birth_day(p, birthDay); + check(birthDay < 1); +} or { + Physical_Person.birth_day(p, birthDay); + check(birthDay > 28); +} + +//inv36-AttributeRemoved +//inv37-AttributeRemoved +//inv38-AttributeRemoved +//inv39-AttributeRemoved +//inv40-AttributeRemoved +//inv41-AttributeRemoved +//inv42-AttributeRemoved +//inv43-AttributeRemoved +//inv44-AttributeRemoved +//inv45-AttributeRemoved +//inv46-AttributeRemoved + +//inv47-attributes-handled by multiplicity +@Constraint(message = "inv47", severity = "error", key = {lur}) +pattern inv47(lur : Legal_Union_Record) { + Legal_Union_Record.end_year(lur, endY); + Legal_Union_Record.start_year(lur, startY); + neg find x_inv47(lur); + check(startY >= endY); +} +pattern x_inv47(lur : Legal_Union_Record) { + Legal_Union_Record.separation_cause(lur, ::NONE); + Legal_Union_Record.end_year(lur, -1); +} + +//inv48-attributes-handled by multiplicity +@Constraint(message = "inv48", severity = "error", key = {p}) +pattern inv48(p : Physical_Person) { + neg find x_inv48_notDis(p); + neg find x_inv48_Dis(p); +} +pattern x_inv48_notDis(p : Physical_Person) { + Physical_Person.disability_type(p, ::NONE); + Physical_Person.disability_percentage(p, 0.0); +} +pattern x_inv48_Dis(p : Physical_Person) { + neg find x_inv48_3(p); + Physical_Person.disability_percentage(p, disPer); + check(disPer > 0.0); + check(disPer <= 1.0); +} +pattern x_inv48_3(p : Physical_Person) { + Physical_Person.disability_type(p, ::NONE); +} + +//inv49-OclKindOf-handled by multiplicity +@Constraint(message = "inv49", severity = "error", key = {lur}) +pattern inv49(lur : Legal_Union_Record) { + neg find x_inv49_1(lur); +} +pattern x_inv49_1(lur : Legal_Union_Record) { + Legal_Union_Record.individual_A(lur, iA); + Legal_Union_Record.individual_B(lur, iB); + Tax_Payer(iA); + Physical_Person(iB); + neg find x_inv49_2(iB); + iA != iB; +} +pattern x_inv49_2(iB: Dependent) { + Dependent(iB); +} + +//inv50-MultiplicityChecked +//inv51-MultiplicityChecked +//inv52-MultiplicityChecked +//inv53-MultiplicityChecked \ No newline at end of file diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/run/GenerateScenarios.xtend b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/run/GenerateScenarios.xtend new file mode 100644 index 00000000..8445130a --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/src/run/GenerateScenarios.xtend @@ -0,0 +1,243 @@ +package run + +import Taxation.TaxationPackage +import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic +import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2LogicConfiguration +import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic_Trace +import hu.bme.mit.inf.dslreasoner.ecore2logic.EcoreMetamodelDescriptor +import hu.bme.mit.inf.dslreasoner.logic.model.builder.TracedOutput +import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.Type +import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.LogicProblem +import hu.bme.mit.inf.dslreasoner.logic.model.logicresult.LogicResult +import hu.bme.mit.inf.dslreasoner.logic.model.logicresult.ModelResult +import hu.bme.mit.inf.dslreasoner.logic2ecore.Logic2Ecore +import hu.bme.mit.inf.dslreasoner.viatra2logic.Viatra2Logic +import hu.bme.mit.inf.dslreasoner.viatra2logic.Viatra2LogicConfiguration +import hu.bme.mit.inf.dslreasoner.viatra2logic.ViatraQuerySetDescriptor +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretation2logic.InstanceModel2Logic +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.partialinterpretation.PartialInterpretation +import hu.bme.mit.inf.dslreasoner.viatrasolver.partialinterpretationlanguage.visualisation.PartialInterpretation2Gml +import hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.ViatraReasoner +import hu.bme.mit.inf.dslreasoner.viatrasolver.reasoner.ViatraReasonerConfiguration +import hu.bme.mit.inf.dslreasoner.visualisation.pi2graphviz.GraphvizVisualiser +import hu.bme.mit.inf.dslreasoner.workspace.FileSystemWorkspace +import hu.bme.mit.inf.dslreasoner.workspace.ReasonerWorkspace +import java.math.BigDecimal +import java.text.SimpleDateFormat +import java.util.Date +import java.util.HashMap +import java.util.List +import java.util.Map +import java.util.TreeSet +import org.eclipse.emf.ecore.EAttribute +import org.eclipse.emf.ecore.EClass +import org.eclipse.emf.ecore.EEnum +import org.eclipse.emf.ecore.EEnumLiteral +import org.eclipse.emf.ecore.EObject +import org.eclipse.emf.ecore.EPackage +import org.eclipse.emf.ecore.EReference +import org.eclipse.emf.ecore.resource.Resource +import org.eclipse.emf.ecore.xmi.impl.XMIResourceFactoryImpl +import org.eclipse.viatra.query.patternlanguage.emf.EMFPatternLanguageStandaloneSetup +import org.eclipse.viatra.query.runtime.api.IQueryGroup +import org.eclipse.viatra.query.runtime.rete.matcher.ReteEngine +import queries.Case_study_A + +class GenerateScenarios { + def static void main(String[] args) { + val x = (new EMFPatternLanguageStandaloneSetup).createInjectorAndDoEMFRegistration +// //PatternLanguageWithRSSetup.createInjectorAndDoEMFRegistration +// ApplicationConfigurationStandaloneSetup.doSetup + Resource.Factory.Registry.INSTANCE.extensionToFactoryMap.put("xmi", new XMIResourceFactoryImpl) + Resource.Factory.Registry.INSTANCE.extensionToFactoryMap.put("logicproblem", new XMIResourceFactoryImpl) + Resource.Factory.Registry.INSTANCE.extensionToFactoryMap.put("partialmodel", new XMIResourceFactoryImpl) + ReteEngine.getClass + + val Ecore2Logic ecore2Logic = new Ecore2Logic + val Logic2Ecore logic2Ecore = new Logic2Ecore(ecore2Logic) + val Viatra2Logic viatra2Logic = new Viatra2Logic(ecore2Logic) + val InstanceModel2Logic instanceModel2Logic = new InstanceModel2Logic + + // Workspace setup + val Date date = new Date(System.currentTimeMillis) + val SimpleDateFormat format = new SimpleDateFormat("dd-HHmm"); + val formattedDate = format.format(date) + + val inputs = new FileSystemWorkspace('''inputs/''', "") + val workspace = new FileSystemWorkspace('''output/''' + formattedDate + '''/''', "") + workspace.initAndClear + + println("Input and output workspaces are created") + +// print(TaxationPackage.eINSTANCE.getEClassifiers.filter(EClass).toList.get(0)) + + //* + val metamodel = loadMetamodel(TaxationPackage.eINSTANCE) + val partialModel = loadPartialModel(inputs, "Household.xmi") + val queries = loadQueries(metamodel, Case_study_A.instance) + /*/ + val metamodel = loadMetamodel(FamilytreePackage.eINSTANCE) +// val partialModel = loadPartialModel(inputs, "yakindu/Yakindu.xmi") + val queries = loadQueries(metamodel, FamilyTreeConstraints.instance) + //*/ + println("DSL loaded") + + val SIZE = 10 + var REPS = 1 + val RUNTIME = 600 + + // ///////////////////////// + // Prepare Problem + val modelGenerationProblem = ecore2Logic.transformMetamodel(metamodel, new Ecore2LogicConfiguration()) + var problem = modelGenerationProblem.output + +// val modelExtensionProblem = instanceModel2Logic.transform(modelGenerationProblem, partialModel) +// problem = modelExtensionProblem.output + + val validModelExtensionProblem = viatra2Logic.transformQueries(queries, modelGenerationProblem, + new Viatra2LogicConfiguration) + problem = validModelExtensionProblem.output + + workspace.writeModel(problem, "problem.logicproblem") + println("Problem created") + + for (var i = 0; i < REPS; i++) { + + println("Run #" + i + ":") + + var ViatraReasoner reasoner = new ViatraReasoner + + // ///////////////////////////////////////////////////// + // Define Config File + val knownIntegers = new TreeSet + knownIntegers.addAll(0) + + val knownReals = new TreeSet + knownReals.addAll(new BigDecimal("0.0")) + + val knownStrings = new TreeSet + knownStrings.addAll("r0", "r1", "r2") + + + val solverConfig = new ViatraReasonerConfiguration => [ + it.runtimeLimit = RUNTIME + it.typeScopes.maxNewElements = SIZE +// it.typeScopes.minNewElements = SIZE + if(!knownIntegers.isEmpty) it.typeScopes.knownIntegers = knownIntegers + if(!knownReals.isEmpty) it.typeScopes.knownReals = knownReals +// if(!knownStrings.isEmpty) it.typeScopes.knownStrings = knownStrings + ] + + val startTime = System.currentTimeMillis + var solution = reasoner.solve(problem, solverConfig, workspace) + val totalTime = System.currentTimeMillis-startTime + + println(" Problem Solved") + solution.writeStats(totalTime) + + if (solution instanceof ModelResult) { + solution.writeRepresentation(workspace, i) +// solution.writeInterpretation(logic2Ecore, workspace, i, reasoner, modelGenerationProblem) + println(" Solution saved and visualised") + } else + println(" Returned: " + solution.class.simpleName.toString) + + +// println("Stats Created") + // Run Garbage Collector + val Runtime r = Runtime.getRuntime(); + r.gc(); + r.gc(); + r.gc(); + Thread.sleep(3000) + } + println("---End---") + + } + + def static Map getTypeMap(Map classMap, EcoreMetamodelDescriptor metamodel, + Ecore2Logic e2l, Ecore2Logic_Trace trace) { + val typeMap = new HashMap + val listMap = metamodel.classes.toMap[s|s.name] + + for (Class elem : classMap.keySet) { + typeMap.put(e2l.TypeofEClass( + trace, + listMap.get(elem.simpleName) + ), classMap.get(elem)) + } + return typeMap + } + + def static loadMetamodel(EPackage pckg) { + val List classes = pckg.getEClassifiers.filter(EClass).toList + val List enums = pckg.getEClassifiers.filter(EEnum).toList + val List literals = enums.map[getELiterals].flatten.toList + val List references = classes.map[getEReferences].flatten.toList + val List attributes = classes.map[getEAttributes].flatten.toList + return new EcoreMetamodelDescriptor(classes, #{}, false, enums, literals, references, attributes) + } + + def static loadPartialModel(ReasonerWorkspace inputs, String path) { + Resource.Factory.Registry.INSTANCE.getExtensionToFactoryMap().put("*", new XMIResourceFactoryImpl()) + inputs.readModel(EObject, path).eResource.contents +// inputs.readModel(EObject,"FamInstance.xmi").eResource.allContents.toList + } + + def static loadQueries(EcoreMetamodelDescriptor metamodel, IQueryGroup i) { + val patterns = i.specifications.toList + val wfPatterns = patterns.filter[it.allAnnotations.exists[it.name == "Constraint"]].toSet + val derivedFeatures = emptyMap + // NO DERIVED FEATURES +// val derivedFeatures = new LinkedHashMap +// derivedFeatures.put(i.type,metamodel.attributes.filter[it.name == "type"].head) +// derivedFeatures.put(i.model,metamodel.references.filter[it.name == "model"].head) + val res = new ViatraQuerySetDescriptor( + patterns, + wfPatterns, + derivedFeatures + ) + return res + } + + def static writeInterpretation(LogicResult solution, Logic2Ecore logic2Ecore, ReasonerWorkspace workspace, int i, + ViatraReasoner reasoner, TracedOutput mgProb) { + val interpretations = reasoner.getInterpretations(solution as ModelResult) + for (interpIndex : 0 ..< interpretations.size) { +// val extension b = new LogicStructureBuilder +// val extension a = new LogicProblemBuilder + val interpretation = interpretations.get(interpIndex) + val model = logic2Ecore.transformInterpretation(interpretation, mgProb.trace) + workspace.writeModel(model, '''solution«i»_«interpIndex».xmi''') + } + } + + def static writeRepresentation(LogicResult solution, ReasonerWorkspace workspace, int i) { + val representations = solution.representation + for (representationIndex : 0 ..< representations.size) { + val representation = representations.get(representationIndex) + if (representation instanceof PartialInterpretation) { + val gml = (new PartialInterpretation2Gml).transform(representation) + workspace.writeText('''solution«i»_«representationIndex».gml''', gml) + + val png = (new GraphvizVisualiser).visualiseConcretization(representation) + png.writeToFile(workspace, '''solution«i»_«representationIndex».png''') + +// workspace.writeModel(representation, '''solution«representationIndex».partialintrpretation''') + } else { + workspace.writeText('''solution«representationIndex».txt''', representation.toString) + } + } + } + + def static writeStats(LogicResult solution, long time) { + val stats = solution.statistics + println(" Statistics:") +// for (e : stats.entries.filter[name.substring(0, 9) == "_Solution"]) { +// println(" " + e.name + ": " + (e as IntStatisticEntry).value + " ms") +// } + println(" \"solve\" time: " + time as double/1000 + " s") + +// println("<>") + } +} diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.run/xtend-gen/run/.gitignore b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/xtend-gen/run/.gitignore new file mode 100644 index 00000000..01244e82 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.run/xtend-gen/run/.gitignore @@ -0,0 +1,5 @@ +/.GenerateScenarios.java._trace +/.checkQueries.java._trace +/.RunGenerator.xtendbin +/GenerateScenarios.java +/.GenerateScenarios.xtendbin diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.samples/.project b/Tests/MODELS2020-CaseStudies/case.study.pledge.samples/.project index 19d0f33d..10fbd8bd 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.samples/.project +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.samples/.project @@ -1,6 +1,6 @@ - case.study.pledge.instances + case.study.pledge.samples -- cgit v1.2.3-70-g09d2 From 750b37401bc3eb3e9deb7126d90f871973ba477b Mon Sep 17 00:00:00 2001 From: ArenBabikian Date: Mon, 11 May 2020 10:06:57 -0400 Subject: Remove derived features from the PLEDGE MM --- .../case.study.pledge.model/model/Taxation.aird | 438 +++-------- .../case.study.pledge.model/model/Taxation.ecore | 70 +- .../model/Taxation.genmodel | 32 +- .../DS_for_Private_Insurance_and_Plan.java | 69 -- .../src/Taxation/Donation.java | 24 - .../src/Taxation/External_Allowance.java | 23 - .../case.study.pledge.model/src/Taxation/FD.java | 23 - .../case.study.pledge.model/src/Taxation/FO.java | 30 - .../src/Taxation/Income_Type.java | 24 - .../src/Taxation/Loss_Carryforward.java | 98 --- .../src/Taxation/Permanent_Expense.java | 24 - .../src/Taxation/Physical_Person.java | 46 -- .../src/Taxation/Private_Insurance_and_Plan.java | 24 - .../src/Taxation/Tax_Card.java | 27 - .../src/Taxation/Tax_Payer.java | 23 - .../src/Taxation/TaxationPackage.java | 858 ++------------------- .../DS_for_Private_Insurance_and_PlanImpl.java | 168 ---- .../src/Taxation/impl/DonationImpl.java | 56 -- .../src/Taxation/impl/External_AllowanceImpl.java | 58 +- .../src/Taxation/impl/FDImpl.java | 56 -- .../src/Taxation/impl/FOImpl.java | 129 ---- .../src/Taxation/impl/Income_TypeImpl.java | 58 +- .../src/Taxation/impl/Loss_CarryforwardImpl.java | 296 ------- .../src/Taxation/impl/Permanent_ExpenseImpl.java | 56 -- .../src/Taxation/impl/Physical_PersonImpl.java | 114 +-- .../impl/Private_Insurance_and_PlanImpl.java | 56 -- .../src/Taxation/impl/Tax_CardImpl.java | 57 -- .../src/Taxation/impl/Tax_PayerImpl.java | 70 -- .../src/Taxation/impl/TaxationFactoryImpl.java | 48 -- .../src/Taxation/impl/TaxationPackageImpl.java | 377 ++------- 30 files changed, 239 insertions(+), 3193 deletions(-) (limited to 'Tests/MODELS2020-CaseStudies/case.study.pledge.model/src') diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/Taxation.aird b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/Taxation.aird index d99775e4..65ca16f3 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/Taxation.aird +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/Taxation.aird @@ -4,7 +4,7 @@ Taxation.ecore - + @@ -28,12 +28,6 @@ - - - bold - - - @@ -129,7 +123,7 @@ - + @@ -238,7 +232,7 @@ - + @@ -279,7 +273,7 @@ - + @@ -312,24 +306,7 @@ - - - - - - - - - - - - - - - - - - + @@ -354,7 +331,7 @@ - + @@ -375,7 +352,7 @@ - + @@ -396,7 +373,7 @@ - + @@ -425,24 +402,7 @@ - - - - - - - - - - - - - - - - - - + @@ -463,7 +423,7 @@ - + @@ -496,7 +456,7 @@ - + @@ -525,7 +485,7 @@ - + @@ -551,10 +511,6 @@ - - - - @@ -564,10 +520,6 @@ - - - - @@ -584,10 +536,6 @@ - - - - @@ -676,10 +624,6 @@ - - - - @@ -767,7 +711,7 @@ - + @@ -836,10 +780,6 @@ - - - - @@ -857,10 +797,6 @@ - - - - @@ -1230,15 +1166,11 @@ - - - - - + @@ -1247,20 +1179,16 @@ - + - - - - - + @@ -1273,7 +1201,7 @@ - + @@ -1290,7 +1218,7 @@ - + @@ -1307,7 +1235,7 @@ - + @@ -1316,7 +1244,7 @@ - + @@ -1329,7 +1257,7 @@ - + @@ -1350,7 +1278,7 @@ - + @@ -1359,23 +1287,11 @@ - - - - - - - - - - - - - + @@ -1404,7 +1320,7 @@ - + @@ -1413,7 +1329,7 @@ - + @@ -1422,7 +1338,7 @@ - + @@ -1431,10 +1347,6 @@ - - - - @@ -1470,10 +1382,6 @@ - - - - @@ -1504,10 +1412,6 @@ - - - - @@ -1521,22 +1425,6 @@ - - - - - - - - - - - - - - - - @@ -1615,7 +1503,7 @@ - + @@ -2679,6 +2567,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -2735,6 +2626,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO italic @@ -2944,6 +2838,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -3016,6 +2913,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -3069,33 +2969,12 @@ - - - - - - - - - - - - - - - - - - - - - - - - + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -3136,6 +3015,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -3168,6 +3050,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -3200,6 +3085,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -3245,33 +3133,12 @@ - - - - - - - - - - - - - - - - - - - - - - - - + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -3304,6 +3171,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -3360,6 +3230,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -3448,14 +3321,6 @@ - - - - - bold - - - @@ -3464,14 +3329,6 @@ - - - - - bold - - - @@ -3504,14 +3361,6 @@ - - - - - bold - - - @@ -3648,14 +3497,6 @@ - - - - - bold - - - @@ -3757,6 +3598,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -3895,14 +3739,6 @@ - - - - - bold - - - @@ -3927,14 +3763,6 @@ - - - - - bold - - - @@ -4451,6 +4279,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -4463,18 +4294,13 @@ - - - - - bold - - - + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -4483,22 +4309,20 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO - - - - - bold - - - + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -4515,6 +4339,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -4539,6 +4366,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -4563,6 +4393,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -4571,6 +4404,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -4587,6 +4423,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -4619,6 +4458,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -4631,34 +4473,13 @@ - - - - - bold - - - - - - - - bold - - - - - - - - bold - - - + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -4707,6 +4528,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -4715,6 +4539,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -4735,14 +4562,6 @@ - - - - - bold - - - @@ -4783,14 +4602,6 @@ - - - - - bold - - - @@ -4831,14 +4642,6 @@ - - - - - bold - - - @@ -4855,38 +4658,6 @@ - - - - - bold - - - - - - - - bold - - - - - - - - bold - - - - - - - - bold - - - @@ -4947,6 +4718,9 @@ + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -5789,4 +5563,4 @@ - \ No newline at end of file + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/Taxation.ecore b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/Taxation.ecore index cfed4729..12571827 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/Taxation.ecore +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/Taxation.ecore @@ -96,10 +96,6 @@ - - - - @@ -123,10 +119,6 @@ - - - - - - - - - - -

    - - - - -
    - - - - - - + @@ -556,15 +521,6 @@ - - - @@ -578,9 +534,6 @@ - @@ -589,9 +542,6 @@ eType="#//Category_of_Private_Insurance_and_Plan"/> - - - - - - - - + - - - - @@ -59,10 +55,6 @@ - - - - @@ -148,16 +140,13 @@ - - - @@ -190,7 +179,6 @@ - @@ -238,13 +226,11 @@ - - @@ -327,12 +313,9 @@ - - - - + @@ -346,22 +329,17 @@ - - - - - @@ -369,15 +347,9 @@ - - - - - - - + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Private_Insurance_and_Plan.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Private_Insurance_and_Plan.java index c72def81..19e23ef5 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Private_Insurance_and_Plan.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/DS_for_Private_Insurance_and_Plan.java @@ -13,9 +13,6 @@ package Taxation; *

    *
      *
    • {@link Taxation.DS_for_Private_Insurance_and_Plan#getPrivate_insurance_and_plan_category Private insurance and plan category}
    • - *
    • {@link Taxation.DS_for_Private_Insurance_and_Plan#getIncrease_for_life_insurance Increase for life insurance}
    • - *
    • {@link Taxation.DS_for_Private_Insurance_and_Plan#getMaximum_deductible_amount_for_private_insurance Maximum deductible amount for private insurance}
    • - *
    • {@link Taxation.DS_for_Private_Insurance_and_Plan#getMaximum_deductible_amount_for_old_age_pension_plan Maximum deductible amount for old age pension plan}
    • *
    * * @see Taxation.TaxationPackage#getDS_for_Private_Insurance_and_Plan() @@ -48,70 +45,4 @@ public interface DS_for_Private_Insurance_and_Plan extends DS { */ void setPrivate_insurance_and_plan_category(Category_of_Private_Insurance_and_Plan value); - /** - * Returns the value of the 'Increase for life insurance' attribute. - * - * - * @return the value of the 'Increase for life insurance' attribute. - * @see #setIncrease_for_life_insurance(double) - * @see Taxation.TaxationPackage#getDS_for_Private_Insurance_and_Plan_Increase_for_life_insurance() - * @model required="true" derived="true" - * @generated - */ - double getIncrease_for_life_insurance(); - - /** - * Sets the value of the '{@link Taxation.DS_for_Private_Insurance_and_Plan#getIncrease_for_life_insurance Increase for life insurance}' attribute. - * - * - * @param value the new value of the 'Increase for life insurance' attribute. - * @see #getIncrease_for_life_insurance() - * @generated - */ - void setIncrease_for_life_insurance(double value); - - /** - * Returns the value of the 'Maximum deductible amount for private insurance' attribute. - * - * - * @return the value of the 'Maximum deductible amount for private insurance' attribute. - * @see #setMaximum_deductible_amount_for_private_insurance(double) - * @see Taxation.TaxationPackage#getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_private_insurance() - * @model required="true" derived="true" - * @generated - */ - double getMaximum_deductible_amount_for_private_insurance(); - - /** - * Sets the value of the '{@link Taxation.DS_for_Private_Insurance_and_Plan#getMaximum_deductible_amount_for_private_insurance Maximum deductible amount for private insurance}' attribute. - * - * - * @param value the new value of the 'Maximum deductible amount for private insurance' attribute. - * @see #getMaximum_deductible_amount_for_private_insurance() - * @generated - */ - void setMaximum_deductible_amount_for_private_insurance(double value); - - /** - * Returns the value of the 'Maximum deductible amount for old age pension plan' attribute. - * - * - * @return the value of the 'Maximum deductible amount for old age pension plan' attribute. - * @see #setMaximum_deductible_amount_for_old_age_pension_plan(double) - * @see Taxation.TaxationPackage#getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_old_age_pension_plan() - * @model required="true" derived="true" - * @generated - */ - double getMaximum_deductible_amount_for_old_age_pension_plan(); - - /** - * Sets the value of the '{@link Taxation.DS_for_Private_Insurance_and_Plan#getMaximum_deductible_amount_for_old_age_pension_plan Maximum deductible amount for old age pension plan}' attribute. - * - * - * @param value the new value of the 'Maximum deductible amount for old age pension plan' attribute. - * @see #getMaximum_deductible_amount_for_old_age_pension_plan() - * @generated - */ - void setMaximum_deductible_amount_for_old_age_pension_plan(double value); - } // DS_for_Private_Insurance_and_Plan diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Donation.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Donation.java index 343238d9..37138826 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Donation.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Donation.java @@ -13,7 +13,6 @@ package Taxation; *

    *
      *
    • {@link Taxation.Donation#getBeneficiary1 Beneficiary1}
    • - *
    • {@link Taxation.Donation#isIs_beneficiary_eligible Is beneficiary eligible}
    • *
    • {@link Taxation.Donation#isIs_donation_reported Is donation reported}
    • *
    * @@ -44,29 +43,6 @@ public interface Donation extends Special_Expense_DS { */ void setBeneficiary1(String value); - /** - * Returns the value of the 'Is beneficiary eligible' attribute. - * The default value is "false". - * - * - * @return the value of the 'Is beneficiary eligible' attribute. - * @see #setIs_beneficiary_eligible(boolean) - * @see Taxation.TaxationPackage#getDonation_Is_beneficiary_eligible() - * @model default="false" required="true" derived="true" - * @generated - */ - boolean isIs_beneficiary_eligible(); - - /** - * Sets the value of the '{@link Taxation.Donation#isIs_beneficiary_eligible Is beneficiary eligible}' attribute. - * - * - * @param value the new value of the 'Is beneficiary eligible' attribute. - * @see #isIs_beneficiary_eligible() - * @generated - */ - void setIs_beneficiary_eligible(boolean value); - /** * Returns the value of the 'Is donation reported' attribute. * diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/External_Allowance.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/External_Allowance.java index 625efe59..f239ac45 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/External_Allowance.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/External_Allowance.java @@ -13,7 +13,6 @@ import org.eclipse.emf.ecore.EObject; * The following features are supported: *

    *
      - *
    • {@link Taxation.External_Allowance#getAmount Amount}
    • *
    • {@link Taxation.External_Allowance#getGrantor Grantor}
    • *
    • {@link Taxation.External_Allowance#getStarting_year Starting year}
    • *
    • {@link Taxation.External_Allowance#getEnding_year Ending year}
    • @@ -27,28 +26,6 @@ import org.eclipse.emf.ecore.EObject; * @generated */ public interface External_Allowance extends EObject { - /** - * Returns the value of the 'Amount' attribute. - * - * - * @return the value of the 'Amount' attribute. - * @see #setAmount(double) - * @see Taxation.TaxationPackage#getExternal_Allowance_Amount() - * @model required="true" - * @generated - */ - double getAmount(); - - /** - * Sets the value of the '{@link Taxation.External_Allowance#getAmount Amount}' attribute. - * - * - * @param value the new value of the 'Amount' attribute. - * @see #getAmount() - * @generated - */ - void setAmount(double value); - /** * Returns the value of the 'Grantor' attribute. * The literals are from the enumeration {@link Taxation.Grantor}. diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FD.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FD.java index 0c74a256..5555ed95 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FD.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FD.java @@ -13,7 +13,6 @@ package Taxation; *

      *
        *
      • {@link Taxation.FD#getDistance_declared_in_january Distance declared in january}
      • - *
      • {@link Taxation.FD#getCalculated_distance Calculated distance}
      • *
      * * @see Taxation.TaxationPackage#getFD() @@ -43,26 +42,4 @@ public interface FD extends Professional_Expenses_Deduction { */ void setDistance_declared_in_january(double value); - /** - * Returns the value of the 'Calculated distance' attribute. - * - * - * @return the value of the 'Calculated distance' attribute. - * @see #setCalculated_distance(double) - * @see Taxation.TaxationPackage#getFD_Calculated_distance() - * @model required="true" derived="true" - * @generated - */ - double getCalculated_distance(); - - /** - * Sets the value of the '{@link Taxation.FD#getCalculated_distance Calculated distance}' attribute. - * - * - * @param value the new value of the 'Calculated distance' attribute. - * @see #getCalculated_distance() - * @generated - */ - void setCalculated_distance(double value); - } // FD diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FO.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FO.java index e403cfa2..420270b1 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FO.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FO.java @@ -8,41 +8,11 @@ package Taxation; * A representation of the model object 'FO'. * * - *

      - * The following features are supported: - *

      - *
        - *
      • {@link Taxation.FO#getRate_type_for_FO Rate type for FO}
      • - *
      * * @see Taxation.TaxationPackage#getFO() * @model * @generated */ public interface FO extends Professional_Expenses_Deduction { - /** - * Returns the value of the 'Rate type for FO' attribute. - * The literals are from the enumeration {@link Taxation.Type_of_Rate}. - * - * - * @return the value of the 'Rate type for FO' attribute. - * @see Taxation.Type_of_Rate - * @see #setRate_type_for_FO(Type_of_Rate) - * @see Taxation.TaxationPackage#getFO_Rate_type_for_FO() - * @model required="true" derived="true" - * @generated - */ - Type_of_Rate getRate_type_for_FO(); - - /** - * Sets the value of the '{@link Taxation.FO#getRate_type_for_FO Rate type for FO}' attribute. - * - * - * @param value the new value of the 'Rate type for FO' attribute. - * @see Taxation.Type_of_Rate - * @see #getRate_type_for_FO() - * @generated - */ - void setRate_type_for_FO(Type_of_Rate value); } // FO diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Type.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Type.java index 3d7d03b1..63c3a382 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Type.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Income_Type.java @@ -13,7 +13,6 @@ import org.eclipse.emf.ecore.EObject; * The following features are supported: *

      *
        - *
      • {@link Taxation.Income_Type#isSubjectToWithholdingTax Subject To Withholding Tax}
      • *
      • {@link Taxation.Income_Type#getId8 Id8}
      • *
      • {@link Taxation.Income_Type#getIncome Income}
      • *
      @@ -23,29 +22,6 @@ import org.eclipse.emf.ecore.EObject; * @generated */ public interface Income_Type extends EObject { - /** - * Returns the value of the 'Subject To Withholding Tax' attribute. - * - * - * @return the value of the 'Subject To Withholding Tax' attribute. - * @see #setSubjectToWithholdingTax(boolean) - * @see Taxation.TaxationPackage#getIncome_Type_SubjectToWithholdingTax() - * @model required="true" derived="true" - * annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='\n\t\t\t\tself.income.tax_card->notEmpty()\n\t\t\t\t'" - * @generated - */ - boolean isSubjectToWithholdingTax(); - - /** - * Sets the value of the '{@link Taxation.Income_Type#isSubjectToWithholdingTax Subject To Withholding Tax}' attribute. - * - * - * @param value the new value of the 'Subject To Withholding Tax' attribute. - * @see #isSubjectToWithholdingTax() - * @generated - */ - void setSubjectToWithholdingTax(boolean value); - /** * Returns the value of the 'Id8' attribute. * diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Loss_Carryforward.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Loss_Carryforward.java index e2ecfb38..a5acbe85 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Loss_Carryforward.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Loss_Carryforward.java @@ -8,109 +8,11 @@ package Taxation; * A representation of the model object 'Loss Carryforward'. * * - *

      - * The following features are supported: - *

      - *
        - *
      • {@link Taxation.Loss_Carryforward#isRegular_accountability Regular accountability}
      • - *
      • {@link Taxation.Loss_Carryforward#isCompensation_by_other_means Compensation by other means}
      • - *
      • {@link Taxation.Loss_Carryforward#isTax_payer_has_inherited_business_ownership Tax payer has inherited business ownership}
      • - *
      • {@link Taxation.Loss_Carryforward#isTax_payer_has_been_partner_in_business Tax payer has been partner in business}
      • - *
      * * @see Taxation.TaxationPackage#getLoss_Carryforward() * @model * @generated */ public interface Loss_Carryforward extends Special_Expense_DS { - /** - * Returns the value of the 'Regular accountability' attribute. - * - * - * @return the value of the 'Regular accountability' attribute. - * @see #setRegular_accountability(boolean) - * @see Taxation.TaxationPackage#getLoss_Carryforward_Regular_accountability() - * @model required="true" derived="true" - * @generated - */ - boolean isRegular_accountability(); - - /** - * Sets the value of the '{@link Taxation.Loss_Carryforward#isRegular_accountability Regular accountability}' attribute. - * - * - * @param value the new value of the 'Regular accountability' attribute. - * @see #isRegular_accountability() - * @generated - */ - void setRegular_accountability(boolean value); - - /** - * Returns the value of the 'Compensation by other means' attribute. - * - * - * @return the value of the 'Compensation by other means' attribute. - * @see #setCompensation_by_other_means(boolean) - * @see Taxation.TaxationPackage#getLoss_Carryforward_Compensation_by_other_means() - * @model required="true" derived="true" - * @generated - */ - boolean isCompensation_by_other_means(); - - /** - * Sets the value of the '{@link Taxation.Loss_Carryforward#isCompensation_by_other_means Compensation by other means}' attribute. - * - * - * @param value the new value of the 'Compensation by other means' attribute. - * @see #isCompensation_by_other_means() - * @generated - */ - void setCompensation_by_other_means(boolean value); - - /** - * Returns the value of the 'Tax payer has inherited business ownership' attribute. - * The default value is "false". - * - * - * @return the value of the 'Tax payer has inherited business ownership' attribute. - * @see #setTax_payer_has_inherited_business_ownership(boolean) - * @see Taxation.TaxationPackage#getLoss_Carryforward_Tax_payer_has_inherited_business_ownership() - * @model default="false" required="true" derived="true" - * @generated - */ - boolean isTax_payer_has_inherited_business_ownership(); - - /** - * Sets the value of the '{@link Taxation.Loss_Carryforward#isTax_payer_has_inherited_business_ownership Tax payer has inherited business ownership}' attribute. - * - * - * @param value the new value of the 'Tax payer has inherited business ownership' attribute. - * @see #isTax_payer_has_inherited_business_ownership() - * @generated - */ - void setTax_payer_has_inherited_business_ownership(boolean value); - - /** - * Returns the value of the 'Tax payer has been partner in business' attribute. - * The default value is "true". - * - * - * @return the value of the 'Tax payer has been partner in business' attribute. - * @see #setTax_payer_has_been_partner_in_business(boolean) - * @see Taxation.TaxationPackage#getLoss_Carryforward_Tax_payer_has_been_partner_in_business() - * @model default="true" required="true" derived="true" - * @generated - */ - boolean isTax_payer_has_been_partner_in_business(); - - /** - * Sets the value of the '{@link Taxation.Loss_Carryforward#isTax_payer_has_been_partner_in_business Tax payer has been partner in business}' attribute. - * - * - * @param value the new value of the 'Tax payer has been partner in business' attribute. - * @see #isTax_payer_has_been_partner_in_business() - * @generated - */ - void setTax_payer_has_been_partner_in_business(boolean value); } // Loss_Carryforward diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Permanent_Expense.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Permanent_Expense.java index 1e8d885b..fd957a6b 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Permanent_Expense.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Permanent_Expense.java @@ -13,7 +13,6 @@ package Taxation; *

      *
        *
      • {@link Taxation.Permanent_Expense#getCategory Category}
      • - *
      • {@link Taxation.Permanent_Expense#isIs_eligible_for_deduction Is eligible for deduction}
      • *
      * * @see Taxation.TaxationPackage#getPermanent_Expense() @@ -46,27 +45,4 @@ public interface Permanent_Expense extends Special_Expense_DS { */ void setCategory(Category_of_Permanent_Expense value); - /** - * Returns the value of the 'Is eligible for deduction' attribute. - * The default value is "false". - * - * - * @return the value of the 'Is eligible for deduction' attribute. - * @see #setIs_eligible_for_deduction(boolean) - * @see Taxation.TaxationPackage#getPermanent_Expense_Is_eligible_for_deduction() - * @model default="false" required="true" derived="true" - * @generated - */ - boolean isIs_eligible_for_deduction(); - - /** - * Sets the value of the '{@link Taxation.Permanent_Expense#isIs_eligible_for_deduction Is eligible for deduction}' attribute. - * - * - * @param value the new value of the 'Is eligible for deduction' attribute. - * @see #isIs_eligible_for_deduction() - * @generated - */ - void setIs_eligible_for_deduction(boolean value); - } // Permanent_Expense diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Physical_Person.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Physical_Person.java index b2f40b46..d951f5dc 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Physical_Person.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Physical_Person.java @@ -15,13 +15,11 @@ import org.eclipse.emf.ecore.EObject; * The following features are supported: *

      *
        - *
      • {@link Taxation.Physical_Person#isIs_assisting_spouse Is assisting spouse}
      • *
      • {@link Taxation.Physical_Person#getSSNo SS No}
      • *
      • {@link Taxation.Physical_Person#getAddresses Addresses}
      • *
      • {@link Taxation.Physical_Person#getBirth_year Birth year}
      • *
      • {@link Taxation.Physical_Person#getDisability_percentage Disability percentage}
      • *
      • {@link Taxation.Physical_Person#getDisability_type Disability type}
      • - *
      • {@link Taxation.Physical_Person#isIs_affiliated_personnaly_to_social_security Is affiliated personnaly to social security}
      • *
      • {@link Taxation.Physical_Person#getBirth_month Birth month}
      • *
      • {@link Taxation.Physical_Person#getBirth_day Birth day}
      • *
      • {@link Taxation.Physical_Person#getExpenses Expenses}
      • @@ -33,28 +31,6 @@ import org.eclipse.emf.ecore.EObject; * @generated */ public interface Physical_Person extends EObject { - /** - * Returns the value of the 'Is assisting spouse' attribute. - * - * - * @return the value of the 'Is assisting spouse' attribute. - * @see #setIs_assisting_spouse(boolean) - * @see Taxation.TaxationPackage#getPhysical_Person_Is_assisting_spouse() - * @model required="true" derived="true" - * @generated - */ - boolean isIs_assisting_spouse(); - - /** - * Sets the value of the '{@link Taxation.Physical_Person#isIs_assisting_spouse Is assisting spouse}' attribute. - * - * - * @param value the new value of the 'Is assisting spouse' attribute. - * @see #isIs_assisting_spouse() - * @generated - */ - void setIs_assisting_spouse(boolean value); - /** * Returns the value of the 'SS No' attribute. * @@ -160,28 +136,6 @@ public interface Physical_Person extends EObject { */ void setDisability_type(Disability_Types value); - /** - * Returns the value of the 'Is affiliated personnaly to social security' attribute. - * - * - * @return the value of the 'Is affiliated personnaly to social security' attribute. - * @see #setIs_affiliated_personnaly_to_social_security(boolean) - * @see Taxation.TaxationPackage#getPhysical_Person_Is_affiliated_personnaly_to_social_security() - * @model required="true" derived="true" - * @generated - */ - boolean isIs_affiliated_personnaly_to_social_security(); - - /** - * Sets the value of the '{@link Taxation.Physical_Person#isIs_affiliated_personnaly_to_social_security Is affiliated personnaly to social security}' attribute. - * - * - * @param value the new value of the 'Is affiliated personnaly to social security' attribute. - * @see #isIs_affiliated_personnaly_to_social_security() - * @generated - */ - void setIs_affiliated_personnaly_to_social_security(boolean value); - /** * Returns the value of the 'Birth month' attribute. * diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Private_Insurance_and_Plan.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Private_Insurance_and_Plan.java index 5cd6e8f0..0a99ebed 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Private_Insurance_and_Plan.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Private_Insurance_and_Plan.java @@ -14,7 +14,6 @@ package Taxation; *
          *
        • {@link Taxation.Private_Insurance_and_Plan#getCategory Category}
        • *
        • {@link Taxation.Private_Insurance_and_Plan#getDuration_of_contract Duration of contract}
        • - *
        • {@link Taxation.Private_Insurance_and_Plan#isIs_private_insurance_and_plan_eligible_for_deduction Is private insurance and plan eligible for deduction}
        • *
        * * @see Taxation.TaxationPackage#getPrivate_Insurance_and_Plan() @@ -69,27 +68,4 @@ public interface Private_Insurance_and_Plan extends Special_Expense_DS { */ void setDuration_of_contract(int value); - /** - * Returns the value of the 'Is private insurance and plan eligible for deduction' attribute. - * The default value is "false". - * - * - * @return the value of the 'Is private insurance and plan eligible for deduction' attribute. - * @see #setIs_private_insurance_and_plan_eligible_for_deduction(boolean) - * @see Taxation.TaxationPackage#getPrivate_Insurance_and_Plan_Is_private_insurance_and_plan_eligible_for_deduction() - * @model default="false" required="true" derived="true" - * @generated - */ - boolean isIs_private_insurance_and_plan_eligible_for_deduction(); - - /** - * Sets the value of the '{@link Taxation.Private_Insurance_and_Plan#isIs_private_insurance_and_plan_eligible_for_deduction Is private insurance and plan eligible for deduction}' attribute. - * - * - * @param value the new value of the 'Is private insurance and plan eligible for deduction' attribute. - * @see #isIs_private_insurance_and_plan_eligible_for_deduction() - * @generated - */ - void setIs_private_insurance_and_plan_eligible_for_deduction(boolean value); - } // Private_Insurance_and_Plan diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card.java index bcfc0c75..94de4a1b 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card.java @@ -16,7 +16,6 @@ import org.eclipse.emf.ecore.EObject; *

        *
          *
        • {@link Taxation.Tax_Card#getCard_identifier Card identifier}
        • - *
        • {@link Taxation.Tax_Card#getTax_card_type Tax card type}
        • *
        • {@link Taxation.Tax_Card#getTax_office Tax office}
        • *
        • {@link Taxation.Tax_Card#getPercentage_of_witholding Percentage of witholding}
        • *
        • {@link Taxation.Tax_Card#getTax_payers_name_surname Tax payers name surname}
        • @@ -79,32 +78,6 @@ public interface Tax_Card extends EObject { */ void setCard_identifier(String value); - /** - * Returns the value of the 'Tax card type' attribute. - * The literals are from the enumeration {@link Taxation.Tax_Card_Type}. - * - * - * @return the value of the 'Tax card type' attribute. - * @see Taxation.Tax_Card_Type - * @see #setTax_card_type(Tax_Card_Type) - * @see Taxation.TaxationPackage#getTax_Card_Tax_card_type() - * @model required="true" derived="true" - * annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='if(self.income.taxPayer.incomes->size()=1) then \nTax_Card_Type::Principal\n\telse\n\t\tlet all_incomes:OrderedSet(Income)=self.income.taxPayer.incomes->select(inc:Income| inc.income_amount= self.income.taxPayer.incomes.income_amount->max())->asOrderedSet() in\n\t\tlet bigest_income:Income= all_incomes->first() in\n\t\t\t if(bigest_income=self.income) then\n\t\t\t \t Tax_Card_Type::Principal\n\t\t\t else\n\t\t\t\t\tTax_Card_Type::Additional\n\t\t\t\tendif\nendif\n\t\t\t\t'" - * @generated - */ - Tax_Card_Type getTax_card_type(); - - /** - * Sets the value of the '{@link Taxation.Tax_Card#getTax_card_type Tax card type}' attribute. - * - * - * @param value the new value of the 'Tax card type' attribute. - * @see Taxation.Tax_Card_Type - * @see #getTax_card_type() - * @generated - */ - void setTax_card_type(Tax_Card_Type value); - /** * Returns the value of the 'Tax office' attribute. * The literals are from the enumeration {@link Taxation.Tax_Office}. diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Payer.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Payer.java index 56de04a4..8d5b3989 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Payer.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Payer.java @@ -17,7 +17,6 @@ import org.eclipse.emf.common.util.EList; *
        • {@link Taxation.Tax_Payer#getFrom_agent From agent}
        • *
        • {@link Taxation.Tax_Payer#getIncomes Incomes}
        • *
        • {@link Taxation.Tax_Payer#getFrom_law From law}
        • - *
        • {@link Taxation.Tax_Payer#getTaxesDue Taxes Due}
        • *
        * * @see Taxation.TaxationPackage#getTax_Payer() @@ -102,26 +101,4 @@ public interface Tax_Payer extends Physical_Person, Tax_Case { */ void setFrom_law(FromLaw value); - /** - * Returns the value of the 'Taxes Due' attribute. - * - * - * @return the value of the 'Taxes Due' attribute. - * @see #setTaxesDue(double) - * @see Taxation.TaxationPackage#getTax_Payer_TaxesDue() - * @model required="true" ordered="false" - * @generated - */ - double getTaxesDue(); - - /** - * Sets the value of the '{@link Taxation.Tax_Payer#getTaxesDue Taxes Due}' attribute. - * - * - * @param value the new value of the 'Taxes Due' attribute. - * @see #getTaxesDue() - * @generated - */ - void setTaxesDue(double value); - } // Tax_Payer diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/TaxationPackage.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/TaxationPackage.java index 8706121f..3746e63a 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/TaxationPackage.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/TaxationPackage.java @@ -385,15 +385,6 @@ public interface TaxationPackage extends EPackage { */ int PHYSICAL_PERSON = 3; - /** - * The feature id for the 'Is assisting spouse' attribute. - * - * - * @generated - * @ordered - */ - int PHYSICAL_PERSON__IS_ASSISTING_SPOUSE = 0; - /** * The feature id for the 'SS No' attribute. * @@ -401,7 +392,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int PHYSICAL_PERSON__SS_NO = 1; + int PHYSICAL_PERSON__SS_NO = 0; /** * The feature id for the 'Addresses' reference list. @@ -410,7 +401,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int PHYSICAL_PERSON__ADDRESSES = 2; + int PHYSICAL_PERSON__ADDRESSES = 1; /** * The feature id for the 'Birth year' attribute. @@ -419,7 +410,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int PHYSICAL_PERSON__BIRTH_YEAR = 3; + int PHYSICAL_PERSON__BIRTH_YEAR = 2; /** * The feature id for the 'Disability percentage' attribute. @@ -428,7 +419,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int PHYSICAL_PERSON__DISABILITY_PERCENTAGE = 4; + int PHYSICAL_PERSON__DISABILITY_PERCENTAGE = 3; /** * The feature id for the 'Disability type' attribute. @@ -437,16 +428,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int PHYSICAL_PERSON__DISABILITY_TYPE = 5; - - /** - * The feature id for the 'Is affiliated personnaly to social security' attribute. - * - * - * @generated - * @ordered - */ - int PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY = 6; + int PHYSICAL_PERSON__DISABILITY_TYPE = 4; /** * The feature id for the 'Birth month' attribute. @@ -455,7 +437,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int PHYSICAL_PERSON__BIRTH_MONTH = 7; + int PHYSICAL_PERSON__BIRTH_MONTH = 5; /** * The feature id for the 'Birth day' attribute. @@ -464,7 +446,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int PHYSICAL_PERSON__BIRTH_DAY = 8; + int PHYSICAL_PERSON__BIRTH_DAY = 6; /** * The feature id for the 'Expenses' reference list. @@ -473,7 +455,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int PHYSICAL_PERSON__EXPENSES = 9; + int PHYSICAL_PERSON__EXPENSES = 7; /** * The feature id for the 'Is widower' attribute. @@ -482,7 +464,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int PHYSICAL_PERSON__IS_WIDOWER = 10; + int PHYSICAL_PERSON__IS_WIDOWER = 8; /** * The number of structural features of the 'Physical Person' class. @@ -491,7 +473,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int PHYSICAL_PERSON_FEATURE_COUNT = 11; + int PHYSICAL_PERSON_FEATURE_COUNT = 9; /** * The number of operations of the 'Physical Person' class. @@ -512,15 +494,6 @@ public interface TaxationPackage extends EPackage { */ int TAX_PAYER = 2; - /** - * The feature id for the 'Is assisting spouse' attribute. - * - * - * @generated - * @ordered - */ - int TAX_PAYER__IS_ASSISTING_SPOUSE = PHYSICAL_PERSON__IS_ASSISTING_SPOUSE; - /** * The feature id for the 'SS No' attribute. * @@ -566,15 +539,6 @@ public interface TaxationPackage extends EPackage { */ int TAX_PAYER__DISABILITY_TYPE = PHYSICAL_PERSON__DISABILITY_TYPE; - /** - * The feature id for the 'Is affiliated personnaly to social security' attribute. - * - * - * @generated - * @ordered - */ - int TAX_PAYER__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY = PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY; - /** * The feature id for the 'Birth month' attribute. * @@ -647,15 +611,6 @@ public interface TaxationPackage extends EPackage { */ int TAX_PAYER__FROM_LAW = PHYSICAL_PERSON_FEATURE_COUNT + 3; - /** - * The feature id for the 'Taxes Due' attribute. - * - * - * @generated - * @ordered - */ - int TAX_PAYER__TAXES_DUE = PHYSICAL_PERSON_FEATURE_COUNT + 4; - /** * The number of structural features of the 'Tax Payer' class. * @@ -663,7 +618,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_PAYER_FEATURE_COUNT = PHYSICAL_PERSON_FEATURE_COUNT + 5; + int TAX_PAYER_FEATURE_COUNT = PHYSICAL_PERSON_FEATURE_COUNT + 4; /** * The number of operations of the 'Tax Payer' class. @@ -857,15 +812,6 @@ public interface TaxationPackage extends EPackage { */ int DEPENDENT = 6; - /** - * The feature id for the 'Is assisting spouse' attribute. - * - * - * @generated - * @ordered - */ - int DEPENDENT__IS_ASSISTING_SPOUSE = PHYSICAL_PERSON__IS_ASSISTING_SPOUSE; - /** * The feature id for the 'SS No' attribute. * @@ -911,15 +857,6 @@ public interface TaxationPackage extends EPackage { */ int DEPENDENT__DISABILITY_TYPE = PHYSICAL_PERSON__DISABILITY_TYPE; - /** - * The feature id for the 'Is affiliated personnaly to social security' attribute. - * - * - * @generated - * @ordered - */ - int DEPENDENT__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY = PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY; - /** * The feature id for the 'Birth month' attribute. * @@ -1047,15 +984,6 @@ public interface TaxationPackage extends EPackage { */ int EXTERNAL_ALLOWANCE = 7; - /** - * The feature id for the 'Amount' attribute. - * - * - * @generated - * @ordered - */ - int EXTERNAL_ALLOWANCE__AMOUNT = 0; - /** * The feature id for the 'Grantor' attribute. * @@ -1063,7 +991,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int EXTERNAL_ALLOWANCE__GRANTOR = 1; + int EXTERNAL_ALLOWANCE__GRANTOR = 0; /** * The feature id for the 'Starting year' attribute. @@ -1072,7 +1000,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int EXTERNAL_ALLOWANCE__STARTING_YEAR = 2; + int EXTERNAL_ALLOWANCE__STARTING_YEAR = 1; /** * The feature id for the 'Ending year' attribute. @@ -1081,7 +1009,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int EXTERNAL_ALLOWANCE__ENDING_YEAR = 3; + int EXTERNAL_ALLOWANCE__ENDING_YEAR = 2; /** * The feature id for the 'Reciver' reference. @@ -1090,7 +1018,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int EXTERNAL_ALLOWANCE__RECIVER = 4; + int EXTERNAL_ALLOWANCE__RECIVER = 3; /** * The feature id for the 'Id5' attribute. @@ -1099,7 +1027,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int EXTERNAL_ALLOWANCE__ID5 = 5; + int EXTERNAL_ALLOWANCE__ID5 = 4; /** * The feature id for the 'Person' container reference. @@ -1108,7 +1036,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int EXTERNAL_ALLOWANCE__PERSON = 6; + int EXTERNAL_ALLOWANCE__PERSON = 5; /** * The number of structural features of the 'External Allowance' class. @@ -1117,7 +1045,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int EXTERNAL_ALLOWANCE_FEATURE_COUNT = 7; + int EXTERNAL_ALLOWANCE_FEATURE_COUNT = 6; /** * The number of operations of the 'External Allowance' class. @@ -1558,15 +1486,6 @@ public interface TaxationPackage extends EPackage { */ int INCOME_TYPE = 14; - /** - * The feature id for the 'Subject To Withholding Tax' attribute. - * - * - * @generated - * @ordered - */ - int INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX = 0; - /** * The feature id for the 'Id8' attribute. * @@ -1574,7 +1493,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME_TYPE__ID8 = 1; + int INCOME_TYPE__ID8 = 0; /** * The feature id for the 'Income' container reference. @@ -1583,7 +1502,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME_TYPE__INCOME = 2; + int INCOME_TYPE__INCOME = 1; /** * The number of structural features of the 'Income Type' class. @@ -1592,7 +1511,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME_TYPE_FEATURE_COUNT = 3; + int INCOME_TYPE_FEATURE_COUNT = 2; /** * The number of operations of the 'Income Type' class. @@ -1622,15 +1541,6 @@ public interface TaxationPackage extends EPackage { */ int TAX_CARD__CARD_IDENTIFIER = 0; - /** - * The feature id for the 'Tax card type' attribute. - * - * - * @generated - * @ordered - */ - int TAX_CARD__TAX_CARD_TYPE = 1; - /** * The feature id for the 'Tax office' attribute. * @@ -1638,7 +1548,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__TAX_OFFICE = 2; + int TAX_CARD__TAX_OFFICE = 1; /** * The feature id for the 'Percentage of witholding' attribute. @@ -1647,7 +1557,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__PERCENTAGE_OF_WITHOLDING = 3; + int TAX_CARD__PERCENTAGE_OF_WITHOLDING = 2; /** * The feature id for the 'Tax payers name surname' attribute list. @@ -1656,7 +1566,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__TAX_PAYERS_NAME_SURNAME = 4; + int TAX_CARD__TAX_PAYERS_NAME_SURNAME = 3; /** * The feature id for the 'Tax payers partner name surname' attribute list. @@ -1665,7 +1575,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME = 5; + int TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME = 4; /** * The feature id for the 'Tax payers address' reference. @@ -1674,7 +1584,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__TAX_PAYERS_ADDRESS = 6; + int TAX_CARD__TAX_PAYERS_ADDRESS = 5; /** * The feature id for the 'Jobs Employer SS No' attribute. @@ -1683,7 +1593,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__JOBS_EMPLOYER_SS_NO = 7; + int TAX_CARD__JOBS_EMPLOYER_SS_NO = 6; /** * The feature id for the 'Jobs employers name' attribute. @@ -1692,7 +1602,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__JOBS_EMPLOYERS_NAME = 8; + int TAX_CARD__JOBS_EMPLOYERS_NAME = 7; /** * The feature id for the 'Jobs activity type' attribute. @@ -1701,7 +1611,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__JOBS_ACTIVITY_TYPE = 9; + int TAX_CARD__JOBS_ACTIVITY_TYPE = 8; /** * The feature id for the 'Jobs place of work' attribute. @@ -1710,7 +1620,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__JOBS_PLACE_OF_WORK = 10; + int TAX_CARD__JOBS_PLACE_OF_WORK = 9; /** * The feature id for the 'Deduction FD daily' attribute. @@ -1719,7 +1629,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_FD_DAILY = 11; + int TAX_CARD__DEDUCTION_FD_DAILY = 10; /** * The feature id for the 'Deduction FD monthly' attribute. @@ -1728,7 +1638,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_FD_MONTHLY = 12; + int TAX_CARD__DEDUCTION_FD_MONTHLY = 11; /** * The feature id for the 'Deduction AC daily' attribute. @@ -1737,7 +1647,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_AC_DAILY = 13; + int TAX_CARD__DEDUCTION_AC_DAILY = 12; /** * The feature id for the 'Deduction AC monthly' attribute. @@ -1746,7 +1656,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_AC_MONTHLY = 14; + int TAX_CARD__DEDUCTION_AC_MONTHLY = 13; /** * The feature id for the 'Deduction AC yearly' attribute. @@ -1755,7 +1665,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_AC_YEARLY = 15; + int TAX_CARD__DEDUCTION_AC_YEARLY = 14; /** * The feature id for the 'Deduction CE daily' attribute. @@ -1764,7 +1674,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_CE_DAILY = 16; + int TAX_CARD__DEDUCTION_CE_DAILY = 15; /** * The feature id for the 'Deduction CE monthly' attribute. @@ -1773,7 +1683,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_CE_MONTHLY = 17; + int TAX_CARD__DEDUCTION_CE_MONTHLY = 16; /** * The feature id for the 'Deduction CE yearly' attribute. @@ -1782,7 +1692,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_CE_YEARLY = 18; + int TAX_CARD__DEDUCTION_CE_YEARLY = 17; /** * The feature id for the 'Deduction DS daily' attribute. @@ -1791,7 +1701,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_DS_DAILY = 19; + int TAX_CARD__DEDUCTION_DS_DAILY = 18; /** * The feature id for the 'Deduction DS monthly' attribute. @@ -1800,7 +1710,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_DS_MONTHLY = 20; + int TAX_CARD__DEDUCTION_DS_MONTHLY = 19; /** * The feature id for the 'Deduction FO daily' attribute. @@ -1809,7 +1719,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_FO_DAILY = 21; + int TAX_CARD__DEDUCTION_FO_DAILY = 20; /** * The feature id for the 'Deduction FO monthly' attribute. @@ -1818,7 +1728,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_FO_MONTHLY = 22; + int TAX_CARD__DEDUCTION_FO_MONTHLY = 21; /** * The feature id for the 'Deduction FO yearly' attribute. @@ -1827,7 +1737,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_FO_YEARLY = 23; + int TAX_CARD__DEDUCTION_FO_YEARLY = 22; /** * The feature id for the 'Credit CIS daily' attribute. @@ -1836,7 +1746,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__CREDIT_CIS_DAILY = 24; + int TAX_CARD__CREDIT_CIS_DAILY = 23; /** * The feature id for the 'Credit CIS monthly' attribute. @@ -1845,7 +1755,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__CREDIT_CIS_MONTHLY = 25; + int TAX_CARD__CREDIT_CIS_MONTHLY = 24; /** * The feature id for the 'Credit CIM daily' attribute. @@ -1854,7 +1764,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__CREDIT_CIM_DAILY = 26; + int TAX_CARD__CREDIT_CIM_DAILY = 25; /** * The feature id for the 'Validity' attribute. @@ -1863,7 +1773,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__VALIDITY = 27; + int TAX_CARD__VALIDITY = 26; /** * The feature id for the 'Income Tax Credit' reference list. @@ -1872,7 +1782,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__INCOME_TAX_CREDIT = 28; + int TAX_CARD__INCOME_TAX_CREDIT = 27; /** * The feature id for the 'Previous' reference. @@ -1881,7 +1791,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__PREVIOUS = 29; + int TAX_CARD__PREVIOUS = 28; /** * The feature id for the 'Current tax card' reference. @@ -1890,7 +1800,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__CURRENT_TAX_CARD = 30; + int TAX_CARD__CURRENT_TAX_CARD = 29; /** * The feature id for the 'Credit CIM yearly' attribute. @@ -1899,7 +1809,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__CREDIT_CIM_YEARLY = 31; + int TAX_CARD__CREDIT_CIM_YEARLY = 30; /** * The feature id for the 'Deduction DS Alimony yearly' attribute. @@ -1908,7 +1818,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY = 32; + int TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY = 31; /** * The feature id for the 'Deduction DS Debt yearly' attribute. @@ -1917,7 +1827,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__DEDUCTION_DS_DEBT_YEARLY = 33; + int TAX_CARD__DEDUCTION_DS_DEBT_YEARLY = 32; /** * The feature id for the 'Income' container reference. @@ -1926,7 +1836,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD__INCOME = 34; + int TAX_CARD__INCOME = 33; /** * The number of structural features of the 'Tax Card' class. @@ -1935,7 +1845,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CARD_FEATURE_COUNT = 35; + int TAX_CARD_FEATURE_COUNT = 34; /** * The number of operations of the 'Tax Card' class. @@ -2466,15 +2376,6 @@ public interface TaxationPackage extends EPackage { */ int NON_RESIDENT_TAX_PAYER = 22; - /** - * The feature id for the 'Is assisting spouse' attribute. - * - * - * @generated - * @ordered - */ - int NON_RESIDENT_TAX_PAYER__IS_ASSISTING_SPOUSE = TAX_PAYER__IS_ASSISTING_SPOUSE; - /** * The feature id for the 'SS No' attribute. * @@ -2520,15 +2421,6 @@ public interface TaxationPackage extends EPackage { */ int NON_RESIDENT_TAX_PAYER__DISABILITY_TYPE = TAX_PAYER__DISABILITY_TYPE; - /** - * The feature id for the 'Is affiliated personnaly to social security' attribute. - * - * - * @generated - * @ordered - */ - int NON_RESIDENT_TAX_PAYER__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY = TAX_PAYER__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY; - /** * The feature id for the 'Birth month' attribute. * @@ -2601,15 +2493,6 @@ public interface TaxationPackage extends EPackage { */ int NON_RESIDENT_TAX_PAYER__FROM_LAW = TAX_PAYER__FROM_LAW; - /** - * The feature id for the 'Taxes Due' attribute. - * - * - * @generated - * @ordered - */ - int NON_RESIDENT_TAX_PAYER__TAXES_DUE = TAX_PAYER__TAXES_DUE; - /** * The feature id for the 'Is assimilated to resident' attribute. * @@ -2756,15 +2639,6 @@ public interface TaxationPackage extends EPackage { */ int RESIDENT_TAX_PAYER = 24; - /** - * The feature id for the 'Is assisting spouse' attribute. - * - * - * @generated - * @ordered - */ - int RESIDENT_TAX_PAYER__IS_ASSISTING_SPOUSE = TAX_PAYER__IS_ASSISTING_SPOUSE; - /** * The feature id for the 'SS No' attribute. * @@ -2810,15 +2684,6 @@ public interface TaxationPackage extends EPackage { */ int RESIDENT_TAX_PAYER__DISABILITY_TYPE = TAX_PAYER__DISABILITY_TYPE; - /** - * The feature id for the 'Is affiliated personnaly to social security' attribute. - * - * - * @generated - * @ordered - */ - int RESIDENT_TAX_PAYER__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY = TAX_PAYER__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY; - /** * The feature id for the 'Birth month' attribute. * @@ -2891,15 +2756,6 @@ public interface TaxationPackage extends EPackage { */ int RESIDENT_TAX_PAYER__FROM_LAW = TAX_PAYER__FROM_LAW; - /** - * The feature id for the 'Taxes Due' attribute. - * - * - * @generated - * @ordered - */ - int RESIDENT_TAX_PAYER__TAXES_DUE = TAX_PAYER__TAXES_DUE; - /** * The number of structural features of the 'Resident Tax Payer' class. * @@ -2928,15 +2784,6 @@ public interface TaxationPackage extends EPackage { */ int TRADE_AND_BUSINESS_INCOME = 25; - /** - * The feature id for the 'Subject To Withholding Tax' attribute. - * - * - * @generated - * @ordered - */ - int TRADE_AND_BUSINESS_INCOME__SUBJECT_TO_WITHHOLDING_TAX = INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX; - /** * The feature id for the 'Id8' attribute. * @@ -2983,15 +2830,6 @@ public interface TaxationPackage extends EPackage { */ int AGRICULTURE_AND_FORESTRY_INCOME = 26; - /** - * The feature id for the 'Subject To Withholding Tax' attribute. - * - * - * @generated - * @ordered - */ - int AGRICULTURE_AND_FORESTRY_INCOME__SUBJECT_TO_WITHHOLDING_TAX = INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX; - /** * The feature id for the 'Id8' attribute. * @@ -3038,15 +2876,6 @@ public interface TaxationPackage extends EPackage { */ int PENSIONS_AND_ANNUITIES_INCOME = 27; - /** - * The feature id for the 'Subject To Withholding Tax' attribute. - * - * - * @generated - * @ordered - */ - int PENSIONS_AND_ANNUITIES_INCOME__SUBJECT_TO_WITHHOLDING_TAX = INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX; - /** * The feature id for the 'Id8' attribute. * @@ -3102,15 +2931,6 @@ public interface TaxationPackage extends EPackage { */ int CAPITAL_AND_INVESTMENTS_INCOME = 28; - /** - * The feature id for the 'Subject To Withholding Tax' attribute. - * - * - * @generated - * @ordered - */ - int CAPITAL_AND_INVESTMENTS_INCOME__SUBJECT_TO_WITHHOLDING_TAX = INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX; - /** * The feature id for the 'Id8' attribute. * @@ -3157,15 +2977,6 @@ public interface TaxationPackage extends EPackage { */ int EMPLOYMENT_INCOME = 29; - /** - * The feature id for the 'Subject To Withholding Tax' attribute. - * - * - * @generated - * @ordered - */ - int EMPLOYMENT_INCOME__SUBJECT_TO_WITHHOLDING_TAX = INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX; - /** * The feature id for the 'Id8' attribute. * @@ -3212,15 +3023,6 @@ public interface TaxationPackage extends EPackage { */ int RENTALS_AND_LEASES_INCOME = 30; - /** - * The feature id for the 'Subject To Withholding Tax' attribute. - * - * - * @generated - * @ordered - */ - int RENTALS_AND_LEASES_INCOME__SUBJECT_TO_WITHHOLDING_TAX = INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX; - /** * The feature id for the 'Id8' attribute. * @@ -3813,15 +3615,6 @@ public interface TaxationPackage extends EPackage { */ int FD__DISTANCE_DECLARED_IN_JANUARY = PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT + 0; - /** - * The feature id for the 'Calculated distance' attribute. - * - * - * @generated - * @ordered - */ - int FD__CALCULATED_DISTANCE = PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT + 1; - /** * The number of structural features of the 'FD' class. * @@ -3829,7 +3622,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int FD_FEATURE_COUNT = PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT + 2; + int FD_FEATURE_COUNT = PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT + 1; /** * The number of operations of the 'FD' class. @@ -3850,15 +3643,6 @@ public interface TaxationPackage extends EPackage { */ int FO = 38; - /** - * The feature id for the 'Rate type for FO' attribute. - * - * - * @generated - * @ordered - */ - int FO__RATE_TYPE_FOR_FO = PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT + 0; - /** * The number of structural features of the 'FO' class. * @@ -3866,7 +3650,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int FO_FEATURE_COUNT = PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT + 1; + int FO_FEATURE_COUNT = PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT + 0; /** * The number of operations of the 'FO' class. @@ -4116,33 +3900,6 @@ public interface TaxationPackage extends EPackage { */ int DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY = DS_FEATURE_COUNT + 0; - /** - * The feature id for the 'Increase for life insurance' attribute. - * - * - * @generated - * @ordered - */ - int DS_FOR_PRIVATE_INSURANCE_AND_PLAN__INCREASE_FOR_LIFE_INSURANCE = DS_FEATURE_COUNT + 1; - - /** - * The feature id for the 'Maximum deductible amount for private insurance' attribute. - * - * - * @generated - * @ordered - */ - int DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE = DS_FEATURE_COUNT + 2; - - /** - * The feature id for the 'Maximum deductible amount for old age pension plan' attribute. - * - * - * @generated - * @ordered - */ - int DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN = DS_FEATURE_COUNT + 3; - /** * The number of structural features of the 'DS for Private Insurance and Plan' class. * @@ -4150,7 +3907,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int DS_FOR_PRIVATE_INSURANCE_AND_PLAN_FEATURE_COUNT = DS_FEATURE_COUNT + 4; + int DS_FOR_PRIVATE_INSURANCE_AND_PLAN_FEATURE_COUNT = DS_FEATURE_COUNT + 1; /** * The number of operations of the 'DS for Private Insurance and Plan' class. @@ -4426,15 +4183,6 @@ public interface TaxationPackage extends EPackage { */ int PERMANENT_EXPENSE__CATEGORY = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 0; - /** - * The feature id for the 'Is eligible for deduction' attribute. - * - * - * @generated - * @ordered - */ - int PERMANENT_EXPENSE__IS_ELIGIBLE_FOR_DEDUCTION = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 1; - /** * The number of structural features of the 'Permanent Expense' class. * @@ -4442,7 +4190,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int PERMANENT_EXPENSE_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 2; + int PERMANENT_EXPENSE_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 1; /** * The number of operations of the 'Permanent Expense' class. @@ -4635,15 +4383,6 @@ public interface TaxationPackage extends EPackage { */ int PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 1; - /** - * The feature id for the 'Is private insurance and plan eligible for deduction' attribute. - * - * - * @generated - * @ordered - */ - int PRIVATE_INSURANCE_AND_PLAN__IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 2; - /** * The number of structural features of the 'Private Insurance and Plan' class. * @@ -4651,7 +4390,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int PRIVATE_INSURANCE_AND_PLAN_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 3; + int PRIVATE_INSURANCE_AND_PLAN_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 2; /** * The number of operations of the 'Private Insurance and Plan' class. @@ -4853,15 +4592,6 @@ public interface TaxationPackage extends EPackage { */ int DONATION__BENEFICIARY1 = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 0; - /** - * The feature id for the 'Is beneficiary eligible' attribute. - * - * - * @generated - * @ordered - */ - int DONATION__IS_BENEFICIARY_ELIGIBLE = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 1; - /** * The feature id for the 'Is donation reported' attribute. * @@ -4869,7 +4599,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int DONATION__IS_DONATION_REPORTED = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 2; + int DONATION__IS_DONATION_REPORTED = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 1; /** * The number of structural features of the 'Donation' class. @@ -4878,7 +4608,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int DONATION_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 3; + int DONATION_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 2; /** * The number of operations of the 'Donation' class. @@ -4962,42 +4692,6 @@ public interface TaxationPackage extends EPackage { */ int LOSS_CARRYFORWARD__BENEFICIARY = SPECIAL_EXPENSE_DS__BENEFICIARY; - /** - * The feature id for the 'Regular accountability' attribute. - * - * - * @generated - * @ordered - */ - int LOSS_CARRYFORWARD__REGULAR_ACCOUNTABILITY = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Compensation by other means' attribute. - * - * - * @generated - * @ordered - */ - int LOSS_CARRYFORWARD__COMPENSATION_BY_OTHER_MEANS = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 1; - - /** - * The feature id for the 'Tax payer has inherited business ownership' attribute. - * - * - * @generated - * @ordered - */ - int LOSS_CARRYFORWARD__TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 2; - - /** - * The feature id for the 'Tax payer has been partner in business' attribute. - * - * - * @generated - * @ordered - */ - int LOSS_CARRYFORWARD__TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 3; - /** * The number of structural features of the 'Loss Carryforward' class. * @@ -5005,7 +4699,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int LOSS_CARRYFORWARD_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 4; + int LOSS_CARRYFORWARD_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 0; /** * The number of operations of the 'Loss Carryforward' class. @@ -5519,16 +5213,6 @@ public interface TaxationPackage extends EPackage { */ int COUNTRY = 60; - /** - * The meta object id for the '{@link Taxation.Tax_Card_Type Tax Card Type}' enum. - * - * - * @see Taxation.Tax_Card_Type - * @see Taxation.impl.TaxationPackageImpl#getTax_Card_Type() - * @generated - */ - int TAX_CARD_TYPE = 61; - /** * The meta object id for the '{@link Taxation.Tax_Office Tax Office}' enum. * @@ -5537,7 +5221,7 @@ public interface TaxationPackage extends EPackage { * @see Taxation.impl.TaxationPackageImpl#getTax_Office() * @generated */ - int TAX_OFFICE = 62; + int TAX_OFFICE = 61; /** * The meta object id for the '{@link Taxation.Tax_Class_Category Tax Class Category}' enum. @@ -5547,7 +5231,7 @@ public interface TaxationPackage extends EPackage { * @see Taxation.impl.TaxationPackageImpl#getTax_Class_Category() * @generated */ - int TAX_CLASS_CATEGORY = 63; + int TAX_CLASS_CATEGORY = 62; /** * The meta object id for the '{@link Taxation.Job_Activity Job Activity}' enum. @@ -5557,7 +5241,7 @@ public interface TaxationPackage extends EPackage { * @see Taxation.impl.TaxationPackageImpl#getJob_Activity() * @generated */ - int JOB_ACTIVITY = 64; + int JOB_ACTIVITY = 63; /** * The meta object id for the '{@link Taxation.Town Town}' enum. @@ -5567,17 +5251,7 @@ public interface TaxationPackage extends EPackage { * @see Taxation.impl.TaxationPackageImpl#getTown() * @generated */ - int TOWN = 65; - - /** - * The meta object id for the '{@link Taxation.Type_of_Rate Type of Rate}' enum. - * - * - * @see Taxation.Type_of_Rate - * @see Taxation.impl.TaxationPackageImpl#getType_of_Rate() - * @generated - */ - int TYPE_OF_RATE = 66; + int TOWN = 64; /** * The meta object id for the '{@link Taxation.CE_Type CE Type}' enum. @@ -5587,7 +5261,7 @@ public interface TaxationPackage extends EPackage { * @see Taxation.impl.TaxationPackageImpl#getCE_Type() * @generated */ - int CE_TYPE = 67; + int CE_TYPE = 65; /** * The meta object id for the '{@link Taxation.Expense_Purpose Expense Purpose}' enum. @@ -5597,7 +5271,7 @@ public interface TaxationPackage extends EPackage { * @see Taxation.impl.TaxationPackageImpl#getExpense_Purpose() * @generated */ - int EXPENSE_PURPOSE = 68; + int EXPENSE_PURPOSE = 66; /** * The meta object id for the '{@link Taxation.Dependent_Type Dependent Type}' enum. @@ -5607,7 +5281,7 @@ public interface TaxationPackage extends EPackage { * @see Taxation.impl.TaxationPackageImpl#getDependent_Type() * @generated */ - int DEPENDENT_TYPE = 69; + int DEPENDENT_TYPE = 67; /** * The meta object id for the '{@link Taxation.Separation_Causes Separation Causes}' enum. @@ -5617,7 +5291,7 @@ public interface TaxationPackage extends EPackage { * @see Taxation.impl.TaxationPackageImpl#getSeparation_Causes() * @generated */ - int SEPARATION_CAUSES = 70; + int SEPARATION_CAUSES = 68; /** * The meta object id for the '{@link Taxation.Category_of_Permanent_Expense Category of Permanent Expense}' enum. @@ -5627,7 +5301,7 @@ public interface TaxationPackage extends EPackage { * @see Taxation.impl.TaxationPackageImpl#getCategory_of_Permanent_Expense() * @generated */ - int CATEGORY_OF_PERMANENT_EXPENSE = 71; + int CATEGORY_OF_PERMANENT_EXPENSE = 69; /** * The meta object id for the '{@link Taxation.Category_of_Health_and_Pension_Insurances Category of Health and Pension Insurances}' enum. @@ -5637,7 +5311,7 @@ public interface TaxationPackage extends EPackage { * @see Taxation.impl.TaxationPackageImpl#getCategory_of_Health_and_Pension_Insurances() * @generated */ - int CATEGORY_OF_HEALTH_AND_PENSION_INSURANCES = 72; + int CATEGORY_OF_HEALTH_AND_PENSION_INSURANCES = 70; /** * The meta object id for the '{@link Taxation.Category_of_Private_Insurance_and_Plan Category of Private Insurance and Plan}' enum. @@ -5647,7 +5321,7 @@ public interface TaxationPackage extends EPackage { * @see Taxation.impl.TaxationPackageImpl#getCategory_of_Private_Insurance_and_Plan() * @generated */ - int CATEGORY_OF_PRIVATE_INSURANCE_AND_PLAN = 73; + int CATEGORY_OF_PRIVATE_INSURANCE_AND_PLAN = 71; /** * The meta object id for the '{@link Taxation.Legal_Union_Types Legal Union Types}' enum. @@ -5657,7 +5331,7 @@ public interface TaxationPackage extends EPackage { * @see Taxation.impl.TaxationPackageImpl#getLegal_Union_Types() * @generated */ - int LEGAL_UNION_TYPES = 74; + int LEGAL_UNION_TYPES = 72; /** @@ -6053,17 +5727,6 @@ public interface TaxationPackage extends EPackage { */ EReference getTax_Payer_From_law(); - /** - * Returns the meta object for the attribute '{@link Taxation.Tax_Payer#getTaxesDue Taxes Due}'. - * - * - * @return the meta object for the attribute 'Taxes Due'. - * @see Taxation.Tax_Payer#getTaxesDue() - * @see #getTax_Payer() - * @generated - */ - EAttribute getTax_Payer_TaxesDue(); - /** * Returns the meta object for class '{@link Taxation.Physical_Person Physical Person}'. * @@ -6074,17 +5737,6 @@ public interface TaxationPackage extends EPackage { */ EClass getPhysical_Person(); - /** - * Returns the meta object for the attribute '{@link Taxation.Physical_Person#isIs_assisting_spouse Is assisting spouse}'. - * - * - * @return the meta object for the attribute 'Is assisting spouse'. - * @see Taxation.Physical_Person#isIs_assisting_spouse() - * @see #getPhysical_Person() - * @generated - */ - EAttribute getPhysical_Person_Is_assisting_spouse(); - /** * Returns the meta object for the attribute '{@link Taxation.Physical_Person#getSSNo SS No}'. * @@ -6140,17 +5792,6 @@ public interface TaxationPackage extends EPackage { */ EAttribute getPhysical_Person_Disability_type(); - /** - * Returns the meta object for the attribute '{@link Taxation.Physical_Person#isIs_affiliated_personnaly_to_social_security Is affiliated personnaly to social security}'. - * - * - * @return the meta object for the attribute 'Is affiliated personnaly to social security'. - * @see Taxation.Physical_Person#isIs_affiliated_personnaly_to_social_security() - * @see #getPhysical_Person() - * @generated - */ - EAttribute getPhysical_Person_Is_affiliated_personnaly_to_social_security(); - /** * Returns the meta object for the attribute '{@link Taxation.Physical_Person#getBirth_month Birth month}'. * @@ -6455,17 +6096,6 @@ public interface TaxationPackage extends EPackage { */ EClass getExternal_Allowance(); - /** - * Returns the meta object for the attribute '{@link Taxation.External_Allowance#getAmount Amount}'. - * - * - * @return the meta object for the attribute 'Amount'. - * @see Taxation.External_Allowance#getAmount() - * @see #getExternal_Allowance() - * @generated - */ - EAttribute getExternal_Allowance_Amount(); - /** * Returns the meta object for the attribute '{@link Taxation.External_Allowance#getGrantor Grantor}'. * @@ -6910,17 +6540,6 @@ public interface TaxationPackage extends EPackage { */ EClass getIncome_Type(); - /** - * Returns the meta object for the attribute '{@link Taxation.Income_Type#isSubjectToWithholdingTax Subject To Withholding Tax}'. - * - * - * @return the meta object for the attribute 'Subject To Withholding Tax'. - * @see Taxation.Income_Type#isSubjectToWithholdingTax() - * @see #getIncome_Type() - * @generated - */ - EAttribute getIncome_Type_SubjectToWithholdingTax(); - /** * Returns the meta object for the attribute '{@link Taxation.Income_Type#getId8 Id8}'. * @@ -6964,17 +6583,6 @@ public interface TaxationPackage extends EPackage { */ EAttribute getTax_Card_Card_identifier(); - /** - * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getTax_card_type Tax card type}'. - * - * - * @return the meta object for the attribute 'Tax card type'. - * @see Taxation.Tax_Card#getTax_card_type() - * @see #getTax_Card() - * @generated - */ - EAttribute getTax_Card_Tax_card_type(); - /** * Returns the meta object for the attribute '{@link Taxation.Tax_Card#getTax_office Tax office}'. * @@ -7779,17 +7387,6 @@ public interface TaxationPackage extends EPackage { */ EAttribute getFD_Distance_declared_in_january(); - /** - * Returns the meta object for the attribute '{@link Taxation.FD#getCalculated_distance Calculated distance}'. - * - * - * @return the meta object for the attribute 'Calculated distance'. - * @see Taxation.FD#getCalculated_distance() - * @see #getFD() - * @generated - */ - EAttribute getFD_Calculated_distance(); - /** * Returns the meta object for class '{@link Taxation.Professional_Expenses_Deduction Professional Expenses Deduction}'. * @@ -7810,17 +7407,6 @@ public interface TaxationPackage extends EPackage { */ EClass getFO(); - /** - * Returns the meta object for the attribute '{@link Taxation.FO#getRate_type_for_FO Rate type for FO}'. - * - * - * @return the meta object for the attribute 'Rate type for FO'. - * @see Taxation.FO#getRate_type_for_FO() - * @see #getFO() - * @generated - */ - EAttribute getFO_Rate_type_for_FO(); - /** * Returns the meta object for class '{@link Taxation.DS_for_Permanent_Expense DS for Permanent Expense}'. * @@ -7926,39 +7512,6 @@ public interface TaxationPackage extends EPackage { */ EAttribute getDS_for_Private_Insurance_and_Plan_Private_insurance_and_plan_category(); - /** - * Returns the meta object for the attribute '{@link Taxation.DS_for_Private_Insurance_and_Plan#getIncrease_for_life_insurance Increase for life insurance}'. - * - * - * @return the meta object for the attribute 'Increase for life insurance'. - * @see Taxation.DS_for_Private_Insurance_and_Plan#getIncrease_for_life_insurance() - * @see #getDS_for_Private_Insurance_and_Plan() - * @generated - */ - EAttribute getDS_for_Private_Insurance_and_Plan_Increase_for_life_insurance(); - - /** - * Returns the meta object for the attribute '{@link Taxation.DS_for_Private_Insurance_and_Plan#getMaximum_deductible_amount_for_private_insurance Maximum deductible amount for private insurance}'. - * - * - * @return the meta object for the attribute 'Maximum deductible amount for private insurance'. - * @see Taxation.DS_for_Private_Insurance_and_Plan#getMaximum_deductible_amount_for_private_insurance() - * @see #getDS_for_Private_Insurance_and_Plan() - * @generated - */ - EAttribute getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_private_insurance(); - - /** - * Returns the meta object for the attribute '{@link Taxation.DS_for_Private_Insurance_and_Plan#getMaximum_deductible_amount_for_old_age_pension_plan Maximum deductible amount for old age pension plan}'. - * - * - * @return the meta object for the attribute 'Maximum deductible amount for old age pension plan'. - * @see Taxation.DS_for_Private_Insurance_and_Plan#getMaximum_deductible_amount_for_old_age_pension_plan() - * @see #getDS_for_Private_Insurance_and_Plan() - * @generated - */ - EAttribute getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_old_age_pension_plan(); - /** * Returns the meta object for class '{@link Taxation.DS_for_Loss_Carryforward DS for Loss Carryforward}'. * @@ -8000,17 +7553,6 @@ public interface TaxationPackage extends EPackage { */ EAttribute getPermanent_Expense_Category(); - /** - * Returns the meta object for the attribute '{@link Taxation.Permanent_Expense#isIs_eligible_for_deduction Is eligible for deduction}'. - * - * - * @return the meta object for the attribute 'Is eligible for deduction'. - * @see Taxation.Permanent_Expense#isIs_eligible_for_deduction() - * @see #getPermanent_Expense() - * @generated - */ - EAttribute getPermanent_Expense_Is_eligible_for_deduction(); - /** * Returns the meta object for class '{@link Taxation.Special_Expense_DS Special Expense DS}'. * @@ -8063,17 +7605,6 @@ public interface TaxationPackage extends EPackage { */ EAttribute getPrivate_Insurance_and_Plan_Duration_of_contract(); - /** - * Returns the meta object for the attribute '{@link Taxation.Private_Insurance_and_Plan#isIs_private_insurance_and_plan_eligible_for_deduction Is private insurance and plan eligible for deduction}'. - * - * - * @return the meta object for the attribute 'Is private insurance and plan eligible for deduction'. - * @see Taxation.Private_Insurance_and_Plan#isIs_private_insurance_and_plan_eligible_for_deduction() - * @see #getPrivate_Insurance_and_Plan() - * @generated - */ - EAttribute getPrivate_Insurance_and_Plan_Is_private_insurance_and_plan_eligible_for_deduction(); - /** * Returns the meta object for class '{@link Taxation.Health_and_Pension_Insurance Health and Pension Insurance}'. * @@ -8127,17 +7658,6 @@ public interface TaxationPackage extends EPackage { */ EAttribute getDonation_Beneficiary1(); - /** - * Returns the meta object for the attribute '{@link Taxation.Donation#isIs_beneficiary_eligible Is beneficiary eligible}'. - * - * - * @return the meta object for the attribute 'Is beneficiary eligible'. - * @see Taxation.Donation#isIs_beneficiary_eligible() - * @see #getDonation() - * @generated - */ - EAttribute getDonation_Is_beneficiary_eligible(); - /** * Returns the meta object for the attribute '{@link Taxation.Donation#isIs_donation_reported Is donation reported}'. * @@ -8159,50 +7679,6 @@ public interface TaxationPackage extends EPackage { */ EClass getLoss_Carryforward(); - /** - * Returns the meta object for the attribute '{@link Taxation.Loss_Carryforward#isRegular_accountability Regular accountability}'. - * - * - * @return the meta object for the attribute 'Regular accountability'. - * @see Taxation.Loss_Carryforward#isRegular_accountability() - * @see #getLoss_Carryforward() - * @generated - */ - EAttribute getLoss_Carryforward_Regular_accountability(); - - /** - * Returns the meta object for the attribute '{@link Taxation.Loss_Carryforward#isCompensation_by_other_means Compensation by other means}'. - * - * - * @return the meta object for the attribute 'Compensation by other means'. - * @see Taxation.Loss_Carryforward#isCompensation_by_other_means() - * @see #getLoss_Carryforward() - * @generated - */ - EAttribute getLoss_Carryforward_Compensation_by_other_means(); - - /** - * Returns the meta object for the attribute '{@link Taxation.Loss_Carryforward#isTax_payer_has_inherited_business_ownership Tax payer has inherited business ownership}'. - * - * - * @return the meta object for the attribute 'Tax payer has inherited business ownership'. - * @see Taxation.Loss_Carryforward#isTax_payer_has_inherited_business_ownership() - * @see #getLoss_Carryforward() - * @generated - */ - EAttribute getLoss_Carryforward_Tax_payer_has_inherited_business_ownership(); - - /** - * Returns the meta object for the attribute '{@link Taxation.Loss_Carryforward#isTax_payer_has_been_partner_in_business Tax payer has been partner in business}'. - * - * - * @return the meta object for the attribute 'Tax payer has been partner in business'. - * @see Taxation.Loss_Carryforward#isTax_payer_has_been_partner_in_business() - * @see #getLoss_Carryforward() - * @generated - */ - EAttribute getLoss_Carryforward_Tax_payer_has_been_partner_in_business(); - /** * Returns the meta object for class '{@link Taxation.Spousal_Expense_AC Spousal Expense AC}'. * @@ -8305,16 +7781,6 @@ public interface TaxationPackage extends EPackage { */ EEnum getCountry(); - /** - * Returns the meta object for enum '{@link Taxation.Tax_Card_Type Tax Card Type}'. - * - * - * @return the meta object for enum 'Tax Card Type'. - * @see Taxation.Tax_Card_Type - * @generated - */ - EEnum getTax_Card_Type(); - /** * Returns the meta object for enum '{@link Taxation.Tax_Office Tax Office}'. * @@ -8355,16 +7821,6 @@ public interface TaxationPackage extends EPackage { */ EEnum getTown(); - /** - * Returns the meta object for enum '{@link Taxation.Type_of_Rate Type of Rate}'. - * - * - * @return the meta object for enum 'Type of Rate'. - * @see Taxation.Type_of_Rate - * @generated - */ - EEnum getType_of_Rate(); - /** * Returns the meta object for enum '{@link Taxation.CE_Type CE Type}'. * @@ -8762,14 +8218,6 @@ public interface TaxationPackage extends EPackage { */ EReference TAX_PAYER__FROM_LAW = eINSTANCE.getTax_Payer_From_law(); - /** - * The meta object literal for the 'Taxes Due' attribute feature. - * - * - * @generated - */ - EAttribute TAX_PAYER__TAXES_DUE = eINSTANCE.getTax_Payer_TaxesDue(); - /** * The meta object literal for the '{@link Taxation.impl.Physical_PersonImpl Physical Person}' class. * @@ -8780,14 +8228,6 @@ public interface TaxationPackage extends EPackage { */ EClass PHYSICAL_PERSON = eINSTANCE.getPhysical_Person(); - /** - * The meta object literal for the 'Is assisting spouse' attribute feature. - * - * - * @generated - */ - EAttribute PHYSICAL_PERSON__IS_ASSISTING_SPOUSE = eINSTANCE.getPhysical_Person_Is_assisting_spouse(); - /** * The meta object literal for the 'SS No' attribute feature. * @@ -8828,14 +8268,6 @@ public interface TaxationPackage extends EPackage { */ EAttribute PHYSICAL_PERSON__DISABILITY_TYPE = eINSTANCE.getPhysical_Person_Disability_type(); - /** - * The meta object literal for the 'Is affiliated personnaly to social security' attribute feature. - * - * - * @generated - */ - EAttribute PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY = eINSTANCE.getPhysical_Person_Is_affiliated_personnaly_to_social_security(); - /** * The meta object literal for the 'Birth month' attribute feature. * @@ -9068,14 +8500,6 @@ public interface TaxationPackage extends EPackage { */ EClass EXTERNAL_ALLOWANCE = eINSTANCE.getExternal_Allowance(); - /** - * The meta object literal for the 'Amount' attribute feature. - * - * - * @generated - */ - EAttribute EXTERNAL_ALLOWANCE__AMOUNT = eINSTANCE.getExternal_Allowance_Amount(); - /** * The meta object literal for the 'Grantor' attribute feature. * @@ -9418,14 +8842,6 @@ public interface TaxationPackage extends EPackage { */ EClass INCOME_TYPE = eINSTANCE.getIncome_Type(); - /** - * The meta object literal for the 'Subject To Withholding Tax' attribute feature. - * - * - * @generated - */ - EAttribute INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX = eINSTANCE.getIncome_Type_SubjectToWithholdingTax(); - /** * The meta object literal for the 'Id8' attribute feature. * @@ -9460,14 +8876,6 @@ public interface TaxationPackage extends EPackage { */ EAttribute TAX_CARD__CARD_IDENTIFIER = eINSTANCE.getTax_Card_Card_identifier(); - /** - * The meta object literal for the 'Tax card type' attribute feature. - * - * - * @generated - */ - EAttribute TAX_CARD__TAX_CARD_TYPE = eINSTANCE.getTax_Card_Tax_card_type(); - /** * The meta object literal for the 'Tax office' attribute feature. * @@ -10110,14 +9518,6 @@ public interface TaxationPackage extends EPackage { */ EAttribute FD__DISTANCE_DECLARED_IN_JANUARY = eINSTANCE.getFD_Distance_declared_in_january(); - /** - * The meta object literal for the 'Calculated distance' attribute feature. - * - * - * @generated - */ - EAttribute FD__CALCULATED_DISTANCE = eINSTANCE.getFD_Calculated_distance(); - /** * The meta object literal for the '{@link Taxation.impl.Professional_Expenses_DeductionImpl Professional Expenses Deduction}' class. * @@ -10138,14 +9538,6 @@ public interface TaxationPackage extends EPackage { */ EClass FO = eINSTANCE.getFO(); - /** - * The meta object literal for the 'Rate type for FO' attribute feature. - * - * - * @generated - */ - EAttribute FO__RATE_TYPE_FOR_FO = eINSTANCE.getFO_Rate_type_for_FO(); - /** * The meta object literal for the '{@link Taxation.impl.DS_for_Permanent_ExpenseImpl DS for Permanent Expense}' class. * @@ -10236,30 +9628,6 @@ public interface TaxationPackage extends EPackage { */ EAttribute DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY = eINSTANCE.getDS_for_Private_Insurance_and_Plan_Private_insurance_and_plan_category(); - /** - * The meta object literal for the 'Increase for life insurance' attribute feature. - * - * - * @generated - */ - EAttribute DS_FOR_PRIVATE_INSURANCE_AND_PLAN__INCREASE_FOR_LIFE_INSURANCE = eINSTANCE.getDS_for_Private_Insurance_and_Plan_Increase_for_life_insurance(); - - /** - * The meta object literal for the 'Maximum deductible amount for private insurance' attribute feature. - * - * - * @generated - */ - EAttribute DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE = eINSTANCE.getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_private_insurance(); - - /** - * The meta object literal for the 'Maximum deductible amount for old age pension plan' attribute feature. - * - * - * @generated - */ - EAttribute DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN = eINSTANCE.getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_old_age_pension_plan(); - /** * The meta object literal for the '{@link Taxation.impl.DS_for_Loss_CarryforwardImpl DS for Loss Carryforward}' class. * @@ -10298,14 +9666,6 @@ public interface TaxationPackage extends EPackage { */ EAttribute PERMANENT_EXPENSE__CATEGORY = eINSTANCE.getPermanent_Expense_Category(); - /** - * The meta object literal for the 'Is eligible for deduction' attribute feature. - * - * - * @generated - */ - EAttribute PERMANENT_EXPENSE__IS_ELIGIBLE_FOR_DEDUCTION = eINSTANCE.getPermanent_Expense_Is_eligible_for_deduction(); - /** * The meta object literal for the '{@link Taxation.impl.Special_Expense_DSImpl Special Expense DS}' class. * @@ -10352,14 +9712,6 @@ public interface TaxationPackage extends EPackage { */ EAttribute PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT = eINSTANCE.getPrivate_Insurance_and_Plan_Duration_of_contract(); - /** - * The meta object literal for the 'Is private insurance and plan eligible for deduction' attribute feature. - * - * - * @generated - */ - EAttribute PRIVATE_INSURANCE_AND_PLAN__IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION = eINSTANCE.getPrivate_Insurance_and_Plan_Is_private_insurance_and_plan_eligible_for_deduction(); - /** * The meta object literal for the '{@link Taxation.impl.Health_and_Pension_InsuranceImpl Health and Pension Insurance}' class. * @@ -10404,14 +9756,6 @@ public interface TaxationPackage extends EPackage { */ EAttribute DONATION__BENEFICIARY1 = eINSTANCE.getDonation_Beneficiary1(); - /** - * The meta object literal for the 'Is beneficiary eligible' attribute feature. - * - * - * @generated - */ - EAttribute DONATION__IS_BENEFICIARY_ELIGIBLE = eINSTANCE.getDonation_Is_beneficiary_eligible(); - /** * The meta object literal for the 'Is donation reported' attribute feature. * @@ -10430,38 +9774,6 @@ public interface TaxationPackage extends EPackage { */ EClass LOSS_CARRYFORWARD = eINSTANCE.getLoss_Carryforward(); - /** - * The meta object literal for the 'Regular accountability' attribute feature. - * - * - * @generated - */ - EAttribute LOSS_CARRYFORWARD__REGULAR_ACCOUNTABILITY = eINSTANCE.getLoss_Carryforward_Regular_accountability(); - - /** - * The meta object literal for the 'Compensation by other means' attribute feature. - * - * - * @generated - */ - EAttribute LOSS_CARRYFORWARD__COMPENSATION_BY_OTHER_MEANS = eINSTANCE.getLoss_Carryforward_Compensation_by_other_means(); - - /** - * The meta object literal for the 'Tax payer has inherited business ownership' attribute feature. - * - * - * @generated - */ - EAttribute LOSS_CARRYFORWARD__TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP = eINSTANCE.getLoss_Carryforward_Tax_payer_has_inherited_business_ownership(); - - /** - * The meta object literal for the 'Tax payer has been partner in business' attribute feature. - * - * - * @generated - */ - EAttribute LOSS_CARRYFORWARD__TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS = eINSTANCE.getLoss_Carryforward_Tax_payer_has_been_partner_in_business(); - /** * The meta object literal for the '{@link Taxation.impl.Spousal_Expense_ACImpl Spousal Expense AC}' class. * @@ -10558,16 +9870,6 @@ public interface TaxationPackage extends EPackage { */ EEnum COUNTRY = eINSTANCE.getCountry(); - /** - * The meta object literal for the '{@link Taxation.Tax_Card_Type Tax Card Type}' enum. - * - * - * @see Taxation.Tax_Card_Type - * @see Taxation.impl.TaxationPackageImpl#getTax_Card_Type() - * @generated - */ - EEnum TAX_CARD_TYPE = eINSTANCE.getTax_Card_Type(); - /** * The meta object literal for the '{@link Taxation.Tax_Office Tax Office}' enum. * @@ -10608,16 +9910,6 @@ public interface TaxationPackage extends EPackage { */ EEnum TOWN = eINSTANCE.getTown(); - /** - * The meta object literal for the '{@link Taxation.Type_of_Rate Type of Rate}' enum. - * - * - * @see Taxation.Type_of_Rate - * @see Taxation.impl.TaxationPackageImpl#getType_of_Rate() - * @generated - */ - EEnum TYPE_OF_RATE = eINSTANCE.getType_of_Rate(); - /** * The meta object literal for the '{@link Taxation.CE_Type CE Type}' enum. * diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Private_Insurance_and_PlanImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Private_Insurance_and_PlanImpl.java index d33beb48..8ad3e39d 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Private_Insurance_and_PlanImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DS_for_Private_Insurance_and_PlanImpl.java @@ -21,9 +21,6 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl; *

        *
          *
        • {@link Taxation.impl.DS_for_Private_Insurance_and_PlanImpl#getPrivate_insurance_and_plan_category Private insurance and plan category}
        • - *
        • {@link Taxation.impl.DS_for_Private_Insurance_and_PlanImpl#getIncrease_for_life_insurance Increase for life insurance}
        • - *
        • {@link Taxation.impl.DS_for_Private_Insurance_and_PlanImpl#getMaximum_deductible_amount_for_private_insurance Maximum deductible amount for private insurance}
        • - *
        • {@link Taxation.impl.DS_for_Private_Insurance_and_PlanImpl#getMaximum_deductible_amount_for_old_age_pension_plan Maximum deductible amount for old age pension plan}
        • *
        * * @generated @@ -49,66 +46,6 @@ public class DS_for_Private_Insurance_and_PlanImpl extends DSImpl implements DS_ */ protected Category_of_Private_Insurance_and_Plan private_insurance_and_plan_category = PRIVATE_INSURANCE_AND_PLAN_CATEGORY_EDEFAULT; - /** - * The default value of the '{@link #getIncrease_for_life_insurance() Increase for life insurance}' attribute. - * - * - * @see #getIncrease_for_life_insurance() - * @generated - * @ordered - */ - protected static final double INCREASE_FOR_LIFE_INSURANCE_EDEFAULT = 0.0; - - /** - * The cached value of the '{@link #getIncrease_for_life_insurance() Increase for life insurance}' attribute. - * - * - * @see #getIncrease_for_life_insurance() - * @generated - * @ordered - */ - protected double increase_for_life_insurance = INCREASE_FOR_LIFE_INSURANCE_EDEFAULT; - - /** - * The default value of the '{@link #getMaximum_deductible_amount_for_private_insurance() Maximum deductible amount for private insurance}' attribute. - * - * - * @see #getMaximum_deductible_amount_for_private_insurance() - * @generated - * @ordered - */ - protected static final double MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE_EDEFAULT = 0.0; - - /** - * The cached value of the '{@link #getMaximum_deductible_amount_for_private_insurance() Maximum deductible amount for private insurance}' attribute. - * - * - * @see #getMaximum_deductible_amount_for_private_insurance() - * @generated - * @ordered - */ - protected double maximum_deductible_amount_for_private_insurance = MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE_EDEFAULT; - - /** - * The default value of the '{@link #getMaximum_deductible_amount_for_old_age_pension_plan() Maximum deductible amount for old age pension plan}' attribute. - * - * - * @see #getMaximum_deductible_amount_for_old_age_pension_plan() - * @generated - * @ordered - */ - protected static final double MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN_EDEFAULT = 0.0; - - /** - * The cached value of the '{@link #getMaximum_deductible_amount_for_old_age_pension_plan() Maximum deductible amount for old age pension plan}' attribute. - * - * - * @see #getMaximum_deductible_amount_for_old_age_pension_plan() - * @generated - * @ordered - */ - protected double maximum_deductible_amount_for_old_age_pension_plan = MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN_EDEFAULT; - /** * * @@ -151,75 +88,6 @@ public class DS_for_Private_Insurance_and_PlanImpl extends DSImpl implements DS_ eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY, oldPrivate_insurance_and_plan_category, private_insurance_and_plan_category)); } - /** - * - * - * @generated - */ - @Override - public double getIncrease_for_life_insurance() { - return increase_for_life_insurance; - } - - /** - * - * - * @generated - */ - @Override - public void setIncrease_for_life_insurance(double newIncrease_for_life_insurance) { - double oldIncrease_for_life_insurance = increase_for_life_insurance; - increase_for_life_insurance = newIncrease_for_life_insurance; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__INCREASE_FOR_LIFE_INSURANCE, oldIncrease_for_life_insurance, increase_for_life_insurance)); - } - - /** - * - * - * @generated - */ - @Override - public double getMaximum_deductible_amount_for_private_insurance() { - return maximum_deductible_amount_for_private_insurance; - } - - /** - * - * - * @generated - */ - @Override - public void setMaximum_deductible_amount_for_private_insurance(double newMaximum_deductible_amount_for_private_insurance) { - double oldMaximum_deductible_amount_for_private_insurance = maximum_deductible_amount_for_private_insurance; - maximum_deductible_amount_for_private_insurance = newMaximum_deductible_amount_for_private_insurance; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE, oldMaximum_deductible_amount_for_private_insurance, maximum_deductible_amount_for_private_insurance)); - } - - /** - * - * - * @generated - */ - @Override - public double getMaximum_deductible_amount_for_old_age_pension_plan() { - return maximum_deductible_amount_for_old_age_pension_plan; - } - - /** - * - * - * @generated - */ - @Override - public void setMaximum_deductible_amount_for_old_age_pension_plan(double newMaximum_deductible_amount_for_old_age_pension_plan) { - double oldMaximum_deductible_amount_for_old_age_pension_plan = maximum_deductible_amount_for_old_age_pension_plan; - maximum_deductible_amount_for_old_age_pension_plan = newMaximum_deductible_amount_for_old_age_pension_plan; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN, oldMaximum_deductible_amount_for_old_age_pension_plan, maximum_deductible_amount_for_old_age_pension_plan)); - } - /** * * @@ -230,12 +98,6 @@ public class DS_for_Private_Insurance_and_PlanImpl extends DSImpl implements DS_ switch (featureID) { case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY: return getPrivate_insurance_and_plan_category(); - case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__INCREASE_FOR_LIFE_INSURANCE: - return getIncrease_for_life_insurance(); - case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE: - return getMaximum_deductible_amount_for_private_insurance(); - case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN: - return getMaximum_deductible_amount_for_old_age_pension_plan(); } return super.eGet(featureID, resolve, coreType); } @@ -251,15 +113,6 @@ public class DS_for_Private_Insurance_and_PlanImpl extends DSImpl implements DS_ case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY: setPrivate_insurance_and_plan_category((Category_of_Private_Insurance_and_Plan)newValue); return; - case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__INCREASE_FOR_LIFE_INSURANCE: - setIncrease_for_life_insurance((Double)newValue); - return; - case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE: - setMaximum_deductible_amount_for_private_insurance((Double)newValue); - return; - case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN: - setMaximum_deductible_amount_for_old_age_pension_plan((Double)newValue); - return; } super.eSet(featureID, newValue); } @@ -275,15 +128,6 @@ public class DS_for_Private_Insurance_and_PlanImpl extends DSImpl implements DS_ case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY: setPrivate_insurance_and_plan_category(PRIVATE_INSURANCE_AND_PLAN_CATEGORY_EDEFAULT); return; - case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__INCREASE_FOR_LIFE_INSURANCE: - setIncrease_for_life_insurance(INCREASE_FOR_LIFE_INSURANCE_EDEFAULT); - return; - case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE: - setMaximum_deductible_amount_for_private_insurance(MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE_EDEFAULT); - return; - case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN: - setMaximum_deductible_amount_for_old_age_pension_plan(MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN_EDEFAULT); - return; } super.eUnset(featureID); } @@ -298,12 +142,6 @@ public class DS_for_Private_Insurance_and_PlanImpl extends DSImpl implements DS_ switch (featureID) { case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY: return private_insurance_and_plan_category != PRIVATE_INSURANCE_AND_PLAN_CATEGORY_EDEFAULT; - case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__INCREASE_FOR_LIFE_INSURANCE: - return increase_for_life_insurance != INCREASE_FOR_LIFE_INSURANCE_EDEFAULT; - case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE: - return maximum_deductible_amount_for_private_insurance != MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE_EDEFAULT; - case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN: - return maximum_deductible_amount_for_old_age_pension_plan != MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN_EDEFAULT; } return super.eIsSet(featureID); } @@ -320,12 +158,6 @@ public class DS_for_Private_Insurance_and_PlanImpl extends DSImpl implements DS_ StringBuilder result = new StringBuilder(super.toString()); result.append(" (private_insurance_and_plan_category: "); result.append(private_insurance_and_plan_category); - result.append(", increase_for_life_insurance: "); - result.append(increase_for_life_insurance); - result.append(", maximum_deductible_amount_for_private_insurance: "); - result.append(maximum_deductible_amount_for_private_insurance); - result.append(", maximum_deductible_amount_for_old_age_pension_plan: "); - result.append(maximum_deductible_amount_for_old_age_pension_plan); result.append(')'); return result.toString(); } diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DonationImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DonationImpl.java index e631901a..2ea09206 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DonationImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/DonationImpl.java @@ -20,7 +20,6 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl; *

        *
          *
        • {@link Taxation.impl.DonationImpl#getBeneficiary1 Beneficiary1}
        • - *
        • {@link Taxation.impl.DonationImpl#isIs_beneficiary_eligible Is beneficiary eligible}
        • *
        • {@link Taxation.impl.DonationImpl#isIs_donation_reported Is donation reported}
        • *
        * @@ -47,26 +46,6 @@ public class DonationImpl extends Special_Expense_DSImpl implements Donation { */ protected String beneficiary1 = BENEFICIARY1_EDEFAULT; - /** - * The default value of the '{@link #isIs_beneficiary_eligible() Is beneficiary eligible}' attribute. - * - * - * @see #isIs_beneficiary_eligible() - * @generated - * @ordered - */ - protected static final boolean IS_BENEFICIARY_ELIGIBLE_EDEFAULT = false; - - /** - * The cached value of the '{@link #isIs_beneficiary_eligible() Is beneficiary eligible}' attribute. - * - * - * @see #isIs_beneficiary_eligible() - * @generated - * @ordered - */ - protected boolean is_beneficiary_eligible = IS_BENEFICIARY_ELIGIBLE_EDEFAULT; - /** * The default value of the '{@link #isIs_donation_reported() Is donation reported}' attribute. * @@ -129,29 +108,6 @@ public class DonationImpl extends Special_Expense_DSImpl implements Donation { eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DONATION__BENEFICIARY1, oldBeneficiary1, beneficiary1)); } - /** - * - * - * @generated - */ - @Override - public boolean isIs_beneficiary_eligible() { - return is_beneficiary_eligible; - } - - /** - * - * - * @generated - */ - @Override - public void setIs_beneficiary_eligible(boolean newIs_beneficiary_eligible) { - boolean oldIs_beneficiary_eligible = is_beneficiary_eligible; - is_beneficiary_eligible = newIs_beneficiary_eligible; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DONATION__IS_BENEFICIARY_ELIGIBLE, oldIs_beneficiary_eligible, is_beneficiary_eligible)); - } - /** * * @@ -185,8 +141,6 @@ public class DonationImpl extends Special_Expense_DSImpl implements Donation { switch (featureID) { case TaxationPackage.DONATION__BENEFICIARY1: return getBeneficiary1(); - case TaxationPackage.DONATION__IS_BENEFICIARY_ELIGIBLE: - return isIs_beneficiary_eligible(); case TaxationPackage.DONATION__IS_DONATION_REPORTED: return isIs_donation_reported(); } @@ -204,9 +158,6 @@ public class DonationImpl extends Special_Expense_DSImpl implements Donation { case TaxationPackage.DONATION__BENEFICIARY1: setBeneficiary1((String)newValue); return; - case TaxationPackage.DONATION__IS_BENEFICIARY_ELIGIBLE: - setIs_beneficiary_eligible((Boolean)newValue); - return; case TaxationPackage.DONATION__IS_DONATION_REPORTED: setIs_donation_reported((Boolean)newValue); return; @@ -225,9 +176,6 @@ public class DonationImpl extends Special_Expense_DSImpl implements Donation { case TaxationPackage.DONATION__BENEFICIARY1: setBeneficiary1(BENEFICIARY1_EDEFAULT); return; - case TaxationPackage.DONATION__IS_BENEFICIARY_ELIGIBLE: - setIs_beneficiary_eligible(IS_BENEFICIARY_ELIGIBLE_EDEFAULT); - return; case TaxationPackage.DONATION__IS_DONATION_REPORTED: setIs_donation_reported(IS_DONATION_REPORTED_EDEFAULT); return; @@ -245,8 +193,6 @@ public class DonationImpl extends Special_Expense_DSImpl implements Donation { switch (featureID) { case TaxationPackage.DONATION__BENEFICIARY1: return BENEFICIARY1_EDEFAULT == null ? beneficiary1 != null : !BENEFICIARY1_EDEFAULT.equals(beneficiary1); - case TaxationPackage.DONATION__IS_BENEFICIARY_ELIGIBLE: - return is_beneficiary_eligible != IS_BENEFICIARY_ELIGIBLE_EDEFAULT; case TaxationPackage.DONATION__IS_DONATION_REPORTED: return is_donation_reported != IS_DONATION_REPORTED_EDEFAULT; } @@ -265,8 +211,6 @@ public class DonationImpl extends Special_Expense_DSImpl implements Donation { StringBuilder result = new StringBuilder(super.toString()); result.append(" (beneficiary1: "); result.append(beneficiary1); - result.append(", is_beneficiary_eligible: "); - result.append(is_beneficiary_eligible); result.append(", is_donation_reported: "); result.append(is_donation_reported); result.append(')'); diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/External_AllowanceImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/External_AllowanceImpl.java index d73a0014..5a846b56 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/External_AllowanceImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/External_AllowanceImpl.java @@ -27,7 +27,6 @@ import org.eclipse.emf.ecore.util.EcoreUtil; * The following features are implemented: *

        *
          - *
        • {@link Taxation.impl.External_AllowanceImpl#getAmount Amount}
        • *
        • {@link Taxation.impl.External_AllowanceImpl#getGrantor Grantor}
        • *
        • {@link Taxation.impl.External_AllowanceImpl#getStarting_year Starting year}
        • *
        • {@link Taxation.impl.External_AllowanceImpl#getEnding_year Ending year}
        • @@ -39,26 +38,6 @@ import org.eclipse.emf.ecore.util.EcoreUtil; * @generated */ public class External_AllowanceImpl extends MinimalEObjectImpl.Container implements External_Allowance { - /** - * The default value of the '{@link #getAmount() Amount}' attribute. - * - * - * @see #getAmount() - * @generated - * @ordered - */ - protected static final double AMOUNT_EDEFAULT = 0.0; - - /** - * The cached value of the '{@link #getAmount() Amount}' attribute. - * - * - * @see #getAmount() - * @generated - * @ordered - */ - protected double amount = AMOUNT_EDEFAULT; - /** * The default value of the '{@link #getGrantor() Grantor}' attribute. * @@ -168,29 +147,6 @@ public class External_AllowanceImpl extends MinimalEObjectImpl.Container impleme return TaxationPackage.Literals.EXTERNAL_ALLOWANCE; } - /** - * - * - * @generated - */ - @Override - public double getAmount() { - return amount; - } - - /** - * - * - * @generated - */ - @Override - public void setAmount(double newAmount) { - double oldAmount = amount; - amount = newAmount; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXTERNAL_ALLOWANCE__AMOUNT, oldAmount, amount)); - } - /** * * @@ -418,8 +374,6 @@ public class External_AllowanceImpl extends MinimalEObjectImpl.Container impleme @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { - case TaxationPackage.EXTERNAL_ALLOWANCE__AMOUNT: - return getAmount(); case TaxationPackage.EXTERNAL_ALLOWANCE__GRANTOR: return getGrantor(); case TaxationPackage.EXTERNAL_ALLOWANCE__STARTING_YEAR: @@ -445,9 +399,6 @@ public class External_AllowanceImpl extends MinimalEObjectImpl.Container impleme @Override public void eSet(int featureID, Object newValue) { switch (featureID) { - case TaxationPackage.EXTERNAL_ALLOWANCE__AMOUNT: - setAmount((Double)newValue); - return; case TaxationPackage.EXTERNAL_ALLOWANCE__GRANTOR: setGrantor((Grantor)newValue); return; @@ -478,9 +429,6 @@ public class External_AllowanceImpl extends MinimalEObjectImpl.Container impleme @Override public void eUnset(int featureID) { switch (featureID) { - case TaxationPackage.EXTERNAL_ALLOWANCE__AMOUNT: - setAmount(AMOUNT_EDEFAULT); - return; case TaxationPackage.EXTERNAL_ALLOWANCE__GRANTOR: setGrantor(GRANTOR_EDEFAULT); return; @@ -511,8 +459,6 @@ public class External_AllowanceImpl extends MinimalEObjectImpl.Container impleme @Override public boolean eIsSet(int featureID) { switch (featureID) { - case TaxationPackage.EXTERNAL_ALLOWANCE__AMOUNT: - return amount != AMOUNT_EDEFAULT; case TaxationPackage.EXTERNAL_ALLOWANCE__GRANTOR: return grantor != GRANTOR_EDEFAULT; case TaxationPackage.EXTERNAL_ALLOWANCE__STARTING_YEAR: @@ -539,9 +485,7 @@ public class External_AllowanceImpl extends MinimalEObjectImpl.Container impleme if (eIsProxy()) return super.toString(); StringBuilder result = new StringBuilder(super.toString()); - result.append(" (amount: "); - result.append(amount); - result.append(", grantor: "); + result.append(" (grantor: "); result.append(grantor); result.append(", starting_year: "); result.append(starting_year); diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FDImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FDImpl.java index 70b890f3..06e852c4 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FDImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FDImpl.java @@ -20,7 +20,6 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl; *

          *
            *
          • {@link Taxation.impl.FDImpl#getDistance_declared_in_january Distance declared in january}
          • - *
          • {@link Taxation.impl.FDImpl#getCalculated_distance Calculated distance}
          • *
          * * @generated @@ -46,26 +45,6 @@ public class FDImpl extends Professional_Expenses_DeductionImpl implements FD { */ protected double distance_declared_in_january = DISTANCE_DECLARED_IN_JANUARY_EDEFAULT; - /** - * The default value of the '{@link #getCalculated_distance() Calculated distance}' attribute. - * - * - * @see #getCalculated_distance() - * @generated - * @ordered - */ - protected static final double CALCULATED_DISTANCE_EDEFAULT = 0.0; - - /** - * The cached value of the '{@link #getCalculated_distance() Calculated distance}' attribute. - * - * - * @see #getCalculated_distance() - * @generated - * @ordered - */ - protected double calculated_distance = CALCULATED_DISTANCE_EDEFAULT; - /** * * @@ -108,29 +87,6 @@ public class FDImpl extends Professional_Expenses_DeductionImpl implements FD { eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY, oldDistance_declared_in_january, distance_declared_in_january)); } - /** - * - * - * @generated - */ - @Override - public double getCalculated_distance() { - return calculated_distance; - } - - /** - * - * - * @generated - */ - @Override - public void setCalculated_distance(double newCalculated_distance) { - double oldCalculated_distance = calculated_distance; - calculated_distance = newCalculated_distance; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FD__CALCULATED_DISTANCE, oldCalculated_distance, calculated_distance)); - } - /** * * @@ -141,8 +97,6 @@ public class FDImpl extends Professional_Expenses_DeductionImpl implements FD { switch (featureID) { case TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY: return getDistance_declared_in_january(); - case TaxationPackage.FD__CALCULATED_DISTANCE: - return getCalculated_distance(); } return super.eGet(featureID, resolve, coreType); } @@ -158,9 +112,6 @@ public class FDImpl extends Professional_Expenses_DeductionImpl implements FD { case TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY: setDistance_declared_in_january((Double)newValue); return; - case TaxationPackage.FD__CALCULATED_DISTANCE: - setCalculated_distance((Double)newValue); - return; } super.eSet(featureID, newValue); } @@ -176,9 +127,6 @@ public class FDImpl extends Professional_Expenses_DeductionImpl implements FD { case TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY: setDistance_declared_in_january(DISTANCE_DECLARED_IN_JANUARY_EDEFAULT); return; - case TaxationPackage.FD__CALCULATED_DISTANCE: - setCalculated_distance(CALCULATED_DISTANCE_EDEFAULT); - return; } super.eUnset(featureID); } @@ -193,8 +141,6 @@ public class FDImpl extends Professional_Expenses_DeductionImpl implements FD { switch (featureID) { case TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY: return distance_declared_in_january != DISTANCE_DECLARED_IN_JANUARY_EDEFAULT; - case TaxationPackage.FD__CALCULATED_DISTANCE: - return calculated_distance != CALCULATED_DISTANCE_EDEFAULT; } return super.eIsSet(featureID); } @@ -211,8 +157,6 @@ public class FDImpl extends Professional_Expenses_DeductionImpl implements FD { StringBuilder result = new StringBuilder(super.toString()); result.append(" (distance_declared_in_january: "); result.append(distance_declared_in_january); - result.append(", calculated_distance: "); - result.append(calculated_distance); result.append(')'); return result.toString(); } diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FOImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FOImpl.java index d03ee8bc..5ffe9463 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FOImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FOImpl.java @@ -4,48 +4,16 @@ package Taxation.impl; import Taxation.FO; import Taxation.TaxationPackage; -import Taxation.Type_of_Rate; - -import org.eclipse.emf.common.notify.Notification; - import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.impl.ENotificationImpl; - /** * * An implementation of the model object 'FO'. * - *

          - * The following features are implemented: - *

          - *
            - *
          • {@link Taxation.impl.FOImpl#getRate_type_for_FO Rate type for FO}
          • - *
          * * @generated */ public class FOImpl extends Professional_Expenses_DeductionImpl implements FO { - /** - * The default value of the '{@link #getRate_type_for_FO() Rate type for FO}' attribute. - * - * - * @see #getRate_type_for_FO() - * @generated - * @ordered - */ - protected static final Type_of_Rate RATE_TYPE_FOR_FO_EDEFAULT = Type_of_Rate.REGULAR; - - /** - * The cached value of the '{@link #getRate_type_for_FO() Rate type for FO}' attribute. - * - * - * @see #getRate_type_for_FO() - * @generated - * @ordered - */ - protected Type_of_Rate rate_type_for_FO = RATE_TYPE_FOR_FO_EDEFAULT; - /** * * @@ -65,101 +33,4 @@ public class FOImpl extends Professional_Expenses_DeductionImpl implements FO { return TaxationPackage.Literals.FO; } - /** - * - * - * @generated - */ - @Override - public Type_of_Rate getRate_type_for_FO() { - return rate_type_for_FO; - } - - /** - * - * - * @generated - */ - @Override - public void setRate_type_for_FO(Type_of_Rate newRate_type_for_FO) { - Type_of_Rate oldRate_type_for_FO = rate_type_for_FO; - rate_type_for_FO = newRate_type_for_FO == null ? RATE_TYPE_FOR_FO_EDEFAULT : newRate_type_for_FO; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FO__RATE_TYPE_FOR_FO, oldRate_type_for_FO, rate_type_for_FO)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case TaxationPackage.FO__RATE_TYPE_FOR_FO: - return getRate_type_for_FO(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case TaxationPackage.FO__RATE_TYPE_FOR_FO: - setRate_type_for_FO((Type_of_Rate)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case TaxationPackage.FO__RATE_TYPE_FOR_FO: - setRate_type_for_FO(RATE_TYPE_FOR_FO_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case TaxationPackage.FO__RATE_TYPE_FOR_FO: - return rate_type_for_FO != RATE_TYPE_FOR_FO_EDEFAULT; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (rate_type_for_FO: "); - result.append(rate_type_for_FO); - result.append(')'); - return result.toString(); - } - } //FOImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_TypeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_TypeImpl.java index 7b2564b2..4a111a01 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_TypeImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Income_TypeImpl.java @@ -25,7 +25,6 @@ import org.eclipse.emf.ecore.util.EcoreUtil; * The following features are implemented: *

          *
            - *
          • {@link Taxation.impl.Income_TypeImpl#isSubjectToWithholdingTax Subject To Withholding Tax}
          • *
          • {@link Taxation.impl.Income_TypeImpl#getId8 Id8}
          • *
          • {@link Taxation.impl.Income_TypeImpl#getIncome Income}
          • *
          @@ -33,26 +32,6 @@ import org.eclipse.emf.ecore.util.EcoreUtil; * @generated */ public abstract class Income_TypeImpl extends MinimalEObjectImpl.Container implements Income_Type { - /** - * The default value of the '{@link #isSubjectToWithholdingTax() Subject To Withholding Tax}' attribute. - * - * - * @see #isSubjectToWithholdingTax() - * @generated - * @ordered - */ - protected static final boolean SUBJECT_TO_WITHHOLDING_TAX_EDEFAULT = false; - - /** - * The cached value of the '{@link #isSubjectToWithholdingTax() Subject To Withholding Tax}' attribute. - * - * - * @see #isSubjectToWithholdingTax() - * @generated - * @ordered - */ - protected boolean subjectToWithholdingTax = SUBJECT_TO_WITHHOLDING_TAX_EDEFAULT; - /** * The default value of the '{@link #getId8() Id8}' attribute. * @@ -92,29 +71,6 @@ public abstract class Income_TypeImpl extends MinimalEObjectImpl.Container imple return TaxationPackage.Literals.INCOME_TYPE; } - /** - * - * - * @generated - */ - @Override - public boolean isSubjectToWithholdingTax() { - return subjectToWithholdingTax; - } - - /** - * - * - * @generated - */ - @Override - public void setSubjectToWithholdingTax(boolean newSubjectToWithholdingTax) { - boolean oldSubjectToWithholdingTax = subjectToWithholdingTax; - subjectToWithholdingTax = newSubjectToWithholdingTax; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX, oldSubjectToWithholdingTax, subjectToWithholdingTax)); - } - /** * * @@ -233,8 +189,6 @@ public abstract class Income_TypeImpl extends MinimalEObjectImpl.Container imple @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { - case TaxationPackage.INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX: - return isSubjectToWithholdingTax(); case TaxationPackage.INCOME_TYPE__ID8: return getId8(); case TaxationPackage.INCOME_TYPE__INCOME: @@ -251,9 +205,6 @@ public abstract class Income_TypeImpl extends MinimalEObjectImpl.Container imple @Override public void eSet(int featureID, Object newValue) { switch (featureID) { - case TaxationPackage.INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX: - setSubjectToWithholdingTax((Boolean)newValue); - return; case TaxationPackage.INCOME_TYPE__ID8: setId8((String)newValue); return; @@ -272,9 +223,6 @@ public abstract class Income_TypeImpl extends MinimalEObjectImpl.Container imple @Override public void eUnset(int featureID) { switch (featureID) { - case TaxationPackage.INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX: - setSubjectToWithholdingTax(SUBJECT_TO_WITHHOLDING_TAX_EDEFAULT); - return; case TaxationPackage.INCOME_TYPE__ID8: setId8(ID8_EDEFAULT); return; @@ -293,8 +241,6 @@ public abstract class Income_TypeImpl extends MinimalEObjectImpl.Container imple @Override public boolean eIsSet(int featureID) { switch (featureID) { - case TaxationPackage.INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX: - return subjectToWithholdingTax != SUBJECT_TO_WITHHOLDING_TAX_EDEFAULT; case TaxationPackage.INCOME_TYPE__ID8: return ID8_EDEFAULT == null ? id8 != null : !ID8_EDEFAULT.equals(id8); case TaxationPackage.INCOME_TYPE__INCOME: @@ -313,9 +259,7 @@ public abstract class Income_TypeImpl extends MinimalEObjectImpl.Container imple if (eIsProxy()) return super.toString(); StringBuilder result = new StringBuilder(super.toString()); - result.append(" (subjectToWithholdingTax: "); - result.append(subjectToWithholdingTax); - result.append(", id8: "); + result.append(" (id8: "); result.append(id8); result.append(')'); return result.toString(); diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Loss_CarryforwardImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Loss_CarryforwardImpl.java index d43422f8..2f578d2c 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Loss_CarryforwardImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Loss_CarryforwardImpl.java @@ -4,110 +4,16 @@ package Taxation.impl; import Taxation.Loss_Carryforward; import Taxation.TaxationPackage; - -import org.eclipse.emf.common.notify.Notification; - import org.eclipse.emf.ecore.EClass; -import org.eclipse.emf.ecore.impl.ENotificationImpl; - /** * * An implementation of the model object 'Loss Carryforward'. * - *

          - * The following features are implemented: - *

          - *
            - *
          • {@link Taxation.impl.Loss_CarryforwardImpl#isRegular_accountability Regular accountability}
          • - *
          • {@link Taxation.impl.Loss_CarryforwardImpl#isCompensation_by_other_means Compensation by other means}
          • - *
          • {@link Taxation.impl.Loss_CarryforwardImpl#isTax_payer_has_inherited_business_ownership Tax payer has inherited business ownership}
          • - *
          • {@link Taxation.impl.Loss_CarryforwardImpl#isTax_payer_has_been_partner_in_business Tax payer has been partner in business}
          • - *
          * * @generated */ public class Loss_CarryforwardImpl extends Special_Expense_DSImpl implements Loss_Carryforward { - /** - * The default value of the '{@link #isRegular_accountability() Regular accountability}' attribute. - * - * - * @see #isRegular_accountability() - * @generated - * @ordered - */ - protected static final boolean REGULAR_ACCOUNTABILITY_EDEFAULT = false; - - /** - * The cached value of the '{@link #isRegular_accountability() Regular accountability}' attribute. - * - * - * @see #isRegular_accountability() - * @generated - * @ordered - */ - protected boolean regular_accountability = REGULAR_ACCOUNTABILITY_EDEFAULT; - - /** - * The default value of the '{@link #isCompensation_by_other_means() Compensation by other means}' attribute. - * - * - * @see #isCompensation_by_other_means() - * @generated - * @ordered - */ - protected static final boolean COMPENSATION_BY_OTHER_MEANS_EDEFAULT = false; - - /** - * The cached value of the '{@link #isCompensation_by_other_means() Compensation by other means}' attribute. - * - * - * @see #isCompensation_by_other_means() - * @generated - * @ordered - */ - protected boolean compensation_by_other_means = COMPENSATION_BY_OTHER_MEANS_EDEFAULT; - - /** - * The default value of the '{@link #isTax_payer_has_inherited_business_ownership() Tax payer has inherited business ownership}' attribute. - * - * - * @see #isTax_payer_has_inherited_business_ownership() - * @generated - * @ordered - */ - protected static final boolean TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP_EDEFAULT = false; - - /** - * The cached value of the '{@link #isTax_payer_has_inherited_business_ownership() Tax payer has inherited business ownership}' attribute. - * - * - * @see #isTax_payer_has_inherited_business_ownership() - * @generated - * @ordered - */ - protected boolean tax_payer_has_inherited_business_ownership = TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP_EDEFAULT; - - /** - * The default value of the '{@link #isTax_payer_has_been_partner_in_business() Tax payer has been partner in business}' attribute. - * - * - * @see #isTax_payer_has_been_partner_in_business() - * @generated - * @ordered - */ - protected static final boolean TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS_EDEFAULT = true; - - /** - * The cached value of the '{@link #isTax_payer_has_been_partner_in_business() Tax payer has been partner in business}' attribute. - * - * - * @see #isTax_payer_has_been_partner_in_business() - * @generated - * @ordered - */ - protected boolean tax_payer_has_been_partner_in_business = TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS_EDEFAULT; - /** * * @@ -127,206 +33,4 @@ public class Loss_CarryforwardImpl extends Special_Expense_DSImpl implements Los return TaxationPackage.Literals.LOSS_CARRYFORWARD; } - /** - * - * - * @generated - */ - @Override - public boolean isRegular_accountability() { - return regular_accountability; - } - - /** - * - * - * @generated - */ - @Override - public void setRegular_accountability(boolean newRegular_accountability) { - boolean oldRegular_accountability = regular_accountability; - regular_accountability = newRegular_accountability; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LOSS_CARRYFORWARD__REGULAR_ACCOUNTABILITY, oldRegular_accountability, regular_accountability)); - } - - /** - * - * - * @generated - */ - @Override - public boolean isCompensation_by_other_means() { - return compensation_by_other_means; - } - - /** - * - * - * @generated - */ - @Override - public void setCompensation_by_other_means(boolean newCompensation_by_other_means) { - boolean oldCompensation_by_other_means = compensation_by_other_means; - compensation_by_other_means = newCompensation_by_other_means; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LOSS_CARRYFORWARD__COMPENSATION_BY_OTHER_MEANS, oldCompensation_by_other_means, compensation_by_other_means)); - } - - /** - * - * - * @generated - */ - @Override - public boolean isTax_payer_has_inherited_business_ownership() { - return tax_payer_has_inherited_business_ownership; - } - - /** - * - * - * @generated - */ - @Override - public void setTax_payer_has_inherited_business_ownership(boolean newTax_payer_has_inherited_business_ownership) { - boolean oldTax_payer_has_inherited_business_ownership = tax_payer_has_inherited_business_ownership; - tax_payer_has_inherited_business_ownership = newTax_payer_has_inherited_business_ownership; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP, oldTax_payer_has_inherited_business_ownership, tax_payer_has_inherited_business_ownership)); - } - - /** - * - * - * @generated - */ - @Override - public boolean isTax_payer_has_been_partner_in_business() { - return tax_payer_has_been_partner_in_business; - } - - /** - * - * - * @generated - */ - @Override - public void setTax_payer_has_been_partner_in_business(boolean newTax_payer_has_been_partner_in_business) { - boolean oldTax_payer_has_been_partner_in_business = tax_payer_has_been_partner_in_business; - tax_payer_has_been_partner_in_business = newTax_payer_has_been_partner_in_business; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS, oldTax_payer_has_been_partner_in_business, tax_payer_has_been_partner_in_business)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case TaxationPackage.LOSS_CARRYFORWARD__REGULAR_ACCOUNTABILITY: - return isRegular_accountability(); - case TaxationPackage.LOSS_CARRYFORWARD__COMPENSATION_BY_OTHER_MEANS: - return isCompensation_by_other_means(); - case TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP: - return isTax_payer_has_inherited_business_ownership(); - case TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS: - return isTax_payer_has_been_partner_in_business(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case TaxationPackage.LOSS_CARRYFORWARD__REGULAR_ACCOUNTABILITY: - setRegular_accountability((Boolean)newValue); - return; - case TaxationPackage.LOSS_CARRYFORWARD__COMPENSATION_BY_OTHER_MEANS: - setCompensation_by_other_means((Boolean)newValue); - return; - case TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP: - setTax_payer_has_inherited_business_ownership((Boolean)newValue); - return; - case TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS: - setTax_payer_has_been_partner_in_business((Boolean)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case TaxationPackage.LOSS_CARRYFORWARD__REGULAR_ACCOUNTABILITY: - setRegular_accountability(REGULAR_ACCOUNTABILITY_EDEFAULT); - return; - case TaxationPackage.LOSS_CARRYFORWARD__COMPENSATION_BY_OTHER_MEANS: - setCompensation_by_other_means(COMPENSATION_BY_OTHER_MEANS_EDEFAULT); - return; - case TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP: - setTax_payer_has_inherited_business_ownership(TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP_EDEFAULT); - return; - case TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS: - setTax_payer_has_been_partner_in_business(TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case TaxationPackage.LOSS_CARRYFORWARD__REGULAR_ACCOUNTABILITY: - return regular_accountability != REGULAR_ACCOUNTABILITY_EDEFAULT; - case TaxationPackage.LOSS_CARRYFORWARD__COMPENSATION_BY_OTHER_MEANS: - return compensation_by_other_means != COMPENSATION_BY_OTHER_MEANS_EDEFAULT; - case TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP: - return tax_payer_has_inherited_business_ownership != TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP_EDEFAULT; - case TaxationPackage.LOSS_CARRYFORWARD__TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS: - return tax_payer_has_been_partner_in_business != TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS_EDEFAULT; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (regular_accountability: "); - result.append(regular_accountability); - result.append(", compensation_by_other_means: "); - result.append(compensation_by_other_means); - result.append(", tax_payer_has_inherited_business_ownership: "); - result.append(tax_payer_has_inherited_business_ownership); - result.append(", tax_payer_has_been_partner_in_business: "); - result.append(tax_payer_has_been_partner_in_business); - result.append(')'); - return result.toString(); - } - } //Loss_CarryforwardImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Permanent_ExpenseImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Permanent_ExpenseImpl.java index 9473ae17..9d88c2db 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Permanent_ExpenseImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Permanent_ExpenseImpl.java @@ -21,7 +21,6 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl; *

          *
            *
          • {@link Taxation.impl.Permanent_ExpenseImpl#getCategory Category}
          • - *
          • {@link Taxation.impl.Permanent_ExpenseImpl#isIs_eligible_for_deduction Is eligible for deduction}
          • *
          * * @generated @@ -47,26 +46,6 @@ public class Permanent_ExpenseImpl extends Special_Expense_DSImpl implements Per */ protected Category_of_Permanent_Expense category = CATEGORY_EDEFAULT; - /** - * The default value of the '{@link #isIs_eligible_for_deduction() Is eligible for deduction}' attribute. - * - * - * @see #isIs_eligible_for_deduction() - * @generated - * @ordered - */ - protected static final boolean IS_ELIGIBLE_FOR_DEDUCTION_EDEFAULT = false; - - /** - * The cached value of the '{@link #isIs_eligible_for_deduction() Is eligible for deduction}' attribute. - * - * - * @see #isIs_eligible_for_deduction() - * @generated - * @ordered - */ - protected boolean is_eligible_for_deduction = IS_ELIGIBLE_FOR_DEDUCTION_EDEFAULT; - /** * * @@ -109,29 +88,6 @@ public class Permanent_ExpenseImpl extends Special_Expense_DSImpl implements Per eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PERMANENT_EXPENSE__CATEGORY, oldCategory, category)); } - /** - * - * - * @generated - */ - @Override - public boolean isIs_eligible_for_deduction() { - return is_eligible_for_deduction; - } - - /** - * - * - * @generated - */ - @Override - public void setIs_eligible_for_deduction(boolean newIs_eligible_for_deduction) { - boolean oldIs_eligible_for_deduction = is_eligible_for_deduction; - is_eligible_for_deduction = newIs_eligible_for_deduction; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PERMANENT_EXPENSE__IS_ELIGIBLE_FOR_DEDUCTION, oldIs_eligible_for_deduction, is_eligible_for_deduction)); - } - /** * * @@ -142,8 +98,6 @@ public class Permanent_ExpenseImpl extends Special_Expense_DSImpl implements Per switch (featureID) { case TaxationPackage.PERMANENT_EXPENSE__CATEGORY: return getCategory(); - case TaxationPackage.PERMANENT_EXPENSE__IS_ELIGIBLE_FOR_DEDUCTION: - return isIs_eligible_for_deduction(); } return super.eGet(featureID, resolve, coreType); } @@ -159,9 +113,6 @@ public class Permanent_ExpenseImpl extends Special_Expense_DSImpl implements Per case TaxationPackage.PERMANENT_EXPENSE__CATEGORY: setCategory((Category_of_Permanent_Expense)newValue); return; - case TaxationPackage.PERMANENT_EXPENSE__IS_ELIGIBLE_FOR_DEDUCTION: - setIs_eligible_for_deduction((Boolean)newValue); - return; } super.eSet(featureID, newValue); } @@ -177,9 +128,6 @@ public class Permanent_ExpenseImpl extends Special_Expense_DSImpl implements Per case TaxationPackage.PERMANENT_EXPENSE__CATEGORY: setCategory(CATEGORY_EDEFAULT); return; - case TaxationPackage.PERMANENT_EXPENSE__IS_ELIGIBLE_FOR_DEDUCTION: - setIs_eligible_for_deduction(IS_ELIGIBLE_FOR_DEDUCTION_EDEFAULT); - return; } super.eUnset(featureID); } @@ -194,8 +142,6 @@ public class Permanent_ExpenseImpl extends Special_Expense_DSImpl implements Per switch (featureID) { case TaxationPackage.PERMANENT_EXPENSE__CATEGORY: return category != CATEGORY_EDEFAULT; - case TaxationPackage.PERMANENT_EXPENSE__IS_ELIGIBLE_FOR_DEDUCTION: - return is_eligible_for_deduction != IS_ELIGIBLE_FOR_DEDUCTION_EDEFAULT; } return super.eIsSet(featureID); } @@ -212,8 +158,6 @@ public class Permanent_ExpenseImpl extends Special_Expense_DSImpl implements Per StringBuilder result = new StringBuilder(super.toString()); result.append(" (category: "); result.append(category); - result.append(", is_eligible_for_deduction: "); - result.append(is_eligible_for_deduction); result.append(')'); return result.toString(); } diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Physical_PersonImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Physical_PersonImpl.java index 13e12888..ab7793f4 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Physical_PersonImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Physical_PersonImpl.java @@ -32,13 +32,11 @@ import org.eclipse.emf.ecore.util.InternalEList; * The following features are implemented: *

          *
            - *
          • {@link Taxation.impl.Physical_PersonImpl#isIs_assisting_spouse Is assisting spouse}
          • *
          • {@link Taxation.impl.Physical_PersonImpl#getSSNo SS No}
          • *
          • {@link Taxation.impl.Physical_PersonImpl#getAddresses Addresses}
          • *
          • {@link Taxation.impl.Physical_PersonImpl#getBirth_year Birth year}
          • *
          • {@link Taxation.impl.Physical_PersonImpl#getDisability_percentage Disability percentage}
          • *
          • {@link Taxation.impl.Physical_PersonImpl#getDisability_type Disability type}
          • - *
          • {@link Taxation.impl.Physical_PersonImpl#isIs_affiliated_personnaly_to_social_security Is affiliated personnaly to social security}
          • *
          • {@link Taxation.impl.Physical_PersonImpl#getBirth_month Birth month}
          • *
          • {@link Taxation.impl.Physical_PersonImpl#getBirth_day Birth day}
          • *
          • {@link Taxation.impl.Physical_PersonImpl#getExpenses Expenses}
          • @@ -48,26 +46,6 @@ import org.eclipse.emf.ecore.util.InternalEList; * @generated */ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements Physical_Person { - /** - * The default value of the '{@link #isIs_assisting_spouse() Is assisting spouse}' attribute. - * - * - * @see #isIs_assisting_spouse() - * @generated - * @ordered - */ - protected static final boolean IS_ASSISTING_SPOUSE_EDEFAULT = false; - - /** - * The cached value of the '{@link #isIs_assisting_spouse() Is assisting spouse}' attribute. - * - * - * @see #isIs_assisting_spouse() - * @generated - * @ordered - */ - protected boolean is_assisting_spouse = IS_ASSISTING_SPOUSE_EDEFAULT; - /** * The default value of the '{@link #getSSNo() SS No}' attribute. * @@ -158,26 +136,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements */ protected Disability_Types disability_type = DISABILITY_TYPE_EDEFAULT; - /** - * The default value of the '{@link #isIs_affiliated_personnaly_to_social_security() Is affiliated personnaly to social security}' attribute. - * - * - * @see #isIs_affiliated_personnaly_to_social_security() - * @generated - * @ordered - */ - protected static final boolean IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY_EDEFAULT = false; - - /** - * The cached value of the '{@link #isIs_affiliated_personnaly_to_social_security() Is affiliated personnaly to social security}' attribute. - * - * - * @see #isIs_affiliated_personnaly_to_social_security() - * @generated - * @ordered - */ - protected boolean is_affiliated_personnaly_to_social_security = IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY_EDEFAULT; - /** * The default value of the '{@link #getBirth_month() Birth month}' attribute. * @@ -267,29 +225,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements return TaxationPackage.Literals.PHYSICAL_PERSON; } - /** - * - * - * @generated - */ - @Override - public boolean isIs_assisting_spouse() { - return is_assisting_spouse; - } - - /** - * - * - * @generated - */ - @Override - public void setIs_assisting_spouse(boolean newIs_assisting_spouse) { - boolean oldIs_assisting_spouse = is_assisting_spouse; - is_assisting_spouse = newIs_assisting_spouse; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__IS_ASSISTING_SPOUSE, oldIs_assisting_spouse, is_assisting_spouse)); - } - /** * * @@ -395,29 +330,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__DISABILITY_TYPE, oldDisability_type, disability_type)); } - /** - * - * - * @generated - */ - @Override - public boolean isIs_affiliated_personnaly_to_social_security() { - return is_affiliated_personnaly_to_social_security; - } - - /** - * - * - * @generated - */ - @Override - public void setIs_affiliated_personnaly_to_social_security(boolean newIs_affiliated_personnaly_to_social_security) { - boolean oldIs_affiliated_personnaly_to_social_security = is_affiliated_personnaly_to_social_security; - is_affiliated_personnaly_to_social_security = newIs_affiliated_personnaly_to_social_security; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY, oldIs_affiliated_personnaly_to_social_security, is_affiliated_personnaly_to_social_security)); - } - /** * * @@ -541,8 +453,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements @Override public Object eGet(int featureID, boolean resolve, boolean coreType) { switch (featureID) { - case TaxationPackage.PHYSICAL_PERSON__IS_ASSISTING_SPOUSE: - return isIs_assisting_spouse(); case TaxationPackage.PHYSICAL_PERSON__SS_NO: return getSSNo(); case TaxationPackage.PHYSICAL_PERSON__ADDRESSES: @@ -553,8 +463,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements return getDisability_percentage(); case TaxationPackage.PHYSICAL_PERSON__DISABILITY_TYPE: return getDisability_type(); - case TaxationPackage.PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY: - return isIs_affiliated_personnaly_to_social_security(); case TaxationPackage.PHYSICAL_PERSON__BIRTH_MONTH: return getBirth_month(); case TaxationPackage.PHYSICAL_PERSON__BIRTH_DAY: @@ -576,9 +484,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements @Override public void eSet(int featureID, Object newValue) { switch (featureID) { - case TaxationPackage.PHYSICAL_PERSON__IS_ASSISTING_SPOUSE: - setIs_assisting_spouse((Boolean)newValue); - return; case TaxationPackage.PHYSICAL_PERSON__SS_NO: setSSNo((String)newValue); return; @@ -595,9 +500,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements case TaxationPackage.PHYSICAL_PERSON__DISABILITY_TYPE: setDisability_type((Disability_Types)newValue); return; - case TaxationPackage.PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY: - setIs_affiliated_personnaly_to_social_security((Boolean)newValue); - return; case TaxationPackage.PHYSICAL_PERSON__BIRTH_MONTH: setBirth_month((Integer)newValue); return; @@ -623,9 +525,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements @Override public void eUnset(int featureID) { switch (featureID) { - case TaxationPackage.PHYSICAL_PERSON__IS_ASSISTING_SPOUSE: - setIs_assisting_spouse(IS_ASSISTING_SPOUSE_EDEFAULT); - return; case TaxationPackage.PHYSICAL_PERSON__SS_NO: setSSNo(SS_NO_EDEFAULT); return; @@ -641,9 +540,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements case TaxationPackage.PHYSICAL_PERSON__DISABILITY_TYPE: setDisability_type(DISABILITY_TYPE_EDEFAULT); return; - case TaxationPackage.PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY: - setIs_affiliated_personnaly_to_social_security(IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY_EDEFAULT); - return; case TaxationPackage.PHYSICAL_PERSON__BIRTH_MONTH: setBirth_month(BIRTH_MONTH_EDEFAULT); return; @@ -668,8 +564,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements @Override public boolean eIsSet(int featureID) { switch (featureID) { - case TaxationPackage.PHYSICAL_PERSON__IS_ASSISTING_SPOUSE: - return is_assisting_spouse != IS_ASSISTING_SPOUSE_EDEFAULT; case TaxationPackage.PHYSICAL_PERSON__SS_NO: return SS_NO_EDEFAULT == null ? ssNo != null : !SS_NO_EDEFAULT.equals(ssNo); case TaxationPackage.PHYSICAL_PERSON__ADDRESSES: @@ -680,8 +574,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements return disability_percentage != DISABILITY_PERCENTAGE_EDEFAULT; case TaxationPackage.PHYSICAL_PERSON__DISABILITY_TYPE: return disability_type != DISABILITY_TYPE_EDEFAULT; - case TaxationPackage.PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY: - return is_affiliated_personnaly_to_social_security != IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY_EDEFAULT; case TaxationPackage.PHYSICAL_PERSON__BIRTH_MONTH: return birth_month != BIRTH_MONTH_EDEFAULT; case TaxationPackage.PHYSICAL_PERSON__BIRTH_DAY: @@ -704,9 +596,7 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements if (eIsProxy()) return super.toString(); StringBuilder result = new StringBuilder(super.toString()); - result.append(" (is_assisting_spouse: "); - result.append(is_assisting_spouse); - result.append(", SSNo: "); + result.append(" (SSNo: "); result.append(ssNo); result.append(", birth_year: "); result.append(birth_year); @@ -714,8 +604,6 @@ public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements result.append(disability_percentage); result.append(", disability_type: "); result.append(disability_type); - result.append(", is_affiliated_personnaly_to_social_security: "); - result.append(is_affiliated_personnaly_to_social_security); result.append(", birth_month: "); result.append(birth_month); result.append(", birth_day: "); diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Private_Insurance_and_PlanImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Private_Insurance_and_PlanImpl.java index 2b1cd545..0ee24a42 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Private_Insurance_and_PlanImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Private_Insurance_and_PlanImpl.java @@ -22,7 +22,6 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl; *
              *
            • {@link Taxation.impl.Private_Insurance_and_PlanImpl#getCategory Category}
            • *
            • {@link Taxation.impl.Private_Insurance_and_PlanImpl#getDuration_of_contract Duration of contract}
            • - *
            • {@link Taxation.impl.Private_Insurance_and_PlanImpl#isIs_private_insurance_and_plan_eligible_for_deduction Is private insurance and plan eligible for deduction}
            • *
            * * @generated @@ -68,26 +67,6 @@ public class Private_Insurance_and_PlanImpl extends Special_Expense_DSImpl imple */ protected int duration_of_contract = DURATION_OF_CONTRACT_EDEFAULT; - /** - * The default value of the '{@link #isIs_private_insurance_and_plan_eligible_for_deduction() Is private insurance and plan eligible for deduction}' attribute. - * - * - * @see #isIs_private_insurance_and_plan_eligible_for_deduction() - * @generated - * @ordered - */ - protected static final boolean IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION_EDEFAULT = false; - - /** - * The cached value of the '{@link #isIs_private_insurance_and_plan_eligible_for_deduction() Is private insurance and plan eligible for deduction}' attribute. - * - * - * @see #isIs_private_insurance_and_plan_eligible_for_deduction() - * @generated - * @ordered - */ - protected boolean is_private_insurance_and_plan_eligible_for_deduction = IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION_EDEFAULT; - /** * * @@ -153,29 +132,6 @@ public class Private_Insurance_and_PlanImpl extends Special_Expense_DSImpl imple eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT, oldDuration_of_contract, duration_of_contract)); } - /** - * - * - * @generated - */ - @Override - public boolean isIs_private_insurance_and_plan_eligible_for_deduction() { - return is_private_insurance_and_plan_eligible_for_deduction; - } - - /** - * - * - * @generated - */ - @Override - public void setIs_private_insurance_and_plan_eligible_for_deduction(boolean newIs_private_insurance_and_plan_eligible_for_deduction) { - boolean oldIs_private_insurance_and_plan_eligible_for_deduction = is_private_insurance_and_plan_eligible_for_deduction; - is_private_insurance_and_plan_eligible_for_deduction = newIs_private_insurance_and_plan_eligible_for_deduction; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION, oldIs_private_insurance_and_plan_eligible_for_deduction, is_private_insurance_and_plan_eligible_for_deduction)); - } - /** * * @@ -188,8 +144,6 @@ public class Private_Insurance_and_PlanImpl extends Special_Expense_DSImpl imple return getCategory(); case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT: return getDuration_of_contract(); - case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION: - return isIs_private_insurance_and_plan_eligible_for_deduction(); } return super.eGet(featureID, resolve, coreType); } @@ -208,9 +162,6 @@ public class Private_Insurance_and_PlanImpl extends Special_Expense_DSImpl imple case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT: setDuration_of_contract((Integer)newValue); return; - case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION: - setIs_private_insurance_and_plan_eligible_for_deduction((Boolean)newValue); - return; } super.eSet(featureID, newValue); } @@ -229,9 +180,6 @@ public class Private_Insurance_and_PlanImpl extends Special_Expense_DSImpl imple case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT: setDuration_of_contract(DURATION_OF_CONTRACT_EDEFAULT); return; - case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION: - setIs_private_insurance_and_plan_eligible_for_deduction(IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION_EDEFAULT); - return; } super.eUnset(featureID); } @@ -248,8 +196,6 @@ public class Private_Insurance_and_PlanImpl extends Special_Expense_DSImpl imple return category != CATEGORY_EDEFAULT; case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT: return duration_of_contract != DURATION_OF_CONTRACT_EDEFAULT; - case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION: - return is_private_insurance_and_plan_eligible_for_deduction != IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION_EDEFAULT; } return super.eIsSet(featureID); } @@ -268,8 +214,6 @@ public class Private_Insurance_and_PlanImpl extends Special_Expense_DSImpl imple result.append(category); result.append(", duration_of_contract: "); result.append(duration_of_contract); - result.append(", is_private_insurance_and_plan_eligible_for_deduction: "); - result.append(is_private_insurance_and_plan_eligible_for_deduction); result.append(')'); return result.toString(); } diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_CardImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_CardImpl.java index ebff8555..0bb2e737 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_CardImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_CardImpl.java @@ -7,7 +7,6 @@ import Taxation.Income; import Taxation.Income_Tax_Credit; import Taxation.Job_Activity; import Taxation.Tax_Card; -import Taxation.Tax_Card_Type; import Taxation.Tax_Office; import Taxation.TaxationPackage; import Taxation.Town; @@ -39,7 +38,6 @@ import org.eclipse.emf.ecore.util.InternalEList; *

            *
              *
            • {@link Taxation.impl.Tax_CardImpl#getCard_identifier Card identifier}
            • - *
            • {@link Taxation.impl.Tax_CardImpl#getTax_card_type Tax card type}
            • *
            • {@link Taxation.impl.Tax_CardImpl#getTax_office Tax office}
            • *
            • {@link Taxation.impl.Tax_CardImpl#getPercentage_of_witholding Percentage of witholding}
            • *
            • {@link Taxation.impl.Tax_CardImpl#getTax_payers_name_surname Tax payers name surname}
            • @@ -98,26 +96,6 @@ public class Tax_CardImpl extends MinimalEObjectImpl.Container implements Tax_Ca */ protected String card_identifier = CARD_IDENTIFIER_EDEFAULT; - /** - * The default value of the '{@link #getTax_card_type() Tax card type}' attribute. - * - * - * @see #getTax_card_type() - * @generated - * @ordered - */ - protected static final Tax_Card_Type TAX_CARD_TYPE_EDEFAULT = Tax_Card_Type.PRINCIPAL; - - /** - * The cached value of the '{@link #getTax_card_type() Tax card type}' attribute. - * - * - * @see #getTax_card_type() - * @generated - * @ordered - */ - protected Tax_Card_Type tax_card_type = TAX_CARD_TYPE_EDEFAULT; - /** * The default value of the '{@link #getTax_office() Tax office}' attribute. * @@ -740,29 +718,6 @@ public class Tax_CardImpl extends MinimalEObjectImpl.Container implements Tax_Ca eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__CARD_IDENTIFIER, oldCard_identifier, card_identifier)); } - /** - * - * - * @generated - */ - @Override - public Tax_Card_Type getTax_card_type() { - return tax_card_type; - } - - /** - * - * - * @generated - */ - @Override - public void setTax_card_type(Tax_Card_Type newTax_card_type) { - Tax_Card_Type oldTax_card_type = tax_card_type; - tax_card_type = newTax_card_type == null ? TAX_CARD_TYPE_EDEFAULT : newTax_card_type; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__TAX_CARD_TYPE, oldTax_card_type, tax_card_type)); - } - /** * * @@ -1678,8 +1633,6 @@ public class Tax_CardImpl extends MinimalEObjectImpl.Container implements Tax_Ca switch (featureID) { case TaxationPackage.TAX_CARD__CARD_IDENTIFIER: return getCard_identifier(); - case TaxationPackage.TAX_CARD__TAX_CARD_TYPE: - return getTax_card_type(); case TaxationPackage.TAX_CARD__TAX_OFFICE: return getTax_office(); case TaxationPackage.TAX_CARD__PERCENTAGE_OF_WITHOLDING: @@ -1765,9 +1718,6 @@ public class Tax_CardImpl extends MinimalEObjectImpl.Container implements Tax_Ca case TaxationPackage.TAX_CARD__CARD_IDENTIFIER: setCard_identifier((String)newValue); return; - case TaxationPackage.TAX_CARD__TAX_CARD_TYPE: - setTax_card_type((Tax_Card_Type)newValue); - return; case TaxationPackage.TAX_CARD__TAX_OFFICE: setTax_office((Tax_Office)newValue); return; @@ -1885,9 +1835,6 @@ public class Tax_CardImpl extends MinimalEObjectImpl.Container implements Tax_Ca case TaxationPackage.TAX_CARD__CARD_IDENTIFIER: setCard_identifier(CARD_IDENTIFIER_EDEFAULT); return; - case TaxationPackage.TAX_CARD__TAX_CARD_TYPE: - setTax_card_type(TAX_CARD_TYPE_EDEFAULT); - return; case TaxationPackage.TAX_CARD__TAX_OFFICE: setTax_office(TAX_OFFICE_EDEFAULT); return; @@ -2001,8 +1948,6 @@ public class Tax_CardImpl extends MinimalEObjectImpl.Container implements Tax_Ca switch (featureID) { case TaxationPackage.TAX_CARD__CARD_IDENTIFIER: return CARD_IDENTIFIER_EDEFAULT == null ? card_identifier != null : !CARD_IDENTIFIER_EDEFAULT.equals(card_identifier); - case TaxationPackage.TAX_CARD__TAX_CARD_TYPE: - return tax_card_type != TAX_CARD_TYPE_EDEFAULT; case TaxationPackage.TAX_CARD__TAX_OFFICE: return tax_office != TAX_OFFICE_EDEFAULT; case TaxationPackage.TAX_CARD__PERCENTAGE_OF_WITHOLDING: @@ -2085,8 +2030,6 @@ public class Tax_CardImpl extends MinimalEObjectImpl.Container implements Tax_Ca StringBuilder result = new StringBuilder(super.toString()); result.append(" (card_identifier: "); result.append(card_identifier); - result.append(", tax_card_type: "); - result.append(tax_card_type); result.append(", tax_office: "); result.append(tax_office); result.append(", percentage_of_witholding: "); diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_PayerImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_PayerImpl.java index 7e382d7f..2a4f4422 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_PayerImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Tax_PayerImpl.java @@ -36,7 +36,6 @@ import org.eclipse.emf.ecore.util.InternalEList; *
            • {@link Taxation.impl.Tax_PayerImpl#getFrom_agent From agent}
            • *
            • {@link Taxation.impl.Tax_PayerImpl#getIncomes Incomes}
            • *
            • {@link Taxation.impl.Tax_PayerImpl#getFrom_law From law}
            • - *
            • {@link Taxation.impl.Tax_PayerImpl#getTaxesDue Taxes Due}
            • *
            * * @generated @@ -82,26 +81,6 @@ public abstract class Tax_PayerImpl extends Physical_PersonImpl implements Tax_P */ protected FromLaw from_law; - /** - * The default value of the '{@link #getTaxesDue() Taxes Due}' attribute. - * - * - * @see #getTaxesDue() - * @generated - * @ordered - */ - protected static final double TAXES_DUE_EDEFAULT = 0.0; - - /** - * The cached value of the '{@link #getTaxesDue() Taxes Due}' attribute. - * - * - * @see #getTaxesDue() - * @generated - * @ordered - */ - protected double taxesDue = TAXES_DUE_EDEFAULT; - /** * * @@ -237,29 +216,6 @@ public abstract class Tax_PayerImpl extends Physical_PersonImpl implements Tax_P eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_PAYER__FROM_LAW, newFrom_law, newFrom_law)); } - /** - * - * - * @generated - */ - @Override - public double getTaxesDue() { - return taxesDue; - } - - /** - * - * - * @generated - */ - @Override - public void setTaxesDue(double newTaxesDue) { - double oldTaxesDue = taxesDue; - taxesDue = newTaxesDue; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_PAYER__TAXES_DUE, oldTaxesDue, taxesDue)); - } - /** * * @@ -321,8 +277,6 @@ public abstract class Tax_PayerImpl extends Physical_PersonImpl implements Tax_P return getIncomes(); case TaxationPackage.TAX_PAYER__FROM_LAW: return getFrom_law(); - case TaxationPackage.TAX_PAYER__TAXES_DUE: - return getTaxesDue(); } return super.eGet(featureID, resolve, coreType); } @@ -350,9 +304,6 @@ public abstract class Tax_PayerImpl extends Physical_PersonImpl implements Tax_P case TaxationPackage.TAX_PAYER__FROM_LAW: setFrom_law((FromLaw)newValue); return; - case TaxationPackage.TAX_PAYER__TAXES_DUE: - setTaxesDue((Double)newValue); - return; } super.eSet(featureID, newValue); } @@ -377,9 +328,6 @@ public abstract class Tax_PayerImpl extends Physical_PersonImpl implements Tax_P case TaxationPackage.TAX_PAYER__FROM_LAW: setFrom_law((FromLaw)null); return; - case TaxationPackage.TAX_PAYER__TAXES_DUE: - setTaxesDue(TAXES_DUE_EDEFAULT); - return; } super.eUnset(featureID); } @@ -400,26 +348,8 @@ public abstract class Tax_PayerImpl extends Physical_PersonImpl implements Tax_P return incomes != null && !incomes.isEmpty(); case TaxationPackage.TAX_PAYER__FROM_LAW: return from_law != null; - case TaxationPackage.TAX_PAYER__TAXES_DUE: - return taxesDue != TAXES_DUE_EDEFAULT; } return super.eIsSet(featureID); } - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (taxesDue: "); - result.append(taxesDue); - result.append(')'); - return result.toString(); - } - } //Tax_PayerImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationFactoryImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationFactoryImpl.java index 36f4493c..7f29a224 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationFactoryImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationFactoryImpl.java @@ -128,8 +128,6 @@ public class TaxationFactoryImpl extends EFactoryImpl implements TaxationFactory return createDisability_TypesFromString(eDataType, initialValue); case TaxationPackage.COUNTRY: return createCountryFromString(eDataType, initialValue); - case TaxationPackage.TAX_CARD_TYPE: - return createTax_Card_TypeFromString(eDataType, initialValue); case TaxationPackage.TAX_OFFICE: return createTax_OfficeFromString(eDataType, initialValue); case TaxationPackage.TAX_CLASS_CATEGORY: @@ -138,8 +136,6 @@ public class TaxationFactoryImpl extends EFactoryImpl implements TaxationFactory return createJob_ActivityFromString(eDataType, initialValue); case TaxationPackage.TOWN: return createTownFromString(eDataType, initialValue); - case TaxationPackage.TYPE_OF_RATE: - return createType_of_RateFromString(eDataType, initialValue); case TaxationPackage.CE_TYPE: return createCE_TypeFromString(eDataType, initialValue); case TaxationPackage.EXPENSE_PURPOSE: @@ -175,8 +171,6 @@ public class TaxationFactoryImpl extends EFactoryImpl implements TaxationFactory return convertDisability_TypesToString(eDataType, instanceValue); case TaxationPackage.COUNTRY: return convertCountryToString(eDataType, instanceValue); - case TaxationPackage.TAX_CARD_TYPE: - return convertTax_Card_TypeToString(eDataType, instanceValue); case TaxationPackage.TAX_OFFICE: return convertTax_OfficeToString(eDataType, instanceValue); case TaxationPackage.TAX_CLASS_CATEGORY: @@ -185,8 +179,6 @@ public class TaxationFactoryImpl extends EFactoryImpl implements TaxationFactory return convertJob_ActivityToString(eDataType, instanceValue); case TaxationPackage.TOWN: return convertTownToString(eDataType, instanceValue); - case TaxationPackage.TYPE_OF_RATE: - return convertType_of_RateToString(eDataType, instanceValue); case TaxationPackage.CE_TYPE: return convertCE_TypeToString(eDataType, instanceValue); case TaxationPackage.EXPENSE_PURPOSE: @@ -840,26 +832,6 @@ public class TaxationFactoryImpl extends EFactoryImpl implements TaxationFactory return instanceValue == null ? null : instanceValue.toString(); } - /** - * - * - * @generated - */ - public Tax_Card_Type createTax_Card_TypeFromString(EDataType eDataType, String initialValue) { - Tax_Card_Type result = Tax_Card_Type.get(initialValue); - if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); - return result; - } - - /** - * - * - * @generated - */ - public String convertTax_Card_TypeToString(EDataType eDataType, Object instanceValue) { - return instanceValue == null ? null : instanceValue.toString(); - } - /** * * @@ -940,26 +912,6 @@ public class TaxationFactoryImpl extends EFactoryImpl implements TaxationFactory return instanceValue == null ? null : instanceValue.toString(); } - /** - * - * - * @generated - */ - public Type_of_Rate createType_of_RateFromString(EDataType eDataType, String initialValue) { - Type_of_Rate result = Type_of_Rate.get(initialValue); - if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); - return result; - } - - /** - * - * - * @generated - */ - public String convertType_of_RateToString(EDataType eDataType, Object instanceValue) { - return instanceValue == null ? null : instanceValue.toString(); - } - /** * * diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationPackageImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationPackageImpl.java index a174a065..56d3b3de 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationPackageImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationPackageImpl.java @@ -61,7 +61,6 @@ import Taxation.Separation_Causes; import Taxation.Special_Expense_DS; import Taxation.Spousal_Expense_AC; import Taxation.Tax_Card; -import Taxation.Tax_Card_Type; import Taxation.Tax_Case; import Taxation.Tax_Class_Category; import Taxation.Tax_Office; @@ -72,8 +71,6 @@ import Taxation.TaxationPackage; import Taxation.Town; import Taxation.Trade_and_Business_Income; import Taxation.Travel_Expense_FD; -import Taxation.Type_of_Rate; - import org.eclipse.emf.ecore.EAttribute; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.EEnum; @@ -516,13 +513,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ private EEnum countryEEnum = null; - /** - * - * - * @generated - */ - private EEnum tax_Card_TypeEEnum = null; - /** * * @@ -551,13 +541,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ private EEnum townEEnum = null; - /** - * - * - * @generated - */ - private EEnum type_of_RateEEnum = null; - /** * * @@ -1035,16 +1018,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return (EReference)tax_PayerEClass.getEStructuralFeatures().get(3); } - /** - * - * - * @generated - */ - @Override - public EAttribute getTax_Payer_TaxesDue() { - return (EAttribute)tax_PayerEClass.getEStructuralFeatures().get(4); - } - /** * * @@ -1055,16 +1028,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return physical_PersonEClass; } - /** - * - * - * @generated - */ - @Override - public EAttribute getPhysical_Person_Is_assisting_spouse() { - return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(0); - } - /** * * @@ -1072,7 +1035,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getPhysical_Person_SSNo() { - return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(1); + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(0); } /** @@ -1082,7 +1045,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getPhysical_Person_Addresses() { - return (EReference)physical_PersonEClass.getEStructuralFeatures().get(2); + return (EReference)physical_PersonEClass.getEStructuralFeatures().get(1); } /** @@ -1092,7 +1055,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getPhysical_Person_Birth_year() { - return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(3); + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(2); } /** @@ -1102,7 +1065,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getPhysical_Person_Disability_percentage() { - return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(4); + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(3); } /** @@ -1112,17 +1075,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getPhysical_Person_Disability_type() { - return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(5); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getPhysical_Person_Is_affiliated_personnaly_to_social_security() { - return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(6); + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(4); } /** @@ -1132,7 +1085,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getPhysical_Person_Birth_month() { - return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(7); + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(5); } /** @@ -1142,7 +1095,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getPhysical_Person_Birth_day() { - return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(8); + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(6); } /** @@ -1152,7 +1105,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getPhysical_Person_Expenses() { - return (EReference)physical_PersonEClass.getEStructuralFeatures().get(9); + return (EReference)physical_PersonEClass.getEStructuralFeatures().get(7); } /** @@ -1162,7 +1115,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getPhysical_Person_Is_widower() { - return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(10); + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(8); } /** @@ -1405,16 +1358,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return external_AllowanceEClass; } - /** - * - * - * @generated - */ - @Override - public EAttribute getExternal_Allowance_Amount() { - return (EAttribute)external_AllowanceEClass.getEStructuralFeatures().get(0); - } - /** * * @@ -1422,7 +1365,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getExternal_Allowance_Grantor() { - return (EAttribute)external_AllowanceEClass.getEStructuralFeatures().get(1); + return (EAttribute)external_AllowanceEClass.getEStructuralFeatures().get(0); } /** @@ -1432,7 +1375,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getExternal_Allowance_Starting_year() { - return (EAttribute)external_AllowanceEClass.getEStructuralFeatures().get(2); + return (EAttribute)external_AllowanceEClass.getEStructuralFeatures().get(1); } /** @@ -1442,7 +1385,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getExternal_Allowance_Ending_year() { - return (EAttribute)external_AllowanceEClass.getEStructuralFeatures().get(3); + return (EAttribute)external_AllowanceEClass.getEStructuralFeatures().get(2); } /** @@ -1452,7 +1395,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getExternal_Allowance_Reciver() { - return (EReference)external_AllowanceEClass.getEStructuralFeatures().get(4); + return (EReference)external_AllowanceEClass.getEStructuralFeatures().get(3); } /** @@ -1462,7 +1405,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getExternal_Allowance_Id5() { - return (EAttribute)external_AllowanceEClass.getEStructuralFeatures().get(5); + return (EAttribute)external_AllowanceEClass.getEStructuralFeatures().get(4); } /** @@ -1472,7 +1415,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getExternal_Allowance_Person() { - return (EReference)external_AllowanceEClass.getEStructuralFeatures().get(6); + return (EReference)external_AllowanceEClass.getEStructuralFeatures().get(5); } /** @@ -1825,16 +1768,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return income_TypeEClass; } - /** - * - * - * @generated - */ - @Override - public EAttribute getIncome_Type_SubjectToWithholdingTax() { - return (EAttribute)income_TypeEClass.getEStructuralFeatures().get(0); - } - /** * * @@ -1842,7 +1775,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getIncome_Type_Id8() { - return (EAttribute)income_TypeEClass.getEStructuralFeatures().get(1); + return (EAttribute)income_TypeEClass.getEStructuralFeatures().get(0); } /** @@ -1852,7 +1785,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getIncome_Type_Income() { - return (EReference)income_TypeEClass.getEStructuralFeatures().get(2); + return (EReference)income_TypeEClass.getEStructuralFeatures().get(1); } /** @@ -1875,16 +1808,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(0); } - /** - * - * - * @generated - */ - @Override - public EAttribute getTax_Card_Tax_card_type() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(1); - } - /** * * @@ -1892,7 +1815,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Tax_office() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(2); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(1); } /** @@ -1902,7 +1825,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Percentage_of_witholding() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(3); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(2); } /** @@ -1912,7 +1835,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Tax_payers_name_surname() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(4); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(3); } /** @@ -1922,7 +1845,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Tax_payers_partner_name_surname() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(5); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(4); } /** @@ -1932,7 +1855,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getTax_Card_Tax_payers_address() { - return (EReference)tax_CardEClass.getEStructuralFeatures().get(6); + return (EReference)tax_CardEClass.getEStructuralFeatures().get(5); } /** @@ -1942,7 +1865,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Jobs_Employer_SSNo() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(7); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(6); } /** @@ -1952,7 +1875,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Jobs_employers_name() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(8); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(7); } /** @@ -1962,7 +1885,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Jobs_activity_type() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(9); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(8); } /** @@ -1972,7 +1895,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Jobs_place_of_work() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(10); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(9); } /** @@ -1982,7 +1905,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_FD_daily() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(11); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(10); } /** @@ -1992,7 +1915,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_FD_monthly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(12); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(11); } /** @@ -2002,7 +1925,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_AC_daily() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(13); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(12); } /** @@ -2012,7 +1935,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_AC_monthly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(14); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(13); } /** @@ -2022,7 +1945,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_AC_yearly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(15); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(14); } /** @@ -2032,7 +1955,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_CE_daily() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(16); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(15); } /** @@ -2042,7 +1965,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_CE_monthly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(17); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(16); } /** @@ -2052,7 +1975,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_CE_yearly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(18); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(17); } /** @@ -2062,7 +1985,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_DS_daily() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(19); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(18); } /** @@ -2072,7 +1995,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_DS_monthly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(20); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(19); } /** @@ -2082,7 +2005,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_FO_daily() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(21); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(20); } /** @@ -2092,7 +2015,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_FO_monthly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(22); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(21); } /** @@ -2102,7 +2025,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_FO_yearly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(23); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(22); } /** @@ -2112,7 +2035,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Credit_CIS_daily() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(24); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(23); } /** @@ -2122,7 +2045,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Credit_CIS_monthly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(25); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(24); } /** @@ -2132,7 +2055,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Credit_CIM_daily() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(26); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(25); } /** @@ -2142,7 +2065,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Validity() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(27); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(26); } /** @@ -2152,7 +2075,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getTax_Card_Income_Tax_Credit() { - return (EReference)tax_CardEClass.getEStructuralFeatures().get(28); + return (EReference)tax_CardEClass.getEStructuralFeatures().get(27); } /** @@ -2162,7 +2085,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getTax_Card_Previous() { - return (EReference)tax_CardEClass.getEStructuralFeatures().get(29); + return (EReference)tax_CardEClass.getEStructuralFeatures().get(28); } /** @@ -2172,7 +2095,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getTax_Card_Current_tax_card() { - return (EReference)tax_CardEClass.getEStructuralFeatures().get(30); + return (EReference)tax_CardEClass.getEStructuralFeatures().get(29); } /** @@ -2182,7 +2105,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Credit_CIM_yearly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(31); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(30); } /** @@ -2192,7 +2115,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_DS_Alimony_yearly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(32); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(31); } /** @@ -2202,7 +2125,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getTax_Card_Deduction_DS_Debt_yearly() { - return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(33); + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(32); } /** @@ -2212,7 +2135,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EReference getTax_Card_Income() { - return (EReference)tax_CardEClass.getEStructuralFeatures().get(34); + return (EReference)tax_CardEClass.getEStructuralFeatures().get(33); } /** @@ -2635,16 +2558,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return (EAttribute)fdEClass.getEStructuralFeatures().get(0); } - /** - * - * - * @generated - */ - @Override - public EAttribute getFD_Calculated_distance() { - return (EAttribute)fdEClass.getEStructuralFeatures().get(1); - } - /** * * @@ -2665,16 +2578,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return foEClass; } - /** - * - * - * @generated - */ - @Override - public EAttribute getFO_Rate_type_for_FO() { - return (EAttribute)foEClass.getEStructuralFeatures().get(0); - } - /** * * @@ -2775,36 +2678,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return (EAttribute)dS_for_Private_Insurance_and_PlanEClass.getEStructuralFeatures().get(0); } - /** - * - * - * @generated - */ - @Override - public EAttribute getDS_for_Private_Insurance_and_Plan_Increase_for_life_insurance() { - return (EAttribute)dS_for_Private_Insurance_and_PlanEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_private_insurance() { - return (EAttribute)dS_for_Private_Insurance_and_PlanEClass.getEStructuralFeatures().get(2); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_old_age_pension_plan() { - return (EAttribute)dS_for_Private_Insurance_and_PlanEClass.getEStructuralFeatures().get(3); - } - /** * * @@ -2845,16 +2718,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return (EAttribute)permanent_ExpenseEClass.getEStructuralFeatures().get(0); } - /** - * - * - * @generated - */ - @Override - public EAttribute getPermanent_Expense_Is_eligible_for_deduction() { - return (EAttribute)permanent_ExpenseEClass.getEStructuralFeatures().get(1); - } - /** * * @@ -2905,16 +2768,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return (EAttribute)private_Insurance_and_PlanEClass.getEStructuralFeatures().get(1); } - /** - * - * - * @generated - */ - @Override - public EAttribute getPrivate_Insurance_and_Plan_Is_private_insurance_and_plan_eligible_for_deduction() { - return (EAttribute)private_Insurance_and_PlanEClass.getEStructuralFeatures().get(2); - } - /** * * @@ -2965,16 +2818,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return (EAttribute)donationEClass.getEStructuralFeatures().get(0); } - /** - * - * - * @generated - */ - @Override - public EAttribute getDonation_Is_beneficiary_eligible() { - return (EAttribute)donationEClass.getEStructuralFeatures().get(1); - } - /** * * @@ -2982,7 +2825,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ @Override public EAttribute getDonation_Is_donation_reported() { - return (EAttribute)donationEClass.getEStructuralFeatures().get(2); + return (EAttribute)donationEClass.getEStructuralFeatures().get(1); } /** @@ -2995,46 +2838,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return loss_CarryforwardEClass; } - /** - * - * - * @generated - */ - @Override - public EAttribute getLoss_Carryforward_Regular_accountability() { - return (EAttribute)loss_CarryforwardEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getLoss_Carryforward_Compensation_by_other_means() { - return (EAttribute)loss_CarryforwardEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getLoss_Carryforward_Tax_payer_has_inherited_business_ownership() { - return (EAttribute)loss_CarryforwardEClass.getEStructuralFeatures().get(2); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getLoss_Carryforward_Tax_payer_has_been_partner_in_business() { - return (EAttribute)loss_CarryforwardEClass.getEStructuralFeatures().get(3); - } - /** * * @@ -3135,16 +2938,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return countryEEnum; } - /** - * - * - * @generated - */ - @Override - public EEnum getTax_Card_Type() { - return tax_Card_TypeEEnum; - } - /** * * @@ -3185,16 +2978,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return townEEnum; } - /** - * - * - * @generated - */ - @Override - public EEnum getType_of_Rate() { - return type_of_RateEEnum; - } - /** * * @@ -3342,16 +3125,13 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage createEReference(tax_PayerEClass, TAX_PAYER__FROM_AGENT); createEReference(tax_PayerEClass, TAX_PAYER__INCOMES); createEReference(tax_PayerEClass, TAX_PAYER__FROM_LAW); - createEAttribute(tax_PayerEClass, TAX_PAYER__TAXES_DUE); physical_PersonEClass = createEClass(PHYSICAL_PERSON); - createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__IS_ASSISTING_SPOUSE); createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__SS_NO); createEReference(physical_PersonEClass, PHYSICAL_PERSON__ADDRESSES); createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__BIRTH_YEAR); createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__DISABILITY_PERCENTAGE); createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__DISABILITY_TYPE); - createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__IS_AFFILIATED_PERSONNALY_TO_SOCIAL_SECURITY); createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__BIRTH_MONTH); createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__BIRTH_DAY); createEReference(physical_PersonEClass, PHYSICAL_PERSON__EXPENSES); @@ -3384,7 +3164,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage createEReference(dependentEClass, DEPENDENT__EXPENSE); external_AllowanceEClass = createEClass(EXTERNAL_ALLOWANCE); - createEAttribute(external_AllowanceEClass, EXTERNAL_ALLOWANCE__AMOUNT); createEAttribute(external_AllowanceEClass, EXTERNAL_ALLOWANCE__GRANTOR); createEAttribute(external_AllowanceEClass, EXTERNAL_ALLOWANCE__STARTING_YEAR); createEAttribute(external_AllowanceEClass, EXTERNAL_ALLOWANCE__ENDING_YEAR); @@ -3433,13 +3212,11 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage createEReference(incomeEClass, INCOME__EXPENSES); income_TypeEClass = createEClass(INCOME_TYPE); - createEAttribute(income_TypeEClass, INCOME_TYPE__SUBJECT_TO_WITHHOLDING_TAX); createEAttribute(income_TypeEClass, INCOME_TYPE__ID8); createEReference(income_TypeEClass, INCOME_TYPE__INCOME); tax_CardEClass = createEClass(TAX_CARD); createEAttribute(tax_CardEClass, TAX_CARD__CARD_IDENTIFIER); - createEAttribute(tax_CardEClass, TAX_CARD__TAX_CARD_TYPE); createEAttribute(tax_CardEClass, TAX_CARD__TAX_OFFICE); createEAttribute(tax_CardEClass, TAX_CARD__PERCENTAGE_OF_WITHOLDING); createEAttribute(tax_CardEClass, TAX_CARD__TAX_PAYERS_NAME_SURNAME); @@ -3536,12 +3313,10 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage fdEClass = createEClass(FD); createEAttribute(fdEClass, FD__DISTANCE_DECLARED_IN_JANUARY); - createEAttribute(fdEClass, FD__CALCULATED_DISTANCE); professional_Expenses_DeductionEClass = createEClass(PROFESSIONAL_EXPENSES_DEDUCTION); foEClass = createEClass(FO); - createEAttribute(foEClass, FO__RATE_TYPE_FOR_FO); dS_for_Permanent_ExpenseEClass = createEClass(DS_FOR_PERMANENT_EXPENSE); createEAttribute(dS_for_Permanent_ExpenseEClass, DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY); @@ -3557,9 +3332,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage dS_for_Private_Insurance_and_PlanEClass = createEClass(DS_FOR_PRIVATE_INSURANCE_AND_PLAN); createEAttribute(dS_for_Private_Insurance_and_PlanEClass, DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY); - createEAttribute(dS_for_Private_Insurance_and_PlanEClass, DS_FOR_PRIVATE_INSURANCE_AND_PLAN__INCREASE_FOR_LIFE_INSURANCE); - createEAttribute(dS_for_Private_Insurance_and_PlanEClass, DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_PRIVATE_INSURANCE); - createEAttribute(dS_for_Private_Insurance_and_PlanEClass, DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_OLD_AGE_PENSION_PLAN); dS_for_Loss_CarryforwardEClass = createEClass(DS_FOR_LOSS_CARRYFORWARD); @@ -3567,7 +3339,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage permanent_ExpenseEClass = createEClass(PERMANENT_EXPENSE); createEAttribute(permanent_ExpenseEClass, PERMANENT_EXPENSE__CATEGORY); - createEAttribute(permanent_ExpenseEClass, PERMANENT_EXPENSE__IS_ELIGIBLE_FOR_DEDUCTION); special_Expense_DSEClass = createEClass(SPECIAL_EXPENSE_DS); @@ -3576,7 +3347,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage private_Insurance_and_PlanEClass = createEClass(PRIVATE_INSURANCE_AND_PLAN); createEAttribute(private_Insurance_and_PlanEClass, PRIVATE_INSURANCE_AND_PLAN__CATEGORY); createEAttribute(private_Insurance_and_PlanEClass, PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT); - createEAttribute(private_Insurance_and_PlanEClass, PRIVATE_INSURANCE_AND_PLAN__IS_PRIVATE_INSURANCE_AND_PLAN_ELIGIBLE_FOR_DEDUCTION); health_and_Pension_InsuranceEClass = createEClass(HEALTH_AND_PENSION_INSURANCE); createEAttribute(health_and_Pension_InsuranceEClass, HEALTH_AND_PENSION_INSURANCE__CATEGORY); @@ -3584,14 +3354,9 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage donationEClass = createEClass(DONATION); createEAttribute(donationEClass, DONATION__BENEFICIARY1); - createEAttribute(donationEClass, DONATION__IS_BENEFICIARY_ELIGIBLE); createEAttribute(donationEClass, DONATION__IS_DONATION_REPORTED); loss_CarryforwardEClass = createEClass(LOSS_CARRYFORWARD); - createEAttribute(loss_CarryforwardEClass, LOSS_CARRYFORWARD__REGULAR_ACCOUNTABILITY); - createEAttribute(loss_CarryforwardEClass, LOSS_CARRYFORWARD__COMPENSATION_BY_OTHER_MEANS); - createEAttribute(loss_CarryforwardEClass, LOSS_CARRYFORWARD__TAX_PAYER_HAS_INHERITED_BUSINESS_OWNERSHIP); - createEAttribute(loss_CarryforwardEClass, LOSS_CARRYFORWARD__TAX_PAYER_HAS_BEEN_PARTNER_IN_BUSINESS); spousal_Expense_ACEClass = createEClass(SPOUSAL_EXPENSE_AC); @@ -3609,12 +3374,10 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage grantorEEnum = createEEnum(GRANTOR); disability_TypesEEnum = createEEnum(DISABILITY_TYPES); countryEEnum = createEEnum(COUNTRY); - tax_Card_TypeEEnum = createEEnum(TAX_CARD_TYPE); tax_OfficeEEnum = createEEnum(TAX_OFFICE); tax_Class_CategoryEEnum = createEEnum(TAX_CLASS_CATEGORY); job_ActivityEEnum = createEEnum(JOB_ACTIVITY); townEEnum = createEEnum(TOWN); - type_of_RateEEnum = createEEnum(TYPE_OF_RATE); cE_TypeEEnum = createEEnum(CE_TYPE); expense_PurposeEEnum = createEEnum(EXPENSE_PURPOSE); dependent_TypeEEnum = createEEnum(DEPENDENT_TYPE); @@ -3734,16 +3497,13 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage initEReference(getTax_Payer_From_agent(), this.getFromAgent(), this.getFromAgent_TaxPayer(), "from_agent", null, 1, 1, Tax_Payer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getTax_Payer_Incomes(), this.getIncome(), this.getIncome_TaxPayer(), "incomes", null, 1, -1, Tax_Payer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); initEReference(getTax_Payer_From_law(), this.getFromLaw(), this.getFromLaw_TaxPayer(), "from_law", null, 1, 1, Tax_Payer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getTax_Payer_TaxesDue(), ecorePackage.getEDouble(), "taxesDue", null, 1, 1, Tax_Payer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); initEClass(physical_PersonEClass, Physical_Person.class, "Physical_Person", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getPhysical_Person_Is_assisting_spouse(), ecorePackage.getEBoolean(), "is_assisting_spouse", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); initEAttribute(getPhysical_Person_SSNo(), ecorePackage.getEString(), "SSNo", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getPhysical_Person_Addresses(), this.getAddress(), this.getAddress_TaxPayer(), "addresses", null, 0, -1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); initEAttribute(getPhysical_Person_Birth_year(), ecorePackage.getEInt(), "birth_year", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); initEAttribute(getPhysical_Person_Disability_percentage(), ecorePackage.getEDouble(), "disability_percentage", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); initEAttribute(getPhysical_Person_Disability_type(), this.getDisability_Types(), "disability_type", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); - initEAttribute(getPhysical_Person_Is_affiliated_personnaly_to_social_security(), ecorePackage.getEBoolean(), "is_affiliated_personnaly_to_social_security", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); initEAttribute(getPhysical_Person_Birth_month(), ecorePackage.getEInt(), "birth_month", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); initEAttribute(getPhysical_Person_Birth_day(), ecorePackage.getEInt(), "birth_day", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); initEReference(getPhysical_Person_Expenses(), this.getExpense(), this.getExpense_Beneficiary(), "expenses", null, 0, -1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); @@ -3776,7 +3536,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage initEReference(getDependent_Expense(), this.getExpense(), this.getExpense_Dependent(), "expense", null, 0, -1, Dependent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); initEClass(external_AllowanceEClass, External_Allowance.class, "External_Allowance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getExternal_Allowance_Amount(), ecorePackage.getEDouble(), "amount", null, 1, 1, External_Allowance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getExternal_Allowance_Grantor(), this.getGrantor(), "grantor", null, 1, 1, External_Allowance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getExternal_Allowance_Starting_year(), ecorePackage.getEInt(), "starting_year", null, 1, 1, External_Allowance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); initEAttribute(getExternal_Allowance_Ending_year(), ecorePackage.getEInt(), "ending_year", null, 1, 1, External_Allowance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); @@ -3825,13 +3584,11 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage initEReference(getIncome_Expenses(), this.getExpense(), this.getExpense_Income(), "expenses", null, 0, -1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); initEClass(income_TypeEClass, Income_Type.class, "Income_Type", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getIncome_Type_SubjectToWithholdingTax(), ecorePackage.getEBoolean(), "subjectToWithholdingTax", null, 1, 1, Income_Type.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); initEAttribute(getIncome_Type_Id8(), ecorePackage.getEString(), "id8", null, 1, 1, Income_Type.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); initEReference(getIncome_Type_Income(), this.getIncome(), this.getIncome_Income_type(), "income", null, 1, 1, Income_Type.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(tax_CardEClass, Tax_Card.class, "Tax_Card", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getTax_Card_Card_identifier(), ecorePackage.getEString(), "card_identifier", null, 0, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getTax_Card_Tax_card_type(), this.getTax_Card_Type(), "tax_card_type", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); initEAttribute(getTax_Card_Tax_office(), this.getTax_Office(), "tax_office", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getTax_Card_Percentage_of_witholding(), ecorePackage.getEDouble(), "percentage_of_witholding", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getTax_Card_Tax_payers_name_surname(), ecorePackage.getEString(), "tax_payers_name_surname", null, 0, -1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); @@ -3928,12 +3685,10 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage initEClass(fdEClass, Taxation.FD.class, "FD", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getFD_Distance_declared_in_january(), ecorePackage.getEDouble(), "distance_declared_in_january", null, 1, 1, Taxation.FD.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getFD_Calculated_distance(), ecorePackage.getEDouble(), "calculated_distance", null, 1, 1, Taxation.FD.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); initEClass(professional_Expenses_DeductionEClass, Professional_Expenses_Deduction.class, "Professional_Expenses_Deduction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(foEClass, Taxation.FO.class, "FO", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getFO_Rate_type_for_FO(), this.getType_of_Rate(), "rate_type_for_FO", null, 1, 1, Taxation.FO.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); initEClass(dS_for_Permanent_ExpenseEClass, DS_for_Permanent_Expense.class, "DS_for_Permanent_Expense", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getDS_for_Permanent_Expense_Permanent_expense_category(), this.getCategory_of_Permanent_Expense(), "permanent_expense_category", null, 1, 1, DS_for_Permanent_Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); @@ -3949,9 +3704,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage initEClass(dS_for_Private_Insurance_and_PlanEClass, DS_for_Private_Insurance_and_Plan.class, "DS_for_Private_Insurance_and_Plan", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getDS_for_Private_Insurance_and_Plan_Private_insurance_and_plan_category(), this.getCategory_of_Private_Insurance_and_Plan(), "private_insurance_and_plan_category", null, 1, 1, DS_for_Private_Insurance_and_Plan.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getDS_for_Private_Insurance_and_Plan_Increase_for_life_insurance(), ecorePackage.getEDouble(), "increase_for_life_insurance", null, 1, 1, DS_for_Private_Insurance_and_Plan.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); - initEAttribute(getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_private_insurance(), ecorePackage.getEDouble(), "maximum_deductible_amount_for_private_insurance", null, 1, 1, DS_for_Private_Insurance_and_Plan.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); - initEAttribute(getDS_for_Private_Insurance_and_Plan_Maximum_deductible_amount_for_old_age_pension_plan(), ecorePackage.getEDouble(), "maximum_deductible_amount_for_old_age_pension_plan", null, 1, 1, DS_for_Private_Insurance_and_Plan.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); initEClass(dS_for_Loss_CarryforwardEClass, DS_for_Loss_Carryforward.class, "DS_for_Loss_Carryforward", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); @@ -3959,7 +3711,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage initEClass(permanent_ExpenseEClass, Permanent_Expense.class, "Permanent_Expense", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getPermanent_Expense_Category(), this.getCategory_of_Permanent_Expense(), "category", null, 1, 1, Permanent_Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getPermanent_Expense_Is_eligible_for_deduction(), ecorePackage.getEBoolean(), "is_eligible_for_deduction", "false", 1, 1, Permanent_Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); initEClass(special_Expense_DSEClass, Special_Expense_DS.class, "Special_Expense_DS", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); @@ -3968,7 +3719,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage initEClass(private_Insurance_and_PlanEClass, Private_Insurance_and_Plan.class, "Private_Insurance_and_Plan", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getPrivate_Insurance_and_Plan_Category(), this.getCategory_of_Private_Insurance_and_Plan(), "category", null, 1, 1, Private_Insurance_and_Plan.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getPrivate_Insurance_and_Plan_Duration_of_contract(), ecorePackage.getEInt(), "duration_of_contract", null, 1, 1, Private_Insurance_and_Plan.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getPrivate_Insurance_and_Plan_Is_private_insurance_and_plan_eligible_for_deduction(), ecorePackage.getEBoolean(), "is_private_insurance_and_plan_eligible_for_deduction", "false", 1, 1, Private_Insurance_and_Plan.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); initEClass(health_and_Pension_InsuranceEClass, Health_and_Pension_Insurance.class, "Health_and_Pension_Insurance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getHealth_and_Pension_Insurance_Category(), this.getCategory_of_Health_and_Pension_Insurances(), "category", null, 1, 1, Health_and_Pension_Insurance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); @@ -3976,14 +3726,9 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage initEClass(donationEClass, Donation.class, "Donation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getDonation_Beneficiary1(), ecorePackage.getEString(), "beneficiary1", null, 1, 1, Donation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getDonation_Is_beneficiary_eligible(), ecorePackage.getEBoolean(), "is_beneficiary_eligible", "false", 1, 1, Donation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); initEAttribute(getDonation_Is_donation_reported(), ecorePackage.getEBoolean(), "is_donation_reported", null, 1, 1, Donation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(loss_CarryforwardEClass, Loss_Carryforward.class, "Loss_Carryforward", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getLoss_Carryforward_Regular_accountability(), ecorePackage.getEBoolean(), "regular_accountability", null, 1, 1, Loss_Carryforward.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); - initEAttribute(getLoss_Carryforward_Compensation_by_other_means(), ecorePackage.getEBoolean(), "compensation_by_other_means", null, 1, 1, Loss_Carryforward.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); - initEAttribute(getLoss_Carryforward_Tax_payer_has_inherited_business_ownership(), ecorePackage.getEBoolean(), "tax_payer_has_inherited_business_ownership", "false", 1, 1, Loss_Carryforward.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); - initEAttribute(getLoss_Carryforward_Tax_payer_has_been_partner_in_business(), ecorePackage.getEBoolean(), "tax_payer_has_been_partner_in_business", "true", 1, 1, Loss_Carryforward.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED); initEClass(spousal_Expense_ACEClass, Spousal_Expense_AC.class, "Spousal_Expense_AC", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); @@ -4024,10 +3769,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage addEEnumLiteral(countryEEnum, Country.NN); addEEnumLiteral(countryEEnum, Country.OTHER); - initEEnum(tax_Card_TypeEEnum, Tax_Card_Type.class, "Tax_Card_Type"); - addEEnumLiteral(tax_Card_TypeEEnum, Tax_Card_Type.PRINCIPAL); - addEEnumLiteral(tax_Card_TypeEEnum, Tax_Card_Type.ADDITIONAL); - initEEnum(tax_OfficeEEnum, Tax_Office.class, "Tax_Office"); addEEnumLiteral(tax_OfficeEEnum, Tax_Office.RTS_2); addEEnumLiteral(tax_OfficeEEnum, Tax_Office.RTS_3); @@ -4051,10 +3792,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage addEEnumLiteral(townEEnum, Town.TT); addEEnumLiteral(townEEnum, Town.OTHER); - initEEnum(type_of_RateEEnum, Type_of_Rate.class, "Type_of_Rate"); - addEEnumLiteral(type_of_RateEEnum, Type_of_Rate.REGULAR); - addEEnumLiteral(type_of_RateEEnum, Type_of_Rate.REAL_COST); - initEEnum(cE_TypeEEnum, CE_Type.class, "CE_Type"); addEEnumLiteral(cE_TypeEEnum, CE_Type.INALIDITY_AND_INFIRMITY); addEEnumLiteral(cE_TypeEEnum, CE_Type.DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD); @@ -4183,18 +3920,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage new String[] { "derivation", "let non_null_amounts:OrderedSet(Income_Detail)=self.details->select(det:Income_Detail|det.amount>0)->asOrderedSet() in\nnon_null_amounts->collect(amount)->min()" }); - addAnnotation - (getIncome_Type_SubjectToWithholdingTax(), - source, - new String[] { - "derivation", "\n\t\t\t\tself.income.tax_card->notEmpty()\n\t\t\t\t" - }); - addAnnotation - (getTax_Card_Tax_card_type(), - source, - new String[] { - "derivation", "if(self.income.taxPayer.incomes->size()=1) then \nTax_Card_Type::Principal\n\telse\n\t\tlet all_incomes:OrderedSet(Income)=self.income.taxPayer.incomes->select(inc:Income| inc.income_amount= self.income.taxPayer.incomes.income_amount->max())->asOrderedSet() in\n\t\tlet bigest_income:Income= all_incomes->first() in\n\t\t\t if(bigest_income=self.income) then\n\t\t\t \t Tax_Card_Type::Principal\n\t\t\t else\n\t\t\t\t\tTax_Card_Type::Additional\n\t\t\t\tendif\nendif\n\t\t\t\t" - }); } } //TaxationPackageImpl -- cgit v1.2.3-70-g09d2 From 5fd28fe3201ad6e316fea3688bd89130bc29bc13 Mon Sep 17 00:00:00 2001 From: ArenBabikian Date: Wed, 13 May 2020 00:16:27 -0400 Subject: Adjust FamilyTree MM. Add new Taxation MM with possible Multiple Roots --- .../model/familytree.ecore | 2 +- .../model/familytree.genmodel | 48 +- .../src/familytree/Member.java | 2 +- .../src/familytree/impl/FamilytreePackageImpl.java | 2 +- .../case.study.pledge.model/META-INF/MANIFEST.MF | 5 +- .../model/TaxationWithRoot.aird | 5833 +++++++++++ .../model/TaxationWithRoot.ecore | 581 ++ .../model/TaxationWithRoot.genmodel | 366 + .../case.study.pledge.model/plugin.xml | 8 + .../case.study.pledge.model/src/Taxation/FO.java | 1 - .../src/Taxation/Loss_Carryforward.java | 1 - .../src/Taxation/Tax_Card_Type.java | 209 - .../src/Taxation/Type_of_Rate.java | 209 - .../src/Taxation/impl/FOImpl.java | 1 + .../src/Taxation/impl/Loss_CarryforwardImpl.java | 1 + .../src/Taxation/impl/TaxationPackageImpl.java | 1 + .../src/TaxationWithRoot/Address.java | 157 + .../Agriculture_and_Forestry_Income.java | 17 + .../src/TaxationWithRoot/CE_Type.java | 232 + .../src/TaxationWithRoot/CIM.java | 17 + .../src/TaxationWithRoot/CIP.java | 17 + .../src/TaxationWithRoot/CIS.java | 17 + .../Capital_and_Investments_Income.java | 17 + .../Category_of_Health_and_Pension_Insurances.java | 232 + .../Category_of_Permanent_Expense.java | 209 + .../Category_of_Private_Insurance_and_Plan.java | 278 + .../src/TaxationWithRoot/Constants.java | 619 ++ .../src/TaxationWithRoot/Country.java | 301 + .../src/TaxationWithRoot/DS.java | 67 + .../src/TaxationWithRoot/DS_for_Donation.java | 17 + .../DS_for_Health_and_Pension_Insurance.java | 48 + .../TaxationWithRoot/DS_for_Interest_Expense.java | 17 + .../TaxationWithRoot/DS_for_Loss_Carryforward.java | 17 + .../TaxationWithRoot/DS_for_Permanent_Expense.java | 48 + .../DS_for_Private_Insurance_and_Plan.java | 48 + .../src/TaxationWithRoot/Dependent.java | 188 + .../src/TaxationWithRoot/Dependent_Type.java | 278 + .../src/TaxationWithRoot/Disability_Types.java | 347 + .../src/TaxationWithRoot/Donation.java | 68 + .../src/TaxationWithRoot/Employment_Income.java | 17 + .../src/TaxationWithRoot/Expense.java | 196 + .../src/TaxationWithRoot/Expense_Purpose.java | 301 + .../src/TaxationWithRoot/External_Allowance.java | 166 + .../TaxationWithRoot/Extraordinary_Expense_CE.java | 71 + .../src/TaxationWithRoot/FD.java | 45 + .../src/TaxationWithRoot/FO.java | 17 + .../src/TaxationWithRoot/Fiscal_Address.java | 17 + .../src/TaxationWithRoot/Foreign_Income.java | 17 + .../src/TaxationWithRoot/FromAgent.java | 144 + .../src/TaxationWithRoot/FromLaw.java | 71 + .../src/TaxationWithRoot/Grantor.java | 301 + .../src/TaxationWithRoot/Habitual_Address.java | 17 + .../Health_and_Pension_Insurance.java | 72 + .../src/TaxationWithRoot/Household.java | 86 + .../src/TaxationWithRoot/Income.java | 200 + .../src/TaxationWithRoot/Income_Detail.java | 186 + .../src/TaxationWithRoot/Income_Tax.java | 115 + .../src/TaxationWithRoot/Income_Tax_Credit.java | 213 + .../src/TaxationWithRoot/Income_Type.java | 71 + .../src/TaxationWithRoot/Interest_Expense.java | 17 + .../src/TaxationWithRoot/Job_Activity.java | 232 + .../src/TaxationWithRoot/Legal_Union_Record.java | 221 + .../src/TaxationWithRoot/Legal_Union_Types.java | 232 + .../src/TaxationWithRoot/Local_Income.java | 17 + .../src/TaxationWithRoot/Loss_Carryforward.java | 17 + .../src/TaxationWithRoot/Marriage_Record.java | 17 + .../TaxationWithRoot/Miscellaneous_Expense_FO.java | 17 + .../TaxationWithRoot/Non_Resident_Tax_Payer.java | 46 + .../src/TaxationWithRoot/Partnership_Record.java | 17 + .../Pensions_and_Annuities_Income.java | 46 + .../src/TaxationWithRoot/Permanent_Expense.java | 48 + .../src/TaxationWithRoot/Physical_Person.java | 219 + .../Private_Insurance_and_Plan.java | 71 + .../src/TaxationWithRoot/Professional_Expense.java | 17 + .../Professional_Expenses_Deduction.java | 16 + .../Rentals_and_Leases_Income.java | 46 + .../src/TaxationWithRoot/Resident_Tax_Payer.java | 17 + .../src/TaxationWithRoot/Resource.java | 38 + .../src/TaxationWithRoot/Root.java | 18 + .../src/TaxationWithRoot/Separation_Causes.java | 255 + .../src/TaxationWithRoot/Special_Expense_DS.java | 17 + .../src/TaxationWithRoot/Spousal_Expense_AC.java | 17 + .../src/TaxationWithRoot/Tax_Card.java | 810 ++ .../src/TaxationWithRoot/Tax_Case.java | 16 + .../src/TaxationWithRoot/Tax_Class_Category.java | 232 + .../src/TaxationWithRoot/Tax_Office.java | 255 + .../src/TaxationWithRoot/Tax_Payer.java | 104 + .../src/TaxationWithRoot/Tax_Property.java | 94 + .../src/TaxationWithRoot/TaxationFactory.java | 510 + .../src/TaxationWithRoot/TaxationPackage.java | 10119 +++++++++++++++++++ .../src/TaxationWithRoot/Town.java | 278 + .../Trade_and_Business_Income.java | 17 + .../src/TaxationWithRoot/Travel_Expense_FD.java | 17 + .../src/TaxationWithRoot/impl/AddressImpl.java | 463 + .../impl/Agriculture_and_Forestry_IncomeImpl.java | 37 + .../src/TaxationWithRoot/impl/CIMImpl.java | 37 + .../src/TaxationWithRoot/impl/CIPImpl.java | 37 + .../src/TaxationWithRoot/impl/CISImpl.java | 37 + .../impl/Capital_and_Investments_IncomeImpl.java | 37 + .../src/TaxationWithRoot/impl/ConstantsImpl.java | 1509 +++ .../src/TaxationWithRoot/impl/DSImpl.java | 220 + .../TaxationWithRoot/impl/DS_for_DonationImpl.java | 37 + .../DS_for_Health_and_Pension_InsuranceImpl.java | 165 + .../impl/DS_for_Interest_ExpenseImpl.java | 37 + .../impl/DS_for_Loss_CarryforwardImpl.java | 37 + .../impl/DS_for_Permanent_ExpenseImpl.java | 165 + .../DS_for_Private_Insurance_and_PlanImpl.java | 165 + .../src/TaxationWithRoot/impl/DependentImpl.java | 599 ++ .../src/TaxationWithRoot/impl/DonationImpl.java | 220 + .../impl/Employment_IncomeImpl.java | 37 + .../src/TaxationWithRoot/impl/ExpenseImpl.java | 654 ++ .../impl/External_AllowanceImpl.java | 500 + .../impl/Extraordinary_Expense_CEImpl.java | 221 + .../src/TaxationWithRoot/impl/FDImpl.java | 164 + .../src/TaxationWithRoot/impl/FOImpl.java | 37 + .../TaxationWithRoot/impl/Fiscal_AddressImpl.java | 37 + .../TaxationWithRoot/impl/Foreign_IncomeImpl.java | 37 + .../src/TaxationWithRoot/impl/FromAgentImpl.java | 506 + .../src/TaxationWithRoot/impl/FromLawImpl.java | 268 + .../impl/Habitual_AddressImpl.java | 37 + .../impl/Health_and_Pension_InsuranceImpl.java | 221 + .../src/TaxationWithRoot/impl/HouseholdImpl.java | 311 + .../src/TaxationWithRoot/impl/IncomeImpl.java | 614 ++ .../TaxationWithRoot/impl/Income_DetailImpl.java | 548 + .../src/TaxationWithRoot/impl/Income_TaxImpl.java | 341 + .../impl/Income_Tax_CreditImpl.java | 625 ++ .../src/TaxationWithRoot/impl/Income_TypeImpl.java | 268 + .../impl/Interest_ExpenseImpl.java | 37 + .../impl/Legal_Union_RecordImpl.java | 648 ++ .../TaxationWithRoot/impl/Local_IncomeImpl.java | 37 + .../impl/Loss_CarryforwardImpl.java | 37 + .../TaxationWithRoot/impl/Marriage_RecordImpl.java | 37 + .../impl/Miscellaneous_Expense_FOImpl.java | 37 + .../impl/Non_Resident_Tax_PayerImpl.java | 164 + .../impl/Partnership_RecordImpl.java | 37 + .../impl/Pensions_and_Annuities_IncomeImpl.java | 164 + .../impl/Permanent_ExpenseImpl.java | 165 + .../TaxationWithRoot/impl/Physical_PersonImpl.java | 617 ++ .../impl/Private_Insurance_and_PlanImpl.java | 221 + .../impl/Professional_ExpenseImpl.java | 37 + .../impl/Professional_Expenses_DeductionImpl.java | 37 + .../impl/Rentals_and_Leases_IncomeImpl.java | 164 + .../impl/Resident_Tax_PayerImpl.java | 37 + .../src/TaxationWithRoot/impl/ResourceImpl.java | 153 + .../src/TaxationWithRoot/impl/RootImpl.java | 39 + .../impl/Special_Expense_DSImpl.java | 37 + .../impl/Spousal_Expense_ACImpl.java | 37 + .../src/TaxationWithRoot/impl/Tax_CardImpl.java | 2093 ++++ .../src/TaxationWithRoot/impl/Tax_PayerImpl.java | 355 + .../TaxationWithRoot/impl/Tax_PropertyImpl.java | 324 + .../TaxationWithRoot/impl/TaxationFactoryImpl.java | 1108 ++ .../TaxationWithRoot/impl/TaxationPackageImpl.java | 3988 ++++++++ .../impl/Trade_and_Business_IncomeImpl.java | 37 + .../impl/Travel_Expense_FDImpl.java | 37 + .../util/TaxationAdapterFactory.java | 1182 +++ .../src/TaxationWithRoot/util/TaxationSwitch.java | 1424 +++ 156 files changed, 49022 insertions(+), 455 deletions(-) create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.aird create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.ecore create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.genmodel delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card_Type.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Type_of_Rate.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Address.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Agriculture_and_Forestry_Income.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/CE_Type.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/CIM.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/CIP.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/CIS.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Capital_and_Investments_Income.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Category_of_Health_and_Pension_Insurances.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Category_of_Permanent_Expense.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Category_of_Private_Insurance_and_Plan.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Constants.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Country.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Donation.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Health_and_Pension_Insurance.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Interest_Expense.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Loss_Carryforward.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Permanent_Expense.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Private_Insurance_and_Plan.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Dependent.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Dependent_Type.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Disability_Types.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Donation.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Employment_Income.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Expense.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Expense_Purpose.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/External_Allowance.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Extraordinary_Expense_CE.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FD.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FO.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Fiscal_Address.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Foreign_Income.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FromAgent.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FromLaw.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Grantor.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Habitual_Address.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Health_and_Pension_Insurance.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Household.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Detail.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Tax.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Tax_Credit.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Type.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Interest_Expense.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Job_Activity.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Legal_Union_Record.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Legal_Union_Types.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Local_Income.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Loss_Carryforward.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Marriage_Record.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Miscellaneous_Expense_FO.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Non_Resident_Tax_Payer.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Partnership_Record.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Pensions_and_Annuities_Income.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Permanent_Expense.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Physical_Person.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Private_Insurance_and_Plan.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Professional_Expense.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Professional_Expenses_Deduction.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Rentals_and_Leases_Income.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Resident_Tax_Payer.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Resource.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Root.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Separation_Causes.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Special_Expense_DS.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Spousal_Expense_AC.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Card.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Case.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Class_Category.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Office.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Payer.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Property.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/TaxationFactory.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/TaxationPackage.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Town.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Trade_and_Business_Income.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Travel_Expense_FD.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/AddressImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Agriculture_and_Forestry_IncomeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/CIMImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/CIPImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/CISImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Capital_and_Investments_IncomeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/ConstantsImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DSImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_DonationImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Health_and_Pension_InsuranceImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Interest_ExpenseImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Loss_CarryforwardImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Permanent_ExpenseImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Private_Insurance_and_PlanImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DependentImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DonationImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Employment_IncomeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/ExpenseImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/External_AllowanceImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Extraordinary_Expense_CEImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FDImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FOImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Fiscal_AddressImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Foreign_IncomeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FromAgentImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FromLawImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Habitual_AddressImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Health_and_Pension_InsuranceImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/HouseholdImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/IncomeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_DetailImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_TaxImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_Tax_CreditImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_TypeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Interest_ExpenseImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Legal_Union_RecordImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Local_IncomeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Loss_CarryforwardImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Marriage_RecordImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Miscellaneous_Expense_FOImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Non_Resident_Tax_PayerImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Partnership_RecordImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Pensions_and_Annuities_IncomeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Permanent_ExpenseImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Physical_PersonImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Private_Insurance_and_PlanImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Professional_ExpenseImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Professional_Expenses_DeductionImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Rentals_and_Leases_IncomeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Resident_Tax_PayerImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/ResourceImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/RootImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Special_Expense_DSImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Spousal_Expense_ACImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Tax_CardImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Tax_PayerImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Tax_PropertyImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/TaxationFactoryImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/TaxationPackageImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Trade_and_Business_IncomeImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Travel_Expense_FDImpl.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/util/TaxationAdapterFactory.java create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/util/TaxationSwitch.java (limited to 'Tests/MODELS2020-CaseStudies/case.study.pledge.model/src') diff --git a/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/model/familytree.ecore b/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/model/familytree.ecore index f2e51f65..128e5c63 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/model/familytree.ecore +++ b/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/model/familytree.ecore @@ -7,7 +7,7 @@ - diff --git a/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/model/familytree.genmodel b/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/model/familytree.genmodel index 29f5fc02..2879bef6 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/model/familytree.genmodel +++ b/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/model/familytree.genmodel @@ -1,33 +1,19 @@ - - familytree.ecore - - - - - - - - - - - + + familytree.ecore + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/src/familytree/Member.java b/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/src/familytree/Member.java index 55a6bd1e..9438b5e3 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/src/familytree/Member.java +++ b/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/src/familytree/Member.java @@ -56,7 +56,7 @@ public interface Member extends EObject { * @return the value of the 'Age' attribute. * @see #setAge(int) * @see familytree.FamilytreePackage#getMember_Age() - * @model default="0" + * @model default="0" required="true" * @generated */ int getAge(); diff --git a/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/src/familytree/impl/FamilytreePackageImpl.java b/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/src/familytree/impl/FamilytreePackageImpl.java index 0980260e..7e5078ab 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/src/familytree/impl/FamilytreePackageImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.familyTree.model/src/familytree/impl/FamilytreePackageImpl.java @@ -240,7 +240,7 @@ public class FamilytreePackageImpl extends EPackageImpl implements FamilytreePac initEClass(memberEClass, Member.class, "Member", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getMember_Name(), ecorePackage.getEString(), "name", null, 0, 1, Member.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getMember_Age(), ecorePackage.getEInt(), "age", "0", 0, 1, Member.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getMember_Age(), ecorePackage.getEInt(), "age", "0", 1, 1, Member.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getMember_Children(), this.getMember(), this.getMember_Parents(), "children", null, 0, -1, Member.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getMember_Parents(), this.getMember(), this.getMember_Children(), "parents", null, 0, 2, Member.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/META-INF/MANIFEST.MF b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/META-INF/MANIFEST.MF index 4b5f5b2f..012e3251 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/META-INF/MANIFEST.MF +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/META-INF/MANIFEST.MF @@ -8,7 +8,10 @@ Bundle-Vendor: %providerName Bundle-Localization: plugin Export-Package: Taxation, Taxation.impl, - Taxation.util + Taxation.util, + TaxationWithRoot, + TaxationWithRoot.impl, + TaxationWithRoot.util Require-Bundle: org.eclipse.core.runtime, org.eclipse.emf.ecore;visibility:=reexport, org.eclipse.emf.ecore.xmi;visibility:=reexport, diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.aird b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.aird new file mode 100644 index 00000000..f97c2f56 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.aird @@ -0,0 +1,5833 @@ + + + + TaxationWithRoot.ecore + TaxationWithRoot.genmodel + platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore + + + + + + + + + + + + + + + + + + + + + + + bold + + + + + + + bold + + + + + + + + + + bold + + + + + + + + + + bold + + + + bold + + + + + + + bold + + + + bold + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + italic + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + + italic + + + + + + + + + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + + + + + + + + + bold + + + + + + + + bold + + + + + + + + + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + + + + + + + + + bold + + + + + + + + + italic + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + bold + + + + + + + + bold + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + + + + + + bold + + + + + + + + bold + + + + + + + + + italic + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + + italic + + + + + + + + bold + + + + + + + + + + + + + + + + + + + + + + + + bold + + + + + + + + bold + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + bold + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + bold + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + bold + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + bold + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + bold + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + bold + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + bold + + + + + + + + bold + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + bold + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + bold + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + bold + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + bold + + + + + + + + bold + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + bold + + + + + + + + bold + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + bold + + + + + + + + bold + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + bold + + + + + + + + bold + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + + + + + + + + + + labelSize + bold + + + labelSize + + + + + + + + + + labelSize + bold + + + labelSize + + + + + + + + + + labelSize + bold + + + labelSize + + + + + + + + + + labelSize + bold + + + labelSize + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + bold + + + bold + + + + + + + + + + + bold + + + bold + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + bold + + + bold + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + bold + + + bold + + + + + + + + + + + bold + + + bold + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + bold + + + bold + + + + + + + + + + + bold + + + bold + + + + + + + + + + + + + + + + + + + + + + bold + + + bold + + + + + + + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO + + italic + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + + italic + + + + + + + + + + + labelSize + + + labelSize + + + + + + + + + + + italic + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.ecore b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.ecore new file mode 100644 index 00000000..079cde76 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.ecore @@ -0,0 +1,581 @@ + + + +
            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
            + + + + +
            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
            + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.genmodel b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.genmodel new file mode 100644 index 00000000..0dadd2d2 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.genmodel @@ -0,0 +1,366 @@ + + + TaxationWithRoot.ecore + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/plugin.xml b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/plugin.xml index 4660d88a..fac1023e 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/plugin.xml +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/plugin.xml @@ -10,4 +10,12 @@ uri="http:///TaxCard.ecore"> + + + + + diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FO.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FO.java index 420270b1..e6ebcb67 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FO.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/FO.java @@ -14,5 +14,4 @@ package Taxation; * @generated */ public interface FO extends Professional_Expenses_Deduction { - } // FO diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Loss_Carryforward.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Loss_Carryforward.java index a5acbe85..b7a8ac32 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Loss_Carryforward.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Loss_Carryforward.java @@ -14,5 +14,4 @@ package Taxation; * @generated */ public interface Loss_Carryforward extends Special_Expense_DS { - } // Loss_Carryforward diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card_Type.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card_Type.java deleted file mode 100644 index 442c1b65..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Tax_Card_Type.java +++ /dev/null @@ -1,209 +0,0 @@ -/** - */ -package Taxation; - -import java.util.Arrays; -import java.util.Collections; -import java.util.List; - -import org.eclipse.emf.common.util.Enumerator; - -/** - * - * A representation of the literals of the enumeration 'Tax Card Type', - * and utility methods for working with them. - * - * @see Taxation.TaxationPackage#getTax_Card_Type() - * @model - * @generated - */ -public enum Tax_Card_Type implements Enumerator { - /** - * The 'Principal' literal object. - * - * - * @see #PRINCIPAL_VALUE - * @generated - * @ordered - */ - PRINCIPAL(0, "Principal", "Principal"), - - /** - * The 'Additional' literal object. - * - * - * @see #ADDITIONAL_VALUE - * @generated - * @ordered - */ - ADDITIONAL(1, "Additional", "Additional"); - - /** - * The 'Principal' literal value. - * - * - * @see #PRINCIPAL - * @model name="Principal" - * @generated - * @ordered - */ - public static final int PRINCIPAL_VALUE = 0; - - /** - * The 'Additional' literal value. - * - * - * @see #ADDITIONAL - * @model name="Additional" - * @generated - * @ordered - */ - public static final int ADDITIONAL_VALUE = 1; - - /** - * An array of all the 'Tax Card Type' enumerators. - * - * - * @generated - */ - private static final Tax_Card_Type[] VALUES_ARRAY = - new Tax_Card_Type[] { - PRINCIPAL, - ADDITIONAL, - }; - - /** - * A public read-only list of all the 'Tax Card Type' enumerators. - * - * - * @generated - */ - public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); - - /** - * Returns the 'Tax Card Type' literal with the specified literal value. - * - * - * @param literal the literal. - * @return the matching enumerator or null. - * @generated - */ - public static Tax_Card_Type get(String literal) { - for (int i = 0; i < VALUES_ARRAY.length; ++i) { - Tax_Card_Type result = VALUES_ARRAY[i]; - if (result.toString().equals(literal)) { - return result; - } - } - return null; - } - - /** - * Returns the 'Tax Card Type' literal with the specified name. - * - * - * @param name the name. - * @return the matching enumerator or null. - * @generated - */ - public static Tax_Card_Type getByName(String name) { - for (int i = 0; i < VALUES_ARRAY.length; ++i) { - Tax_Card_Type result = VALUES_ARRAY[i]; - if (result.getName().equals(name)) { - return result; - } - } - return null; - } - - /** - * Returns the 'Tax Card Type' literal with the specified integer value. - * - * - * @param value the integer value. - * @return the matching enumerator or null. - * @generated - */ - public static Tax_Card_Type get(int value) { - switch (value) { - case PRINCIPAL_VALUE: return PRINCIPAL; - case ADDITIONAL_VALUE: return ADDITIONAL; - } - return null; - } - - /** - * - * - * @generated - */ - private final int value; - - /** - * - * - * @generated - */ - private final String name; - - /** - * - * - * @generated - */ - private final String literal; - - /** - * Only this class can construct instances. - * - * - * @generated - */ - private Tax_Card_Type(int value, String name, String literal) { - this.value = value; - this.name = name; - this.literal = literal; - } - - /** - * - * - * @generated - */ - @Override - public int getValue() { - return value; - } - - /** - * - * - * @generated - */ - @Override - public String getName() { - return name; - } - - /** - * - * - * @generated - */ - @Override - public String getLiteral() { - return literal; - } - - /** - * Returns the literal value of the enumerator, which is its string representation. - * - * - * @generated - */ - @Override - public String toString() { - return literal; - } - -} //Tax_Card_Type diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Type_of_Rate.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Type_of_Rate.java deleted file mode 100644 index 4e21ec74..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/Type_of_Rate.java +++ /dev/null @@ -1,209 +0,0 @@ -/** - */ -package Taxation; - -import java.util.Arrays; -import java.util.Collections; -import java.util.List; - -import org.eclipse.emf.common.util.Enumerator; - -/** - * - * A representation of the literals of the enumeration 'Type of Rate', - * and utility methods for working with them. - * - * @see Taxation.TaxationPackage#getType_of_Rate() - * @model - * @generated - */ -public enum Type_of_Rate implements Enumerator { - /** - * The 'REGULAR' literal object. - * - * - * @see #REGULAR_VALUE - * @generated - * @ordered - */ - REGULAR(0, "REGULAR", "REGULAR"), - - /** - * The 'REAL COST' literal object. - * - * - * @see #REAL_COST_VALUE - * @generated - * @ordered - */ - REAL_COST(1, "REAL_COST", "REAL_COST"); - - /** - * The 'REGULAR' literal value. - * - * - * @see #REGULAR - * @model - * @generated - * @ordered - */ - public static final int REGULAR_VALUE = 0; - - /** - * The 'REAL COST' literal value. - * - * - * @see #REAL_COST - * @model - * @generated - * @ordered - */ - public static final int REAL_COST_VALUE = 1; - - /** - * An array of all the 'Type of Rate' enumerators. - * - * - * @generated - */ - private static final Type_of_Rate[] VALUES_ARRAY = - new Type_of_Rate[] { - REGULAR, - REAL_COST, - }; - - /** - * A public read-only list of all the 'Type of Rate' enumerators. - * - * - * @generated - */ - public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); - - /** - * Returns the 'Type of Rate' literal with the specified literal value. - * - * - * @param literal the literal. - * @return the matching enumerator or null. - * @generated - */ - public static Type_of_Rate get(String literal) { - for (int i = 0; i < VALUES_ARRAY.length; ++i) { - Type_of_Rate result = VALUES_ARRAY[i]; - if (result.toString().equals(literal)) { - return result; - } - } - return null; - } - - /** - * Returns the 'Type of Rate' literal with the specified name. - * - * - * @param name the name. - * @return the matching enumerator or null. - * @generated - */ - public static Type_of_Rate getByName(String name) { - for (int i = 0; i < VALUES_ARRAY.length; ++i) { - Type_of_Rate result = VALUES_ARRAY[i]; - if (result.getName().equals(name)) { - return result; - } - } - return null; - } - - /** - * Returns the 'Type of Rate' literal with the specified integer value. - * - * - * @param value the integer value. - * @return the matching enumerator or null. - * @generated - */ - public static Type_of_Rate get(int value) { - switch (value) { - case REGULAR_VALUE: return REGULAR; - case REAL_COST_VALUE: return REAL_COST; - } - return null; - } - - /** - * - * - * @generated - */ - private final int value; - - /** - * - * - * @generated - */ - private final String name; - - /** - * - * - * @generated - */ - private final String literal; - - /** - * Only this class can construct instances. - * - * - * @generated - */ - private Type_of_Rate(int value, String name, String literal) { - this.value = value; - this.name = name; - this.literal = literal; - } - - /** - * - * - * @generated - */ - @Override - public int getValue() { - return value; - } - - /** - * - * - * @generated - */ - @Override - public String getName() { - return name; - } - - /** - * - * - * @generated - */ - @Override - public String getLiteral() { - return literal; - } - - /** - * Returns the literal value of the enumerator, which is its string representation. - * - * - * @generated - */ - @Override - public String toString() { - return literal; - } - -} //Type_of_Rate diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FOImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FOImpl.java index 5ffe9463..74524309 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FOImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/FOImpl.java @@ -4,6 +4,7 @@ package Taxation.impl; import Taxation.FO; import Taxation.TaxationPackage; + import org.eclipse.emf.ecore.EClass; /** diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Loss_CarryforwardImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Loss_CarryforwardImpl.java index 2f578d2c..11080c03 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Loss_CarryforwardImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/Loss_CarryforwardImpl.java @@ -4,6 +4,7 @@ package Taxation.impl; import Taxation.Loss_Carryforward; import Taxation.TaxationPackage; + import org.eclipse.emf.ecore.EClass; /** diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationPackageImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationPackageImpl.java index 56d3b3de..f3c3353c 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationPackageImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/Taxation/impl/TaxationPackageImpl.java @@ -71,6 +71,7 @@ import Taxation.TaxationPackage; import Taxation.Town; import Taxation.Trade_and_Business_Income; import Taxation.Travel_Expense_FD; + import org.eclipse.emf.ecore.EAttribute; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.EEnum; diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Address.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Address.java new file mode 100644 index 00000000..9df3f653 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Address.java @@ -0,0 +1,157 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'Address'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Address#getCountry Country}
            • + *
            • {@link TaxationWithRoot.Address#getStreet Street}
            • + *
            • {@link TaxationWithRoot.Address#getZipCode Zip Code}
            • + *
            • {@link TaxationWithRoot.Address#getCity City}
            • + *
            • {@link TaxationWithRoot.Address#getId2 Id2}
            • + *
            • {@link TaxationWithRoot.Address#getTaxPayer Tax Payer}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getAddress() + * @model + * @generated + */ +public interface Address extends Root { + /** + * Returns the value of the 'Country' attribute. + * The default value is "ZZ". + * The literals are from the enumeration {@link TaxationWithRoot.Country}. + * + * + * @return the value of the 'Country' attribute. + * @see TaxationWithRoot.Country + * @see #setCountry(Country) + * @see TaxationWithRoot.TaxationPackage#getAddress_Country() + * @model default="ZZ" required="true" + * @generated + */ + Country getCountry(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Address#getCountry Country}' attribute. + * + * + * @param value the new value of the 'Country' attribute. + * @see TaxationWithRoot.Country + * @see #getCountry() + * @generated + */ + void setCountry(Country value); + + /** + * Returns the value of the 'Street' attribute. + * + * + * @return the value of the 'Street' attribute. + * @see #setStreet(String) + * @see TaxationWithRoot.TaxationPackage#getAddress_Street() + * @model required="true" + * @generated + */ + String getStreet(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Address#getStreet Street}' attribute. + * + * + * @param value the new value of the 'Street' attribute. + * @see #getStreet() + * @generated + */ + void setStreet(String value); + + /** + * Returns the value of the 'Zip Code' attribute. + * + * + * @return the value of the 'Zip Code' attribute. + * @see #setZipCode(String) + * @see TaxationWithRoot.TaxationPackage#getAddress_ZipCode() + * @model required="true" + * @generated + */ + String getZipCode(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Address#getZipCode Zip Code}' attribute. + * + * + * @param value the new value of the 'Zip Code' attribute. + * @see #getZipCode() + * @generated + */ + void setZipCode(String value); + + /** + * Returns the value of the 'City' attribute. + * + * + * @return the value of the 'City' attribute. + * @see #setCity(String) + * @see TaxationWithRoot.TaxationPackage#getAddress_City() + * @model required="true" + * @generated + */ + String getCity(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Address#getCity City}' attribute. + * + * + * @param value the new value of the 'City' attribute. + * @see #getCity() + * @generated + */ + void setCity(String value); + + /** + * Returns the value of the 'Id2' attribute. + * + * + * @return the value of the 'Id2' attribute. + * @see #setId2(String) + * @see TaxationWithRoot.TaxationPackage#getAddress_Id2() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId2(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Address#getId2 Id2}' attribute. + * + * + * @param value the new value of the 'Id2' attribute. + * @see #getId2() + * @generated + */ + void setId2(String value); + + /** + * Returns the value of the 'Tax Payer' reference list. + * The list contents are of type {@link TaxationWithRoot.Physical_Person}. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Physical_Person#getAddresses Addresses}'. + * + * + * @return the value of the 'Tax Payer' reference list. + * @see TaxationWithRoot.TaxationPackage#getAddress_TaxPayer() + * @see TaxationWithRoot.Physical_Person#getAddresses + * @model opposite="addresses" ordered="false" + * @generated + */ + EList getTaxPayer(); + +} // Address diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Agriculture_and_Forestry_Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Agriculture_and_Forestry_Income.java new file mode 100644 index 00000000..dcac49a5 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Agriculture_and_Forestry_Income.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Agriculture and Forestry Income'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getAgriculture_and_Forestry_Income() + * @model + * @generated + */ +public interface Agriculture_and_Forestry_Income extends Income_Type { +} // Agriculture_and_Forestry_Income diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/CE_Type.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/CE_Type.java new file mode 100644 index 00000000..28fcee83 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/CE_Type.java @@ -0,0 +1,232 @@ +/** + */ +package TaxationWithRoot; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'CE Type', + * and utility methods for working with them. + * + * @see TaxationWithRoot.TaxationPackage#getCE_Type() + * @model + * @generated + */ +public enum CE_Type implements Enumerator { + /** + * The 'INALIDITY AND INFIRMITY' literal object. + * + * + * @see #INALIDITY_AND_INFIRMITY_VALUE + * @generated + * @ordered + */ + INALIDITY_AND_INFIRMITY(0, "INALIDITY_AND_INFIRMITY", "INALIDITY_AND_INFIRMITY"), + + /** + * The 'DEPENDENCE AND CARE EXCLUDING CHLIDREN NOT PART OF HOUSEHOLD' literal object. + * + * + * @see #DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD_VALUE + * @generated + * @ordered + */ + DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD(1, "DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD", "DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD"), + + /** + * The 'CARE FOR CHILDREN NOT BEING PART OF HOUSEHOLD' literal object. + * + * + * @see #CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD_VALUE + * @generated + * @ordered + */ + CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD(2, "CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD", "CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD"); + + /** + * The 'INALIDITY AND INFIRMITY' literal value. + * + * + * @see #INALIDITY_AND_INFIRMITY + * @model + * @generated + * @ordered + */ + public static final int INALIDITY_AND_INFIRMITY_VALUE = 0; + + /** + * The 'DEPENDENCE AND CARE EXCLUDING CHLIDREN NOT PART OF HOUSEHOLD' literal value. + * + * + * @see #DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD + * @model + * @generated + * @ordered + */ + public static final int DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD_VALUE = 1; + + /** + * The 'CARE FOR CHILDREN NOT BEING PART OF HOUSEHOLD' literal value. + * + * + * @see #CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD + * @model + * @generated + * @ordered + */ + public static final int CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD_VALUE = 2; + + /** + * An array of all the 'CE Type' enumerators. + * + * + * @generated + */ + private static final CE_Type[] VALUES_ARRAY = + new CE_Type[] { + INALIDITY_AND_INFIRMITY, + DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD, + CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD, + }; + + /** + * A public read-only list of all the 'CE Type' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'CE Type' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static CE_Type get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + CE_Type result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'CE Type' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static CE_Type getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + CE_Type result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'CE Type' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static CE_Type get(int value) { + switch (value) { + case INALIDITY_AND_INFIRMITY_VALUE: return INALIDITY_AND_INFIRMITY; + case DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD_VALUE: return DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD; + case CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD_VALUE: return CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private CE_Type(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //CE_Type diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/CIM.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/CIM.java new file mode 100644 index 00000000..62818c49 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/CIM.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'CIM'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getCIM() + * @model + * @generated + */ +public interface CIM extends Income_Tax_Credit { +} // CIM diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/CIP.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/CIP.java new file mode 100644 index 00000000..bab73088 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/CIP.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'CIP'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getCIP() + * @model + * @generated + */ +public interface CIP extends Income_Tax_Credit { +} // CIP diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/CIS.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/CIS.java new file mode 100644 index 00000000..294c1a0d --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/CIS.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'CIS'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getCIS() + * @model + * @generated + */ +public interface CIS extends Income_Tax_Credit { +} // CIS diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Capital_and_Investments_Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Capital_and_Investments_Income.java new file mode 100644 index 00000000..fb3648e5 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Capital_and_Investments_Income.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Capital and Investments Income'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getCapital_and_Investments_Income() + * @model + * @generated + */ +public interface Capital_and_Investments_Income extends Income_Type { +} // Capital_and_Investments_Income diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Category_of_Health_and_Pension_Insurances.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Category_of_Health_and_Pension_Insurances.java new file mode 100644 index 00000000..1c206275 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Category_of_Health_and_Pension_Insurances.java @@ -0,0 +1,232 @@ +/** + */ +package TaxationWithRoot; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Category of Health and Pension Insurances', + * and utility methods for working with them. + * + * @see TaxationWithRoot.TaxationPackage#getCategory_of_Health_and_Pension_Insurances() + * @model + * @generated + */ +public enum Category_of_Health_and_Pension_Insurances implements Enumerator { + /** + * The 'MANDATORY HEALTH AND PENSION INSURANCE' literal object. + * + * + * @see #MANDATORY_HEALTH_AND_PENSION_INSURANCE_VALUE + * @generated + * @ordered + */ + MANDATORY_HEALTH_AND_PENSION_INSURANCE(0, "MANDATORY_HEALTH_AND_PENSION_INSURANCE", "MANDATORY_HEALTH_AND_PENSION_INSURANCE"), + + /** + * The 'ADDITIONAL EMPLOYERS PENSION INSURANCE' literal object. + * + * + * @see #ADDITIONAL_EMPLOYERS_PENSION_INSURANCE_VALUE + * @generated + * @ordered + */ + ADDITIONAL_EMPLOYERS_PENSION_INSURANCE(1, "ADDITIONAL_EMPLOYERS_PENSION_INSURANCE", "ADDITIONAL_EMPLOYERS_PENSION_INSURANCE"), + + /** + * The 'CONTINUED HEALTH AND PENSION INSURANCE' literal object. + * + * + * @see #CONTINUED_HEALTH_AND_PENSION_INSURANCE_VALUE + * @generated + * @ordered + */ + CONTINUED_HEALTH_AND_PENSION_INSURANCE(2, "CONTINUED_HEALTH_AND_PENSION_INSURANCE", "CONTINUED_HEALTH_AND_PENSION_INSURANCE"); + + /** + * The 'MANDATORY HEALTH AND PENSION INSURANCE' literal value. + * + * + * @see #MANDATORY_HEALTH_AND_PENSION_INSURANCE + * @model + * @generated + * @ordered + */ + public static final int MANDATORY_HEALTH_AND_PENSION_INSURANCE_VALUE = 0; + + /** + * The 'ADDITIONAL EMPLOYERS PENSION INSURANCE' literal value. + * + * + * @see #ADDITIONAL_EMPLOYERS_PENSION_INSURANCE + * @model + * @generated + * @ordered + */ + public static final int ADDITIONAL_EMPLOYERS_PENSION_INSURANCE_VALUE = 1; + + /** + * The 'CONTINUED HEALTH AND PENSION INSURANCE' literal value. + * + * + * @see #CONTINUED_HEALTH_AND_PENSION_INSURANCE + * @model + * @generated + * @ordered + */ + public static final int CONTINUED_HEALTH_AND_PENSION_INSURANCE_VALUE = 2; + + /** + * An array of all the 'Category of Health and Pension Insurances' enumerators. + * + * + * @generated + */ + private static final Category_of_Health_and_Pension_Insurances[] VALUES_ARRAY = + new Category_of_Health_and_Pension_Insurances[] { + MANDATORY_HEALTH_AND_PENSION_INSURANCE, + ADDITIONAL_EMPLOYERS_PENSION_INSURANCE, + CONTINUED_HEALTH_AND_PENSION_INSURANCE, + }; + + /** + * A public read-only list of all the 'Category of Health and Pension Insurances' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Category of Health and Pension Insurances' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Category_of_Health_and_Pension_Insurances get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Category_of_Health_and_Pension_Insurances result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Category of Health and Pension Insurances' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Category_of_Health_and_Pension_Insurances getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Category_of_Health_and_Pension_Insurances result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Category of Health and Pension Insurances' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Category_of_Health_and_Pension_Insurances get(int value) { + switch (value) { + case MANDATORY_HEALTH_AND_PENSION_INSURANCE_VALUE: return MANDATORY_HEALTH_AND_PENSION_INSURANCE; + case ADDITIONAL_EMPLOYERS_PENSION_INSURANCE_VALUE: return ADDITIONAL_EMPLOYERS_PENSION_INSURANCE; + case CONTINUED_HEALTH_AND_PENSION_INSURANCE_VALUE: return CONTINUED_HEALTH_AND_PENSION_INSURANCE; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Category_of_Health_and_Pension_Insurances(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Category_of_Health_and_Pension_Insurances diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Category_of_Permanent_Expense.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Category_of_Permanent_Expense.java new file mode 100644 index 00000000..ccdaf088 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Category_of_Permanent_Expense.java @@ -0,0 +1,209 @@ +/** + */ +package TaxationWithRoot; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Category of Permanent Expense', + * and utility methods for working with them. + * + * @see TaxationWithRoot.TaxationPackage#getCategory_of_Permanent_Expense() + * @model + * @generated + */ +public enum Category_of_Permanent_Expense implements Enumerator { + /** + * The 'MISCELLANEOUS DEBT' literal object. + * + * + * @see #MISCELLANEOUS_DEBT_VALUE + * @generated + * @ordered + */ + MISCELLANEOUS_DEBT(0, "MISCELLANEOUS_DEBT", "MISCELLANEOUS_DEBT"), + + /** + * The 'ALIMONY' literal object. + * + * + * @see #ALIMONY_VALUE + * @generated + * @ordered + */ + ALIMONY(1, "ALIMONY", "ALIMONY"); + + /** + * The 'MISCELLANEOUS DEBT' literal value. + * + * + * @see #MISCELLANEOUS_DEBT + * @model + * @generated + * @ordered + */ + public static final int MISCELLANEOUS_DEBT_VALUE = 0; + + /** + * The 'ALIMONY' literal value. + * + * + * @see #ALIMONY + * @model + * @generated + * @ordered + */ + public static final int ALIMONY_VALUE = 1; + + /** + * An array of all the 'Category of Permanent Expense' enumerators. + * + * + * @generated + */ + private static final Category_of_Permanent_Expense[] VALUES_ARRAY = + new Category_of_Permanent_Expense[] { + MISCELLANEOUS_DEBT, + ALIMONY, + }; + + /** + * A public read-only list of all the 'Category of Permanent Expense' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Category of Permanent Expense' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Category_of_Permanent_Expense get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Category_of_Permanent_Expense result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Category of Permanent Expense' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Category_of_Permanent_Expense getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Category_of_Permanent_Expense result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Category of Permanent Expense' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Category_of_Permanent_Expense get(int value) { + switch (value) { + case MISCELLANEOUS_DEBT_VALUE: return MISCELLANEOUS_DEBT; + case ALIMONY_VALUE: return ALIMONY; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Category_of_Permanent_Expense(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Category_of_Permanent_Expense diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Category_of_Private_Insurance_and_Plan.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Category_of_Private_Insurance_and_Plan.java new file mode 100644 index 00000000..b07eb5e2 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Category_of_Private_Insurance_and_Plan.java @@ -0,0 +1,278 @@ +/** + */ +package TaxationWithRoot; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Category of Private Insurance and Plan', + * and utility methods for working with them. + * + * @see TaxationWithRoot.TaxationPackage#getCategory_of_Private_Insurance_and_Plan() + * @model + * @generated + */ +public enum Category_of_Private_Insurance_and_Plan implements Enumerator { + /** + * The 'PRIVATE INSURANCE' literal object. + * + * + * @see #PRIVATE_INSURANCE_VALUE + * @generated + * @ordered + */ + PRIVATE_INSURANCE(0, "PRIVATE_INSURANCE", "PRIVATE_INSURANCE"), + + /** + * The 'PRIVATE LIFE INSURANCE' literal object. + * + * + * @see #PRIVATE_LIFE_INSURANCE_VALUE + * @generated + * @ordered + */ + PRIVATE_LIFE_INSURANCE(1, "PRIVATE_LIFE_INSURANCE", "PRIVATE_LIFE_INSURANCE"), + + /** + * The 'COMPANY MEMBERS PRIVATE INSURANCE' literal object. + * + * + * @see #COMPANY_MEMBERS_PRIVATE_INSURANCE_VALUE + * @generated + * @ordered + */ + COMPANY_MEMBERS_PRIVATE_INSURANCE(2, "COMPANY_MEMBERS_PRIVATE_INSURANCE", "COMPANY_MEMBERS_PRIVATE_INSURANCE"), + + /** + * The 'HOUSING SAVING PLAN' literal object. + * + * + * @see #HOUSING_SAVING_PLAN_VALUE + * @generated + * @ordered + */ + HOUSING_SAVING_PLAN(3, "HOUSING_SAVING_PLAN", "HOUSING_SAVING_PLAN"), + + /** + * The 'OLD AGE PENSION PLAN' literal object. + * + * + * @see #OLD_AGE_PENSION_PLAN_VALUE + * @generated + * @ordered + */ + OLD_AGE_PENSION_PLAN(4, "OLD_AGE_PENSION_PLAN", "OLD_AGE_PENSION_PLAN"); + + /** + * The 'PRIVATE INSURANCE' literal value. + * + * + * @see #PRIVATE_INSURANCE + * @model + * @generated + * @ordered + */ + public static final int PRIVATE_INSURANCE_VALUE = 0; + + /** + * The 'PRIVATE LIFE INSURANCE' literal value. + * + * + * @see #PRIVATE_LIFE_INSURANCE + * @model + * @generated + * @ordered + */ + public static final int PRIVATE_LIFE_INSURANCE_VALUE = 1; + + /** + * The 'COMPANY MEMBERS PRIVATE INSURANCE' literal value. + * + * + * @see #COMPANY_MEMBERS_PRIVATE_INSURANCE + * @model + * @generated + * @ordered + */ + public static final int COMPANY_MEMBERS_PRIVATE_INSURANCE_VALUE = 2; + + /** + * The 'HOUSING SAVING PLAN' literal value. + * + * + * @see #HOUSING_SAVING_PLAN + * @model + * @generated + * @ordered + */ + public static final int HOUSING_SAVING_PLAN_VALUE = 3; + + /** + * The 'OLD AGE PENSION PLAN' literal value. + * + * + * @see #OLD_AGE_PENSION_PLAN + * @model + * @generated + * @ordered + */ + public static final int OLD_AGE_PENSION_PLAN_VALUE = 4; + + /** + * An array of all the 'Category of Private Insurance and Plan' enumerators. + * + * + * @generated + */ + private static final Category_of_Private_Insurance_and_Plan[] VALUES_ARRAY = + new Category_of_Private_Insurance_and_Plan[] { + PRIVATE_INSURANCE, + PRIVATE_LIFE_INSURANCE, + COMPANY_MEMBERS_PRIVATE_INSURANCE, + HOUSING_SAVING_PLAN, + OLD_AGE_PENSION_PLAN, + }; + + /** + * A public read-only list of all the 'Category of Private Insurance and Plan' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Category of Private Insurance and Plan' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Category_of_Private_Insurance_and_Plan get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Category_of_Private_Insurance_and_Plan result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Category of Private Insurance and Plan' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Category_of_Private_Insurance_and_Plan getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Category_of_Private_Insurance_and_Plan result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Category of Private Insurance and Plan' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Category_of_Private_Insurance_and_Plan get(int value) { + switch (value) { + case PRIVATE_INSURANCE_VALUE: return PRIVATE_INSURANCE; + case PRIVATE_LIFE_INSURANCE_VALUE: return PRIVATE_LIFE_INSURANCE; + case COMPANY_MEMBERS_PRIVATE_INSURANCE_VALUE: return COMPANY_MEMBERS_PRIVATE_INSURANCE; + case HOUSING_SAVING_PLAN_VALUE: return HOUSING_SAVING_PLAN; + case OLD_AGE_PENSION_PLAN_VALUE: return OLD_AGE_PENSION_PLAN; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Category_of_Private_Insurance_and_Plan(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Category_of_Private_Insurance_and_Plan diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Constants.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Constants.java new file mode 100644 index 00000000..1a111c96 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Constants.java @@ -0,0 +1,619 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Constants'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Constants#getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD}
            • + *
            • {@link TaxationWithRoot.Constants#getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE}
            • + *
            • {@link TaxationWithRoot.Constants#getMINIMUM_SALARY MINIMUM SALARY}
            • + *
            • {@link TaxationWithRoot.Constants#getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION}
            • + *
            • {@link TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS}
            • + *
            • {@link TaxationWithRoot.Constants#getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS}
            • + *
            • {@link TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC}
            • + *
            • {@link TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE}
            • + *
            • {@link TaxationWithRoot.Constants#getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}
            • + *
            • {@link TaxationWithRoot.Constants#getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION}
            • + *
            • {@link TaxationWithRoot.Constants#getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}
            • + *
            • {@link TaxationWithRoot.Constants#getFLAT_RATE_CIM_DAILY FLAT RATE CIM DAILY}
            • + *
            • {@link TaxationWithRoot.Constants#getFLAT_RATE_CIM_MONTHLY FLAT RATE CIM MONTHLY}
            • + *
            • {@link TaxationWithRoot.Constants#getFLAT_RATE_CIM_YEARLY FLAT RATE CIM YEARLY}
            • + *
            • {@link TaxationWithRoot.Constants#getFLAT_RATE_CIP_DAILY FLAT RATE CIP DAILY}
            • + *
            • {@link TaxationWithRoot.Constants#getFLAT_RATE_CIP_MONTHLY FLAT RATE CIP MONTHLY}
            • + *
            • {@link TaxationWithRoot.Constants#getFLAT_RATE_CIP_YEARLY FLAT RATE CIP YEARLY}
            • + *
            • {@link TaxationWithRoot.Constants#getFLAT_RATE_CIS_DAILY FLAT RATE CIS DAILY}
            • + *
            • {@link TaxationWithRoot.Constants#getFLAT_RATE_CIS_MONTHLY FLAT RATE CIS MONTHLY}
            • + *
            • {@link TaxationWithRoot.Constants#getFLAT_RATE_CIS_YEARLY FLAT RATE CIS YEARLY}
            • + *
            • {@link TaxationWithRoot.Constants#getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT FLAT RATE FOR TRAVEL EXPENSE PER UNIT}
            • + *
            • {@link TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS MAXIMUM DEDUCTIBLE AMOUNT FOR DS}
            • + *
            • {@link TaxationWithRoot.Constants#getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE FLAT RATE FOR MISCELLANEOUS EXPENSE}
            • + *
            • {@link TaxationWithRoot.Constants#getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE}
            • + *
            • {@link TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getConstants() + * @model abstract="true" + * @generated + */ +public interface Constants extends EObject { + /** + * Returns the value of the 'MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD' attribute. + * The default value is "3480.0". + * + * + * @return the value of the 'MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD' attribute. + * @see #setMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD() + * @model default="3480.0" required="true" + * @generated + */ + double getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD}' attribute. + * + * + * @param value the new value of the 'MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD' attribute. + * @see #getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD() + * @generated + */ + void setMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD(double value); + + /** + * Returns the value of the 'MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE' attribute. + * The default value is "3600.0". + * + * + * @return the value of the 'MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE' attribute. + * @see #setMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE() + * @model default="3600.0" required="true" + * @generated + */ + double getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE}' attribute. + * + * + * @param value the new value of the 'MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE' attribute. + * @see #getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE() + * @generated + */ + void setMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE(double value); + + /** + * Returns the value of the 'MINIMUM SALARY' attribute. + * The default value is "1500.0". + * + * + * @return the value of the 'MINIMUM SALARY' attribute. + * @see #setMINIMUM_SALARY(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_MINIMUM_SALARY() + * @model default="1500.0" required="true" + * @generated + */ + double getMINIMUM_SALARY(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getMINIMUM_SALARY MINIMUM SALARY}' attribute. + * + * + * @param value the new value of the 'MINIMUM SALARY' attribute. + * @see #getMINIMUM_SALARY() + * @generated + */ + void setMINIMUM_SALARY(double value); + + /** + * Returns the value of the 'FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION' attribute. + * The default value is "4500.0". + * + * + * @return the value of the 'FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION' attribute. + * @see #setFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION() + * @model default="4500.0" required="true" + * @generated + */ + double getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION}' attribute. + * + * + * @param value the new value of the 'FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION' attribute. + * @see #getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION() + * @generated + */ + void setFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION(double value); + + /** + * Returns the value of the 'MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS' attribute. + * The default value is "20.0". + * + * + * @return the value of the 'MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS' attribute. + * @see #setMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS() + * @model default="20.0" required="true" + * @generated + */ + double getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS}' attribute. + * + * + * @param value the new value of the 'MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS' attribute. + * @see #getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS() + * @generated + */ + void setMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS(double value); + + /** + * Returns the value of the 'MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS' attribute. + * The default value is "120.0". + * + * + * @return the value of the 'MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS' attribute. + * @see #setMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS() + * @model default="120.0" required="true" + * @generated + */ + double getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS}' attribute. + * + * + * @param value the new value of the 'MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS' attribute. + * @see #getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS() + * @generated + */ + void setMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS(double value); + + /** + * Returns the value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC' attribute. + * @see #setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC() + * @model default="0.0" required="true" + * @generated + */ + double getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC}' attribute. + * + * + * @param value the new value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC' attribute. + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC() + * @generated + */ + void setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC(double value); + + /** + * Returns the value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE' attribute. + * The default value is "24000.0". + * + * + * @return the value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE' attribute. + * @see #setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE() + * @model default="24000.0" required="true" + * @generated + */ + double getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE}' attribute. + * + * + * @param value the new value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE' attribute. + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE() + * @generated + */ + void setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE(double value); + + /** + * Returns the value of the 'MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * The default value is "99.0". + * + * + * @return the value of the 'MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * @see #setMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @model default="99.0" required="true" + * @generated + */ + double getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}' attribute. + * + * + * @param value the new value of the 'MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * @see #getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @generated + */ + void setMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(double value); + + /** + * Returns the value of the 'MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * The default value is "30.0". + * + * + * @return the value of the 'MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * @see #setMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @model default="30.0" required="true" + * @generated + */ + double getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION}' attribute. + * + * + * @param value the new value of the 'MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * @see #getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @generated + */ + void setMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(double value); + + /** + * Returns the value of the 'MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * The default value is "4.0". + * + * + * @return the value of the 'MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * @see #setMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @model default="4.0" required="true" + * @generated + */ + double getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}' attribute. + * + * + * @param value the new value of the 'MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * @see #getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @generated + */ + void setMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(double value); + + /** + * Returns the value of the 'FLAT RATE CIM DAILY' attribute. + * The default value is "2.0". + * + * + * @return the value of the 'FLAT RATE CIM DAILY' attribute. + * @see #setFLAT_RATE_CIM_DAILY(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_FLAT_RATE_CIM_DAILY() + * @model default="2.0" required="true" + * @generated + */ + double getFLAT_RATE_CIM_DAILY(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getFLAT_RATE_CIM_DAILY FLAT RATE CIM DAILY}' attribute. + * + * + * @param value the new value of the 'FLAT RATE CIM DAILY' attribute. + * @see #getFLAT_RATE_CIM_DAILY() + * @generated + */ + void setFLAT_RATE_CIM_DAILY(double value); + + /** + * Returns the value of the 'FLAT RATE CIM MONTHLY' attribute. + * The default value is "62.0". + * + * + * @return the value of the 'FLAT RATE CIM MONTHLY' attribute. + * @see #setFLAT_RATE_CIM_MONTHLY(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_FLAT_RATE_CIM_MONTHLY() + * @model default="62.0" required="true" + * @generated + */ + double getFLAT_RATE_CIM_MONTHLY(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getFLAT_RATE_CIM_MONTHLY FLAT RATE CIM MONTHLY}' attribute. + * + * + * @param value the new value of the 'FLAT RATE CIM MONTHLY' attribute. + * @see #getFLAT_RATE_CIM_MONTHLY() + * @generated + */ + void setFLAT_RATE_CIM_MONTHLY(double value); + + /** + * Returns the value of the 'FLAT RATE CIM YEARLY' attribute. + * The default value is "750.0". + * + * + * @return the value of the 'FLAT RATE CIM YEARLY' attribute. + * @see #setFLAT_RATE_CIM_YEARLY(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_FLAT_RATE_CIM_YEARLY() + * @model default="750.0" required="true" + * @generated + */ + double getFLAT_RATE_CIM_YEARLY(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getFLAT_RATE_CIM_YEARLY FLAT RATE CIM YEARLY}' attribute. + * + * + * @param value the new value of the 'FLAT RATE CIM YEARLY' attribute. + * @see #getFLAT_RATE_CIM_YEARLY() + * @generated + */ + void setFLAT_RATE_CIM_YEARLY(double value); + + /** + * Returns the value of the 'FLAT RATE CIP DAILY' attribute. + * The default value is "1.0". + * + * + * @return the value of the 'FLAT RATE CIP DAILY' attribute. + * @see #setFLAT_RATE_CIP_DAILY(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_FLAT_RATE_CIP_DAILY() + * @model default="1.0" required="true" + * @generated + */ + double getFLAT_RATE_CIP_DAILY(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getFLAT_RATE_CIP_DAILY FLAT RATE CIP DAILY}' attribute. + * + * + * @param value the new value of the 'FLAT RATE CIP DAILY' attribute. + * @see #getFLAT_RATE_CIP_DAILY() + * @generated + */ + void setFLAT_RATE_CIP_DAILY(double value); + + /** + * Returns the value of the 'FLAT RATE CIP MONTHLY' attribute. + * The default value is "25.0". + * + * + * @return the value of the 'FLAT RATE CIP MONTHLY' attribute. + * @see #setFLAT_RATE_CIP_MONTHLY(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_FLAT_RATE_CIP_MONTHLY() + * @model default="25.0" required="true" + * @generated + */ + double getFLAT_RATE_CIP_MONTHLY(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getFLAT_RATE_CIP_MONTHLY FLAT RATE CIP MONTHLY}' attribute. + * + * + * @param value the new value of the 'FLAT RATE CIP MONTHLY' attribute. + * @see #getFLAT_RATE_CIP_MONTHLY() + * @generated + */ + void setFLAT_RATE_CIP_MONTHLY(double value); + + /** + * Returns the value of the 'FLAT RATE CIP YEARLY' attribute. + * The default value is "30.0". + * + * + * @return the value of the 'FLAT RATE CIP YEARLY' attribute. + * @see #setFLAT_RATE_CIP_YEARLY(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_FLAT_RATE_CIP_YEARLY() + * @model default="30.0" required="true" + * @generated + */ + double getFLAT_RATE_CIP_YEARLY(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getFLAT_RATE_CIP_YEARLY FLAT RATE CIP YEARLY}' attribute. + * + * + * @param value the new value of the 'FLAT RATE CIP YEARLY' attribute. + * @see #getFLAT_RATE_CIP_YEARLY() + * @generated + */ + void setFLAT_RATE_CIP_YEARLY(double value); + + /** + * Returns the value of the 'FLAT RATE CIS DAILY' attribute. + * The default value is "1.0". + * + * + * @return the value of the 'FLAT RATE CIS DAILY' attribute. + * @see #setFLAT_RATE_CIS_DAILY(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_FLAT_RATE_CIS_DAILY() + * @model default="1.0" required="true" + * @generated + */ + double getFLAT_RATE_CIS_DAILY(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getFLAT_RATE_CIS_DAILY FLAT RATE CIS DAILY}' attribute. + * + * + * @param value the new value of the 'FLAT RATE CIS DAILY' attribute. + * @see #getFLAT_RATE_CIS_DAILY() + * @generated + */ + void setFLAT_RATE_CIS_DAILY(double value); + + /** + * Returns the value of the 'FLAT RATE CIS MONTHLY' attribute. + * The default value is "25.0". + * + * + * @return the value of the 'FLAT RATE CIS MONTHLY' attribute. + * @see #setFLAT_RATE_CIS_MONTHLY(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_FLAT_RATE_CIS_MONTHLY() + * @model default="25.0" required="true" + * @generated + */ + double getFLAT_RATE_CIS_MONTHLY(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getFLAT_RATE_CIS_MONTHLY FLAT RATE CIS MONTHLY}' attribute. + * + * + * @param value the new value of the 'FLAT RATE CIS MONTHLY' attribute. + * @see #getFLAT_RATE_CIS_MONTHLY() + * @generated + */ + void setFLAT_RATE_CIS_MONTHLY(double value); + + /** + * Returns the value of the 'FLAT RATE CIS YEARLY' attribute. + * The default value is "300.0". + * + * + * @return the value of the 'FLAT RATE CIS YEARLY' attribute. + * @see #setFLAT_RATE_CIS_YEARLY(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_FLAT_RATE_CIS_YEARLY() + * @model default="300.0" required="true" + * @generated + */ + double getFLAT_RATE_CIS_YEARLY(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getFLAT_RATE_CIS_YEARLY FLAT RATE CIS YEARLY}' attribute. + * + * + * @param value the new value of the 'FLAT RATE CIS YEARLY' attribute. + * @see #getFLAT_RATE_CIS_YEARLY() + * @generated + */ + void setFLAT_RATE_CIS_YEARLY(double value); + + /** + * Returns the value of the 'FLAT RATE FOR TRAVEL EXPENSE PER UNIT' attribute. + * The default value is "99.0". + * + * + * @return the value of the 'FLAT RATE FOR TRAVEL EXPENSE PER UNIT' attribute. + * @see #setFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT() + * @model default="99.0" required="true" + * @generated + */ + double getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT FLAT RATE FOR TRAVEL EXPENSE PER UNIT}' attribute. + * + * + * @param value the new value of the 'FLAT RATE FOR TRAVEL EXPENSE PER UNIT' attribute. + * @see #getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT() + * @generated + */ + void setFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT(double value); + + /** + * Returns the value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR DS' attribute. + * + * + * @return the value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR DS' attribute. + * @see #setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS() + * @model required="true" + * @generated + */ + double getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS MAXIMUM DEDUCTIBLE AMOUNT FOR DS}' attribute. + * + * + * @param value the new value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR DS' attribute. + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS() + * @generated + */ + void setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS(double value); + + /** + * Returns the value of the 'FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute. + * + * + * @return the value of the 'FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute. + * @see #setFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @model required="true" + * @generated + */ + double getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE FLAT RATE FOR MISCELLANEOUS EXPENSE}' attribute. + * + * + * @param value the new value of the 'FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute. + * @see #getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @generated + */ + void setFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(double value); + + /** + * Returns the value of the 'DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute. + * + * + * @return the value of the 'DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute. + * @see #setDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @model required="true" + * @generated + */ + double getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE}' attribute. + * + * + * @param value the new value of the 'DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute. + * @see #getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @generated + */ + void setDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(double value); + + /** + * Returns the value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE' attribute. + * + * + * @return the value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE' attribute. + * @see #setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE(double) + * @see TaxationWithRoot.TaxationPackage#getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE() + * @model required="true" + * @generated + */ + double getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE}' attribute. + * + * + * @param value the new value of the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE' attribute. + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE() + * @generated + */ + void setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE(double value); + +} // Constants diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Country.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Country.java new file mode 100644 index 00000000..4646e846 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Country.java @@ -0,0 +1,301 @@ +/** + */ +package TaxationWithRoot; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Country', + * and utility methods for working with them. + * + * @see TaxationWithRoot.TaxationPackage#getCountry() + * @model + * @generated + */ +public enum Country implements Enumerator { + /** + * The 'ZZ' literal object. + * + * + * @see #ZZ_VALUE + * @generated + * @ordered + */ + ZZ(0, "ZZ", "ZZ"), + + /** + * The 'FF' literal object. + * + * + * @see #FF_VALUE + * @generated + * @ordered + */ + FF(1, "FF", "FF"), + + /** + * The 'BB' literal object. + * + * + * @see #BB_VALUE + * @generated + * @ordered + */ + BB(2, "BB", "BB"), + + /** + * The 'DD' literal object. + * + * + * @see #DD_VALUE + * @generated + * @ordered + */ + DD(3, "DD", "DD"), + + /** + * The 'NN' literal object. + * + * + * @see #NN_VALUE + * @generated + * @ordered + */ + NN(4, "NN", "NN"), + + /** + * The 'OTHER' literal object. + * + * + * @see #OTHER_VALUE + * @generated + * @ordered + */ + OTHER(5, "OTHER", "OTHER"); + + /** + * The 'ZZ' literal value. + * + * + * @see #ZZ + * @model + * @generated + * @ordered + */ + public static final int ZZ_VALUE = 0; + + /** + * The 'FF' literal value. + * + * + * @see #FF + * @model + * @generated + * @ordered + */ + public static final int FF_VALUE = 1; + + /** + * The 'BB' literal value. + * + * + * @see #BB + * @model + * @generated + * @ordered + */ + public static final int BB_VALUE = 2; + + /** + * The 'DD' literal value. + * + * + * @see #DD + * @model + * @generated + * @ordered + */ + public static final int DD_VALUE = 3; + + /** + * The 'NN' literal value. + * + * + * @see #NN + * @model + * @generated + * @ordered + */ + public static final int NN_VALUE = 4; + + /** + * The 'OTHER' literal value. + * + * + * @see #OTHER + * @model + * @generated + * @ordered + */ + public static final int OTHER_VALUE = 5; + + /** + * An array of all the 'Country' enumerators. + * + * + * @generated + */ + private static final Country[] VALUES_ARRAY = + new Country[] { + ZZ, + FF, + BB, + DD, + NN, + OTHER, + }; + + /** + * A public read-only list of all the 'Country' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Country' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Country get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Country result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Country' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Country getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Country result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Country' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Country get(int value) { + switch (value) { + case ZZ_VALUE: return ZZ; + case FF_VALUE: return FF; + case BB_VALUE: return BB; + case DD_VALUE: return DD; + case NN_VALUE: return NN; + case OTHER_VALUE: return OTHER; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Country(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Country diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS.java new file mode 100644 index 00000000..9a6eac3f --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS.java @@ -0,0 +1,67 @@ +/** + */ +package TaxationWithRoot; + +/** + * + * A representation of the model object 'DS'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.DS#getMaximum_deductible_amount Maximum deductible amount}
            • + *
            • {@link TaxationWithRoot.DS#getId3 Id3}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getDS() + * @model + * @generated + */ +public interface DS extends Root { + /** + * Returns the value of the 'Maximum deductible amount' attribute. + * + * + * @return the value of the 'Maximum deductible amount' attribute. + * @see #setMaximum_deductible_amount(double) + * @see TaxationWithRoot.TaxationPackage#getDS_Maximum_deductible_amount() + * @model required="true" + * @generated + */ + double getMaximum_deductible_amount(); + + /** + * Sets the value of the '{@link TaxationWithRoot.DS#getMaximum_deductible_amount Maximum deductible amount}' attribute. + * + * + * @param value the new value of the 'Maximum deductible amount' attribute. + * @see #getMaximum_deductible_amount() + * @generated + */ + void setMaximum_deductible_amount(double value); + + /** + * Returns the value of the 'Id3' attribute. + * + * + * @return the value of the 'Id3' attribute. + * @see #setId3(String) + * @see TaxationWithRoot.TaxationPackage#getDS_Id3() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId3(); + + /** + * Sets the value of the '{@link TaxationWithRoot.DS#getId3 Id3}' attribute. + * + * + * @param value the new value of the 'Id3' attribute. + * @see #getId3() + * @generated + */ + void setId3(String value); + +} // DS diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Donation.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Donation.java new file mode 100644 index 00000000..90e86e14 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Donation.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'DS for Donation'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getDS_for_Donation() + * @model + * @generated + */ +public interface DS_for_Donation extends DS { +} // DS_for_Donation diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Health_and_Pension_Insurance.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Health_and_Pension_Insurance.java new file mode 100644 index 00000000..35c7e423 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Health_and_Pension_Insurance.java @@ -0,0 +1,48 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'DS for Health and Pension Insurance'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.DS_for_Health_and_Pension_Insurance#getInsurance_category Insurance category}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getDS_for_Health_and_Pension_Insurance() + * @model + * @generated + */ +public interface DS_for_Health_and_Pension_Insurance extends DS { + /** + * Returns the value of the 'Insurance category' attribute. + * The literals are from the enumeration {@link TaxationWithRoot.Category_of_Health_and_Pension_Insurances}. + * + * + * @return the value of the 'Insurance category' attribute. + * @see TaxationWithRoot.Category_of_Health_and_Pension_Insurances + * @see #setInsurance_category(Category_of_Health_and_Pension_Insurances) + * @see TaxationWithRoot.TaxationPackage#getDS_for_Health_and_Pension_Insurance_Insurance_category() + * @model required="true" + * @generated + */ + Category_of_Health_and_Pension_Insurances getInsurance_category(); + + /** + * Sets the value of the '{@link TaxationWithRoot.DS_for_Health_and_Pension_Insurance#getInsurance_category Insurance category}' attribute. + * + * + * @param value the new value of the 'Insurance category' attribute. + * @see TaxationWithRoot.Category_of_Health_and_Pension_Insurances + * @see #getInsurance_category() + * @generated + */ + void setInsurance_category(Category_of_Health_and_Pension_Insurances value); + +} // DS_for_Health_and_Pension_Insurance diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Interest_Expense.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Interest_Expense.java new file mode 100644 index 00000000..77c53b32 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Interest_Expense.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'DS for Interest Expense'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getDS_for_Interest_Expense() + * @model + * @generated + */ +public interface DS_for_Interest_Expense extends DS { +} // DS_for_Interest_Expense diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Loss_Carryforward.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Loss_Carryforward.java new file mode 100644 index 00000000..02a2b5ff --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Loss_Carryforward.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'DS for Loss Carryforward'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getDS_for_Loss_Carryforward() + * @model + * @generated + */ +public interface DS_for_Loss_Carryforward extends DS { +} // DS_for_Loss_Carryforward diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Permanent_Expense.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Permanent_Expense.java new file mode 100644 index 00000000..51e0581f --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Permanent_Expense.java @@ -0,0 +1,48 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'DS for Permanent Expense'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.DS_for_Permanent_Expense#getPermanent_expense_category Permanent expense category}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getDS_for_Permanent_Expense() + * @model + * @generated + */ +public interface DS_for_Permanent_Expense extends DS { + /** + * Returns the value of the 'Permanent expense category' attribute. + * The literals are from the enumeration {@link TaxationWithRoot.Category_of_Permanent_Expense}. + * + * + * @return the value of the 'Permanent expense category' attribute. + * @see TaxationWithRoot.Category_of_Permanent_Expense + * @see #setPermanent_expense_category(Category_of_Permanent_Expense) + * @see TaxationWithRoot.TaxationPackage#getDS_for_Permanent_Expense_Permanent_expense_category() + * @model required="true" + * @generated + */ + Category_of_Permanent_Expense getPermanent_expense_category(); + + /** + * Sets the value of the '{@link TaxationWithRoot.DS_for_Permanent_Expense#getPermanent_expense_category Permanent expense category}' attribute. + * + * + * @param value the new value of the 'Permanent expense category' attribute. + * @see TaxationWithRoot.Category_of_Permanent_Expense + * @see #getPermanent_expense_category() + * @generated + */ + void setPermanent_expense_category(Category_of_Permanent_Expense value); + +} // DS_for_Permanent_Expense diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Private_Insurance_and_Plan.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Private_Insurance_and_Plan.java new file mode 100644 index 00000000..73258f14 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Private_Insurance_and_Plan.java @@ -0,0 +1,48 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'DS for Private Insurance and Plan'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.DS_for_Private_Insurance_and_Plan#getPrivate_insurance_and_plan_category Private insurance and plan category}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getDS_for_Private_Insurance_and_Plan() + * @model + * @generated + */ +public interface DS_for_Private_Insurance_and_Plan extends DS { + /** + * Returns the value of the 'Private insurance and plan category' attribute. + * The literals are from the enumeration {@link TaxationWithRoot.Category_of_Private_Insurance_and_Plan}. + * + * + * @return the value of the 'Private insurance and plan category' attribute. + * @see TaxationWithRoot.Category_of_Private_Insurance_and_Plan + * @see #setPrivate_insurance_and_plan_category(Category_of_Private_Insurance_and_Plan) + * @see TaxationWithRoot.TaxationPackage#getDS_for_Private_Insurance_and_Plan_Private_insurance_and_plan_category() + * @model required="true" + * @generated + */ + Category_of_Private_Insurance_and_Plan getPrivate_insurance_and_plan_category(); + + /** + * Sets the value of the '{@link TaxationWithRoot.DS_for_Private_Insurance_and_Plan#getPrivate_insurance_and_plan_category Private insurance and plan category}' attribute. + * + * + * @param value the new value of the 'Private insurance and plan category' attribute. + * @see TaxationWithRoot.Category_of_Private_Insurance_and_Plan + * @see #getPrivate_insurance_and_plan_category() + * @generated + */ + void setPrivate_insurance_and_plan_category(Category_of_Private_Insurance_and_Plan value); + +} // DS_for_Private_Insurance_and_Plan diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Dependent.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Dependent.java new file mode 100644 index 00000000..4d65cc58 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Dependent.java @@ -0,0 +1,188 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'Dependent'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Dependent#getDependent_type Dependent type}
            • + *
            • {@link TaxationWithRoot.Dependent#getResponsible_person Responsible person}
            • + *
            • {@link TaxationWithRoot.Dependent#isContinued_studies Continued studies}
            • + *
            • {@link TaxationWithRoot.Dependent#getAllowances Allowances}
            • + *
            • {@link TaxationWithRoot.Dependent#getHousehold Household}
            • + *
            • {@link TaxationWithRoot.Dependent#getFrom_agent From agent}
            • + *
            • {@link TaxationWithRoot.Dependent#getExpense Expense}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getDependent() + * @model + * @generated + */ +public interface Dependent extends Physical_Person { + /** + * Returns the value of the 'Dependent type' attribute. + * The literals are from the enumeration {@link TaxationWithRoot.Dependent_Type}. + * + * + * @return the value of the 'Dependent type' attribute. + * @see TaxationWithRoot.Dependent_Type + * @see #setDependent_type(Dependent_Type) + * @see TaxationWithRoot.TaxationPackage#getDependent_Dependent_type() + * @model required="true" + * @generated + */ + Dependent_Type getDependent_type(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Dependent#getDependent_type Dependent type}' attribute. + * + * + * @param value the new value of the 'Dependent type' attribute. + * @see TaxationWithRoot.Dependent_Type + * @see #getDependent_type() + * @generated + */ + void setDependent_type(Dependent_Type value); + + /** + * Returns the value of the 'Responsible person' container reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Tax_Payer#getDependents Dependents}'. + * + * + * @return the value of the 'Responsible person' container reference. + * @see #setResponsible_person(Tax_Payer) + * @see TaxationWithRoot.TaxationPackage#getDependent_Responsible_person() + * @see TaxationWithRoot.Tax_Payer#getDependents + * @model opposite="dependents" transient="false" + * @generated + */ + Tax_Payer getResponsible_person(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Dependent#getResponsible_person Responsible person}' container reference. + * + * + * @param value the new value of the 'Responsible person' container reference. + * @see #getResponsible_person() + * @generated + */ + void setResponsible_person(Tax_Payer value); + + /** + * Returns the value of the 'Continued studies' attribute. + * The default value is "false". + * + * + * @return the value of the 'Continued studies' attribute. + * @see #setContinued_studies(boolean) + * @see TaxationWithRoot.TaxationPackage#getDependent_Continued_studies() + * @model default="false" required="true" + * @generated + */ + boolean isContinued_studies(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Dependent#isContinued_studies Continued studies}' attribute. + * + * + * @param value the new value of the 'Continued studies' attribute. + * @see #isContinued_studies() + * @generated + */ + void setContinued_studies(boolean value); + + /** + * Returns the value of the 'Allowances' containment reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.External_Allowance#getPerson Person}'. + * + * + * @return the value of the 'Allowances' containment reference. + * @see #setAllowances(External_Allowance) + * @see TaxationWithRoot.TaxationPackage#getDependent_Allowances() + * @see TaxationWithRoot.External_Allowance#getPerson + * @model opposite="person" containment="true" ordered="false" + * @generated + */ + External_Allowance getAllowances(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Dependent#getAllowances Allowances}' containment reference. + * + * + * @param value the new value of the 'Allowances' containment reference. + * @see #getAllowances() + * @generated + */ + void setAllowances(External_Allowance value); + + /** + * Returns the value of the 'Household' container reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Household#getChildren Children}'. + * + * + * @return the value of the 'Household' container reference. + * @see #setHousehold(Household) + * @see TaxationWithRoot.TaxationPackage#getDependent_Household() + * @see TaxationWithRoot.Household#getChildren + * @model opposite="children" transient="false" ordered="false" + * @generated + */ + Household getHousehold(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Dependent#getHousehold Household}' container reference. + * + * + * @param value the new value of the 'Household' container reference. + * @see #getHousehold() + * @generated + */ + void setHousehold(Household value); + + /** + * Returns the value of the 'From agent' reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.FromAgent#getDependent Dependent}'. + * + * + * @return the value of the 'From agent' reference. + * @see #setFrom_agent(FromAgent) + * @see TaxationWithRoot.TaxationPackage#getDependent_From_agent() + * @see TaxationWithRoot.FromAgent#getDependent + * @model opposite="dependent" ordered="false" + * @generated + */ + FromAgent getFrom_agent(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Dependent#getFrom_agent From agent}' reference. + * + * + * @param value the new value of the 'From agent' reference. + * @see #getFrom_agent() + * @generated + */ + void setFrom_agent(FromAgent value); + + /** + * Returns the value of the 'Expense' reference list. + * The list contents are of type {@link TaxationWithRoot.Expense}. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Expense#getDependent Dependent}'. + * + * + * @return the value of the 'Expense' reference list. + * @see TaxationWithRoot.TaxationPackage#getDependent_Expense() + * @see TaxationWithRoot.Expense#getDependent + * @model opposite="dependent" ordered="false" + * @generated + */ + EList getExpense(); + +} // Dependent diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Dependent_Type.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Dependent_Type.java new file mode 100644 index 00000000..ce7abed9 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Dependent_Type.java @@ -0,0 +1,278 @@ +/** + */ +package TaxationWithRoot; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Dependent Type', + * and utility methods for working with them. + * + * @see TaxationWithRoot.TaxationPackage#getDependent_Type() + * @model + * @generated + */ +public enum Dependent_Type implements Enumerator { + /** + * The 'CHILD' literal object. + * + * + * @see #CHILD_VALUE + * @generated + * @ordered + */ + CHILD(0, "CHILD", "CHILD"), + + /** + * The 'SPOUSE' literal object. + * + * + * @see #SPOUSE_VALUE + * @generated + * @ordered + */ + SPOUSE(1, "SPOUSE", "SPOUSE"), + + /** + * The 'RELATIVE' literal object. + * + * + * @see #RELATIVE_VALUE + * @generated + * @ordered + */ + RELATIVE(2, "RELATIVE", "RELATIVE"), + + /** + * The 'OTHER FAMILY MEMBER' literal object. + * + * + * @see #OTHER_FAMILY_MEMBER_VALUE + * @generated + * @ordered + */ + OTHER_FAMILY_MEMBER(3, "OTHER_FAMILY_MEMBER", "OTHER_FAMILY_MEMBER"), + + /** + * The 'NOT OWN CHILD' literal object. + * + * + * @see #NOT_OWN_CHILD_VALUE + * @generated + * @ordered + */ + NOT_OWN_CHILD(4, "NOT_OWN_CHILD", "NOT_OWN_CHILD"); + + /** + * The 'CHILD' literal value. + * + * + * @see #CHILD + * @model + * @generated + * @ordered + */ + public static final int CHILD_VALUE = 0; + + /** + * The 'SPOUSE' literal value. + * + * + * @see #SPOUSE + * @model + * @generated + * @ordered + */ + public static final int SPOUSE_VALUE = 1; + + /** + * The 'RELATIVE' literal value. + * + * + * @see #RELATIVE + * @model + * @generated + * @ordered + */ + public static final int RELATIVE_VALUE = 2; + + /** + * The 'OTHER FAMILY MEMBER' literal value. + * + * + * @see #OTHER_FAMILY_MEMBER + * @model + * @generated + * @ordered + */ + public static final int OTHER_FAMILY_MEMBER_VALUE = 3; + + /** + * The 'NOT OWN CHILD' literal value. + * + * + * @see #NOT_OWN_CHILD + * @model + * @generated + * @ordered + */ + public static final int NOT_OWN_CHILD_VALUE = 4; + + /** + * An array of all the 'Dependent Type' enumerators. + * + * + * @generated + */ + private static final Dependent_Type[] VALUES_ARRAY = + new Dependent_Type[] { + CHILD, + SPOUSE, + RELATIVE, + OTHER_FAMILY_MEMBER, + NOT_OWN_CHILD, + }; + + /** + * A public read-only list of all the 'Dependent Type' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Dependent Type' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Dependent_Type get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Dependent_Type result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Dependent Type' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Dependent_Type getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Dependent_Type result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Dependent Type' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Dependent_Type get(int value) { + switch (value) { + case CHILD_VALUE: return CHILD; + case SPOUSE_VALUE: return SPOUSE; + case RELATIVE_VALUE: return RELATIVE; + case OTHER_FAMILY_MEMBER_VALUE: return OTHER_FAMILY_MEMBER; + case NOT_OWN_CHILD_VALUE: return NOT_OWN_CHILD; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Dependent_Type(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Dependent_Type diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Disability_Types.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Disability_Types.java new file mode 100644 index 00000000..c69c708d --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Disability_Types.java @@ -0,0 +1,347 @@ +/** + */ +package TaxationWithRoot; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Disability Types', + * and utility methods for working with them. + * + * @see TaxationWithRoot.TaxationPackage#getDisability_Types() + * @model + * @generated + */ +public enum Disability_Types implements Enumerator { + /** + * The 'Beug' literal object. + * + * + * @see #BEUG_VALUE + * @generated + * @ordered + */ + BEUG(0, "beug", "beug"), + + /** + * The 'NONE' literal object. + * + * + * @see #NONE_VALUE + * @generated + * @ordered + */ + NONE(1, "NONE", "NONE"), + + /** + * The 'A' literal object. + * + * + * @see #A_VALUE + * @generated + * @ordered + */ + A(2, "A", "A"), + + /** + * The 'B' literal object. + * + * + * @see #B_VALUE + * @generated + * @ordered + */ + B(3, "B", "B"), + + /** + * The 'C' literal object. + * + * + * @see #C_VALUE + * @generated + * @ordered + */ + C(4, "C", "C"), + + /** + * The 'D' literal object. + * + * + * @see #D_VALUE + * @generated + * @ordered + */ + D(5, "D", "D"), + + /** + * The 'E' literal object. + * + * + * @see #E_VALUE + * @generated + * @ordered + */ + E(6, "E", "E"), + + /** + * The 'OTHER' literal object. + * + * + * @see #OTHER_VALUE + * @generated + * @ordered + */ + OTHER(7, "OTHER", "OTHER"); + + /** + * The 'Beug' literal value. + * + * + * @see #BEUG + * @model name="beug" + * @generated + * @ordered + */ + public static final int BEUG_VALUE = 0; + + /** + * The 'NONE' literal value. + * + * + * @see #NONE + * @model + * @generated + * @ordered + */ + public static final int NONE_VALUE = 1; + + /** + * The 'A' literal value. + * + * + * @see #A + * @model + * @generated + * @ordered + */ + public static final int A_VALUE = 2; + + /** + * The 'B' literal value. + * + * + * @see #B + * @model + * @generated + * @ordered + */ + public static final int B_VALUE = 3; + + /** + * The 'C' literal value. + * + * + * @see #C + * @model + * @generated + * @ordered + */ + public static final int C_VALUE = 4; + + /** + * The 'D' literal value. + * + * + * @see #D + * @model + * @generated + * @ordered + */ + public static final int D_VALUE = 5; + + /** + * The 'E' literal value. + * + * + * @see #E + * @model + * @generated + * @ordered + */ + public static final int E_VALUE = 6; + + /** + * The 'OTHER' literal value. + * + * + * @see #OTHER + * @model + * @generated + * @ordered + */ + public static final int OTHER_VALUE = 7; + + /** + * An array of all the 'Disability Types' enumerators. + * + * + * @generated + */ + private static final Disability_Types[] VALUES_ARRAY = + new Disability_Types[] { + BEUG, + NONE, + A, + B, + C, + D, + E, + OTHER, + }; + + /** + * A public read-only list of all the 'Disability Types' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Disability Types' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Disability_Types get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Disability_Types result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Disability Types' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Disability_Types getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Disability_Types result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Disability Types' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Disability_Types get(int value) { + switch (value) { + case BEUG_VALUE: return BEUG; + case NONE_VALUE: return NONE; + case A_VALUE: return A; + case B_VALUE: return B; + case C_VALUE: return C; + case D_VALUE: return D; + case E_VALUE: return E; + case OTHER_VALUE: return OTHER; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Disability_Types(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Disability_Types diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Donation.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Donation.java new file mode 100644 index 00000000..90512951 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Donation.java @@ -0,0 +1,68 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Donation'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Donation#getBeneficiary1 Beneficiary1}
            • + *
            • {@link TaxationWithRoot.Donation#isIs_donation_reported Is donation reported}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getDonation() + * @model + * @generated + */ +public interface Donation extends Special_Expense_DS { + /** + * Returns the value of the 'Beneficiary1' attribute. + * + * + * @return the value of the 'Beneficiary1' attribute. + * @see #setBeneficiary1(String) + * @see TaxationWithRoot.TaxationPackage#getDonation_Beneficiary1() + * @model required="true" + * @generated + */ + String getBeneficiary1(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Donation#getBeneficiary1 Beneficiary1}' attribute. + * + * + * @param value the new value of the 'Beneficiary1' attribute. + * @see #getBeneficiary1() + * @generated + */ + void setBeneficiary1(String value); + + /** + * Returns the value of the 'Is donation reported' attribute. + * + * + * @return the value of the 'Is donation reported' attribute. + * @see #setIs_donation_reported(boolean) + * @see TaxationWithRoot.TaxationPackage#getDonation_Is_donation_reported() + * @model required="true" + * @generated + */ + boolean isIs_donation_reported(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Donation#isIs_donation_reported Is donation reported}' attribute. + * + * + * @param value the new value of the 'Is donation reported' attribute. + * @see #isIs_donation_reported() + * @generated + */ + void setIs_donation_reported(boolean value); + +} // Donation diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Employment_Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Employment_Income.java new file mode 100644 index 00000000..8c422123 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Employment_Income.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Employment Income'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getEmployment_Income() + * @model + * @generated + */ +public interface Employment_Income extends Income_Type { +} // Employment_Income diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Expense.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Expense.java new file mode 100644 index 00000000..5c2847db --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Expense.java @@ -0,0 +1,196 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Expense'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Expense#getDeclared_amount Declared amount}
            • + *
            • {@link TaxationWithRoot.Expense#getExpense_purpose Expense purpose}
            • + *
            • {@link TaxationWithRoot.Expense#getDependent Dependent}
            • + *
            • {@link TaxationWithRoot.Expense#getFrom_agent From agent}
            • + *
            • {@link TaxationWithRoot.Expense#getIncome Income}
            • + *
            • {@link TaxationWithRoot.Expense#getId4 Id4}
            • + *
            • {@link TaxationWithRoot.Expense#getBeneficiary Beneficiary}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getExpense() + * @model + * @generated + */ +public interface Expense extends EObject { + /** + * Returns the value of the 'Declared amount' attribute. + * + * + * @return the value of the 'Declared amount' attribute. + * @see #setDeclared_amount(double) + * @see TaxationWithRoot.TaxationPackage#getExpense_Declared_amount() + * @model required="true" + * @generated + */ + double getDeclared_amount(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Expense#getDeclared_amount Declared amount}' attribute. + * + * + * @param value the new value of the 'Declared amount' attribute. + * @see #getDeclared_amount() + * @generated + */ + void setDeclared_amount(double value); + + /** + * Returns the value of the 'Expense purpose' attribute. + * The default value is "OTHER". + * The literals are from the enumeration {@link TaxationWithRoot.Expense_Purpose}. + * + * + * @return the value of the 'Expense purpose' attribute. + * @see TaxationWithRoot.Expense_Purpose + * @see #setExpense_purpose(Expense_Purpose) + * @see TaxationWithRoot.TaxationPackage#getExpense_Expense_purpose() + * @model default="OTHER" required="true" + * @generated + */ + Expense_Purpose getExpense_purpose(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Expense#getExpense_purpose Expense purpose}' attribute. + * + * + * @param value the new value of the 'Expense purpose' attribute. + * @see TaxationWithRoot.Expense_Purpose + * @see #getExpense_purpose() + * @generated + */ + void setExpense_purpose(Expense_Purpose value); + + /** + * Returns the value of the 'Dependent' reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Dependent#getExpense Expense}'. + * + * + * @return the value of the 'Dependent' reference. + * @see #setDependent(Dependent) + * @see TaxationWithRoot.TaxationPackage#getExpense_Dependent() + * @see TaxationWithRoot.Dependent#getExpense + * @model opposite="expense" + * @generated + */ + Dependent getDependent(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Expense#getDependent Dependent}' reference. + * + * + * @param value the new value of the 'Dependent' reference. + * @see #getDependent() + * @generated + */ + void setDependent(Dependent value); + + /** + * Returns the value of the 'From agent' reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.FromAgent#getExpense Expense}'. + * + * + * @return the value of the 'From agent' reference. + * @see #setFrom_agent(FromAgent) + * @see TaxationWithRoot.TaxationPackage#getExpense_From_agent() + * @see TaxationWithRoot.FromAgent#getExpense + * @model opposite="expense" ordered="false" + * @generated + */ + FromAgent getFrom_agent(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Expense#getFrom_agent From agent}' reference. + * + * + * @param value the new value of the 'From agent' reference. + * @see #getFrom_agent() + * @generated + */ + void setFrom_agent(FromAgent value); + + /** + * Returns the value of the 'Income' container reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Income#getExpenses Expenses}'. + * + * + * @return the value of the 'Income' container reference. + * @see #setIncome(Income) + * @see TaxationWithRoot.TaxationPackage#getExpense_Income() + * @see TaxationWithRoot.Income#getExpenses + * @model opposite="expenses" required="true" transient="false" + * @generated + */ + Income getIncome(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Expense#getIncome Income}' container reference. + * + * + * @param value the new value of the 'Income' container reference. + * @see #getIncome() + * @generated + */ + void setIncome(Income value); + + /** + * Returns the value of the 'Id4' attribute. + * + * + * @return the value of the 'Id4' attribute. + * @see #setId4(String) + * @see TaxationWithRoot.TaxationPackage#getExpense_Id4() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId4(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Expense#getId4 Id4}' attribute. + * + * + * @param value the new value of the 'Id4' attribute. + * @see #getId4() + * @generated + */ + void setId4(String value); + + /** + * Returns the value of the 'Beneficiary' reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Physical_Person#getExpenses Expenses}'. + * + * + * @return the value of the 'Beneficiary' reference. + * @see #setBeneficiary(Physical_Person) + * @see TaxationWithRoot.TaxationPackage#getExpense_Beneficiary() + * @see TaxationWithRoot.Physical_Person#getExpenses + * @model opposite="expenses" ordered="false" + * @generated + */ + Physical_Person getBeneficiary(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Expense#getBeneficiary Beneficiary}' reference. + * + * + * @param value the new value of the 'Beneficiary' reference. + * @see #getBeneficiary() + * @generated + */ + void setBeneficiary(Physical_Person value); + +} // Expense diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Expense_Purpose.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Expense_Purpose.java new file mode 100644 index 00000000..9e2f44ca --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Expense_Purpose.java @@ -0,0 +1,301 @@ +/** + */ +package TaxationWithRoot; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Expense Purpose', + * and utility methods for working with them. + * + * @see TaxationWithRoot.TaxationPackage#getExpense_Purpose() + * @model + * @generated + */ +public enum Expense_Purpose implements Enumerator { + /** + * The 'HOUSE CARE' literal object. + * + * + * @see #HOUSE_CARE_VALUE + * @generated + * @ordered + */ + HOUSE_CARE(0, "HOUSE_CARE", "HOUSE_CARE"), + + /** + * The 'CHILD CARE' literal object. + * + * + * @see #CHILD_CARE_VALUE + * @generated + * @ordered + */ + CHILD_CARE(1, "CHILD_CARE", "CHILD_CARE"), + + /** + * The 'DEPENDENCE CARE' literal object. + * + * + * @see #DEPENDENCE_CARE_VALUE + * @generated + * @ordered + */ + DEPENDENCE_CARE(2, "DEPENDENCE_CARE", "DEPENDENCE_CARE"), + + /** + * The 'OTHER' literal object. + * + * + * @see #OTHER_VALUE + * @generated + * @ordered + */ + OTHER(3, "OTHER", "OTHER"), + + /** + * The 'ALIMONY' literal object. + * + * + * @see #ALIMONY_VALUE + * @generated + * @ordered + */ + ALIMONY(4, "ALIMONY", "ALIMONY"), + + /** + * The 'RECURRENT DEPT' literal object. + * + * + * @see #RECURRENT_DEPT_VALUE + * @generated + * @ordered + */ + RECURRENT_DEPT(5, "RECURRENT_DEPT", "RECURRENT_DEPT"); + + /** + * The 'HOUSE CARE' literal value. + * + * + * @see #HOUSE_CARE + * @model + * @generated + * @ordered + */ + public static final int HOUSE_CARE_VALUE = 0; + + /** + * The 'CHILD CARE' literal value. + * + * + * @see #CHILD_CARE + * @model + * @generated + * @ordered + */ + public static final int CHILD_CARE_VALUE = 1; + + /** + * The 'DEPENDENCE CARE' literal value. + * + * + * @see #DEPENDENCE_CARE + * @model + * @generated + * @ordered + */ + public static final int DEPENDENCE_CARE_VALUE = 2; + + /** + * The 'OTHER' literal value. + * + * + * @see #OTHER + * @model + * @generated + * @ordered + */ + public static final int OTHER_VALUE = 3; + + /** + * The 'ALIMONY' literal value. + * + * + * @see #ALIMONY + * @model + * @generated + * @ordered + */ + public static final int ALIMONY_VALUE = 4; + + /** + * The 'RECURRENT DEPT' literal value. + * + * + * @see #RECURRENT_DEPT + * @model + * @generated + * @ordered + */ + public static final int RECURRENT_DEPT_VALUE = 5; + + /** + * An array of all the 'Expense Purpose' enumerators. + * + * + * @generated + */ + private static final Expense_Purpose[] VALUES_ARRAY = + new Expense_Purpose[] { + HOUSE_CARE, + CHILD_CARE, + DEPENDENCE_CARE, + OTHER, + ALIMONY, + RECURRENT_DEPT, + }; + + /** + * A public read-only list of all the 'Expense Purpose' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Expense Purpose' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Expense_Purpose get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Expense_Purpose result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Expense Purpose' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Expense_Purpose getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Expense_Purpose result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Expense Purpose' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Expense_Purpose get(int value) { + switch (value) { + case HOUSE_CARE_VALUE: return HOUSE_CARE; + case CHILD_CARE_VALUE: return CHILD_CARE; + case DEPENDENCE_CARE_VALUE: return DEPENDENCE_CARE; + case OTHER_VALUE: return OTHER; + case ALIMONY_VALUE: return ALIMONY; + case RECURRENT_DEPT_VALUE: return RECURRENT_DEPT; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Expense_Purpose(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Expense_Purpose diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/External_Allowance.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/External_Allowance.java new file mode 100644 index 00000000..176e2419 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/External_Allowance.java @@ -0,0 +1,166 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'External Allowance'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.External_Allowance#getGrantor Grantor}
            • + *
            • {@link TaxationWithRoot.External_Allowance#getStarting_year Starting year}
            • + *
            • {@link TaxationWithRoot.External_Allowance#getEnding_year Ending year}
            • + *
            • {@link TaxationWithRoot.External_Allowance#getReciver Reciver}
            • + *
            • {@link TaxationWithRoot.External_Allowance#getId5 Id5}
            • + *
            • {@link TaxationWithRoot.External_Allowance#getPerson Person}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getExternal_Allowance() + * @model + * @generated + */ +public interface External_Allowance extends EObject { + /** + * Returns the value of the 'Grantor' attribute. + * The literals are from the enumeration {@link TaxationWithRoot.Grantor}. + * + * + * @return the value of the 'Grantor' attribute. + * @see TaxationWithRoot.Grantor + * @see #setGrantor(Grantor) + * @see TaxationWithRoot.TaxationPackage#getExternal_Allowance_Grantor() + * @model required="true" + * @generated + */ + Grantor getGrantor(); + + /** + * Sets the value of the '{@link TaxationWithRoot.External_Allowance#getGrantor Grantor}' attribute. + * + * + * @param value the new value of the 'Grantor' attribute. + * @see TaxationWithRoot.Grantor + * @see #getGrantor() + * @generated + */ + void setGrantor(Grantor value); + + /** + * Returns the value of the 'Starting year' attribute. + * + * + * @return the value of the 'Starting year' attribute. + * @see #setStarting_year(int) + * @see TaxationWithRoot.TaxationPackage#getExternal_Allowance_Starting_year() + * @model required="true" ordered="false" + * @generated + */ + int getStarting_year(); + + /** + * Sets the value of the '{@link TaxationWithRoot.External_Allowance#getStarting_year Starting year}' attribute. + * + * + * @param value the new value of the 'Starting year' attribute. + * @see #getStarting_year() + * @generated + */ + void setStarting_year(int value); + + /** + * Returns the value of the 'Ending year' attribute. + * + * + * @return the value of the 'Ending year' attribute. + * @see #setEnding_year(int) + * @see TaxationWithRoot.TaxationPackage#getExternal_Allowance_Ending_year() + * @model required="true" ordered="false" + * @generated + */ + int getEnding_year(); + + /** + * Sets the value of the '{@link TaxationWithRoot.External_Allowance#getEnding_year Ending year}' attribute. + * + * + * @param value the new value of the 'Ending year' attribute. + * @see #getEnding_year() + * @generated + */ + void setEnding_year(int value); + + /** + * Returns the value of the 'Reciver' reference. + * + * + * @return the value of the 'Reciver' reference. + * @see #setReciver(Physical_Person) + * @see TaxationWithRoot.TaxationPackage#getExternal_Allowance_Reciver() + * @model required="true" ordered="false" + * @generated + */ + Physical_Person getReciver(); + + /** + * Sets the value of the '{@link TaxationWithRoot.External_Allowance#getReciver Reciver}' reference. + * + * + * @param value the new value of the 'Reciver' reference. + * @see #getReciver() + * @generated + */ + void setReciver(Physical_Person value); + + /** + * Returns the value of the 'Id5' attribute. + * + * + * @return the value of the 'Id5' attribute. + * @see #setId5(String) + * @see TaxationWithRoot.TaxationPackage#getExternal_Allowance_Id5() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId5(); + + /** + * Sets the value of the '{@link TaxationWithRoot.External_Allowance#getId5 Id5}' attribute. + * + * + * @param value the new value of the 'Id5' attribute. + * @see #getId5() + * @generated + */ + void setId5(String value); + + /** + * Returns the value of the 'Person' container reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Dependent#getAllowances Allowances}'. + * + * + * @return the value of the 'Person' container reference. + * @see #setPerson(Dependent) + * @see TaxationWithRoot.TaxationPackage#getExternal_Allowance_Person() + * @see TaxationWithRoot.Dependent#getAllowances + * @model opposite="allowances" required="true" transient="false" ordered="false" + * @generated + */ + Dependent getPerson(); + + /** + * Sets the value of the '{@link TaxationWithRoot.External_Allowance#getPerson Person}' container reference. + * + * + * @param value the new value of the 'Person' container reference. + * @see #getPerson() + * @generated + */ + void setPerson(Dependent value); + +} // External_Allowance diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Extraordinary_Expense_CE.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Extraordinary_Expense_CE.java new file mode 100644 index 00000000..64254f78 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Extraordinary_Expense_CE.java @@ -0,0 +1,71 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Extraordinary Expense CE'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Extraordinary_Expense_CE#getThresholded_deduction_percentage Thresholded deduction percentage}
            • + *
            • {@link TaxationWithRoot.Extraordinary_Expense_CE#getCe_type Ce type}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getExtraordinary_Expense_CE() + * @model + * @generated + */ +public interface Extraordinary_Expense_CE extends Expense { + /** + * Returns the value of the 'Thresholded deduction percentage' attribute. + * + * + * @return the value of the 'Thresholded deduction percentage' attribute. + * @see #setThresholded_deduction_percentage(double) + * @see TaxationWithRoot.TaxationPackage#getExtraordinary_Expense_CE_Thresholded_deduction_percentage() + * @model required="true" + * @generated + */ + double getThresholded_deduction_percentage(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Extraordinary_Expense_CE#getThresholded_deduction_percentage Thresholded deduction percentage}' attribute. + * + * + * @param value the new value of the 'Thresholded deduction percentage' attribute. + * @see #getThresholded_deduction_percentage() + * @generated + */ + void setThresholded_deduction_percentage(double value); + + /** + * Returns the value of the 'Ce type' attribute. + * The literals are from the enumeration {@link TaxationWithRoot.CE_Type}. + * + * + * @return the value of the 'Ce type' attribute. + * @see TaxationWithRoot.CE_Type + * @see #setCe_type(CE_Type) + * @see TaxationWithRoot.TaxationPackage#getExtraordinary_Expense_CE_Ce_type() + * @model required="true" + * @generated + */ + CE_Type getCe_type(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Extraordinary_Expense_CE#getCe_type Ce type}' attribute. + * + * + * @param value the new value of the 'Ce type' attribute. + * @see TaxationWithRoot.CE_Type + * @see #getCe_type() + * @generated + */ + void setCe_type(CE_Type value); + +} // Extraordinary_Expense_CE diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FD.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FD.java new file mode 100644 index 00000000..c5ba0f28 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FD.java @@ -0,0 +1,45 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'FD'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.FD#getDistance_declared_in_january Distance declared in january}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getFD() + * @model + * @generated + */ +public interface FD extends Professional_Expenses_Deduction { + /** + * Returns the value of the 'Distance declared in january' attribute. + * + * + * @return the value of the 'Distance declared in january' attribute. + * @see #setDistance_declared_in_january(double) + * @see TaxationWithRoot.TaxationPackage#getFD_Distance_declared_in_january() + * @model required="true" + * @generated + */ + double getDistance_declared_in_january(); + + /** + * Sets the value of the '{@link TaxationWithRoot.FD#getDistance_declared_in_january Distance declared in january}' attribute. + * + * + * @param value the new value of the 'Distance declared in january' attribute. + * @see #getDistance_declared_in_january() + * @generated + */ + void setDistance_declared_in_january(double value); + +} // FD diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FO.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FO.java new file mode 100644 index 00000000..5c7af450 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FO.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'FO'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getFO() + * @model + * @generated + */ +public interface FO extends Professional_Expenses_Deduction { +} // FO diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Fiscal_Address.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Fiscal_Address.java new file mode 100644 index 00000000..8f7d786c --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Fiscal_Address.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Fiscal Address'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getFiscal_Address() + * @model + * @generated + */ +public interface Fiscal_Address extends Address { +} // Fiscal_Address diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Foreign_Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Foreign_Income.java new file mode 100644 index 00000000..acd3b48a --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Foreign_Income.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Foreign Income'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getForeign_Income() + * @model + * @generated + */ +public interface Foreign_Income extends Income { +} // Foreign_Income diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FromAgent.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FromAgent.java new file mode 100644 index 00000000..d09c292a --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FromAgent.java @@ -0,0 +1,144 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'From Agent'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.FromAgent#getTaxPayer Tax Payer}
            • + *
            • {@link TaxationWithRoot.FromAgent#isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care Is dependent eligible for CE Not In Houshold Children Care}
            • + *
            • {@link TaxationWithRoot.FromAgent#getExpense Expense}
            • + *
            • {@link TaxationWithRoot.FromAgent#isIs_eligible_debt Is eligible debt}
            • + *
            • {@link TaxationWithRoot.FromAgent#getDependent Dependent}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getFromAgent() + * @model + * @generated + */ +public interface FromAgent extends EObject { + /** + * Returns the value of the 'Tax Payer' container reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Tax_Payer#getFrom_agent From agent}'. + * + * + * @return the value of the 'Tax Payer' container reference. + * @see #setTaxPayer(Tax_Payer) + * @see TaxationWithRoot.TaxationPackage#getFromAgent_TaxPayer() + * @see TaxationWithRoot.Tax_Payer#getFrom_agent + * @model opposite="from_agent" required="true" transient="false" + * @generated + */ + Tax_Payer getTaxPayer(); + + /** + * Sets the value of the '{@link TaxationWithRoot.FromAgent#getTaxPayer Tax Payer}' container reference. + * + * + * @param value the new value of the 'Tax Payer' container reference. + * @see #getTaxPayer() + * @generated + */ + void setTaxPayer(Tax_Payer value); + + /** + * Returns the value of the 'Is dependent eligible for CE Not In Houshold Children Care' attribute. + * + * + * @return the value of the 'Is dependent eligible for CE Not In Houshold Children Care' attribute. + * @see #setIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care(boolean) + * @see TaxationWithRoot.TaxationPackage#getFromAgent_Is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care() + * @model required="true" ordered="false" + * @generated + */ + boolean isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care(); + + /** + * Sets the value of the '{@link TaxationWithRoot.FromAgent#isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care Is dependent eligible for CE Not In Houshold Children Care}' attribute. + * + * + * @param value the new value of the 'Is dependent eligible for CE Not In Houshold Children Care' attribute. + * @see #isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care() + * @generated + */ + void setIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care(boolean value); + + /** + * Returns the value of the 'Expense' reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Expense#getFrom_agent From agent}'. + * + * + * @return the value of the 'Expense' reference. + * @see #setExpense(Expense) + * @see TaxationWithRoot.TaxationPackage#getFromAgent_Expense() + * @see TaxationWithRoot.Expense#getFrom_agent + * @model opposite="from_agent" ordered="false" + * @generated + */ + Expense getExpense(); + + /** + * Sets the value of the '{@link TaxationWithRoot.FromAgent#getExpense Expense}' reference. + * + * + * @param value the new value of the 'Expense' reference. + * @see #getExpense() + * @generated + */ + void setExpense(Expense value); + + /** + * Returns the value of the 'Is eligible debt' attribute. + * + * + * @return the value of the 'Is eligible debt' attribute. + * @see #setIs_eligible_debt(boolean) + * @see TaxationWithRoot.TaxationPackage#getFromAgent_Is_eligible_debt() + * @model required="true" ordered="false" + * @generated + */ + boolean isIs_eligible_debt(); + + /** + * Sets the value of the '{@link TaxationWithRoot.FromAgent#isIs_eligible_debt Is eligible debt}' attribute. + * + * + * @param value the new value of the 'Is eligible debt' attribute. + * @see #isIs_eligible_debt() + * @generated + */ + void setIs_eligible_debt(boolean value); + + /** + * Returns the value of the 'Dependent' reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Dependent#getFrom_agent From agent}'. + * + * + * @return the value of the 'Dependent' reference. + * @see #setDependent(Dependent) + * @see TaxationWithRoot.TaxationPackage#getFromAgent_Dependent() + * @see TaxationWithRoot.Dependent#getFrom_agent + * @model opposite="from_agent" ordered="false" + * @generated + */ + Dependent getDependent(); + + /** + * Sets the value of the '{@link TaxationWithRoot.FromAgent#getDependent Dependent}' reference. + * + * + * @param value the new value of the 'Dependent' reference. + * @see #getDependent() + * @generated + */ + void setDependent(Dependent value); + +} // FromAgent diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FromLaw.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FromLaw.java new file mode 100644 index 00000000..7310cfde --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FromLaw.java @@ -0,0 +1,71 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'From Law'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.FromLaw#getId Id}
            • + *
            • {@link TaxationWithRoot.FromLaw#getTaxPayer Tax Payer}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getFromLaw() + * @model + * @generated + */ +public interface FromLaw extends EObject { + /** + * Returns the value of the 'Id' attribute. + * + * + * @return the value of the 'Id' attribute. + * @see #setId(String) + * @see TaxationWithRoot.TaxationPackage#getFromLaw_Id() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId(); + + /** + * Sets the value of the '{@link TaxationWithRoot.FromLaw#getId Id}' attribute. + * + * + * @param value the new value of the 'Id' attribute. + * @see #getId() + * @generated + */ + void setId(String value); + + /** + * Returns the value of the 'Tax Payer' container reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Tax_Payer#getFrom_law From law}'. + * + * + * @return the value of the 'Tax Payer' container reference. + * @see #setTaxPayer(Tax_Payer) + * @see TaxationWithRoot.TaxationPackage#getFromLaw_TaxPayer() + * @see TaxationWithRoot.Tax_Payer#getFrom_law + * @model opposite="from_law" required="true" transient="false" + * @generated + */ + Tax_Payer getTaxPayer(); + + /** + * Sets the value of the '{@link TaxationWithRoot.FromLaw#getTaxPayer Tax Payer}' container reference. + * + * + * @param value the new value of the 'Tax Payer' container reference. + * @see #getTaxPayer() + * @generated + */ + void setTaxPayer(Tax_Payer value); + +} // FromLaw diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Grantor.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Grantor.java new file mode 100644 index 00000000..863c8508 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Grantor.java @@ -0,0 +1,301 @@ +/** + */ +package TaxationWithRoot; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Grantor', + * and utility methods for working with them. + * + * @see TaxationWithRoot.TaxationPackage#getGrantor() + * @model + * @generated + */ +public enum Grantor implements Enumerator { + /** + * The 'WWW' literal object. + * + * + * @see #WWW_VALUE + * @generated + * @ordered + */ + WWW(0, "WWW", "WWW"), + + /** + * The 'Employer' literal object. + * + * + * @see #EMPLOYER_VALUE + * @generated + * @ordered + */ + EMPLOYER(1, "Employer", "Employer"), + + /** + * The 'MMM' literal object. + * + * + * @see #MMM_VALUE + * @generated + * @ordered + */ + MMM(2, "MMM", "MMM"), + + /** + * The 'UUU' literal object. + * + * + * @see #UUU_VALUE + * @generated + * @ordered + */ + UUU(3, "UUU", "UUU"), + + /** + * The 'YYY' literal object. + * + * + * @see #YYY_VALUE + * @generated + * @ordered + */ + YYY(4, "YYY", "YYY"), + + /** + * The 'OOO' literal object. + * + * + * @see #OOO_VALUE + * @generated + * @ordered + */ + OOO(5, "OOO", "OOO"); + + /** + * The 'WWW' literal value. + * + * + * @see #WWW + * @model + * @generated + * @ordered + */ + public static final int WWW_VALUE = 0; + + /** + * The 'Employer' literal value. + * + * + * @see #EMPLOYER + * @model name="Employer" + * @generated + * @ordered + */ + public static final int EMPLOYER_VALUE = 1; + + /** + * The 'MMM' literal value. + * + * + * @see #MMM + * @model + * @generated + * @ordered + */ + public static final int MMM_VALUE = 2; + + /** + * The 'UUU' literal value. + * + * + * @see #UUU + * @model + * @generated + * @ordered + */ + public static final int UUU_VALUE = 3; + + /** + * The 'YYY' literal value. + * + * + * @see #YYY + * @model + * @generated + * @ordered + */ + public static final int YYY_VALUE = 4; + + /** + * The 'OOO' literal value. + * + * + * @see #OOO + * @model + * @generated + * @ordered + */ + public static final int OOO_VALUE = 5; + + /** + * An array of all the 'Grantor' enumerators. + * + * + * @generated + */ + private static final Grantor[] VALUES_ARRAY = + new Grantor[] { + WWW, + EMPLOYER, + MMM, + UUU, + YYY, + OOO, + }; + + /** + * A public read-only list of all the 'Grantor' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Grantor' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Grantor get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Grantor result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Grantor' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Grantor getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Grantor result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Grantor' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Grantor get(int value) { + switch (value) { + case WWW_VALUE: return WWW; + case EMPLOYER_VALUE: return EMPLOYER; + case MMM_VALUE: return MMM; + case UUU_VALUE: return UUU; + case YYY_VALUE: return YYY; + case OOO_VALUE: return OOO; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Grantor(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Grantor diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Habitual_Address.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Habitual_Address.java new file mode 100644 index 00000000..fdd3a64d --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Habitual_Address.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Habitual Address'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getHabitual_Address() + * @model + * @generated + */ +public interface Habitual_Address extends Address { +} // Habitual_Address diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Health_and_Pension_Insurance.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Health_and_Pension_Insurance.java new file mode 100644 index 00000000..9ebbd866 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Health_and_Pension_Insurance.java @@ -0,0 +1,72 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Health and Pension Insurance'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Health_and_Pension_Insurance#getCategory Category}
            • + *
            • {@link TaxationWithRoot.Health_and_Pension_Insurance#isIs_related_to_additional_salary Is related to additional salary}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getHealth_and_Pension_Insurance() + * @model + * @generated + */ +public interface Health_and_Pension_Insurance extends Special_Expense_DS { + /** + * Returns the value of the 'Category' attribute. + * The literals are from the enumeration {@link TaxationWithRoot.Category_of_Health_and_Pension_Insurances}. + * + * + * @return the value of the 'Category' attribute. + * @see TaxationWithRoot.Category_of_Health_and_Pension_Insurances + * @see #setCategory(Category_of_Health_and_Pension_Insurances) + * @see TaxationWithRoot.TaxationPackage#getHealth_and_Pension_Insurance_Category() + * @model required="true" + * @generated + */ + Category_of_Health_and_Pension_Insurances getCategory(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Health_and_Pension_Insurance#getCategory Category}' attribute. + * + * + * @param value the new value of the 'Category' attribute. + * @see TaxationWithRoot.Category_of_Health_and_Pension_Insurances + * @see #getCategory() + * @generated + */ + void setCategory(Category_of_Health_and_Pension_Insurances value); + + /** + * Returns the value of the 'Is related to additional salary' attribute. + * The default value is "false". + * + * + * @return the value of the 'Is related to additional salary' attribute. + * @see #setIs_related_to_additional_salary(boolean) + * @see TaxationWithRoot.TaxationPackage#getHealth_and_Pension_Insurance_Is_related_to_additional_salary() + * @model default="false" required="true" + * @generated + */ + boolean isIs_related_to_additional_salary(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Health_and_Pension_Insurance#isIs_related_to_additional_salary Is related to additional salary}' attribute. + * + * + * @param value the new value of the 'Is related to additional salary' attribute. + * @see #isIs_related_to_additional_salary() + * @generated + */ + void setIs_related_to_additional_salary(boolean value); + +} // Health_and_Pension_Insurance diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Household.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Household.java new file mode 100644 index 00000000..da1c4a08 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Household.java @@ -0,0 +1,86 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'Household'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Household#getParents Parents}
            • + *
            • {@link TaxationWithRoot.Household#getId1 Id1}
            • + *
            • {@link TaxationWithRoot.Household#getChildren Children}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getHousehold() + * @model + * @generated + */ +public interface Household extends Tax_Case { + /** + * Returns the value of the 'Parents' containment reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Legal_Union_Record#getHousehold Household}'. + * + * + * @return the value of the 'Parents' containment reference. + * @see #setParents(Legal_Union_Record) + * @see TaxationWithRoot.TaxationPackage#getHousehold_Parents() + * @see TaxationWithRoot.Legal_Union_Record#getHousehold + * @model opposite="household" containment="true" required="true" ordered="false" + * @generated + */ + Legal_Union_Record getParents(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Household#getParents Parents}' containment reference. + * + * + * @param value the new value of the 'Parents' containment reference. + * @see #getParents() + * @generated + */ + void setParents(Legal_Union_Record value); + + /** + * Returns the value of the 'Id1' attribute. + * + * + * @return the value of the 'Id1' attribute. + * @see #setId1(String) + * @see TaxationWithRoot.TaxationPackage#getHousehold_Id1() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId1(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Household#getId1 Id1}' attribute. + * + * + * @param value the new value of the 'Id1' attribute. + * @see #getId1() + * @generated + */ + void setId1(String value); + + /** + * Returns the value of the 'Children' containment reference list. + * The list contents are of type {@link TaxationWithRoot.Dependent}. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Dependent#getHousehold Household}'. + * + * + * @return the value of the 'Children' containment reference list. + * @see TaxationWithRoot.TaxationPackage#getHousehold_Children() + * @see TaxationWithRoot.Dependent#getHousehold + * @model opposite="household" containment="true" ordered="false" + * @generated + */ + EList getChildren(); + +} // Household diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income.java new file mode 100644 index 00000000..b4e6aa80 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income.java @@ -0,0 +1,200 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Income'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Income#getIncome_amount Income amount}
            • + *
            • {@link TaxationWithRoot.Income#getIncome_type Income type}
            • + *
            • {@link TaxationWithRoot.Income#getTax_card Tax card}
            • + *
            • {@link TaxationWithRoot.Income#getTax_liability Tax liability}
            • + *
            • {@link TaxationWithRoot.Income#getTaxPayer Tax Payer}
            • + *
            • {@link TaxationWithRoot.Income#getDetails Details}
            • + *
            • {@link TaxationWithRoot.Income#getNum Num}
            • + *
            • {@link TaxationWithRoot.Income#getExpenses Expenses}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getIncome() + * @model abstract="true" + * @generated + */ +public interface Income extends EObject { + /** + * Returns the value of the 'Income amount' attribute. + * + * + * @return the value of the 'Income amount' attribute. + * @see #setIncome_amount(double) + * @see TaxationWithRoot.TaxationPackage#getIncome_Income_amount() + * @model unique="false" required="true" ordered="false" + * annotation="http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot derivation='let non_null_amounts:OrderedSet(Income_Detail)=self.details->select(det:Income_Detail|det.amount>0)->asOrderedSet() in\nnon_null_amounts->collect(amount)->min()'" + * @generated + */ + double getIncome_amount(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income#getIncome_amount Income amount}' attribute. + * + * + * @param value the new value of the 'Income amount' attribute. + * @see #getIncome_amount() + * @generated + */ + void setIncome_amount(double value); + + /** + * Returns the value of the 'Income type' containment reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Income_Type#getIncome Income}'. + * + * + * @return the value of the 'Income type' containment reference. + * @see #setIncome_type(Income_Type) + * @see TaxationWithRoot.TaxationPackage#getIncome_Income_type() + * @see TaxationWithRoot.Income_Type#getIncome + * @model opposite="income" containment="true" required="true" + * @generated + */ + Income_Type getIncome_type(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income#getIncome_type Income type}' containment reference. + * + * + * @param value the new value of the 'Income type' containment reference. + * @see #getIncome_type() + * @generated + */ + void setIncome_type(Income_Type value); + + /** + * Returns the value of the 'Tax card' containment reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Tax_Card#getIncome Income}'. + * + * + * @return the value of the 'Tax card' containment reference. + * @see #setTax_card(Tax_Card) + * @see TaxationWithRoot.TaxationPackage#getIncome_Tax_card() + * @see TaxationWithRoot.Tax_Card#getIncome + * @model opposite="income" containment="true" + * @generated + */ + Tax_Card getTax_card(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income#getTax_card Tax card}' containment reference. + * + * + * @param value the new value of the 'Tax card' containment reference. + * @see #getTax_card() + * @generated + */ + void setTax_card(Tax_Card value); + + /** + * Returns the value of the 'Tax liability' attribute. + * + * + * @return the value of the 'Tax liability' attribute. + * @see #setTax_liability(double) + * @see TaxationWithRoot.TaxationPackage#getIncome_Tax_liability() + * @model required="true" + * @generated + */ + double getTax_liability(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income#getTax_liability Tax liability}' attribute. + * + * + * @param value the new value of the 'Tax liability' attribute. + * @see #getTax_liability() + * @generated + */ + void setTax_liability(double value); + + /** + * Returns the value of the 'Tax Payer' container reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Tax_Payer#getIncomes Incomes}'. + * + * + * @return the value of the 'Tax Payer' container reference. + * @see #setTaxPayer(Tax_Payer) + * @see TaxationWithRoot.TaxationPackage#getIncome_TaxPayer() + * @see TaxationWithRoot.Tax_Payer#getIncomes + * @model opposite="incomes" required="true" transient="false" ordered="false" + * @generated + */ + Tax_Payer getTaxPayer(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income#getTaxPayer Tax Payer}' container reference. + * + * + * @param value the new value of the 'Tax Payer' container reference. + * @see #getTaxPayer() + * @generated + */ + void setTaxPayer(Tax_Payer value); + + /** + * Returns the value of the 'Details' containment reference list. + * The list contents are of type {@link TaxationWithRoot.Income_Detail}. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Income_Detail#getIncome Income}'. + * + * + * @return the value of the 'Details' containment reference list. + * @see TaxationWithRoot.TaxationPackage#getIncome_Details() + * @see TaxationWithRoot.Income_Detail#getIncome + * @model opposite="income" containment="true" lower="12" upper="12" + * @generated + */ + EList getDetails(); + + /** + * Returns the value of the 'Num' attribute. + * + * + * @return the value of the 'Num' attribute. + * @see #setNum(int) + * @see TaxationWithRoot.TaxationPackage#getIncome_Num() + * @model id="true" required="true" ordered="false" + * @generated + */ + int getNum(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income#getNum Num}' attribute. + * + * + * @param value the new value of the 'Num' attribute. + * @see #getNum() + * @generated + */ + void setNum(int value); + + /** + * Returns the value of the 'Expenses' containment reference list. + * The list contents are of type {@link TaxationWithRoot.Expense}. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Expense#getIncome Income}'. + * + * + * @return the value of the 'Expenses' containment reference list. + * @see TaxationWithRoot.TaxationPackage#getIncome_Expenses() + * @see TaxationWithRoot.Expense#getIncome + * @model opposite="income" containment="true" ordered="false" + * @generated + */ + EList getExpenses(); + +} // Income diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Detail.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Detail.java new file mode 100644 index 00000000..18e73ff9 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Detail.java @@ -0,0 +1,186 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Income Detail'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Income_Detail#getAmount Amount}
            • + *
            • {@link TaxationWithRoot.Income_Detail#isIs_worked Is worked}
            • + *
            • {@link TaxationWithRoot.Income_Detail#getDistance Distance}
            • + *
            • {@link TaxationWithRoot.Income_Detail#getWorked_days Worked days}
            • + *
            • {@link TaxationWithRoot.Income_Detail#isIs_contributing_CNS Is contributing CNS}
            • + *
            • {@link TaxationWithRoot.Income_Detail#getId5 Id5}
            • + *
            • {@link TaxationWithRoot.Income_Detail#getIncome Income}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getIncome_Detail() + * @model + * @generated + */ +public interface Income_Detail extends EObject { + /** + * Returns the value of the 'Amount' attribute. + * + * + * @return the value of the 'Amount' attribute. + * @see #setAmount(double) + * @see TaxationWithRoot.TaxationPackage#getIncome_Detail_Amount() + * @model required="true" + * @generated + */ + double getAmount(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Detail#getAmount Amount}' attribute. + * + * + * @param value the new value of the 'Amount' attribute. + * @see #getAmount() + * @generated + */ + void setAmount(double value); + + /** + * Returns the value of the 'Is worked' attribute. + * + * + * @return the value of the 'Is worked' attribute. + * @see #setIs_worked(boolean) + * @see TaxationWithRoot.TaxationPackage#getIncome_Detail_Is_worked() + * @model required="true" + * @generated + */ + boolean isIs_worked(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Detail#isIs_worked Is worked}' attribute. + * + * + * @param value the new value of the 'Is worked' attribute. + * @see #isIs_worked() + * @generated + */ + void setIs_worked(boolean value); + + /** + * Returns the value of the 'Distance' attribute. + * + * + * @return the value of the 'Distance' attribute. + * @see #setDistance(double) + * @see TaxationWithRoot.TaxationPackage#getIncome_Detail_Distance() + * @model required="true" + * @generated + */ + double getDistance(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Detail#getDistance Distance}' attribute. + * + * + * @param value the new value of the 'Distance' attribute. + * @see #getDistance() + * @generated + */ + void setDistance(double value); + + /** + * Returns the value of the 'Worked days' attribute. + * + * + * @return the value of the 'Worked days' attribute. + * @see #setWorked_days(int) + * @see TaxationWithRoot.TaxationPackage#getIncome_Detail_Worked_days() + * @model required="true" + * @generated + */ + int getWorked_days(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Detail#getWorked_days Worked days}' attribute. + * + * + * @param value the new value of the 'Worked days' attribute. + * @see #getWorked_days() + * @generated + */ + void setWorked_days(int value); + + /** + * Returns the value of the 'Is contributing CNS' attribute. + * + * + * @return the value of the 'Is contributing CNS' attribute. + * @see #setIs_contributing_CNS(boolean) + * @see TaxationWithRoot.TaxationPackage#getIncome_Detail_Is_contributing_CNS() + * @model required="true" ordered="false" + * @generated + */ + boolean isIs_contributing_CNS(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Detail#isIs_contributing_CNS Is contributing CNS}' attribute. + * + * + * @param value the new value of the 'Is contributing CNS' attribute. + * @see #isIs_contributing_CNS() + * @generated + */ + void setIs_contributing_CNS(boolean value); + + /** + * Returns the value of the 'Id5' attribute. + * + * + * @return the value of the 'Id5' attribute. + * @see #setId5(String) + * @see TaxationWithRoot.TaxationPackage#getIncome_Detail_Id5() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId5(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Detail#getId5 Id5}' attribute. + * + * + * @param value the new value of the 'Id5' attribute. + * @see #getId5() + * @generated + */ + void setId5(String value); + + /** + * Returns the value of the 'Income' container reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Income#getDetails Details}'. + * + * + * @return the value of the 'Income' container reference. + * @see #setIncome(Income) + * @see TaxationWithRoot.TaxationPackage#getIncome_Detail_Income() + * @see TaxationWithRoot.Income#getDetails + * @model opposite="details" required="true" transient="false" + * @generated + */ + Income getIncome(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Detail#getIncome Income}' container reference. + * + * + * @param value the new value of the 'Income' container reference. + * @see #getIncome() + * @generated + */ + void setIncome(Income value); + +} // Income_Detail diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Tax.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Tax.java new file mode 100644 index 00000000..6ef4d908 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Tax.java @@ -0,0 +1,115 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Income Tax'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Income_Tax#getTaxPayer Tax Payer}
            • + *
            • {@link TaxationWithRoot.Income_Tax#getTax_amount Tax amount}
            • + *
            • {@link TaxationWithRoot.Income_Tax#getTax_year Tax year}
            • + *
            • {@link TaxationWithRoot.Income_Tax#getId6 Id6}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getIncome_Tax() + * @model + * @generated + */ +public interface Income_Tax extends EObject { + /** + * Returns the value of the 'Tax Payer' reference. + * + * + * @return the value of the 'Tax Payer' reference. + * @see #setTaxPayer(Tax_Payer) + * @see TaxationWithRoot.TaxationPackage#getIncome_Tax_TaxPayer() + * @model required="true" + * @generated + */ + Tax_Payer getTaxPayer(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Tax#getTaxPayer Tax Payer}' reference. + * + * + * @param value the new value of the 'Tax Payer' reference. + * @see #getTaxPayer() + * @generated + */ + void setTaxPayer(Tax_Payer value); + + /** + * Returns the value of the 'Tax amount' attribute. + * + * + * @return the value of the 'Tax amount' attribute. + * @see #setTax_amount(double) + * @see TaxationWithRoot.TaxationPackage#getIncome_Tax_Tax_amount() + * @model required="true" + * @generated + */ + double getTax_amount(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Tax#getTax_amount Tax amount}' attribute. + * + * + * @param value the new value of the 'Tax amount' attribute. + * @see #getTax_amount() + * @generated + */ + void setTax_amount(double value); + + /** + * Returns the value of the 'Tax year' attribute. + * + * + * @return the value of the 'Tax year' attribute. + * @see #setTax_year(int) + * @see TaxationWithRoot.TaxationPackage#getIncome_Tax_Tax_year() + * @model required="true" + * @generated + */ + int getTax_year(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Tax#getTax_year Tax year}' attribute. + * + * + * @param value the new value of the 'Tax year' attribute. + * @see #getTax_year() + * @generated + */ + void setTax_year(int value); + + /** + * Returns the value of the 'Id6' attribute. + * + * + * @return the value of the 'Id6' attribute. + * @see #setId6(String) + * @see TaxationWithRoot.TaxationPackage#getIncome_Tax_Id6() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId6(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Tax#getId6 Id6}' attribute. + * + * + * @param value the new value of the 'Id6' attribute. + * @see #getId6() + * @generated + */ + void setId6(String value); + +} // Income_Tax diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Tax_Credit.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Tax_Credit.java new file mode 100644 index 00000000..48365794 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Tax_Credit.java @@ -0,0 +1,213 @@ +/** + */ +package TaxationWithRoot; + +/** + * + * A representation of the model object 'Income Tax Credit'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Income_Tax_Credit#getGrantedBy Granted By}
            • + *
            • {@link TaxationWithRoot.Income_Tax_Credit#getTaxPayer Tax Payer}
            • + *
            • {@link TaxationWithRoot.Income_Tax_Credit#getTax_year Tax year}
            • + *
            • {@link TaxationWithRoot.Income_Tax_Credit#getYearly Yearly}
            • + *
            • {@link TaxationWithRoot.Income_Tax_Credit#getMonthly Monthly}
            • + *
            • {@link TaxationWithRoot.Income_Tax_Credit#getDaily Daily}
            • + *
            • {@link TaxationWithRoot.Income_Tax_Credit#getId7 Id7}
            • + *
            • {@link TaxationWithRoot.Income_Tax_Credit#getTaxation_Frame Taxation Frame}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getIncome_Tax_Credit() + * @model + * @generated + */ +public interface Income_Tax_Credit extends Root { + /** + * Returns the value of the 'Granted By' attribute. + * The literals are from the enumeration {@link TaxationWithRoot.Grantor}. + * + * + * @return the value of the 'Granted By' attribute. + * @see TaxationWithRoot.Grantor + * @see #setGrantedBy(Grantor) + * @see TaxationWithRoot.TaxationPackage#getIncome_Tax_Credit_GrantedBy() + * @model required="true" + * @generated + */ + Grantor getGrantedBy(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Tax_Credit#getGrantedBy Granted By}' attribute. + * + * + * @param value the new value of the 'Granted By' attribute. + * @see TaxationWithRoot.Grantor + * @see #getGrantedBy() + * @generated + */ + void setGrantedBy(Grantor value); + + /** + * Returns the value of the 'Tax Payer' reference. + * + * + * @return the value of the 'Tax Payer' reference. + * @see #setTaxPayer(Tax_Payer) + * @see TaxationWithRoot.TaxationPackage#getIncome_Tax_Credit_TaxPayer() + * @model + * @generated + */ + Tax_Payer getTaxPayer(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Tax_Credit#getTaxPayer Tax Payer}' reference. + * + * + * @param value the new value of the 'Tax Payer' reference. + * @see #getTaxPayer() + * @generated + */ + void setTaxPayer(Tax_Payer value); + + /** + * Returns the value of the 'Tax year' attribute. + * + * + * @return the value of the 'Tax year' attribute. + * @see #setTax_year(int) + * @see TaxationWithRoot.TaxationPackage#getIncome_Tax_Credit_Tax_year() + * @model required="true" + * @generated + */ + int getTax_year(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Tax_Credit#getTax_year Tax year}' attribute. + * + * + * @param value the new value of the 'Tax year' attribute. + * @see #getTax_year() + * @generated + */ + void setTax_year(int value); + + /** + * Returns the value of the 'Yearly' attribute. + * The default value is "300.0". + * + * + * @return the value of the 'Yearly' attribute. + * @see #setYearly(double) + * @see TaxationWithRoot.TaxationPackage#getIncome_Tax_Credit_Yearly() + * @model default="300.0" required="true" + * @generated + */ + double getYearly(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Tax_Credit#getYearly Yearly}' attribute. + * + * + * @param value the new value of the 'Yearly' attribute. + * @see #getYearly() + * @generated + */ + void setYearly(double value); + + /** + * Returns the value of the 'Monthly' attribute. + * The default value is "25.0". + * + * + * @return the value of the 'Monthly' attribute. + * @see #setMonthly(double) + * @see TaxationWithRoot.TaxationPackage#getIncome_Tax_Credit_Monthly() + * @model default="25.0" required="true" + * @generated + */ + double getMonthly(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Tax_Credit#getMonthly Monthly}' attribute. + * + * + * @param value the new value of the 'Monthly' attribute. + * @see #getMonthly() + * @generated + */ + void setMonthly(double value); + + /** + * Returns the value of the 'Daily' attribute. + * The default value is "1.0". + * + * + * @return the value of the 'Daily' attribute. + * @see #setDaily(double) + * @see TaxationWithRoot.TaxationPackage#getIncome_Tax_Credit_Daily() + * @model default="1.0" required="true" + * @generated + */ + double getDaily(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Tax_Credit#getDaily Daily}' attribute. + * + * + * @param value the new value of the 'Daily' attribute. + * @see #getDaily() + * @generated + */ + void setDaily(double value); + + /** + * Returns the value of the 'Id7' attribute. + * + * + * @return the value of the 'Id7' attribute. + * @see #setId7(String) + * @see TaxationWithRoot.TaxationPackage#getIncome_Tax_Credit_Id7() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId7(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Tax_Credit#getId7 Id7}' attribute. + * + * + * @param value the new value of the 'Id7' attribute. + * @see #getId7() + * @generated + */ + void setId7(String value); + + /** + * Returns the value of the 'Taxation Frame' reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Tax_Card#getIncome_Tax_Credit Income Tax Credit}'. + * + * + * @return the value of the 'Taxation Frame' reference. + * @see #setTaxation_Frame(Tax_Card) + * @see TaxationWithRoot.TaxationPackage#getIncome_Tax_Credit_Taxation_Frame() + * @see TaxationWithRoot.Tax_Card#getIncome_Tax_Credit + * @model opposite="income_Tax_Credit" + * @generated + */ + Tax_Card getTaxation_Frame(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Tax_Credit#getTaxation_Frame Taxation Frame}' reference. + * + * + * @param value the new value of the 'Taxation Frame' reference. + * @see #getTaxation_Frame() + * @generated + */ + void setTaxation_Frame(Tax_Card value); + +} // Income_Tax_Credit diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Type.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Type.java new file mode 100644 index 00000000..418ab8b4 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Type.java @@ -0,0 +1,71 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Income Type'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Income_Type#getId8 Id8}
            • + *
            • {@link TaxationWithRoot.Income_Type#getIncome Income}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getIncome_Type() + * @model abstract="true" + * @generated + */ +public interface Income_Type extends EObject { + /** + * Returns the value of the 'Id8' attribute. + * + * + * @return the value of the 'Id8' attribute. + * @see #setId8(String) + * @see TaxationWithRoot.TaxationPackage#getIncome_Type_Id8() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId8(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Type#getId8 Id8}' attribute. + * + * + * @param value the new value of the 'Id8' attribute. + * @see #getId8() + * @generated + */ + void setId8(String value); + + /** + * Returns the value of the 'Income' container reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Income#getIncome_type Income type}'. + * + * + * @return the value of the 'Income' container reference. + * @see #setIncome(Income) + * @see TaxationWithRoot.TaxationPackage#getIncome_Type_Income() + * @see TaxationWithRoot.Income#getIncome_type + * @model opposite="income_type" required="true" transient="false" + * @generated + */ + Income getIncome(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Income_Type#getIncome Income}' container reference. + * + * + * @param value the new value of the 'Income' container reference. + * @see #getIncome() + * @generated + */ + void setIncome(Income value); + +} // Income_Type diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Interest_Expense.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Interest_Expense.java new file mode 100644 index 00000000..dcdb13c5 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Interest_Expense.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Interest Expense'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getInterest_Expense() + * @model + * @generated + */ +public interface Interest_Expense extends Special_Expense_DS { +} // Interest_Expense diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Job_Activity.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Job_Activity.java new file mode 100644 index 00000000..e2e28567 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Job_Activity.java @@ -0,0 +1,232 @@ +/** + */ +package TaxationWithRoot; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Job Activity', + * and utility methods for working with them. + * + * @see TaxationWithRoot.TaxationPackage#getJob_Activity() + * @model + * @generated + */ +public enum Job_Activity implements Enumerator { + /** + * The 'Salary' literal object. + * + * + * @see #SALARY_VALUE + * @generated + * @ordered + */ + SALARY(0, "Salary", "Salary"), + + /** + * The 'Pension' literal object. + * + * + * @see #PENSION_VALUE + * @generated + * @ordered + */ + PENSION(1, "Pension", "Pension"), + + /** + * The 'Annuity' literal object. + * + * + * @see #ANNUITY_VALUE + * @generated + * @ordered + */ + ANNUITY(2, "Annuity", "Annuity"); + + /** + * The 'Salary' literal value. + * + * + * @see #SALARY + * @model name="Salary" + * @generated + * @ordered + */ + public static final int SALARY_VALUE = 0; + + /** + * The 'Pension' literal value. + * + * + * @see #PENSION + * @model name="Pension" + * @generated + * @ordered + */ + public static final int PENSION_VALUE = 1; + + /** + * The 'Annuity' literal value. + * + * + * @see #ANNUITY + * @model name="Annuity" + * @generated + * @ordered + */ + public static final int ANNUITY_VALUE = 2; + + /** + * An array of all the 'Job Activity' enumerators. + * + * + * @generated + */ + private static final Job_Activity[] VALUES_ARRAY = + new Job_Activity[] { + SALARY, + PENSION, + ANNUITY, + }; + + /** + * A public read-only list of all the 'Job Activity' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Job Activity' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Job_Activity get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Job_Activity result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Job Activity' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Job_Activity getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Job_Activity result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Job Activity' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Job_Activity get(int value) { + switch (value) { + case SALARY_VALUE: return SALARY; + case PENSION_VALUE: return PENSION; + case ANNUITY_VALUE: return ANNUITY; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Job_Activity(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Job_Activity diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Legal_Union_Record.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Legal_Union_Record.java new file mode 100644 index 00000000..d0933bd7 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Legal_Union_Record.java @@ -0,0 +1,221 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Legal Union Record'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Legal_Union_Record#getStart_year Start year}
            • + *
            • {@link TaxationWithRoot.Legal_Union_Record#getEnd_year End year}
            • + *
            • {@link TaxationWithRoot.Legal_Union_Record#getSeparation_cause Separation cause}
            • + *
            • {@link TaxationWithRoot.Legal_Union_Record#getIndividual_A Individual A}
            • + *
            • {@link TaxationWithRoot.Legal_Union_Record#getIndividual_B Individual B}
            • + *
            • {@link TaxationWithRoot.Legal_Union_Record#getProperties Properties}
            • + *
            • {@link TaxationWithRoot.Legal_Union_Record#isMutual_agreement Mutual agreement}
            • + *
            • {@link TaxationWithRoot.Legal_Union_Record#getId9 Id9}
            • + *
            • {@link TaxationWithRoot.Legal_Union_Record#getHousehold Household}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getLegal_Union_Record() + * @model abstract="true" + * @generated + */ +public interface Legal_Union_Record extends EObject { + /** + * Returns the value of the 'Start year' attribute. + * + * + * @return the value of the 'Start year' attribute. + * @see #setStart_year(int) + * @see TaxationWithRoot.TaxationPackage#getLegal_Union_Record_Start_year() + * @model required="true" + * @generated + */ + int getStart_year(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Legal_Union_Record#getStart_year Start year}' attribute. + * + * + * @param value the new value of the 'Start year' attribute. + * @see #getStart_year() + * @generated + */ + void setStart_year(int value); + + /** + * Returns the value of the 'End year' attribute. + * + * + * @return the value of the 'End year' attribute. + * @see #setEnd_year(int) + * @see TaxationWithRoot.TaxationPackage#getLegal_Union_Record_End_year() + * @model required="true" + * @generated + */ + int getEnd_year(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Legal_Union_Record#getEnd_year End year}' attribute. + * + * + * @param value the new value of the 'End year' attribute. + * @see #getEnd_year() + * @generated + */ + void setEnd_year(int value); + + /** + * Returns the value of the 'Separation cause' attribute. + * The literals are from the enumeration {@link TaxationWithRoot.Separation_Causes}. + * + * + * @return the value of the 'Separation cause' attribute. + * @see TaxationWithRoot.Separation_Causes + * @see #setSeparation_cause(Separation_Causes) + * @see TaxationWithRoot.TaxationPackage#getLegal_Union_Record_Separation_cause() + * @model required="true" ordered="false" + * @generated + */ + Separation_Causes getSeparation_cause(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Legal_Union_Record#getSeparation_cause Separation cause}' attribute. + * + * + * @param value the new value of the 'Separation cause' attribute. + * @see TaxationWithRoot.Separation_Causes + * @see #getSeparation_cause() + * @generated + */ + void setSeparation_cause(Separation_Causes value); + + /** + * Returns the value of the 'Individual A' containment reference. + * + * + * @return the value of the 'Individual A' containment reference. + * @see #setIndividual_A(Physical_Person) + * @see TaxationWithRoot.TaxationPackage#getLegal_Union_Record_Individual_A() + * @model containment="true" required="true" ordered="false" + * annotation="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName body='legal_union_A'" + * @generated + */ + Physical_Person getIndividual_A(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Legal_Union_Record#getIndividual_A Individual A}' containment reference. + * + * + * @param value the new value of the 'Individual A' containment reference. + * @see #getIndividual_A() + * @generated + */ + void setIndividual_A(Physical_Person value); + + /** + * Returns the value of the 'Individual B' containment reference list. + * The list contents are of type {@link TaxationWithRoot.Physical_Person}. + * + * + * @return the value of the 'Individual B' containment reference list. + * @see TaxationWithRoot.TaxationPackage#getLegal_Union_Record_Individual_B() + * @model containment="true" required="true" ordered="false" + * annotation="http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName body='legal_union_B'" + * @generated + */ + EList getIndividual_B(); + + /** + * Returns the value of the 'Properties' containment reference list. + * The list contents are of type {@link TaxationWithRoot.Tax_Property}. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Tax_Property#getUnion_record Union record}'. + * + * + * @return the value of the 'Properties' containment reference list. + * @see TaxationWithRoot.TaxationPackage#getLegal_Union_Record_Properties() + * @see TaxationWithRoot.Tax_Property#getUnion_record + * @model opposite="union_record" containment="true" required="true" ordered="false" + * @generated + */ + EList getProperties(); + + /** + * Returns the value of the 'Mutual agreement' attribute. + * + * + * @return the value of the 'Mutual agreement' attribute. + * @see #setMutual_agreement(boolean) + * @see TaxationWithRoot.TaxationPackage#getLegal_Union_Record_Mutual_agreement() + * @model required="true" ordered="false" + * @generated + */ + boolean isMutual_agreement(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Legal_Union_Record#isMutual_agreement Mutual agreement}' attribute. + * + * + * @param value the new value of the 'Mutual agreement' attribute. + * @see #isMutual_agreement() + * @generated + */ + void setMutual_agreement(boolean value); + + /** + * Returns the value of the 'Id9' attribute. + * + * + * @return the value of the 'Id9' attribute. + * @see #setId9(String) + * @see TaxationWithRoot.TaxationPackage#getLegal_Union_Record_Id9() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId9(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Legal_Union_Record#getId9 Id9}' attribute. + * + * + * @param value the new value of the 'Id9' attribute. + * @see #getId9() + * @generated + */ + void setId9(String value); + + /** + * Returns the value of the 'Household' container reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Household#getParents Parents}'. + * + * + * @return the value of the 'Household' container reference. + * @see #setHousehold(Household) + * @see TaxationWithRoot.TaxationPackage#getLegal_Union_Record_Household() + * @see TaxationWithRoot.Household#getParents + * @model opposite="parents" required="true" transient="false" ordered="false" + * @generated + */ + Household getHousehold(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Legal_Union_Record#getHousehold Household}' container reference. + * + * + * @param value the new value of the 'Household' container reference. + * @see #getHousehold() + * @generated + */ + void setHousehold(Household value); + +} // Legal_Union_Record diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Legal_Union_Types.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Legal_Union_Types.java new file mode 100644 index 00000000..a64fe4fb --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Legal_Union_Types.java @@ -0,0 +1,232 @@ +/** + */ +package TaxationWithRoot; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Legal Union Types', + * and utility methods for working with them. + * + * @see TaxationWithRoot.TaxationPackage#getLegal_Union_Types() + * @model + * @generated + */ +public enum Legal_Union_Types implements Enumerator { + /** + * The 'MARIAGE' literal object. + * + * + * @see #MARIAGE_VALUE + * @generated + * @ordered + */ + MARIAGE(0, "MARIAGE", "MARIAGE"), + + /** + * The 'PARTNERSHIP' literal object. + * + * + * @see #PARTNERSHIP_VALUE + * @generated + * @ordered + */ + PARTNERSHIP(1, "PARTNERSHIP", "PARTNERSHIP"), + + /** + * The 'OTHER' literal object. + * + * + * @see #OTHER_VALUE + * @generated + * @ordered + */ + OTHER(2, "OTHER", "OTHER"); + + /** + * The 'MARIAGE' literal value. + * + * + * @see #MARIAGE + * @model + * @generated + * @ordered + */ + public static final int MARIAGE_VALUE = 0; + + /** + * The 'PARTNERSHIP' literal value. + * + * + * @see #PARTNERSHIP + * @model + * @generated + * @ordered + */ + public static final int PARTNERSHIP_VALUE = 1; + + /** + * The 'OTHER' literal value. + * + * + * @see #OTHER + * @model + * @generated + * @ordered + */ + public static final int OTHER_VALUE = 2; + + /** + * An array of all the 'Legal Union Types' enumerators. + * + * + * @generated + */ + private static final Legal_Union_Types[] VALUES_ARRAY = + new Legal_Union_Types[] { + MARIAGE, + PARTNERSHIP, + OTHER, + }; + + /** + * A public read-only list of all the 'Legal Union Types' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Legal Union Types' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Legal_Union_Types get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Legal_Union_Types result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Legal Union Types' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Legal_Union_Types getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Legal_Union_Types result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Legal Union Types' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Legal_Union_Types get(int value) { + switch (value) { + case MARIAGE_VALUE: return MARIAGE; + case PARTNERSHIP_VALUE: return PARTNERSHIP; + case OTHER_VALUE: return OTHER; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Legal_Union_Types(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Legal_Union_Types diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Local_Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Local_Income.java new file mode 100644 index 00000000..b61bd8e2 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Local_Income.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Local Income'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getLocal_Income() + * @model + * @generated + */ +public interface Local_Income extends Income { +} // Local_Income diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Loss_Carryforward.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Loss_Carryforward.java new file mode 100644 index 00000000..36eacf14 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Loss_Carryforward.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Loss Carryforward'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getLoss_Carryforward() + * @model + * @generated + */ +public interface Loss_Carryforward extends Special_Expense_DS { +} // Loss_Carryforward diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Marriage_Record.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Marriage_Record.java new file mode 100644 index 00000000..a085fcd9 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Marriage_Record.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Marriage Record'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getMarriage_Record() + * @model + * @generated + */ +public interface Marriage_Record extends Legal_Union_Record { +} // Marriage_Record diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Miscellaneous_Expense_FO.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Miscellaneous_Expense_FO.java new file mode 100644 index 00000000..2be4f632 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Miscellaneous_Expense_FO.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Miscellaneous Expense FO'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getMiscellaneous_Expense_FO() + * @model + * @generated + */ +public interface Miscellaneous_Expense_FO extends Professional_Expense { +} // Miscellaneous_Expense_FO diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Non_Resident_Tax_Payer.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Non_Resident_Tax_Payer.java new file mode 100644 index 00000000..8284bef0 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Non_Resident_Tax_Payer.java @@ -0,0 +1,46 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Non Resident Tax Payer'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Non_Resident_Tax_Payer#isIs_assimilated_to_resident Is assimilated to resident}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getNon_Resident_Tax_Payer() + * @model + * @generated + */ +public interface Non_Resident_Tax_Payer extends Tax_Payer { + /** + * Returns the value of the 'Is assimilated to resident' attribute. + * The default value is "false". + * + * + * @return the value of the 'Is assimilated to resident' attribute. + * @see #setIs_assimilated_to_resident(boolean) + * @see TaxationWithRoot.TaxationPackage#getNon_Resident_Tax_Payer_Is_assimilated_to_resident() + * @model default="false" required="true" + * @generated + */ + boolean isIs_assimilated_to_resident(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Non_Resident_Tax_Payer#isIs_assimilated_to_resident Is assimilated to resident}' attribute. + * + * + * @param value the new value of the 'Is assimilated to resident' attribute. + * @see #isIs_assimilated_to_resident() + * @generated + */ + void setIs_assimilated_to_resident(boolean value); + +} // Non_Resident_Tax_Payer diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Partnership_Record.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Partnership_Record.java new file mode 100644 index 00000000..71b74a92 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Partnership_Record.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Partnership Record'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getPartnership_Record() + * @model + * @generated + */ +public interface Partnership_Record extends Legal_Union_Record { +} // Partnership_Record diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Pensions_and_Annuities_Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Pensions_and_Annuities_Income.java new file mode 100644 index 00000000..5d06a47f --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Pensions_and_Annuities_Income.java @@ -0,0 +1,46 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Pensions and Annuities Income'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Pensions_and_Annuities_Income#isOccasional_payement Occasional payement}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getPensions_and_Annuities_Income() + * @model + * @generated + */ +public interface Pensions_and_Annuities_Income extends Income_Type { + /** + * Returns the value of the 'Occasional payement' attribute. + * The default value is "false". + * + * + * @return the value of the 'Occasional payement' attribute. + * @see #setOccasional_payement(boolean) + * @see TaxationWithRoot.TaxationPackage#getPensions_and_Annuities_Income_Occasional_payement() + * @model default="false" + * @generated + */ + boolean isOccasional_payement(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Pensions_and_Annuities_Income#isOccasional_payement Occasional payement}' attribute. + * + * + * @param value the new value of the 'Occasional payement' attribute. + * @see #isOccasional_payement() + * @generated + */ + void setOccasional_payement(boolean value); + +} // Pensions_and_Annuities_Income diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Permanent_Expense.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Permanent_Expense.java new file mode 100644 index 00000000..47f7f43a --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Permanent_Expense.java @@ -0,0 +1,48 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Permanent Expense'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Permanent_Expense#getCategory Category}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getPermanent_Expense() + * @model + * @generated + */ +public interface Permanent_Expense extends Special_Expense_DS { + /** + * Returns the value of the 'Category' attribute. + * The literals are from the enumeration {@link TaxationWithRoot.Category_of_Permanent_Expense}. + * + * + * @return the value of the 'Category' attribute. + * @see TaxationWithRoot.Category_of_Permanent_Expense + * @see #setCategory(Category_of_Permanent_Expense) + * @see TaxationWithRoot.TaxationPackage#getPermanent_Expense_Category() + * @model required="true" + * @generated + */ + Category_of_Permanent_Expense getCategory(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Permanent_Expense#getCategory Category}' attribute. + * + * + * @param value the new value of the 'Category' attribute. + * @see TaxationWithRoot.Category_of_Permanent_Expense + * @see #getCategory() + * @generated + */ + void setCategory(Category_of_Permanent_Expense value); + +} // Permanent_Expense diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Physical_Person.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Physical_Person.java new file mode 100644 index 00000000..0ab08dbf --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Physical_Person.java @@ -0,0 +1,219 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Physical Person'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Physical_Person#getSSNo SS No}
            • + *
            • {@link TaxationWithRoot.Physical_Person#getAddresses Addresses}
            • + *
            • {@link TaxationWithRoot.Physical_Person#getBirth_year Birth year}
            • + *
            • {@link TaxationWithRoot.Physical_Person#getDisability_percentage Disability percentage}
            • + *
            • {@link TaxationWithRoot.Physical_Person#getDisability_type Disability type}
            • + *
            • {@link TaxationWithRoot.Physical_Person#getBirth_month Birth month}
            • + *
            • {@link TaxationWithRoot.Physical_Person#getBirth_day Birth day}
            • + *
            • {@link TaxationWithRoot.Physical_Person#getExpenses Expenses}
            • + *
            • {@link TaxationWithRoot.Physical_Person#isIs_widower Is widower}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getPhysical_Person() + * @model + * @generated + */ +public interface Physical_Person extends EObject { + /** + * Returns the value of the 'SS No' attribute. + * + * + * @return the value of the 'SS No' attribute. + * @see #setSSNo(String) + * @see TaxationWithRoot.TaxationPackage#getPhysical_Person_SSNo() + * @model id="true" required="true" + * @generated + */ + String getSSNo(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Physical_Person#getSSNo SS No}' attribute. + * + * + * @param value the new value of the 'SS No' attribute. + * @see #getSSNo() + * @generated + */ + void setSSNo(String value); + + /** + * Returns the value of the 'Addresses' reference list. + * The list contents are of type {@link TaxationWithRoot.Address}. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Address#getTaxPayer Tax Payer}'. + * + * + * @return the value of the 'Addresses' reference list. + * @see TaxationWithRoot.TaxationPackage#getPhysical_Person_Addresses() + * @see TaxationWithRoot.Address#getTaxPayer + * @model opposite="taxPayer" ordered="false" + * @generated + */ + EList
            getAddresses(); + + /** + * Returns the value of the 'Birth year' attribute. + * + * + * @return the value of the 'Birth year' attribute. + * @see #setBirth_year(int) + * @see TaxationWithRoot.TaxationPackage#getPhysical_Person_Birth_year() + * @model unique="false" required="true" ordered="false" + * @generated + */ + int getBirth_year(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Physical_Person#getBirth_year Birth year}' attribute. + * + * + * @param value the new value of the 'Birth year' attribute. + * @see #getBirth_year() + * @generated + */ + void setBirth_year(int value); + + /** + * Returns the value of the 'Disability percentage' attribute. + * + * + * @return the value of the 'Disability percentage' attribute. + * @see #setDisability_percentage(double) + * @see TaxationWithRoot.TaxationPackage#getPhysical_Person_Disability_percentage() + * @model unique="false" required="true" ordered="false" + * @generated + */ + double getDisability_percentage(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Physical_Person#getDisability_percentage Disability percentage}' attribute. + * + * + * @param value the new value of the 'Disability percentage' attribute. + * @see #getDisability_percentage() + * @generated + */ + void setDisability_percentage(double value); + + /** + * Returns the value of the 'Disability type' attribute. + * The literals are from the enumeration {@link TaxationWithRoot.Disability_Types}. + * + * + * @return the value of the 'Disability type' attribute. + * @see TaxationWithRoot.Disability_Types + * @see #setDisability_type(Disability_Types) + * @see TaxationWithRoot.TaxationPackage#getPhysical_Person_Disability_type() + * @model unique="false" required="true" ordered="false" + * @generated + */ + Disability_Types getDisability_type(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Physical_Person#getDisability_type Disability type}' attribute. + * + * + * @param value the new value of the 'Disability type' attribute. + * @see TaxationWithRoot.Disability_Types + * @see #getDisability_type() + * @generated + */ + void setDisability_type(Disability_Types value); + + /** + * Returns the value of the 'Birth month' attribute. + * + * + * @return the value of the 'Birth month' attribute. + * @see #setBirth_month(int) + * @see TaxationWithRoot.TaxationPackage#getPhysical_Person_Birth_month() + * @model unique="false" required="true" ordered="false" + * @generated + */ + int getBirth_month(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Physical_Person#getBirth_month Birth month}' attribute. + * + * + * @param value the new value of the 'Birth month' attribute. + * @see #getBirth_month() + * @generated + */ + void setBirth_month(int value); + + /** + * Returns the value of the 'Birth day' attribute. + * + * + * @return the value of the 'Birth day' attribute. + * @see #setBirth_day(int) + * @see TaxationWithRoot.TaxationPackage#getPhysical_Person_Birth_day() + * @model unique="false" required="true" ordered="false" + * @generated + */ + int getBirth_day(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Physical_Person#getBirth_day Birth day}' attribute. + * + * + * @param value the new value of the 'Birth day' attribute. + * @see #getBirth_day() + * @generated + */ + void setBirth_day(int value); + + /** + * Returns the value of the 'Expenses' reference list. + * The list contents are of type {@link TaxationWithRoot.Expense}. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Expense#getBeneficiary Beneficiary}'. + * + * + * @return the value of the 'Expenses' reference list. + * @see TaxationWithRoot.TaxationPackage#getPhysical_Person_Expenses() + * @see TaxationWithRoot.Expense#getBeneficiary + * @model opposite="beneficiary" ordered="false" + * @generated + */ + EList getExpenses(); + + /** + * Returns the value of the 'Is widower' attribute. + * + * + * @return the value of the 'Is widower' attribute. + * @see #setIs_widower(boolean) + * @see TaxationWithRoot.TaxationPackage#getPhysical_Person_Is_widower() + * @model required="true" ordered="false" + * @generated + */ + boolean isIs_widower(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Physical_Person#isIs_widower Is widower}' attribute. + * + * + * @param value the new value of the 'Is widower' attribute. + * @see #isIs_widower() + * @generated + */ + void setIs_widower(boolean value); + +} // Physical_Person diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Private_Insurance_and_Plan.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Private_Insurance_and_Plan.java new file mode 100644 index 00000000..1b1837a4 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Private_Insurance_and_Plan.java @@ -0,0 +1,71 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Private Insurance and Plan'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Private_Insurance_and_Plan#getCategory Category}
            • + *
            • {@link TaxationWithRoot.Private_Insurance_and_Plan#getDuration_of_contract Duration of contract}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getPrivate_Insurance_and_Plan() + * @model + * @generated + */ +public interface Private_Insurance_and_Plan extends Special_Expense_DS { + /** + * Returns the value of the 'Category' attribute. + * The literals are from the enumeration {@link TaxationWithRoot.Category_of_Private_Insurance_and_Plan}. + * + * + * @return the value of the 'Category' attribute. + * @see TaxationWithRoot.Category_of_Private_Insurance_and_Plan + * @see #setCategory(Category_of_Private_Insurance_and_Plan) + * @see TaxationWithRoot.TaxationPackage#getPrivate_Insurance_and_Plan_Category() + * @model required="true" + * @generated + */ + Category_of_Private_Insurance_and_Plan getCategory(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Private_Insurance_and_Plan#getCategory Category}' attribute. + * + * + * @param value the new value of the 'Category' attribute. + * @see TaxationWithRoot.Category_of_Private_Insurance_and_Plan + * @see #getCategory() + * @generated + */ + void setCategory(Category_of_Private_Insurance_and_Plan value); + + /** + * Returns the value of the 'Duration of contract' attribute. + * + * + * @return the value of the 'Duration of contract' attribute. + * @see #setDuration_of_contract(int) + * @see TaxationWithRoot.TaxationPackage#getPrivate_Insurance_and_Plan_Duration_of_contract() + * @model required="true" + * @generated + */ + int getDuration_of_contract(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Private_Insurance_and_Plan#getDuration_of_contract Duration of contract}' attribute. + * + * + * @param value the new value of the 'Duration of contract' attribute. + * @see #getDuration_of_contract() + * @generated + */ + void setDuration_of_contract(int value); + +} // Private_Insurance_and_Plan diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Professional_Expense.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Professional_Expense.java new file mode 100644 index 00000000..aa5f8d9c --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Professional_Expense.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Professional Expense'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getProfessional_Expense() + * @model + * @generated + */ +public interface Professional_Expense extends Expense { +} // Professional_Expense diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Professional_Expenses_Deduction.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Professional_Expenses_Deduction.java new file mode 100644 index 00000000..b6edd2a7 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Professional_Expenses_Deduction.java @@ -0,0 +1,16 @@ +/** + */ +package TaxationWithRoot; + +/** + * + * A representation of the model object 'Professional Expenses Deduction'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getProfessional_Expenses_Deduction() + * @model + * @generated + */ +public interface Professional_Expenses_Deduction extends Root { +} // Professional_Expenses_Deduction diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Rentals_and_Leases_Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Rentals_and_Leases_Income.java new file mode 100644 index 00000000..087686de --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Rentals_and_Leases_Income.java @@ -0,0 +1,46 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Rentals and Leases Income'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Rentals_and_Leases_Income#isIs_periodic Is periodic}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getRentals_and_Leases_Income() + * @model + * @generated + */ +public interface Rentals_and_Leases_Income extends Income_Type { + /** + * Returns the value of the 'Is periodic' attribute. + * The default value is "true". + * + * + * @return the value of the 'Is periodic' attribute. + * @see #setIs_periodic(boolean) + * @see TaxationWithRoot.TaxationPackage#getRentals_and_Leases_Income_Is_periodic() + * @model default="true" required="true" + * @generated + */ + boolean isIs_periodic(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Rentals_and_Leases_Income#isIs_periodic Is periodic}' attribute. + * + * + * @param value the new value of the 'Is periodic' attribute. + * @see #isIs_periodic() + * @generated + */ + void setIs_periodic(boolean value); + +} // Rentals_and_Leases_Income diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Resident_Tax_Payer.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Resident_Tax_Payer.java new file mode 100644 index 00000000..72f1d1d2 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Resident_Tax_Payer.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Resident Tax Payer'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getResident_Tax_Payer() + * @model + * @generated + */ +public interface Resident_Tax_Payer extends Tax_Payer { +} // Resident_Tax_Payer diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Resource.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Resource.java new file mode 100644 index 00000000..6ea850b3 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Resource.java @@ -0,0 +1,38 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Resource'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Resource#getContains Contains}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getResource() + * @model + * @generated + */ +public interface Resource extends EObject { + /** + * Returns the value of the 'Contains' containment reference list. + * The list contents are of type {@link TaxationWithRoot.Root}. + * + * + * @return the value of the 'Contains' containment reference list. + * @see TaxationWithRoot.TaxationPackage#getResource_Contains() + * @model containment="true" + * @generated + */ + EList getContains(); + +} // Resource diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Root.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Root.java new file mode 100644 index 00000000..df799863 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Root.java @@ -0,0 +1,18 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Root'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getRoot() + * @model abstract="true" + * @generated + */ +public interface Root extends EObject { +} // Root diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Separation_Causes.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Separation_Causes.java new file mode 100644 index 00000000..2f2f2018 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Separation_Causes.java @@ -0,0 +1,255 @@ +/** + */ +package TaxationWithRoot; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Separation Causes', + * and utility methods for working with them. + * + * @see TaxationWithRoot.TaxationPackage#getSeparation_Causes() + * @model + * @generated + */ +public enum Separation_Causes implements Enumerator { + /** + * The 'NONE' literal object. + * + * + * @see #NONE_VALUE + * @generated + * @ordered + */ + NONE(0, "NONE", "NONE"), + + /** + * The 'DIVORCE' literal object. + * + * + * @see #DIVORCE_VALUE + * @generated + * @ordered + */ + DIVORCE(1, "DIVORCE", "DIVORCE"), + + /** + * The 'SEPARATION DE FAIT' literal object. + * + * + * @see #SEPARATION_DE_FAIT_VALUE + * @generated + * @ordered + */ + SEPARATION_DE_FAIT(2, "SEPARATION_DE_FAIT", "SEPARATION_DE_FAIT"), + + /** + * The 'SEPARATION BY COURT' literal object. + * + * + * @see #SEPARATION_BY_COURT_VALUE + * @generated + * @ordered + */ + SEPARATION_BY_COURT(3, "SEPARATION_BY_COURT", "SEPARATION_BY_COURT"); + + /** + * The 'NONE' literal value. + * + * + * @see #NONE + * @model + * @generated + * @ordered + */ + public static final int NONE_VALUE = 0; + + /** + * The 'DIVORCE' literal value. + * + * + * @see #DIVORCE + * @model + * @generated + * @ordered + */ + public static final int DIVORCE_VALUE = 1; + + /** + * The 'SEPARATION DE FAIT' literal value. + * + * + * @see #SEPARATION_DE_FAIT + * @model + * @generated + * @ordered + */ + public static final int SEPARATION_DE_FAIT_VALUE = 2; + + /** + * The 'SEPARATION BY COURT' literal value. + * + * + * @see #SEPARATION_BY_COURT + * @model + * @generated + * @ordered + */ + public static final int SEPARATION_BY_COURT_VALUE = 3; + + /** + * An array of all the 'Separation Causes' enumerators. + * + * + * @generated + */ + private static final Separation_Causes[] VALUES_ARRAY = + new Separation_Causes[] { + NONE, + DIVORCE, + SEPARATION_DE_FAIT, + SEPARATION_BY_COURT, + }; + + /** + * A public read-only list of all the 'Separation Causes' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Separation Causes' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Separation_Causes get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Separation_Causes result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Separation Causes' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Separation_Causes getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Separation_Causes result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Separation Causes' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Separation_Causes get(int value) { + switch (value) { + case NONE_VALUE: return NONE; + case DIVORCE_VALUE: return DIVORCE; + case SEPARATION_DE_FAIT_VALUE: return SEPARATION_DE_FAIT; + case SEPARATION_BY_COURT_VALUE: return SEPARATION_BY_COURT; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Separation_Causes(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Separation_Causes diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Special_Expense_DS.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Special_Expense_DS.java new file mode 100644 index 00000000..0ff58f0b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Special_Expense_DS.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Special Expense DS'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getSpecial_Expense_DS() + * @model + * @generated + */ +public interface Special_Expense_DS extends Expense { +} // Special_Expense_DS diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Spousal_Expense_AC.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Spousal_Expense_AC.java new file mode 100644 index 00000000..f4437040 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Spousal_Expense_AC.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Spousal Expense AC'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getSpousal_Expense_AC() + * @model + * @generated + */ +public interface Spousal_Expense_AC extends Expense { +} // Spousal_Expense_AC diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Card.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Card.java new file mode 100644 index 00000000..9f88327b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Card.java @@ -0,0 +1,810 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Tax Card'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Tax_Card#getCard_identifier Card identifier}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getTax_office Tax office}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getPercentage_of_witholding Percentage of witholding}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getTax_payers_name_surname Tax payers name surname}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getTax_payers_partner_name_surname Tax payers partner name surname}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getTax_payers_address Tax payers address}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getJobs_Employer_SSNo Jobs Employer SS No}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getJobs_employers_name Jobs employers name}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getJobs_activity_type Jobs activity type}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getJobs_place_of_work Jobs place of work}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getDeduction_FD_daily Deduction FD daily}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getDeduction_FD_monthly Deduction FD monthly}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getDeduction_AC_daily Deduction AC daily}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getDeduction_AC_monthly Deduction AC monthly}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getDeduction_AC_yearly Deduction AC yearly}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getDeduction_CE_daily Deduction CE daily}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getDeduction_CE_monthly Deduction CE monthly}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getDeduction_CE_yearly Deduction CE yearly}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getDeduction_DS_daily Deduction DS daily}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getDeduction_DS_monthly Deduction DS monthly}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getDeduction_FO_daily Deduction FO daily}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getDeduction_FO_monthly Deduction FO monthly}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getDeduction_FO_yearly Deduction FO yearly}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getCredit_CIS_daily Credit CIS daily}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getCredit_CIS_monthly Credit CIS monthly}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getCredit_CIM_daily Credit CIM daily}
            • + *
            • {@link TaxationWithRoot.Tax_Card#isValidity Validity}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getIncome_Tax_Credit Income Tax Credit}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getPrevious Previous}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getCurrent_tax_card Current tax card}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getCredit_CIM_yearly Credit CIM yearly}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getDeduction_DS_Alimony_yearly Deduction DS Alimony yearly}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getDeduction_DS_Debt_yearly Deduction DS Debt yearly}
            • + *
            • {@link TaxationWithRoot.Tax_Card#getIncome Income}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getTax_Card() + * @model + * @generated + */ +public interface Tax_Card extends EObject { + /** + * Returns the value of the 'Card identifier' attribute. + * + * + * @return the value of the 'Card identifier' attribute. + * @see #setCard_identifier(String) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Card_identifier() + * @model id="true" + * @generated + */ + String getCard_identifier(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getCard_identifier Card identifier}' attribute. + * + * + * @param value the new value of the 'Card identifier' attribute. + * @see #getCard_identifier() + * @generated + */ + void setCard_identifier(String value); + + /** + * Returns the value of the 'Tax office' attribute. + * The literals are from the enumeration {@link TaxationWithRoot.Tax_Office}. + * + * + * @return the value of the 'Tax office' attribute. + * @see TaxationWithRoot.Tax_Office + * @see #setTax_office(Tax_Office) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Tax_office() + * @model required="true" + * @generated + */ + Tax_Office getTax_office(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getTax_office Tax office}' attribute. + * + * + * @param value the new value of the 'Tax office' attribute. + * @see TaxationWithRoot.Tax_Office + * @see #getTax_office() + * @generated + */ + void setTax_office(Tax_Office value); + + /** + * Returns the value of the 'Percentage of witholding' attribute. + * + * + * @return the value of the 'Percentage of witholding' attribute. + * @see #setPercentage_of_witholding(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Percentage_of_witholding() + * @model required="true" + * @generated + */ + double getPercentage_of_witholding(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getPercentage_of_witholding Percentage of witholding}' attribute. + * + * + * @param value the new value of the 'Percentage of witholding' attribute. + * @see #getPercentage_of_witholding() + * @generated + */ + void setPercentage_of_witholding(double value); + + /** + * Returns the value of the 'Tax payers name surname' attribute list. + * The list contents are of type {@link java.lang.String}. + * + * + * @return the value of the 'Tax payers name surname' attribute list. + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Tax_payers_name_surname() + * @model ordered="false" + * @generated + */ + EList getTax_payers_name_surname(); + + /** + * Returns the value of the 'Tax payers partner name surname' attribute list. + * The list contents are of type {@link java.lang.String}. + * + * + * @return the value of the 'Tax payers partner name surname' attribute list. + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Tax_payers_partner_name_surname() + * @model ordered="false" + * @generated + */ + EList getTax_payers_partner_name_surname(); + + /** + * Returns the value of the 'Tax payers address' reference. + * + * + * @return the value of the 'Tax payers address' reference. + * @see #setTax_payers_address(Address) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Tax_payers_address() + * @model + * @generated + */ + Address getTax_payers_address(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getTax_payers_address Tax payers address}' reference. + * + * + * @param value the new value of the 'Tax payers address' reference. + * @see #getTax_payers_address() + * @generated + */ + void setTax_payers_address(Address value); + + /** + * Returns the value of the 'Jobs Employer SS No' attribute. + * + * + * @return the value of the 'Jobs Employer SS No' attribute. + * @see #setJobs_Employer_SSNo(String) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Jobs_Employer_SSNo() + * @model unique="false" ordered="false" + * @generated + */ + String getJobs_Employer_SSNo(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getJobs_Employer_SSNo Jobs Employer SS No}' attribute. + * + * + * @param value the new value of the 'Jobs Employer SS No' attribute. + * @see #getJobs_Employer_SSNo() + * @generated + */ + void setJobs_Employer_SSNo(String value); + + /** + * Returns the value of the 'Jobs employers name' attribute. + * + * + * @return the value of the 'Jobs employers name' attribute. + * @see #setJobs_employers_name(String) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Jobs_employers_name() + * @model unique="false" ordered="false" + * @generated + */ + String getJobs_employers_name(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getJobs_employers_name Jobs employers name}' attribute. + * + * + * @param value the new value of the 'Jobs employers name' attribute. + * @see #getJobs_employers_name() + * @generated + */ + void setJobs_employers_name(String value); + + /** + * Returns the value of the 'Jobs activity type' attribute. + * The literals are from the enumeration {@link TaxationWithRoot.Job_Activity}. + * + * + * @return the value of the 'Jobs activity type' attribute. + * @see TaxationWithRoot.Job_Activity + * @see #setJobs_activity_type(Job_Activity) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Jobs_activity_type() + * @model required="true" + * @generated + */ + Job_Activity getJobs_activity_type(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getJobs_activity_type Jobs activity type}' attribute. + * + * + * @param value the new value of the 'Jobs activity type' attribute. + * @see TaxationWithRoot.Job_Activity + * @see #getJobs_activity_type() + * @generated + */ + void setJobs_activity_type(Job_Activity value); + + /** + * Returns the value of the 'Jobs place of work' attribute. + * The literals are from the enumeration {@link TaxationWithRoot.Town}. + * + * + * @return the value of the 'Jobs place of work' attribute. + * @see TaxationWithRoot.Town + * @see #setJobs_place_of_work(Town) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Jobs_place_of_work() + * @model required="true" + * @generated + */ + Town getJobs_place_of_work(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getJobs_place_of_work Jobs place of work}' attribute. + * + * + * @param value the new value of the 'Jobs place of work' attribute. + * @see TaxationWithRoot.Town + * @see #getJobs_place_of_work() + * @generated + */ + void setJobs_place_of_work(Town value); + + /** + * Returns the value of the 'Deduction FD daily' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction FD daily' attribute. + * @see #setDeduction_FD_daily(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Deduction_FD_daily() + * @model default="0.0" unique="false" required="true" ordered="false" + * @generated + */ + double getDeduction_FD_daily(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getDeduction_FD_daily Deduction FD daily}' attribute. + * + * + * @param value the new value of the 'Deduction FD daily' attribute. + * @see #getDeduction_FD_daily() + * @generated + */ + void setDeduction_FD_daily(double value); + + /** + * Returns the value of the 'Deduction FD monthly' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction FD monthly' attribute. + * @see #setDeduction_FD_monthly(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Deduction_FD_monthly() + * @model default="0.0" unique="false" required="true" ordered="false" + * @generated + */ + double getDeduction_FD_monthly(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getDeduction_FD_monthly Deduction FD monthly}' attribute. + * + * + * @param value the new value of the 'Deduction FD monthly' attribute. + * @see #getDeduction_FD_monthly() + * @generated + */ + void setDeduction_FD_monthly(double value); + + /** + * Returns the value of the 'Deduction AC daily' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction AC daily' attribute. + * @see #setDeduction_AC_daily(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Deduction_AC_daily() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_AC_daily(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getDeduction_AC_daily Deduction AC daily}' attribute. + * + * + * @param value the new value of the 'Deduction AC daily' attribute. + * @see #getDeduction_AC_daily() + * @generated + */ + void setDeduction_AC_daily(double value); + + /** + * Returns the value of the 'Deduction AC monthly' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction AC monthly' attribute. + * @see #setDeduction_AC_monthly(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Deduction_AC_monthly() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_AC_monthly(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getDeduction_AC_monthly Deduction AC monthly}' attribute. + * + * + * @param value the new value of the 'Deduction AC monthly' attribute. + * @see #getDeduction_AC_monthly() + * @generated + */ + void setDeduction_AC_monthly(double value); + + /** + * Returns the value of the 'Deduction AC yearly' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction AC yearly' attribute. + * @see #setDeduction_AC_yearly(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Deduction_AC_yearly() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_AC_yearly(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getDeduction_AC_yearly Deduction AC yearly}' attribute. + * + * + * @param value the new value of the 'Deduction AC yearly' attribute. + * @see #getDeduction_AC_yearly() + * @generated + */ + void setDeduction_AC_yearly(double value); + + /** + * Returns the value of the 'Deduction CE daily' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction CE daily' attribute. + * @see #setDeduction_CE_daily(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Deduction_CE_daily() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_CE_daily(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getDeduction_CE_daily Deduction CE daily}' attribute. + * + * + * @param value the new value of the 'Deduction CE daily' attribute. + * @see #getDeduction_CE_daily() + * @generated + */ + void setDeduction_CE_daily(double value); + + /** + * Returns the value of the 'Deduction CE monthly' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction CE monthly' attribute. + * @see #setDeduction_CE_monthly(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Deduction_CE_monthly() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_CE_monthly(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getDeduction_CE_monthly Deduction CE monthly}' attribute. + * + * + * @param value the new value of the 'Deduction CE monthly' attribute. + * @see #getDeduction_CE_monthly() + * @generated + */ + void setDeduction_CE_monthly(double value); + + /** + * Returns the value of the 'Deduction CE yearly' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction CE yearly' attribute. + * @see #setDeduction_CE_yearly(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Deduction_CE_yearly() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_CE_yearly(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getDeduction_CE_yearly Deduction CE yearly}' attribute. + * + * + * @param value the new value of the 'Deduction CE yearly' attribute. + * @see #getDeduction_CE_yearly() + * @generated + */ + void setDeduction_CE_yearly(double value); + + /** + * Returns the value of the 'Deduction DS daily' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction DS daily' attribute. + * @see #setDeduction_DS_daily(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Deduction_DS_daily() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_DS_daily(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getDeduction_DS_daily Deduction DS daily}' attribute. + * + * + * @param value the new value of the 'Deduction DS daily' attribute. + * @see #getDeduction_DS_daily() + * @generated + */ + void setDeduction_DS_daily(double value); + + /** + * Returns the value of the 'Deduction DS monthly' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction DS monthly' attribute. + * @see #setDeduction_DS_monthly(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Deduction_DS_monthly() + * @model default="0.0" required="true" + * @generated + */ + double getDeduction_DS_monthly(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getDeduction_DS_monthly Deduction DS monthly}' attribute. + * + * + * @param value the new value of the 'Deduction DS monthly' attribute. + * @see #getDeduction_DS_monthly() + * @generated + */ + void setDeduction_DS_monthly(double value); + + /** + * Returns the value of the 'Deduction FO daily' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction FO daily' attribute. + * @see #setDeduction_FO_daily(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Deduction_FO_daily() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_FO_daily(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getDeduction_FO_daily Deduction FO daily}' attribute. + * + * + * @param value the new value of the 'Deduction FO daily' attribute. + * @see #getDeduction_FO_daily() + * @generated + */ + void setDeduction_FO_daily(double value); + + /** + * Returns the value of the 'Deduction FO monthly' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction FO monthly' attribute. + * @see #setDeduction_FO_monthly(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Deduction_FO_monthly() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_FO_monthly(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getDeduction_FO_monthly Deduction FO monthly}' attribute. + * + * + * @param value the new value of the 'Deduction FO monthly' attribute. + * @see #getDeduction_FO_monthly() + * @generated + */ + void setDeduction_FO_monthly(double value); + + /** + * Returns the value of the 'Deduction FO yearly' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Deduction FO yearly' attribute. + * @see #setDeduction_FO_yearly(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Deduction_FO_yearly() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getDeduction_FO_yearly(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getDeduction_FO_yearly Deduction FO yearly}' attribute. + * + * + * @param value the new value of the 'Deduction FO yearly' attribute. + * @see #getDeduction_FO_yearly() + * @generated + */ + void setDeduction_FO_yearly(double value); + + /** + * Returns the value of the 'Credit CIS daily' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Credit CIS daily' attribute. + * @see #setCredit_CIS_daily(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Credit_CIS_daily() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getCredit_CIS_daily(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getCredit_CIS_daily Credit CIS daily}' attribute. + * + * + * @param value the new value of the 'Credit CIS daily' attribute. + * @see #getCredit_CIS_daily() + * @generated + */ + void setCredit_CIS_daily(double value); + + /** + * Returns the value of the 'Credit CIS monthly' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Credit CIS monthly' attribute. + * @see #setCredit_CIS_monthly(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Credit_CIS_monthly() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getCredit_CIS_monthly(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getCredit_CIS_monthly Credit CIS monthly}' attribute. + * + * + * @param value the new value of the 'Credit CIS monthly' attribute. + * @see #getCredit_CIS_monthly() + * @generated + */ + void setCredit_CIS_monthly(double value); + + /** + * Returns the value of the 'Credit CIM daily' attribute. + * The default value is "0.0". + * + * + * @return the value of the 'Credit CIM daily' attribute. + * @see #setCredit_CIM_daily(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Credit_CIM_daily() + * @model default="0.0" unique="false" required="true" + * @generated + */ + double getCredit_CIM_daily(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getCredit_CIM_daily Credit CIM daily}' attribute. + * + * + * @param value the new value of the 'Credit CIM daily' attribute. + * @see #getCredit_CIM_daily() + * @generated + */ + void setCredit_CIM_daily(double value); + + /** + * Returns the value of the 'Validity' attribute. + * + * + * @return the value of the 'Validity' attribute. + * @see #setValidity(boolean) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Validity() + * @model required="true" + * @generated + */ + boolean isValidity(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#isValidity Validity}' attribute. + * + * + * @param value the new value of the 'Validity' attribute. + * @see #isValidity() + * @generated + */ + void setValidity(boolean value); + + /** + * Returns the value of the 'Income Tax Credit' reference list. + * The list contents are of type {@link TaxationWithRoot.Income_Tax_Credit}. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Income_Tax_Credit#getTaxation_Frame Taxation Frame}'. + * + * + * @return the value of the 'Income Tax Credit' reference list. + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Income_Tax_Credit() + * @see TaxationWithRoot.Income_Tax_Credit#getTaxation_Frame + * @model opposite="taxation_Frame" ordered="false" + * @generated + */ + EList getIncome_Tax_Credit(); + + /** + * Returns the value of the 'Previous' reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Tax_Card#getCurrent_tax_card Current tax card}'. + * + * + * @return the value of the 'Previous' reference. + * @see #setPrevious(Tax_Card) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Previous() + * @see TaxationWithRoot.Tax_Card#getCurrent_tax_card + * @model opposite="current_tax_card" + * @generated + */ + Tax_Card getPrevious(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getPrevious Previous}' reference. + * + * + * @param value the new value of the 'Previous' reference. + * @see #getPrevious() + * @generated + */ + void setPrevious(Tax_Card value); + + /** + * Returns the value of the 'Current tax card' reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Tax_Card#getPrevious Previous}'. + * + * + * @return the value of the 'Current tax card' reference. + * @see #setCurrent_tax_card(Tax_Card) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Current_tax_card() + * @see TaxationWithRoot.Tax_Card#getPrevious + * @model opposite="previous" + * @generated + */ + Tax_Card getCurrent_tax_card(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getCurrent_tax_card Current tax card}' reference. + * + * + * @param value the new value of the 'Current tax card' reference. + * @see #getCurrent_tax_card() + * @generated + */ + void setCurrent_tax_card(Tax_Card value); + + /** + * Returns the value of the 'Credit CIM yearly' attribute. + * + * + * @return the value of the 'Credit CIM yearly' attribute. + * @see #setCredit_CIM_yearly(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Credit_CIM_yearly() + * @model required="true" ordered="false" + * @generated + */ + double getCredit_CIM_yearly(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getCredit_CIM_yearly Credit CIM yearly}' attribute. + * + * + * @param value the new value of the 'Credit CIM yearly' attribute. + * @see #getCredit_CIM_yearly() + * @generated + */ + void setCredit_CIM_yearly(double value); + + /** + * Returns the value of the 'Deduction DS Alimony yearly' attribute. + * + * + * @return the value of the 'Deduction DS Alimony yearly' attribute. + * @see #setDeduction_DS_Alimony_yearly(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Deduction_DS_Alimony_yearly() + * @model required="true" ordered="false" + * @generated + */ + double getDeduction_DS_Alimony_yearly(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getDeduction_DS_Alimony_yearly Deduction DS Alimony yearly}' attribute. + * + * + * @param value the new value of the 'Deduction DS Alimony yearly' attribute. + * @see #getDeduction_DS_Alimony_yearly() + * @generated + */ + void setDeduction_DS_Alimony_yearly(double value); + + /** + * Returns the value of the 'Deduction DS Debt yearly' attribute. + * + * + * @return the value of the 'Deduction DS Debt yearly' attribute. + * @see #setDeduction_DS_Debt_yearly(double) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Deduction_DS_Debt_yearly() + * @model required="true" ordered="false" + * @generated + */ + double getDeduction_DS_Debt_yearly(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getDeduction_DS_Debt_yearly Deduction DS Debt yearly}' attribute. + * + * + * @param value the new value of the 'Deduction DS Debt yearly' attribute. + * @see #getDeduction_DS_Debt_yearly() + * @generated + */ + void setDeduction_DS_Debt_yearly(double value); + + /** + * Returns the value of the 'Income' container reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Income#getTax_card Tax card}'. + * + * + * @return the value of the 'Income' container reference. + * @see #setIncome(Income) + * @see TaxationWithRoot.TaxationPackage#getTax_Card_Income() + * @see TaxationWithRoot.Income#getTax_card + * @model opposite="tax_card" required="true" transient="false" + * @generated + */ + Income getIncome(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Card#getIncome Income}' container reference. + * + * + * @param value the new value of the 'Income' container reference. + * @see #getIncome() + * @generated + */ + void setIncome(Income value); + +} // Tax_Card diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Case.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Case.java new file mode 100644 index 00000000..cee7c173 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Case.java @@ -0,0 +1,16 @@ +/** + */ +package TaxationWithRoot; + +/** + * + * A representation of the model object 'Tax Case'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getTax_Case() + * @model interface="true" abstract="true" + * @generated + */ +public interface Tax_Case extends Root { +} // Tax_Case diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Class_Category.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Class_Category.java new file mode 100644 index 00000000..81c144d8 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Class_Category.java @@ -0,0 +1,232 @@ +/** + */ +package TaxationWithRoot; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Tax Class Category', + * and utility methods for working with them. + * + * @see TaxationWithRoot.TaxationPackage#getTax_Class_Category() + * @model + * @generated + */ +public enum Tax_Class_Category implements Enumerator { + /** + * The 'One' literal object. + * + * + * @see #ONE_VALUE + * @generated + * @ordered + */ + ONE(0, "One", "One"), + + /** + * The 'One A' literal object. + * + * + * @see #ONE_A_VALUE + * @generated + * @ordered + */ + ONE_A(1, "One_A", "One_A"), + + /** + * The 'Two' literal object. + * + * + * @see #TWO_VALUE + * @generated + * @ordered + */ + TWO(2, "Two", "Two"); + + /** + * The 'One' literal value. + * + * + * @see #ONE + * @model name="One" + * @generated + * @ordered + */ + public static final int ONE_VALUE = 0; + + /** + * The 'One A' literal value. + * + * + * @see #ONE_A + * @model name="One_A" + * @generated + * @ordered + */ + public static final int ONE_A_VALUE = 1; + + /** + * The 'Two' literal value. + * + * + * @see #TWO + * @model name="Two" + * @generated + * @ordered + */ + public static final int TWO_VALUE = 2; + + /** + * An array of all the 'Tax Class Category' enumerators. + * + * + * @generated + */ + private static final Tax_Class_Category[] VALUES_ARRAY = + new Tax_Class_Category[] { + ONE, + ONE_A, + TWO, + }; + + /** + * A public read-only list of all the 'Tax Class Category' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Tax Class Category' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Tax_Class_Category get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Tax_Class_Category result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Tax Class Category' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Tax_Class_Category getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Tax_Class_Category result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Tax Class Category' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Tax_Class_Category get(int value) { + switch (value) { + case ONE_VALUE: return ONE; + case ONE_A_VALUE: return ONE_A; + case TWO_VALUE: return TWO; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Tax_Class_Category(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Tax_Class_Category diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Office.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Office.java new file mode 100644 index 00000000..bab3d605 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Office.java @@ -0,0 +1,255 @@ +/** + */ +package TaxationWithRoot; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Tax Office', + * and utility methods for working with them. + * + * @see TaxationWithRoot.TaxationPackage#getTax_Office() + * @model + * @generated + */ +public enum Tax_Office implements Enumerator { + /** + * The 'RTS 2' literal object. + * + * + * @see #RTS_2_VALUE + * @generated + * @ordered + */ + RTS_2(0, "RTS_2", "RTS_2"), + + /** + * The 'RTS 3' literal object. + * + * + * @see #RTS_3_VALUE + * @generated + * @ordered + */ + RTS_3(1, "RTS_3", "RTS_3"), + + /** + * The 'RTS 4' literal object. + * + * + * @see #RTS_4_VALUE + * @generated + * @ordered + */ + RTS_4(2, "RTS_4", "RTS_4"), + + /** + * The 'RTS 5' literal object. + * + * + * @see #RTS_5_VALUE + * @generated + * @ordered + */ + RTS_5(3, "RTS_5", "RTS_5"); + + /** + * The 'RTS 2' literal value. + * + * + * @see #RTS_2 + * @model + * @generated + * @ordered + */ + public static final int RTS_2_VALUE = 0; + + /** + * The 'RTS 3' literal value. + * + * + * @see #RTS_3 + * @model + * @generated + * @ordered + */ + public static final int RTS_3_VALUE = 1; + + /** + * The 'RTS 4' literal value. + * + * + * @see #RTS_4 + * @model + * @generated + * @ordered + */ + public static final int RTS_4_VALUE = 2; + + /** + * The 'RTS 5' literal value. + * + * + * @see #RTS_5 + * @model + * @generated + * @ordered + */ + public static final int RTS_5_VALUE = 3; + + /** + * An array of all the 'Tax Office' enumerators. + * + * + * @generated + */ + private static final Tax_Office[] VALUES_ARRAY = + new Tax_Office[] { + RTS_2, + RTS_3, + RTS_4, + RTS_5, + }; + + /** + * A public read-only list of all the 'Tax Office' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Tax Office' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Tax_Office get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Tax_Office result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Tax Office' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Tax_Office getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Tax_Office result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Tax Office' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Tax_Office get(int value) { + switch (value) { + case RTS_2_VALUE: return RTS_2; + case RTS_3_VALUE: return RTS_3; + case RTS_4_VALUE: return RTS_4; + case RTS_5_VALUE: return RTS_5; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Tax_Office(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Tax_Office diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Payer.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Payer.java new file mode 100644 index 00000000..a58a0560 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Payer.java @@ -0,0 +1,104 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.common.util.EList; + +/** + * + * A representation of the model object 'Tax Payer'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Tax_Payer#getDependents Dependents}
            • + *
            • {@link TaxationWithRoot.Tax_Payer#getFrom_agent From agent}
            • + *
            • {@link TaxationWithRoot.Tax_Payer#getIncomes Incomes}
            • + *
            • {@link TaxationWithRoot.Tax_Payer#getFrom_law From law}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getTax_Payer() + * @model abstract="true" + * annotation="duplicates" + * @generated + */ +public interface Tax_Payer extends Physical_Person, Tax_Case, Root { + /** + * Returns the value of the 'Dependents' containment reference list. + * The list contents are of type {@link TaxationWithRoot.Dependent}. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Dependent#getResponsible_person Responsible person}'. + * + * + * @return the value of the 'Dependents' containment reference list. + * @see TaxationWithRoot.TaxationPackage#getTax_Payer_Dependents() + * @see TaxationWithRoot.Dependent#getResponsible_person + * @model opposite="responsible_person" containment="true" upper="6" ordered="false" + * @generated + */ + EList getDependents(); + + /** + * Returns the value of the 'From agent' containment reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.FromAgent#getTaxPayer Tax Payer}'. + * + * + * @return the value of the 'From agent' containment reference. + * @see #setFrom_agent(FromAgent) + * @see TaxationWithRoot.TaxationPackage#getTax_Payer_From_agent() + * @see TaxationWithRoot.FromAgent#getTaxPayer + * @model opposite="taxPayer" containment="true" required="true" + * @generated + */ + FromAgent getFrom_agent(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Payer#getFrom_agent From agent}' containment reference. + * + * + * @param value the new value of the 'From agent' containment reference. + * @see #getFrom_agent() + * @generated + */ + void setFrom_agent(FromAgent value); + + /** + * Returns the value of the 'Incomes' containment reference list. + * The list contents are of type {@link TaxationWithRoot.Income}. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Income#getTaxPayer Tax Payer}'. + * + * + * @return the value of the 'Incomes' containment reference list. + * @see TaxationWithRoot.TaxationPackage#getTax_Payer_Incomes() + * @see TaxationWithRoot.Income#getTaxPayer + * @model opposite="taxPayer" containment="true" required="true" ordered="false" + * @generated + */ + EList getIncomes(); + + /** + * Returns the value of the 'From law' containment reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.FromLaw#getTaxPayer Tax Payer}'. + * + * + * @return the value of the 'From law' containment reference. + * @see #setFrom_law(FromLaw) + * @see TaxationWithRoot.TaxationPackage#getTax_Payer_From_law() + * @see TaxationWithRoot.FromLaw#getTaxPayer + * @model opposite="taxPayer" containment="true" required="true" + * @generated + */ + FromLaw getFrom_law(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Payer#getFrom_law From law}' containment reference. + * + * + * @param value the new value of the 'From law' containment reference. + * @see #getFrom_law() + * @generated + */ + void setFrom_law(FromLaw value); + +} // Tax_Payer diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Property.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Property.java new file mode 100644 index 00000000..11c49f00 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Property.java @@ -0,0 +1,94 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * A representation of the model object 'Tax Property'. + * + * + *

            + * The following features are supported: + *

            + *
              + *
            • {@link TaxationWithRoot.Tax_Property#getStarting_year Starting year}
            • + *
            • {@link TaxationWithRoot.Tax_Property#getId10 Id10}
            • + *
            • {@link TaxationWithRoot.Tax_Property#getUnion_record Union record}
            • + *
            + * + * @see TaxationWithRoot.TaxationPackage#getTax_Property() + * @model + * @generated + */ +public interface Tax_Property extends EObject { + /** + * Returns the value of the 'Starting year' attribute. + * + * + * @return the value of the 'Starting year' attribute. + * @see #setStarting_year(int) + * @see TaxationWithRoot.TaxationPackage#getTax_Property_Starting_year() + * @model required="true" ordered="false" + * @generated + */ + int getStarting_year(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Property#getStarting_year Starting year}' attribute. + * + * + * @param value the new value of the 'Starting year' attribute. + * @see #getStarting_year() + * @generated + */ + void setStarting_year(int value); + + /** + * Returns the value of the 'Id10' attribute. + * + * + * @return the value of the 'Id10' attribute. + * @see #setId10(String) + * @see TaxationWithRoot.TaxationPackage#getTax_Property_Id10() + * @model id="true" required="true" ordered="false" + * @generated + */ + String getId10(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Property#getId10 Id10}' attribute. + * + * + * @param value the new value of the 'Id10' attribute. + * @see #getId10() + * @generated + */ + void setId10(String value); + + /** + * Returns the value of the 'Union record' container reference. + * It is bidirectional and its opposite is '{@link TaxationWithRoot.Legal_Union_Record#getProperties Properties}'. + * + * + * @return the value of the 'Union record' container reference. + * @see #setUnion_record(Legal_Union_Record) + * @see TaxationWithRoot.TaxationPackage#getTax_Property_Union_record() + * @see TaxationWithRoot.Legal_Union_Record#getProperties + * @model opposite="properties" required="true" transient="false" ordered="false" + * @generated + */ + Legal_Union_Record getUnion_record(); + + /** + * Sets the value of the '{@link TaxationWithRoot.Tax_Property#getUnion_record Union record}' container reference. + * + * + * @param value the new value of the 'Union record' container reference. + * @see #getUnion_record() + * @generated + */ + void setUnion_record(Legal_Union_Record value); + +} // Tax_Property diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/TaxationFactory.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/TaxationFactory.java new file mode 100644 index 00000000..1a4dd78f --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/TaxationFactory.java @@ -0,0 +1,510 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.ecore.EFactory; + +/** + * + * The Factory for the model. + * It provides a create method for each non-abstract class of the model. + * + * @see TaxationWithRoot.TaxationPackage + * @generated + */ +public interface TaxationFactory extends EFactory { + /** + * The singleton instance of the factory. + * + * + * @generated + */ + TaxationFactory eINSTANCE = TaxationWithRoot.impl.TaxationFactoryImpl.init(); + + /** + * Returns a new object of class 'Income Tax'. + * + * + * @return a new object of class 'Income Tax'. + * @generated + */ + Income_Tax createIncome_Tax(); + + /** + * Returns a new object of class 'Physical Person'. + * + * + * @return a new object of class 'Physical Person'. + * @generated + */ + Physical_Person createPhysical_Person(); + + /** + * Returns a new object of class 'Address'. + * + * + * @return a new object of class 'Address'. + * @generated + */ + Address createAddress(); + + /** + * Returns a new object of class 'Expense'. + * + * + * @return a new object of class 'Expense'. + * @generated + */ + Expense createExpense(); + + /** + * Returns a new object of class 'Dependent'. + * + * + * @return a new object of class 'Dependent'. + * @generated + */ + Dependent createDependent(); + + /** + * Returns a new object of class 'External Allowance'. + * + * + * @return a new object of class 'External Allowance'. + * @generated + */ + External_Allowance createExternal_Allowance(); + + /** + * Returns a new object of class 'Household'. + * + * + * @return a new object of class 'Household'. + * @generated + */ + Household createHousehold(); + + /** + * Returns a new object of class 'Tax Property'. + * + * + * @return a new object of class 'Tax Property'. + * @generated + */ + Tax_Property createTax_Property(); + + /** + * Returns a new object of class 'From Agent'. + * + * + * @return a new object of class 'From Agent'. + * @generated + */ + FromAgent createFromAgent(); + + /** + * Returns a new object of class 'Tax Card'. + * + * + * @return a new object of class 'Tax Card'. + * @generated + */ + Tax_Card createTax_Card(); + + /** + * Returns a new object of class 'Income Tax Credit'. + * + * + * @return a new object of class 'Income Tax Credit'. + * @generated + */ + Income_Tax_Credit createIncome_Tax_Credit(); + + /** + * Returns a new object of class 'Income Detail'. + * + * + * @return a new object of class 'Income Detail'. + * @generated + */ + Income_Detail createIncome_Detail(); + + /** + * Returns a new object of class 'From Law'. + * + * + * @return a new object of class 'From Law'. + * @generated + */ + FromLaw createFromLaw(); + + /** + * Returns a new object of class 'Fiscal Address'. + * + * + * @return a new object of class 'Fiscal Address'. + * @generated + */ + Fiscal_Address createFiscal_Address(); + + /** + * Returns a new object of class 'Habitual Address'. + * + * + * @return a new object of class 'Habitual Address'. + * @generated + */ + Habitual_Address createHabitual_Address(); + + /** + * Returns a new object of class 'Marriage Record'. + * + * + * @return a new object of class 'Marriage Record'. + * @generated + */ + Marriage_Record createMarriage_Record(); + + /** + * Returns a new object of class 'Non Resident Tax Payer'. + * + * + * @return a new object of class 'Non Resident Tax Payer'. + * @generated + */ + Non_Resident_Tax_Payer createNon_Resident_Tax_Payer(); + + /** + * Returns a new object of class 'Partnership Record'. + * + * + * @return a new object of class 'Partnership Record'. + * @generated + */ + Partnership_Record createPartnership_Record(); + + /** + * Returns a new object of class 'Resident Tax Payer'. + * + * + * @return a new object of class 'Resident Tax Payer'. + * @generated + */ + Resident_Tax_Payer createResident_Tax_Payer(); + + /** + * Returns a new object of class 'Trade and Business Income'. + * + * + * @return a new object of class 'Trade and Business Income'. + * @generated + */ + Trade_and_Business_Income createTrade_and_Business_Income(); + + /** + * Returns a new object of class 'Agriculture and Forestry Income'. + * + * + * @return a new object of class 'Agriculture and Forestry Income'. + * @generated + */ + Agriculture_and_Forestry_Income createAgriculture_and_Forestry_Income(); + + /** + * Returns a new object of class 'Pensions and Annuities Income'. + * + * + * @return a new object of class 'Pensions and Annuities Income'. + * @generated + */ + Pensions_and_Annuities_Income createPensions_and_Annuities_Income(); + + /** + * Returns a new object of class 'Capital and Investments Income'. + * + * + * @return a new object of class 'Capital and Investments Income'. + * @generated + */ + Capital_and_Investments_Income createCapital_and_Investments_Income(); + + /** + * Returns a new object of class 'Employment Income'. + * + * + * @return a new object of class 'Employment Income'. + * @generated + */ + Employment_Income createEmployment_Income(); + + /** + * Returns a new object of class 'Rentals and Leases Income'. + * + * + * @return a new object of class 'Rentals and Leases Income'. + * @generated + */ + Rentals_and_Leases_Income createRentals_and_Leases_Income(); + + /** + * Returns a new object of class 'Foreign Income'. + * + * + * @return a new object of class 'Foreign Income'. + * @generated + */ + Foreign_Income createForeign_Income(); + + /** + * Returns a new object of class 'Local Income'. + * + * + * @return a new object of class 'Local Income'. + * @generated + */ + Local_Income createLocal_Income(); + + /** + * Returns a new object of class 'CIM'. + * + * + * @return a new object of class 'CIM'. + * @generated + */ + CIM createCIM(); + + /** + * Returns a new object of class 'CIP'. + * + * + * @return a new object of class 'CIP'. + * @generated + */ + CIP createCIP(); + + /** + * Returns a new object of class 'CIS'. + * + * + * @return a new object of class 'CIS'. + * @generated + */ + CIS createCIS(); + + /** + * Returns a new object of class 'FD'. + * + * + * @return a new object of class 'FD'. + * @generated + */ + FD createFD(); + + /** + * Returns a new object of class 'Professional Expenses Deduction'. + * + * + * @return a new object of class 'Professional Expenses Deduction'. + * @generated + */ + Professional_Expenses_Deduction createProfessional_Expenses_Deduction(); + + /** + * Returns a new object of class 'FO'. + * + * + * @return a new object of class 'FO'. + * @generated + */ + FO createFO(); + + /** + * Returns a new object of class 'DS for Permanent Expense'. + * + * + * @return a new object of class 'DS for Permanent Expense'. + * @generated + */ + DS_for_Permanent_Expense createDS_for_Permanent_Expense(); + + /** + * Returns a new object of class 'DS'. + * + * + * @return a new object of class 'DS'. + * @generated + */ + DS createDS(); + + /** + * Returns a new object of class 'DS for Interest Expense'. + * + * + * @return a new object of class 'DS for Interest Expense'. + * @generated + */ + DS_for_Interest_Expense createDS_for_Interest_Expense(); + + /** + * Returns a new object of class 'DS for Health and Pension Insurance'. + * + * + * @return a new object of class 'DS for Health and Pension Insurance'. + * @generated + */ + DS_for_Health_and_Pension_Insurance createDS_for_Health_and_Pension_Insurance(); + + /** + * Returns a new object of class 'DS for Private Insurance and Plan'. + * + * + * @return a new object of class 'DS for Private Insurance and Plan'. + * @generated + */ + DS_for_Private_Insurance_and_Plan createDS_for_Private_Insurance_and_Plan(); + + /** + * Returns a new object of class 'DS for Loss Carryforward'. + * + * + * @return a new object of class 'DS for Loss Carryforward'. + * @generated + */ + DS_for_Loss_Carryforward createDS_for_Loss_Carryforward(); + + /** + * Returns a new object of class 'DS for Donation'. + * + * + * @return a new object of class 'DS for Donation'. + * @generated + */ + DS_for_Donation createDS_for_Donation(); + + /** + * Returns a new object of class 'Permanent Expense'. + * + * + * @return a new object of class 'Permanent Expense'. + * @generated + */ + Permanent_Expense createPermanent_Expense(); + + /** + * Returns a new object of class 'Special Expense DS'. + * + * + * @return a new object of class 'Special Expense DS'. + * @generated + */ + Special_Expense_DS createSpecial_Expense_DS(); + + /** + * Returns a new object of class 'Interest Expense'. + * + * + * @return a new object of class 'Interest Expense'. + * @generated + */ + Interest_Expense createInterest_Expense(); + + /** + * Returns a new object of class 'Private Insurance and Plan'. + * + * + * @return a new object of class 'Private Insurance and Plan'. + * @generated + */ + Private_Insurance_and_Plan createPrivate_Insurance_and_Plan(); + + /** + * Returns a new object of class 'Health and Pension Insurance'. + * + * + * @return a new object of class 'Health and Pension Insurance'. + * @generated + */ + Health_and_Pension_Insurance createHealth_and_Pension_Insurance(); + + /** + * Returns a new object of class 'Donation'. + * + * + * @return a new object of class 'Donation'. + * @generated + */ + Donation createDonation(); + + /** + * Returns a new object of class 'Loss Carryforward'. + * + * + * @return a new object of class 'Loss Carryforward'. + * @generated + */ + Loss_Carryforward createLoss_Carryforward(); + + /** + * Returns a new object of class 'Spousal Expense AC'. + * + * + * @return a new object of class 'Spousal Expense AC'. + * @generated + */ + Spousal_Expense_AC createSpousal_Expense_AC(); + + /** + * Returns a new object of class 'Extraordinary Expense CE'. + * + * + * @return a new object of class 'Extraordinary Expense CE'. + * @generated + */ + Extraordinary_Expense_CE createExtraordinary_Expense_CE(); + + /** + * Returns a new object of class 'Travel Expense FD'. + * + * + * @return a new object of class 'Travel Expense FD'. + * @generated + */ + Travel_Expense_FD createTravel_Expense_FD(); + + /** + * Returns a new object of class 'Professional Expense'. + * + * + * @return a new object of class 'Professional Expense'. + * @generated + */ + Professional_Expense createProfessional_Expense(); + + /** + * Returns a new object of class 'Miscellaneous Expense FO'. + * + * + * @return a new object of class 'Miscellaneous Expense FO'. + * @generated + */ + Miscellaneous_Expense_FO createMiscellaneous_Expense_FO(); + + /** + * Returns a new object of class 'Resource'. + * + * + * @return a new object of class 'Resource'. + * @generated + */ + Resource createResource(); + + /** + * Returns the package supported by this factory. + * + * + * @return the package supported by this factory. + * @generated + */ + TaxationPackage getTaxationPackage(); + +} //TaxationFactory diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/TaxationPackage.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/TaxationPackage.java new file mode 100644 index 00000000..2b14b619 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/TaxationPackage.java @@ -0,0 +1,10119 @@ +/** + */ +package TaxationWithRoot; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EEnum; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +/** + * + * The Package for the model. + * It contains accessors for the meta objects to represent + *
              + *
            • each class,
            • + *
            • each feature of each class,
            • + *
            • each operation of each class,
            • + *
            • each enum,
            • + *
            • and each data type
            • + *
            + * + * @see TaxationWithRoot.TaxationFactory + * @model kind="package" + * annotation="http://www.eclipse.org/OCL/Import ecore='http://www.eclipse.org/emf/2002/Ecore'" + * @generated + */ +public interface TaxationPackage extends EPackage { + /** + * The package name. + * + * + * @generated + */ + String eNAME = "TaxationWithRoot"; + + /** + * The package namespace URI. + * + * + * @generated + */ + String eNS_URI = "http:///TaxCardWithRoot.ecore"; + + /** + * The package namespace name. + * + * + * @generated + */ + String eNS_PREFIX = "TaxCardWithRoot"; + + /** + * The singleton instance of the package. + * + * + * @generated + */ + TaxationPackage eINSTANCE = TaxationWithRoot.impl.TaxationPackageImpl.init(); + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.ConstantsImpl Constants}' class. + * + * + * @see TaxationWithRoot.impl.ConstantsImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getConstants() + * @generated + */ + int CONSTANTS = 0; + + /** + * The feature id for the 'MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD = 0; + + /** + * The feature id for the 'MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE = 1; + + /** + * The feature id for the 'MINIMUM SALARY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MINIMUM_SALARY = 2; + + /** + * The feature id for the 'FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION = 3; + + /** + * The feature id for the 'MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS = 4; + + /** + * The feature id for the 'MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS = 5; + + /** + * The feature id for the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC = 6; + + /** + * The feature id for the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE = 7; + + /** + * The feature id for the 'MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = 8; + + /** + * The feature id for the 'MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = 9; + + /** + * The feature id for the 'MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = 10; + + /** + * The feature id for the 'FLAT RATE CIM DAILY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_CIM_DAILY = 11; + + /** + * The feature id for the 'FLAT RATE CIM MONTHLY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_CIM_MONTHLY = 12; + + /** + * The feature id for the 'FLAT RATE CIM YEARLY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_CIM_YEARLY = 13; + + /** + * The feature id for the 'FLAT RATE CIP DAILY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_CIP_DAILY = 14; + + /** + * The feature id for the 'FLAT RATE CIP MONTHLY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_CIP_MONTHLY = 15; + + /** + * The feature id for the 'FLAT RATE CIP YEARLY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_CIP_YEARLY = 16; + + /** + * The feature id for the 'FLAT RATE CIS DAILY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_CIS_DAILY = 17; + + /** + * The feature id for the 'FLAT RATE CIS MONTHLY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_CIS_MONTHLY = 18; + + /** + * The feature id for the 'FLAT RATE CIS YEARLY' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_CIS_YEARLY = 19; + + /** + * The feature id for the 'FLAT RATE FOR TRAVEL EXPENSE PER UNIT' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT = 20; + + /** + * The feature id for the 'MAXIMUM DEDUCTIBLE AMOUNT FOR DS' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS = 21; + + /** + * The feature id for the 'FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE = 22; + + /** + * The feature id for the 'DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE = 23; + + /** + * The feature id for the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE' attribute. + * + * + * @generated + * @ordered + */ + int CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE = 24; + + /** + * The number of structural features of the 'Constants' class. + * + * + * @generated + * @ordered + */ + int CONSTANTS_FEATURE_COUNT = 25; + + /** + * The number of operations of the 'Constants' class. + * + * + * @generated + * @ordered + */ + int CONSTANTS_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Income_TaxImpl Income Tax}' class. + * + * + * @see TaxationWithRoot.impl.Income_TaxImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getIncome_Tax() + * @generated + */ + int INCOME_TAX = 1; + + /** + * The feature id for the 'Tax Payer' reference. + * + * + * @generated + * @ordered + */ + int INCOME_TAX__TAX_PAYER = 0; + + /** + * The feature id for the 'Tax amount' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TAX__TAX_AMOUNT = 1; + + /** + * The feature id for the 'Tax year' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TAX__TAX_YEAR = 2; + + /** + * The feature id for the 'Id6' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TAX__ID6 = 3; + + /** + * The number of structural features of the 'Income Tax' class. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_FEATURE_COUNT = 4; + + /** + * The number of operations of the 'Income Tax' class. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Physical_PersonImpl Physical Person}' class. + * + * + * @see TaxationWithRoot.impl.Physical_PersonImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getPhysical_Person() + * @generated + */ + int PHYSICAL_PERSON = 3; + + /** + * The feature id for the 'SS No' attribute. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__SS_NO = 0; + + /** + * The feature id for the 'Addresses' reference list. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__ADDRESSES = 1; + + /** + * The feature id for the 'Birth year' attribute. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__BIRTH_YEAR = 2; + + /** + * The feature id for the 'Disability percentage' attribute. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__DISABILITY_PERCENTAGE = 3; + + /** + * The feature id for the 'Disability type' attribute. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__DISABILITY_TYPE = 4; + + /** + * The feature id for the 'Birth month' attribute. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__BIRTH_MONTH = 5; + + /** + * The feature id for the 'Birth day' attribute. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__BIRTH_DAY = 6; + + /** + * The feature id for the 'Expenses' reference list. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__EXPENSES = 7; + + /** + * The feature id for the 'Is widower' attribute. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON__IS_WIDOWER = 8; + + /** + * The number of structural features of the 'Physical Person' class. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON_FEATURE_COUNT = 9; + + /** + * The number of operations of the 'Physical Person' class. + * + * + * @generated + * @ordered + */ + int PHYSICAL_PERSON_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Tax_PayerImpl Tax Payer}' class. + * + * + * @see TaxationWithRoot.impl.Tax_PayerImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getTax_Payer() + * @generated + */ + int TAX_PAYER = 2; + + /** + * The feature id for the 'SS No' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__SS_NO = PHYSICAL_PERSON__SS_NO; + + /** + * The feature id for the 'Addresses' reference list. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__ADDRESSES = PHYSICAL_PERSON__ADDRESSES; + + /** + * The feature id for the 'Birth year' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__BIRTH_YEAR = PHYSICAL_PERSON__BIRTH_YEAR; + + /** + * The feature id for the 'Disability percentage' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__DISABILITY_PERCENTAGE = PHYSICAL_PERSON__DISABILITY_PERCENTAGE; + + /** + * The feature id for the 'Disability type' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__DISABILITY_TYPE = PHYSICAL_PERSON__DISABILITY_TYPE; + + /** + * The feature id for the 'Birth month' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__BIRTH_MONTH = PHYSICAL_PERSON__BIRTH_MONTH; + + /** + * The feature id for the 'Birth day' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__BIRTH_DAY = PHYSICAL_PERSON__BIRTH_DAY; + + /** + * The feature id for the 'Expenses' reference list. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__EXPENSES = PHYSICAL_PERSON__EXPENSES; + + /** + * The feature id for the 'Is widower' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__IS_WIDOWER = PHYSICAL_PERSON__IS_WIDOWER; + + /** + * The feature id for the 'Dependents' containment reference list. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__DEPENDENTS = PHYSICAL_PERSON_FEATURE_COUNT + 0; + + /** + * The feature id for the 'From agent' containment reference. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__FROM_AGENT = PHYSICAL_PERSON_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Incomes' containment reference list. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__INCOMES = PHYSICAL_PERSON_FEATURE_COUNT + 2; + + /** + * The feature id for the 'From law' containment reference. + * + * + * @generated + * @ordered + */ + int TAX_PAYER__FROM_LAW = PHYSICAL_PERSON_FEATURE_COUNT + 3; + + /** + * The number of structural features of the 'Tax Payer' class. + * + * + * @generated + * @ordered + */ + int TAX_PAYER_FEATURE_COUNT = PHYSICAL_PERSON_FEATURE_COUNT + 4; + + /** + * The number of operations of the 'Tax Payer' class. + * + * + * @generated + * @ordered + */ + int TAX_PAYER_OPERATION_COUNT = PHYSICAL_PERSON_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.RootImpl Root}' class. + * + * + * @see TaxationWithRoot.impl.RootImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getRoot() + * @generated + */ + int ROOT = 59; + + /** + * The number of structural features of the 'Root' class. + * + * + * @generated + * @ordered + */ + int ROOT_FEATURE_COUNT = 0; + + /** + * The number of operations of the 'Root' class. + * + * + * @generated + * @ordered + */ + int ROOT_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.AddressImpl Address}' class. + * + * + * @see TaxationWithRoot.impl.AddressImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getAddress() + * @generated + */ + int ADDRESS = 4; + + /** + * The feature id for the 'Country' attribute. + * + * + * @generated + * @ordered + */ + int ADDRESS__COUNTRY = ROOT_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Street' attribute. + * + * + * @generated + * @ordered + */ + int ADDRESS__STREET = ROOT_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Zip Code' attribute. + * + * + * @generated + * @ordered + */ + int ADDRESS__ZIP_CODE = ROOT_FEATURE_COUNT + 2; + + /** + * The feature id for the 'City' attribute. + * + * + * @generated + * @ordered + */ + int ADDRESS__CITY = ROOT_FEATURE_COUNT + 3; + + /** + * The feature id for the 'Id2' attribute. + * + * + * @generated + * @ordered + */ + int ADDRESS__ID2 = ROOT_FEATURE_COUNT + 4; + + /** + * The feature id for the 'Tax Payer' reference list. + * + * + * @generated + * @ordered + */ + int ADDRESS__TAX_PAYER = ROOT_FEATURE_COUNT + 5; + + /** + * The number of structural features of the 'Address' class. + * + * + * @generated + * @ordered + */ + int ADDRESS_FEATURE_COUNT = ROOT_FEATURE_COUNT + 6; + + /** + * The number of operations of the 'Address' class. + * + * + * @generated + * @ordered + */ + int ADDRESS_OPERATION_COUNT = ROOT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.ExpenseImpl Expense}' class. + * + * + * @see TaxationWithRoot.impl.ExpenseImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getExpense() + * @generated + */ + int EXPENSE = 5; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int EXPENSE__DECLARED_AMOUNT = 0; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int EXPENSE__EXPENSE_PURPOSE = 1; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int EXPENSE__DEPENDENT = 2; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int EXPENSE__FROM_AGENT = 3; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int EXPENSE__INCOME = 4; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int EXPENSE__ID4 = 5; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int EXPENSE__BENEFICIARY = 6; + + /** + * The number of structural features of the 'Expense' class. + * + * + * @generated + * @ordered + */ + int EXPENSE_FEATURE_COUNT = 7; + + /** + * The number of operations of the 'Expense' class. + * + * + * @generated + * @ordered + */ + int EXPENSE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.DependentImpl Dependent}' class. + * + * + * @see TaxationWithRoot.impl.DependentImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDependent() + * @generated + */ + int DEPENDENT = 6; + + /** + * The feature id for the 'SS No' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__SS_NO = PHYSICAL_PERSON__SS_NO; + + /** + * The feature id for the 'Addresses' reference list. + * + * + * @generated + * @ordered + */ + int DEPENDENT__ADDRESSES = PHYSICAL_PERSON__ADDRESSES; + + /** + * The feature id for the 'Birth year' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__BIRTH_YEAR = PHYSICAL_PERSON__BIRTH_YEAR; + + /** + * The feature id for the 'Disability percentage' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__DISABILITY_PERCENTAGE = PHYSICAL_PERSON__DISABILITY_PERCENTAGE; + + /** + * The feature id for the 'Disability type' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__DISABILITY_TYPE = PHYSICAL_PERSON__DISABILITY_TYPE; + + /** + * The feature id for the 'Birth month' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__BIRTH_MONTH = PHYSICAL_PERSON__BIRTH_MONTH; + + /** + * The feature id for the 'Birth day' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__BIRTH_DAY = PHYSICAL_PERSON__BIRTH_DAY; + + /** + * The feature id for the 'Expenses' reference list. + * + * + * @generated + * @ordered + */ + int DEPENDENT__EXPENSES = PHYSICAL_PERSON__EXPENSES; + + /** + * The feature id for the 'Is widower' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__IS_WIDOWER = PHYSICAL_PERSON__IS_WIDOWER; + + /** + * The feature id for the 'Dependent type' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__DEPENDENT_TYPE = PHYSICAL_PERSON_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Responsible person' container reference. + * + * + * @generated + * @ordered + */ + int DEPENDENT__RESPONSIBLE_PERSON = PHYSICAL_PERSON_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Continued studies' attribute. + * + * + * @generated + * @ordered + */ + int DEPENDENT__CONTINUED_STUDIES = PHYSICAL_PERSON_FEATURE_COUNT + 2; + + /** + * The feature id for the 'Allowances' containment reference. + * + * + * @generated + * @ordered + */ + int DEPENDENT__ALLOWANCES = PHYSICAL_PERSON_FEATURE_COUNT + 3; + + /** + * The feature id for the 'Household' container reference. + * + * + * @generated + * @ordered + */ + int DEPENDENT__HOUSEHOLD = PHYSICAL_PERSON_FEATURE_COUNT + 4; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int DEPENDENT__FROM_AGENT = PHYSICAL_PERSON_FEATURE_COUNT + 5; + + /** + * The feature id for the 'Expense' reference list. + * + * + * @generated + * @ordered + */ + int DEPENDENT__EXPENSE = PHYSICAL_PERSON_FEATURE_COUNT + 6; + + /** + * The number of structural features of the 'Dependent' class. + * + * + * @generated + * @ordered + */ + int DEPENDENT_FEATURE_COUNT = PHYSICAL_PERSON_FEATURE_COUNT + 7; + + /** + * The number of operations of the 'Dependent' class. + * + * + * @generated + * @ordered + */ + int DEPENDENT_OPERATION_COUNT = PHYSICAL_PERSON_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.External_AllowanceImpl External Allowance}' class. + * + * + * @see TaxationWithRoot.impl.External_AllowanceImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getExternal_Allowance() + * @generated + */ + int EXTERNAL_ALLOWANCE = 7; + + /** + * The feature id for the 'Grantor' attribute. + * + * + * @generated + * @ordered + */ + int EXTERNAL_ALLOWANCE__GRANTOR = 0; + + /** + * The feature id for the 'Starting year' attribute. + * + * + * @generated + * @ordered + */ + int EXTERNAL_ALLOWANCE__STARTING_YEAR = 1; + + /** + * The feature id for the 'Ending year' attribute. + * + * + * @generated + * @ordered + */ + int EXTERNAL_ALLOWANCE__ENDING_YEAR = 2; + + /** + * The feature id for the 'Reciver' reference. + * + * + * @generated + * @ordered + */ + int EXTERNAL_ALLOWANCE__RECIVER = 3; + + /** + * The feature id for the 'Id5' attribute. + * + * + * @generated + * @ordered + */ + int EXTERNAL_ALLOWANCE__ID5 = 4; + + /** + * The feature id for the 'Person' container reference. + * + * + * @generated + * @ordered + */ + int EXTERNAL_ALLOWANCE__PERSON = 5; + + /** + * The number of structural features of the 'External Allowance' class. + * + * + * @generated + * @ordered + */ + int EXTERNAL_ALLOWANCE_FEATURE_COUNT = 6; + + /** + * The number of operations of the 'External Allowance' class. + * + * + * @generated + * @ordered + */ + int EXTERNAL_ALLOWANCE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.Tax_Case Tax Case}' class. + * + * + * @see TaxationWithRoot.Tax_Case + * @see TaxationWithRoot.impl.TaxationPackageImpl#getTax_Case() + * @generated + */ + int TAX_CASE = 11; + + /** + * The number of structural features of the 'Tax Case' class. + * + * + * @generated + * @ordered + */ + int TAX_CASE_FEATURE_COUNT = ROOT_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Tax Case' class. + * + * + * @generated + * @ordered + */ + int TAX_CASE_OPERATION_COUNT = ROOT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.HouseholdImpl Household}' class. + * + * + * @see TaxationWithRoot.impl.HouseholdImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getHousehold() + * @generated + */ + int HOUSEHOLD = 8; + + /** + * The feature id for the 'Parents' containment reference. + * + * + * @generated + * @ordered + */ + int HOUSEHOLD__PARENTS = TAX_CASE_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Id1' attribute. + * + * + * @generated + * @ordered + */ + int HOUSEHOLD__ID1 = TAX_CASE_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Children' containment reference list. + * + * + * @generated + * @ordered + */ + int HOUSEHOLD__CHILDREN = TAX_CASE_FEATURE_COUNT + 2; + + /** + * The number of structural features of the 'Household' class. + * + * + * @generated + * @ordered + */ + int HOUSEHOLD_FEATURE_COUNT = TAX_CASE_FEATURE_COUNT + 3; + + /** + * The number of operations of the 'Household' class. + * + * + * @generated + * @ordered + */ + int HOUSEHOLD_OPERATION_COUNT = TAX_CASE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Legal_Union_RecordImpl Legal Union Record}' class. + * + * + * @see TaxationWithRoot.impl.Legal_Union_RecordImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getLegal_Union_Record() + * @generated + */ + int LEGAL_UNION_RECORD = 9; + + /** + * The feature id for the 'Start year' attribute. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD__START_YEAR = 0; + + /** + * The feature id for the 'End year' attribute. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD__END_YEAR = 1; + + /** + * The feature id for the 'Separation cause' attribute. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD__SEPARATION_CAUSE = 2; + + /** + * The feature id for the 'Individual A' containment reference. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD__INDIVIDUAL_A = 3; + + /** + * The feature id for the 'Individual B' containment reference list. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD__INDIVIDUAL_B = 4; + + /** + * The feature id for the 'Properties' containment reference list. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD__PROPERTIES = 5; + + /** + * The feature id for the 'Mutual agreement' attribute. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD__MUTUAL_AGREEMENT = 6; + + /** + * The feature id for the 'Id9' attribute. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD__ID9 = 7; + + /** + * The feature id for the 'Household' container reference. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD__HOUSEHOLD = 8; + + /** + * The number of structural features of the 'Legal Union Record' class. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD_FEATURE_COUNT = 9; + + /** + * The number of operations of the 'Legal Union Record' class. + * + * + * @generated + * @ordered + */ + int LEGAL_UNION_RECORD_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Tax_PropertyImpl Tax Property}' class. + * + * + * @see TaxationWithRoot.impl.Tax_PropertyImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getTax_Property() + * @generated + */ + int TAX_PROPERTY = 10; + + /** + * The feature id for the 'Starting year' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PROPERTY__STARTING_YEAR = 0; + + /** + * The feature id for the 'Id10' attribute. + * + * + * @generated + * @ordered + */ + int TAX_PROPERTY__ID10 = 1; + + /** + * The feature id for the 'Union record' container reference. + * + * + * @generated + * @ordered + */ + int TAX_PROPERTY__UNION_RECORD = 2; + + /** + * The number of structural features of the 'Tax Property' class. + * + * + * @generated + * @ordered + */ + int TAX_PROPERTY_FEATURE_COUNT = 3; + + /** + * The number of operations of the 'Tax Property' class. + * + * + * @generated + * @ordered + */ + int TAX_PROPERTY_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.FromAgentImpl From Agent}' class. + * + * + * @see TaxationWithRoot.impl.FromAgentImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getFromAgent() + * @generated + */ + int FROM_AGENT = 12; + + /** + * The feature id for the 'Tax Payer' container reference. + * + * + * @generated + * @ordered + */ + int FROM_AGENT__TAX_PAYER = 0; + + /** + * The feature id for the 'Is dependent eligible for CE Not In Houshold Children Care' attribute. + * + * + * @generated + * @ordered + */ + int FROM_AGENT__IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE = 1; + + /** + * The feature id for the 'Expense' reference. + * + * + * @generated + * @ordered + */ + int FROM_AGENT__EXPENSE = 2; + + /** + * The feature id for the 'Is eligible debt' attribute. + * + * + * @generated + * @ordered + */ + int FROM_AGENT__IS_ELIGIBLE_DEBT = 3; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int FROM_AGENT__DEPENDENT = 4; + + /** + * The number of structural features of the 'From Agent' class. + * + * + * @generated + * @ordered + */ + int FROM_AGENT_FEATURE_COUNT = 5; + + /** + * The number of operations of the 'From Agent' class. + * + * + * @generated + * @ordered + */ + int FROM_AGENT_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.IncomeImpl Income}' class. + * + * + * @see TaxationWithRoot.impl.IncomeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getIncome() + * @generated + */ + int INCOME = 13; + + /** + * The feature id for the 'Income amount' attribute. + * + * + * @generated + * @ordered + */ + int INCOME__INCOME_AMOUNT = 0; + + /** + * The feature id for the 'Income type' containment reference. + * + * + * @generated + * @ordered + */ + int INCOME__INCOME_TYPE = 1; + + /** + * The feature id for the 'Tax card' containment reference. + * + * + * @generated + * @ordered + */ + int INCOME__TAX_CARD = 2; + + /** + * The feature id for the 'Tax liability' attribute. + * + * + * @generated + * @ordered + */ + int INCOME__TAX_LIABILITY = 3; + + /** + * The feature id for the 'Tax Payer' container reference. + * + * + * @generated + * @ordered + */ + int INCOME__TAX_PAYER = 4; + + /** + * The feature id for the 'Details' containment reference list. + * + * + * @generated + * @ordered + */ + int INCOME__DETAILS = 5; + + /** + * The feature id for the 'Num' attribute. + * + * + * @generated + * @ordered + */ + int INCOME__NUM = 6; + + /** + * The feature id for the 'Expenses' containment reference list. + * + * + * @generated + * @ordered + */ + int INCOME__EXPENSES = 7; + + /** + * The number of structural features of the 'Income' class. + * + * + * @generated + * @ordered + */ + int INCOME_FEATURE_COUNT = 8; + + /** + * The number of operations of the 'Income' class. + * + * + * @generated + * @ordered + */ + int INCOME_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Income_TypeImpl Income Type}' class. + * + * + * @see TaxationWithRoot.impl.Income_TypeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getIncome_Type() + * @generated + */ + int INCOME_TYPE = 14; + + /** + * The feature id for the 'Id8' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TYPE__ID8 = 0; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int INCOME_TYPE__INCOME = 1; + + /** + * The number of structural features of the 'Income Type' class. + * + * + * @generated + * @ordered + */ + int INCOME_TYPE_FEATURE_COUNT = 2; + + /** + * The number of operations of the 'Income Type' class. + * + * + * @generated + * @ordered + */ + int INCOME_TYPE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Tax_CardImpl Tax Card}' class. + * + * + * @see TaxationWithRoot.impl.Tax_CardImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getTax_Card() + * @generated + */ + int TAX_CARD = 15; + + /** + * The feature id for the 'Card identifier' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__CARD_IDENTIFIER = 0; + + /** + * The feature id for the 'Tax office' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__TAX_OFFICE = 1; + + /** + * The feature id for the 'Percentage of witholding' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__PERCENTAGE_OF_WITHOLDING = 2; + + /** + * The feature id for the 'Tax payers name surname' attribute list. + * + * + * @generated + * @ordered + */ + int TAX_CARD__TAX_PAYERS_NAME_SURNAME = 3; + + /** + * The feature id for the 'Tax payers partner name surname' attribute list. + * + * + * @generated + * @ordered + */ + int TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME = 4; + + /** + * The feature id for the 'Tax payers address' reference. + * + * + * @generated + * @ordered + */ + int TAX_CARD__TAX_PAYERS_ADDRESS = 5; + + /** + * The feature id for the 'Jobs Employer SS No' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__JOBS_EMPLOYER_SS_NO = 6; + + /** + * The feature id for the 'Jobs employers name' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__JOBS_EMPLOYERS_NAME = 7; + + /** + * The feature id for the 'Jobs activity type' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__JOBS_ACTIVITY_TYPE = 8; + + /** + * The feature id for the 'Jobs place of work' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__JOBS_PLACE_OF_WORK = 9; + + /** + * The feature id for the 'Deduction FD daily' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_FD_DAILY = 10; + + /** + * The feature id for the 'Deduction FD monthly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_FD_MONTHLY = 11; + + /** + * The feature id for the 'Deduction AC daily' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_AC_DAILY = 12; + + /** + * The feature id for the 'Deduction AC monthly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_AC_MONTHLY = 13; + + /** + * The feature id for the 'Deduction AC yearly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_AC_YEARLY = 14; + + /** + * The feature id for the 'Deduction CE daily' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_CE_DAILY = 15; + + /** + * The feature id for the 'Deduction CE monthly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_CE_MONTHLY = 16; + + /** + * The feature id for the 'Deduction CE yearly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_CE_YEARLY = 17; + + /** + * The feature id for the 'Deduction DS daily' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_DS_DAILY = 18; + + /** + * The feature id for the 'Deduction DS monthly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_DS_MONTHLY = 19; + + /** + * The feature id for the 'Deduction FO daily' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_FO_DAILY = 20; + + /** + * The feature id for the 'Deduction FO monthly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_FO_MONTHLY = 21; + + /** + * The feature id for the 'Deduction FO yearly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_FO_YEARLY = 22; + + /** + * The feature id for the 'Credit CIS daily' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__CREDIT_CIS_DAILY = 23; + + /** + * The feature id for the 'Credit CIS monthly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__CREDIT_CIS_MONTHLY = 24; + + /** + * The feature id for the 'Credit CIM daily' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__CREDIT_CIM_DAILY = 25; + + /** + * The feature id for the 'Validity' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__VALIDITY = 26; + + /** + * The feature id for the 'Income Tax Credit' reference list. + * + * + * @generated + * @ordered + */ + int TAX_CARD__INCOME_TAX_CREDIT = 27; + + /** + * The feature id for the 'Previous' reference. + * + * + * @generated + * @ordered + */ + int TAX_CARD__PREVIOUS = 28; + + /** + * The feature id for the 'Current tax card' reference. + * + * + * @generated + * @ordered + */ + int TAX_CARD__CURRENT_TAX_CARD = 29; + + /** + * The feature id for the 'Credit CIM yearly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__CREDIT_CIM_YEARLY = 30; + + /** + * The feature id for the 'Deduction DS Alimony yearly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY = 31; + + /** + * The feature id for the 'Deduction DS Debt yearly' attribute. + * + * + * @generated + * @ordered + */ + int TAX_CARD__DEDUCTION_DS_DEBT_YEARLY = 32; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int TAX_CARD__INCOME = 33; + + /** + * The number of structural features of the 'Tax Card' class. + * + * + * @generated + * @ordered + */ + int TAX_CARD_FEATURE_COUNT = 34; + + /** + * The number of operations of the 'Tax Card' class. + * + * + * @generated + * @ordered + */ + int TAX_CARD_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Income_Tax_CreditImpl Income Tax Credit}' class. + * + * + * @see TaxationWithRoot.impl.Income_Tax_CreditImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getIncome_Tax_Credit() + * @generated + */ + int INCOME_TAX_CREDIT = 16; + + /** + * The feature id for the 'Granted By' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT__GRANTED_BY = ROOT_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Tax Payer' reference. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT__TAX_PAYER = ROOT_FEATURE_COUNT + 1; + + /** + * The feature id for the 'Tax year' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT__TAX_YEAR = ROOT_FEATURE_COUNT + 2; + + /** + * The feature id for the 'Yearly' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT__YEARLY = ROOT_FEATURE_COUNT + 3; + + /** + * The feature id for the 'Monthly' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT__MONTHLY = ROOT_FEATURE_COUNT + 4; + + /** + * The feature id for the 'Daily' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT__DAILY = ROOT_FEATURE_COUNT + 5; + + /** + * The feature id for the 'Id7' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT__ID7 = ROOT_FEATURE_COUNT + 6; + + /** + * The feature id for the 'Taxation Frame' reference. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT__TAXATION_FRAME = ROOT_FEATURE_COUNT + 7; + + /** + * The number of structural features of the 'Income Tax Credit' class. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT_FEATURE_COUNT = ROOT_FEATURE_COUNT + 8; + + /** + * The number of operations of the 'Income Tax Credit' class. + * + * + * @generated + * @ordered + */ + int INCOME_TAX_CREDIT_OPERATION_COUNT = ROOT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Income_DetailImpl Income Detail}' class. + * + * + * @see TaxationWithRoot.impl.Income_DetailImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getIncome_Detail() + * @generated + */ + int INCOME_DETAIL = 17; + + /** + * The feature id for the 'Amount' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_DETAIL__AMOUNT = 0; + + /** + * The feature id for the 'Is worked' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_DETAIL__IS_WORKED = 1; + + /** + * The feature id for the 'Distance' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_DETAIL__DISTANCE = 2; + + /** + * The feature id for the 'Worked days' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_DETAIL__WORKED_DAYS = 3; + + /** + * The feature id for the 'Is contributing CNS' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_DETAIL__IS_CONTRIBUTING_CNS = 4; + + /** + * The feature id for the 'Id5' attribute. + * + * + * @generated + * @ordered + */ + int INCOME_DETAIL__ID5 = 5; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int INCOME_DETAIL__INCOME = 6; + + /** + * The number of structural features of the 'Income Detail' class. + * + * + * @generated + * @ordered + */ + int INCOME_DETAIL_FEATURE_COUNT = 7; + + /** + * The number of operations of the 'Income Detail' class. + * + * + * @generated + * @ordered + */ + int INCOME_DETAIL_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.FromLawImpl From Law}' class. + * + * + * @see TaxationWithRoot.impl.FromLawImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getFromLaw() + * @generated + */ + int FROM_LAW = 18; + + /** + * The feature id for the 'Id' attribute. + * + * + * @generated + * @ordered + */ + int FROM_LAW__ID = 0; + + /** + * The feature id for the 'Tax Payer' container reference. + * + * + * @generated + * @ordered + */ + int FROM_LAW__TAX_PAYER = 1; + + /** + * The number of structural features of the 'From Law' class. + * + * + * @generated + * @ordered + */ + int FROM_LAW_FEATURE_COUNT = 2; + + /** + * The number of operations of the 'From Law' class. + * + * + * @generated + * @ordered + */ + int FROM_LAW_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Fiscal_AddressImpl Fiscal Address}' class. + * + * + * @see TaxationWithRoot.impl.Fiscal_AddressImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getFiscal_Address() + * @generated + */ + int FISCAL_ADDRESS = 19; + + /** + * The feature id for the 'Country' attribute. + * + * + * @generated + * @ordered + */ + int FISCAL_ADDRESS__COUNTRY = ADDRESS__COUNTRY; + + /** + * The feature id for the 'Street' attribute. + * + * + * @generated + * @ordered + */ + int FISCAL_ADDRESS__STREET = ADDRESS__STREET; + + /** + * The feature id for the 'Zip Code' attribute. + * + * + * @generated + * @ordered + */ + int FISCAL_ADDRESS__ZIP_CODE = ADDRESS__ZIP_CODE; + + /** + * The feature id for the 'City' attribute. + * + * + * @generated + * @ordered + */ + int FISCAL_ADDRESS__CITY = ADDRESS__CITY; + + /** + * The feature id for the 'Id2' attribute. + * + * + * @generated + * @ordered + */ + int FISCAL_ADDRESS__ID2 = ADDRESS__ID2; + + /** + * The feature id for the 'Tax Payer' reference list. + * + * + * @generated + * @ordered + */ + int FISCAL_ADDRESS__TAX_PAYER = ADDRESS__TAX_PAYER; + + /** + * The number of structural features of the 'Fiscal Address' class. + * + * + * @generated + * @ordered + */ + int FISCAL_ADDRESS_FEATURE_COUNT = ADDRESS_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Fiscal Address' class. + * + * + * @generated + * @ordered + */ + int FISCAL_ADDRESS_OPERATION_COUNT = ADDRESS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Habitual_AddressImpl Habitual Address}' class. + * + * + * @see TaxationWithRoot.impl.Habitual_AddressImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getHabitual_Address() + * @generated + */ + int HABITUAL_ADDRESS = 20; + + /** + * The feature id for the 'Country' attribute. + * + * + * @generated + * @ordered + */ + int HABITUAL_ADDRESS__COUNTRY = ADDRESS__COUNTRY; + + /** + * The feature id for the 'Street' attribute. + * + * + * @generated + * @ordered + */ + int HABITUAL_ADDRESS__STREET = ADDRESS__STREET; + + /** + * The feature id for the 'Zip Code' attribute. + * + * + * @generated + * @ordered + */ + int HABITUAL_ADDRESS__ZIP_CODE = ADDRESS__ZIP_CODE; + + /** + * The feature id for the 'City' attribute. + * + * + * @generated + * @ordered + */ + int HABITUAL_ADDRESS__CITY = ADDRESS__CITY; + + /** + * The feature id for the 'Id2' attribute. + * + * + * @generated + * @ordered + */ + int HABITUAL_ADDRESS__ID2 = ADDRESS__ID2; + + /** + * The feature id for the 'Tax Payer' reference list. + * + * + * @generated + * @ordered + */ + int HABITUAL_ADDRESS__TAX_PAYER = ADDRESS__TAX_PAYER; + + /** + * The number of structural features of the 'Habitual Address' class. + * + * + * @generated + * @ordered + */ + int HABITUAL_ADDRESS_FEATURE_COUNT = ADDRESS_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Habitual Address' class. + * + * + * @generated + * @ordered + */ + int HABITUAL_ADDRESS_OPERATION_COUNT = ADDRESS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Marriage_RecordImpl Marriage Record}' class. + * + * + * @see TaxationWithRoot.impl.Marriage_RecordImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getMarriage_Record() + * @generated + */ + int MARRIAGE_RECORD = 21; + + /** + * The feature id for the 'Start year' attribute. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD__START_YEAR = LEGAL_UNION_RECORD__START_YEAR; + + /** + * The feature id for the 'End year' attribute. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD__END_YEAR = LEGAL_UNION_RECORD__END_YEAR; + + /** + * The feature id for the 'Separation cause' attribute. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD__SEPARATION_CAUSE = LEGAL_UNION_RECORD__SEPARATION_CAUSE; + + /** + * The feature id for the 'Individual A' containment reference. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD__INDIVIDUAL_A = LEGAL_UNION_RECORD__INDIVIDUAL_A; + + /** + * The feature id for the 'Individual B' containment reference list. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD__INDIVIDUAL_B = LEGAL_UNION_RECORD__INDIVIDUAL_B; + + /** + * The feature id for the 'Properties' containment reference list. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD__PROPERTIES = LEGAL_UNION_RECORD__PROPERTIES; + + /** + * The feature id for the 'Mutual agreement' attribute. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD__MUTUAL_AGREEMENT = LEGAL_UNION_RECORD__MUTUAL_AGREEMENT; + + /** + * The feature id for the 'Id9' attribute. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD__ID9 = LEGAL_UNION_RECORD__ID9; + + /** + * The feature id for the 'Household' container reference. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD__HOUSEHOLD = LEGAL_UNION_RECORD__HOUSEHOLD; + + /** + * The number of structural features of the 'Marriage Record' class. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD_FEATURE_COUNT = LEGAL_UNION_RECORD_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Marriage Record' class. + * + * + * @generated + * @ordered + */ + int MARRIAGE_RECORD_OPERATION_COUNT = LEGAL_UNION_RECORD_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Non_Resident_Tax_PayerImpl Non Resident Tax Payer}' class. + * + * + * @see TaxationWithRoot.impl.Non_Resident_Tax_PayerImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getNon_Resident_Tax_Payer() + * @generated + */ + int NON_RESIDENT_TAX_PAYER = 22; + + /** + * The feature id for the 'SS No' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__SS_NO = TAX_PAYER__SS_NO; + + /** + * The feature id for the 'Addresses' reference list. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__ADDRESSES = TAX_PAYER__ADDRESSES; + + /** + * The feature id for the 'Birth year' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__BIRTH_YEAR = TAX_PAYER__BIRTH_YEAR; + + /** + * The feature id for the 'Disability percentage' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__DISABILITY_PERCENTAGE = TAX_PAYER__DISABILITY_PERCENTAGE; + + /** + * The feature id for the 'Disability type' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__DISABILITY_TYPE = TAX_PAYER__DISABILITY_TYPE; + + /** + * The feature id for the 'Birth month' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__BIRTH_MONTH = TAX_PAYER__BIRTH_MONTH; + + /** + * The feature id for the 'Birth day' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__BIRTH_DAY = TAX_PAYER__BIRTH_DAY; + + /** + * The feature id for the 'Expenses' reference list. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__EXPENSES = TAX_PAYER__EXPENSES; + + /** + * The feature id for the 'Is widower' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__IS_WIDOWER = TAX_PAYER__IS_WIDOWER; + + /** + * The feature id for the 'Dependents' containment reference list. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__DEPENDENTS = TAX_PAYER__DEPENDENTS; + + /** + * The feature id for the 'From agent' containment reference. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__FROM_AGENT = TAX_PAYER__FROM_AGENT; + + /** + * The feature id for the 'Incomes' containment reference list. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__INCOMES = TAX_PAYER__INCOMES; + + /** + * The feature id for the 'From law' containment reference. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__FROM_LAW = TAX_PAYER__FROM_LAW; + + /** + * The feature id for the 'Is assimilated to resident' attribute. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER__IS_ASSIMILATED_TO_RESIDENT = TAX_PAYER_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Non Resident Tax Payer' class. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER_FEATURE_COUNT = TAX_PAYER_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Non Resident Tax Payer' class. + * + * + * @generated + * @ordered + */ + int NON_RESIDENT_TAX_PAYER_OPERATION_COUNT = TAX_PAYER_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Partnership_RecordImpl Partnership Record}' class. + * + * + * @see TaxationWithRoot.impl.Partnership_RecordImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getPartnership_Record() + * @generated + */ + int PARTNERSHIP_RECORD = 23; + + /** + * The feature id for the 'Start year' attribute. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD__START_YEAR = LEGAL_UNION_RECORD__START_YEAR; + + /** + * The feature id for the 'End year' attribute. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD__END_YEAR = LEGAL_UNION_RECORD__END_YEAR; + + /** + * The feature id for the 'Separation cause' attribute. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD__SEPARATION_CAUSE = LEGAL_UNION_RECORD__SEPARATION_CAUSE; + + /** + * The feature id for the 'Individual A' containment reference. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD__INDIVIDUAL_A = LEGAL_UNION_RECORD__INDIVIDUAL_A; + + /** + * The feature id for the 'Individual B' containment reference list. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD__INDIVIDUAL_B = LEGAL_UNION_RECORD__INDIVIDUAL_B; + + /** + * The feature id for the 'Properties' containment reference list. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD__PROPERTIES = LEGAL_UNION_RECORD__PROPERTIES; + + /** + * The feature id for the 'Mutual agreement' attribute. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD__MUTUAL_AGREEMENT = LEGAL_UNION_RECORD__MUTUAL_AGREEMENT; + + /** + * The feature id for the 'Id9' attribute. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD__ID9 = LEGAL_UNION_RECORD__ID9; + + /** + * The feature id for the 'Household' container reference. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD__HOUSEHOLD = LEGAL_UNION_RECORD__HOUSEHOLD; + + /** + * The number of structural features of the 'Partnership Record' class. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD_FEATURE_COUNT = LEGAL_UNION_RECORD_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Partnership Record' class. + * + * + * @generated + * @ordered + */ + int PARTNERSHIP_RECORD_OPERATION_COUNT = LEGAL_UNION_RECORD_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Resident_Tax_PayerImpl Resident Tax Payer}' class. + * + * + * @see TaxationWithRoot.impl.Resident_Tax_PayerImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getResident_Tax_Payer() + * @generated + */ + int RESIDENT_TAX_PAYER = 24; + + /** + * The feature id for the 'SS No' attribute. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__SS_NO = TAX_PAYER__SS_NO; + + /** + * The feature id for the 'Addresses' reference list. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__ADDRESSES = TAX_PAYER__ADDRESSES; + + /** + * The feature id for the 'Birth year' attribute. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__BIRTH_YEAR = TAX_PAYER__BIRTH_YEAR; + + /** + * The feature id for the 'Disability percentage' attribute. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__DISABILITY_PERCENTAGE = TAX_PAYER__DISABILITY_PERCENTAGE; + + /** + * The feature id for the 'Disability type' attribute. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__DISABILITY_TYPE = TAX_PAYER__DISABILITY_TYPE; + + /** + * The feature id for the 'Birth month' attribute. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__BIRTH_MONTH = TAX_PAYER__BIRTH_MONTH; + + /** + * The feature id for the 'Birth day' attribute. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__BIRTH_DAY = TAX_PAYER__BIRTH_DAY; + + /** + * The feature id for the 'Expenses' reference list. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__EXPENSES = TAX_PAYER__EXPENSES; + + /** + * The feature id for the 'Is widower' attribute. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__IS_WIDOWER = TAX_PAYER__IS_WIDOWER; + + /** + * The feature id for the 'Dependents' containment reference list. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__DEPENDENTS = TAX_PAYER__DEPENDENTS; + + /** + * The feature id for the 'From agent' containment reference. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__FROM_AGENT = TAX_PAYER__FROM_AGENT; + + /** + * The feature id for the 'Incomes' containment reference list. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__INCOMES = TAX_PAYER__INCOMES; + + /** + * The feature id for the 'From law' containment reference. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER__FROM_LAW = TAX_PAYER__FROM_LAW; + + /** + * The number of structural features of the 'Resident Tax Payer' class. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER_FEATURE_COUNT = TAX_PAYER_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Resident Tax Payer' class. + * + * + * @generated + * @ordered + */ + int RESIDENT_TAX_PAYER_OPERATION_COUNT = TAX_PAYER_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Trade_and_Business_IncomeImpl Trade and Business Income}' class. + * + * + * @see TaxationWithRoot.impl.Trade_and_Business_IncomeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getTrade_and_Business_Income() + * @generated + */ + int TRADE_AND_BUSINESS_INCOME = 25; + + /** + * The feature id for the 'Id8' attribute. + * + * + * @generated + * @ordered + */ + int TRADE_AND_BUSINESS_INCOME__ID8 = INCOME_TYPE__ID8; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int TRADE_AND_BUSINESS_INCOME__INCOME = INCOME_TYPE__INCOME; + + /** + * The number of structural features of the 'Trade and Business Income' class. + * + * + * @generated + * @ordered + */ + int TRADE_AND_BUSINESS_INCOME_FEATURE_COUNT = INCOME_TYPE_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Trade and Business Income' class. + * + * + * @generated + * @ordered + */ + int TRADE_AND_BUSINESS_INCOME_OPERATION_COUNT = INCOME_TYPE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Agriculture_and_Forestry_IncomeImpl Agriculture and Forestry Income}' class. + * + * + * @see TaxationWithRoot.impl.Agriculture_and_Forestry_IncomeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getAgriculture_and_Forestry_Income() + * @generated + */ + int AGRICULTURE_AND_FORESTRY_INCOME = 26; + + /** + * The feature id for the 'Id8' attribute. + * + * + * @generated + * @ordered + */ + int AGRICULTURE_AND_FORESTRY_INCOME__ID8 = INCOME_TYPE__ID8; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int AGRICULTURE_AND_FORESTRY_INCOME__INCOME = INCOME_TYPE__INCOME; + + /** + * The number of structural features of the 'Agriculture and Forestry Income' class. + * + * + * @generated + * @ordered + */ + int AGRICULTURE_AND_FORESTRY_INCOME_FEATURE_COUNT = INCOME_TYPE_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Agriculture and Forestry Income' class. + * + * + * @generated + * @ordered + */ + int AGRICULTURE_AND_FORESTRY_INCOME_OPERATION_COUNT = INCOME_TYPE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Pensions_and_Annuities_IncomeImpl Pensions and Annuities Income}' class. + * + * + * @see TaxationWithRoot.impl.Pensions_and_Annuities_IncomeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getPensions_and_Annuities_Income() + * @generated + */ + int PENSIONS_AND_ANNUITIES_INCOME = 27; + + /** + * The feature id for the 'Id8' attribute. + * + * + * @generated + * @ordered + */ + int PENSIONS_AND_ANNUITIES_INCOME__ID8 = INCOME_TYPE__ID8; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int PENSIONS_AND_ANNUITIES_INCOME__INCOME = INCOME_TYPE__INCOME; + + /** + * The feature id for the 'Occasional payement' attribute. + * + * + * @generated + * @ordered + */ + int PENSIONS_AND_ANNUITIES_INCOME__OCCASIONAL_PAYEMENT = INCOME_TYPE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Pensions and Annuities Income' class. + * + * + * @generated + * @ordered + */ + int PENSIONS_AND_ANNUITIES_INCOME_FEATURE_COUNT = INCOME_TYPE_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Pensions and Annuities Income' class. + * + * + * @generated + * @ordered + */ + int PENSIONS_AND_ANNUITIES_INCOME_OPERATION_COUNT = INCOME_TYPE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Capital_and_Investments_IncomeImpl Capital and Investments Income}' class. + * + * + * @see TaxationWithRoot.impl.Capital_and_Investments_IncomeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCapital_and_Investments_Income() + * @generated + */ + int CAPITAL_AND_INVESTMENTS_INCOME = 28; + + /** + * The feature id for the 'Id8' attribute. + * + * + * @generated + * @ordered + */ + int CAPITAL_AND_INVESTMENTS_INCOME__ID8 = INCOME_TYPE__ID8; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int CAPITAL_AND_INVESTMENTS_INCOME__INCOME = INCOME_TYPE__INCOME; + + /** + * The number of structural features of the 'Capital and Investments Income' class. + * + * + * @generated + * @ordered + */ + int CAPITAL_AND_INVESTMENTS_INCOME_FEATURE_COUNT = INCOME_TYPE_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Capital and Investments Income' class. + * + * + * @generated + * @ordered + */ + int CAPITAL_AND_INVESTMENTS_INCOME_OPERATION_COUNT = INCOME_TYPE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Employment_IncomeImpl Employment Income}' class. + * + * + * @see TaxationWithRoot.impl.Employment_IncomeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getEmployment_Income() + * @generated + */ + int EMPLOYMENT_INCOME = 29; + + /** + * The feature id for the 'Id8' attribute. + * + * + * @generated + * @ordered + */ + int EMPLOYMENT_INCOME__ID8 = INCOME_TYPE__ID8; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int EMPLOYMENT_INCOME__INCOME = INCOME_TYPE__INCOME; + + /** + * The number of structural features of the 'Employment Income' class. + * + * + * @generated + * @ordered + */ + int EMPLOYMENT_INCOME_FEATURE_COUNT = INCOME_TYPE_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Employment Income' class. + * + * + * @generated + * @ordered + */ + int EMPLOYMENT_INCOME_OPERATION_COUNT = INCOME_TYPE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Rentals_and_Leases_IncomeImpl Rentals and Leases Income}' class. + * + * + * @see TaxationWithRoot.impl.Rentals_and_Leases_IncomeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getRentals_and_Leases_Income() + * @generated + */ + int RENTALS_AND_LEASES_INCOME = 30; + + /** + * The feature id for the 'Id8' attribute. + * + * + * @generated + * @ordered + */ + int RENTALS_AND_LEASES_INCOME__ID8 = INCOME_TYPE__ID8; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int RENTALS_AND_LEASES_INCOME__INCOME = INCOME_TYPE__INCOME; + + /** + * The feature id for the 'Is periodic' attribute. + * + * + * @generated + * @ordered + */ + int RENTALS_AND_LEASES_INCOME__IS_PERIODIC = INCOME_TYPE_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Rentals and Leases Income' class. + * + * + * @generated + * @ordered + */ + int RENTALS_AND_LEASES_INCOME_FEATURE_COUNT = INCOME_TYPE_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Rentals and Leases Income' class. + * + * + * @generated + * @ordered + */ + int RENTALS_AND_LEASES_INCOME_OPERATION_COUNT = INCOME_TYPE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Foreign_IncomeImpl Foreign Income}' class. + * + * + * @see TaxationWithRoot.impl.Foreign_IncomeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getForeign_Income() + * @generated + */ + int FOREIGN_INCOME = 31; + + /** + * The feature id for the 'Income amount' attribute. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__INCOME_AMOUNT = INCOME__INCOME_AMOUNT; + + /** + * The feature id for the 'Income type' containment reference. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__INCOME_TYPE = INCOME__INCOME_TYPE; + + /** + * The feature id for the 'Tax card' containment reference. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__TAX_CARD = INCOME__TAX_CARD; + + /** + * The feature id for the 'Tax liability' attribute. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__TAX_LIABILITY = INCOME__TAX_LIABILITY; + + /** + * The feature id for the 'Tax Payer' container reference. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__TAX_PAYER = INCOME__TAX_PAYER; + + /** + * The feature id for the 'Details' containment reference list. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__DETAILS = INCOME__DETAILS; + + /** + * The feature id for the 'Num' attribute. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__NUM = INCOME__NUM; + + /** + * The feature id for the 'Expenses' containment reference list. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME__EXPENSES = INCOME__EXPENSES; + + /** + * The number of structural features of the 'Foreign Income' class. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME_FEATURE_COUNT = INCOME_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Foreign Income' class. + * + * + * @generated + * @ordered + */ + int FOREIGN_INCOME_OPERATION_COUNT = INCOME_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Local_IncomeImpl Local Income}' class. + * + * + * @see TaxationWithRoot.impl.Local_IncomeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getLocal_Income() + * @generated + */ + int LOCAL_INCOME = 32; + + /** + * The feature id for the 'Income amount' attribute. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__INCOME_AMOUNT = INCOME__INCOME_AMOUNT; + + /** + * The feature id for the 'Income type' containment reference. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__INCOME_TYPE = INCOME__INCOME_TYPE; + + /** + * The feature id for the 'Tax card' containment reference. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__TAX_CARD = INCOME__TAX_CARD; + + /** + * The feature id for the 'Tax liability' attribute. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__TAX_LIABILITY = INCOME__TAX_LIABILITY; + + /** + * The feature id for the 'Tax Payer' container reference. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__TAX_PAYER = INCOME__TAX_PAYER; + + /** + * The feature id for the 'Details' containment reference list. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__DETAILS = INCOME__DETAILS; + + /** + * The feature id for the 'Num' attribute. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__NUM = INCOME__NUM; + + /** + * The feature id for the 'Expenses' containment reference list. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME__EXPENSES = INCOME__EXPENSES; + + /** + * The number of structural features of the 'Local Income' class. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME_FEATURE_COUNT = INCOME_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Local Income' class. + * + * + * @generated + * @ordered + */ + int LOCAL_INCOME_OPERATION_COUNT = INCOME_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.CIMImpl CIM}' class. + * + * + * @see TaxationWithRoot.impl.CIMImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCIM() + * @generated + */ + int CIM = 33; + + /** + * The feature id for the 'Granted By' attribute. + * + * + * @generated + * @ordered + */ + int CIM__GRANTED_BY = INCOME_TAX_CREDIT__GRANTED_BY; + + /** + * The feature id for the 'Tax Payer' reference. + * + * + * @generated + * @ordered + */ + int CIM__TAX_PAYER = INCOME_TAX_CREDIT__TAX_PAYER; + + /** + * The feature id for the 'Tax year' attribute. + * + * + * @generated + * @ordered + */ + int CIM__TAX_YEAR = INCOME_TAX_CREDIT__TAX_YEAR; + + /** + * The feature id for the 'Yearly' attribute. + * + * + * @generated + * @ordered + */ + int CIM__YEARLY = INCOME_TAX_CREDIT__YEARLY; + + /** + * The feature id for the 'Monthly' attribute. + * + * + * @generated + * @ordered + */ + int CIM__MONTHLY = INCOME_TAX_CREDIT__MONTHLY; + + /** + * The feature id for the 'Daily' attribute. + * + * + * @generated + * @ordered + */ + int CIM__DAILY = INCOME_TAX_CREDIT__DAILY; + + /** + * The feature id for the 'Id7' attribute. + * + * + * @generated + * @ordered + */ + int CIM__ID7 = INCOME_TAX_CREDIT__ID7; + + /** + * The feature id for the 'Taxation Frame' reference. + * + * + * @generated + * @ordered + */ + int CIM__TAXATION_FRAME = INCOME_TAX_CREDIT__TAXATION_FRAME; + + /** + * The number of structural features of the 'CIM' class. + * + * + * @generated + * @ordered + */ + int CIM_FEATURE_COUNT = INCOME_TAX_CREDIT_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'CIM' class. + * + * + * @generated + * @ordered + */ + int CIM_OPERATION_COUNT = INCOME_TAX_CREDIT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.CIPImpl CIP}' class. + * + * + * @see TaxationWithRoot.impl.CIPImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCIP() + * @generated + */ + int CIP = 34; + + /** + * The feature id for the 'Granted By' attribute. + * + * + * @generated + * @ordered + */ + int CIP__GRANTED_BY = INCOME_TAX_CREDIT__GRANTED_BY; + + /** + * The feature id for the 'Tax Payer' reference. + * + * + * @generated + * @ordered + */ + int CIP__TAX_PAYER = INCOME_TAX_CREDIT__TAX_PAYER; + + /** + * The feature id for the 'Tax year' attribute. + * + * + * @generated + * @ordered + */ + int CIP__TAX_YEAR = INCOME_TAX_CREDIT__TAX_YEAR; + + /** + * The feature id for the 'Yearly' attribute. + * + * + * @generated + * @ordered + */ + int CIP__YEARLY = INCOME_TAX_CREDIT__YEARLY; + + /** + * The feature id for the 'Monthly' attribute. + * + * + * @generated + * @ordered + */ + int CIP__MONTHLY = INCOME_TAX_CREDIT__MONTHLY; + + /** + * The feature id for the 'Daily' attribute. + * + * + * @generated + * @ordered + */ + int CIP__DAILY = INCOME_TAX_CREDIT__DAILY; + + /** + * The feature id for the 'Id7' attribute. + * + * + * @generated + * @ordered + */ + int CIP__ID7 = INCOME_TAX_CREDIT__ID7; + + /** + * The feature id for the 'Taxation Frame' reference. + * + * + * @generated + * @ordered + */ + int CIP__TAXATION_FRAME = INCOME_TAX_CREDIT__TAXATION_FRAME; + + /** + * The number of structural features of the 'CIP' class. + * + * + * @generated + * @ordered + */ + int CIP_FEATURE_COUNT = INCOME_TAX_CREDIT_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'CIP' class. + * + * + * @generated + * @ordered + */ + int CIP_OPERATION_COUNT = INCOME_TAX_CREDIT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.CISImpl CIS}' class. + * + * + * @see TaxationWithRoot.impl.CISImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCIS() + * @generated + */ + int CIS = 35; + + /** + * The feature id for the 'Granted By' attribute. + * + * + * @generated + * @ordered + */ + int CIS__GRANTED_BY = INCOME_TAX_CREDIT__GRANTED_BY; + + /** + * The feature id for the 'Tax Payer' reference. + * + * + * @generated + * @ordered + */ + int CIS__TAX_PAYER = INCOME_TAX_CREDIT__TAX_PAYER; + + /** + * The feature id for the 'Tax year' attribute. + * + * + * @generated + * @ordered + */ + int CIS__TAX_YEAR = INCOME_TAX_CREDIT__TAX_YEAR; + + /** + * The feature id for the 'Yearly' attribute. + * + * + * @generated + * @ordered + */ + int CIS__YEARLY = INCOME_TAX_CREDIT__YEARLY; + + /** + * The feature id for the 'Monthly' attribute. + * + * + * @generated + * @ordered + */ + int CIS__MONTHLY = INCOME_TAX_CREDIT__MONTHLY; + + /** + * The feature id for the 'Daily' attribute. + * + * + * @generated + * @ordered + */ + int CIS__DAILY = INCOME_TAX_CREDIT__DAILY; + + /** + * The feature id for the 'Id7' attribute. + * + * + * @generated + * @ordered + */ + int CIS__ID7 = INCOME_TAX_CREDIT__ID7; + + /** + * The feature id for the 'Taxation Frame' reference. + * + * + * @generated + * @ordered + */ + int CIS__TAXATION_FRAME = INCOME_TAX_CREDIT__TAXATION_FRAME; + + /** + * The number of structural features of the 'CIS' class. + * + * + * @generated + * @ordered + */ + int CIS_FEATURE_COUNT = INCOME_TAX_CREDIT_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'CIS' class. + * + * + * @generated + * @ordered + */ + int CIS_OPERATION_COUNT = INCOME_TAX_CREDIT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Professional_Expenses_DeductionImpl Professional Expenses Deduction}' class. + * + * + * @see TaxationWithRoot.impl.Professional_Expenses_DeductionImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getProfessional_Expenses_Deduction() + * @generated + */ + int PROFESSIONAL_EXPENSES_DEDUCTION = 37; + + /** + * The number of structural features of the 'Professional Expenses Deduction' class. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT = ROOT_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Professional Expenses Deduction' class. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSES_DEDUCTION_OPERATION_COUNT = ROOT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.FDImpl FD}' class. + * + * + * @see TaxationWithRoot.impl.FDImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getFD() + * @generated + */ + int FD = 36; + + /** + * The feature id for the 'Distance declared in january' attribute. + * + * + * @generated + * @ordered + */ + int FD__DISTANCE_DECLARED_IN_JANUARY = PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'FD' class. + * + * + * @generated + * @ordered + */ + int FD_FEATURE_COUNT = PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'FD' class. + * + * + * @generated + * @ordered + */ + int FD_OPERATION_COUNT = PROFESSIONAL_EXPENSES_DEDUCTION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.FOImpl FO}' class. + * + * + * @see TaxationWithRoot.impl.FOImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getFO() + * @generated + */ + int FO = 38; + + /** + * The number of structural features of the 'FO' class. + * + * + * @generated + * @ordered + */ + int FO_FEATURE_COUNT = PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'FO' class. + * + * + * @generated + * @ordered + */ + int FO_OPERATION_COUNT = PROFESSIONAL_EXPENSES_DEDUCTION_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.DSImpl DS}' class. + * + * + * @see TaxationWithRoot.impl.DSImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS() + * @generated + */ + int DS = 40; + + /** + * The feature id for the 'Maximum deductible amount' attribute. + * + * + * @generated + * @ordered + */ + int DS__MAXIMUM_DEDUCTIBLE_AMOUNT = ROOT_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Id3' attribute. + * + * + * @generated + * @ordered + */ + int DS__ID3 = ROOT_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'DS' class. + * + * + * @generated + * @ordered + */ + int DS_FEATURE_COUNT = ROOT_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'DS' class. + * + * + * @generated + * @ordered + */ + int DS_OPERATION_COUNT = ROOT_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.DS_for_Permanent_ExpenseImpl DS for Permanent Expense}' class. + * + * + * @see TaxationWithRoot.impl.DS_for_Permanent_ExpenseImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Permanent_Expense() + * @generated + */ + int DS_FOR_PERMANENT_EXPENSE = 39; + + /** + * The feature id for the 'Maximum deductible amount' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_PERMANENT_EXPENSE__MAXIMUM_DEDUCTIBLE_AMOUNT = DS__MAXIMUM_DEDUCTIBLE_AMOUNT; + + /** + * The feature id for the 'Id3' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_PERMANENT_EXPENSE__ID3 = DS__ID3; + + /** + * The feature id for the 'Permanent expense category' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY = DS_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'DS for Permanent Expense' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_PERMANENT_EXPENSE_FEATURE_COUNT = DS_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'DS for Permanent Expense' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_PERMANENT_EXPENSE_OPERATION_COUNT = DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.DS_for_Interest_ExpenseImpl DS for Interest Expense}' class. + * + * + * @see TaxationWithRoot.impl.DS_for_Interest_ExpenseImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Interest_Expense() + * @generated + */ + int DS_FOR_INTEREST_EXPENSE = 41; + + /** + * The feature id for the 'Maximum deductible amount' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_INTEREST_EXPENSE__MAXIMUM_DEDUCTIBLE_AMOUNT = DS__MAXIMUM_DEDUCTIBLE_AMOUNT; + + /** + * The feature id for the 'Id3' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_INTEREST_EXPENSE__ID3 = DS__ID3; + + /** + * The number of structural features of the 'DS for Interest Expense' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_INTEREST_EXPENSE_FEATURE_COUNT = DS_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'DS for Interest Expense' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_INTEREST_EXPENSE_OPERATION_COUNT = DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.DS_for_Health_and_Pension_InsuranceImpl DS for Health and Pension Insurance}' class. + * + * + * @see TaxationWithRoot.impl.DS_for_Health_and_Pension_InsuranceImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Health_and_Pension_Insurance() + * @generated + */ + int DS_FOR_HEALTH_AND_PENSION_INSURANCE = 42; + + /** + * The feature id for the 'Maximum deductible amount' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_HEALTH_AND_PENSION_INSURANCE__MAXIMUM_DEDUCTIBLE_AMOUNT = DS__MAXIMUM_DEDUCTIBLE_AMOUNT; + + /** + * The feature id for the 'Id3' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_HEALTH_AND_PENSION_INSURANCE__ID3 = DS__ID3; + + /** + * The feature id for the 'Insurance category' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY = DS_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'DS for Health and Pension Insurance' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_HEALTH_AND_PENSION_INSURANCE_FEATURE_COUNT = DS_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'DS for Health and Pension Insurance' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_HEALTH_AND_PENSION_INSURANCE_OPERATION_COUNT = DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.DS_for_Private_Insurance_and_PlanImpl DS for Private Insurance and Plan}' class. + * + * + * @see TaxationWithRoot.impl.DS_for_Private_Insurance_and_PlanImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Private_Insurance_and_Plan() + * @generated + */ + int DS_FOR_PRIVATE_INSURANCE_AND_PLAN = 43; + + /** + * The feature id for the 'Maximum deductible amount' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT = DS__MAXIMUM_DEDUCTIBLE_AMOUNT; + + /** + * The feature id for the 'Id3' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_PRIVATE_INSURANCE_AND_PLAN__ID3 = DS__ID3; + + /** + * The feature id for the 'Private insurance and plan category' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY = DS_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'DS for Private Insurance and Plan' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_PRIVATE_INSURANCE_AND_PLAN_FEATURE_COUNT = DS_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'DS for Private Insurance and Plan' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_PRIVATE_INSURANCE_AND_PLAN_OPERATION_COUNT = DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.DS_for_Loss_CarryforwardImpl DS for Loss Carryforward}' class. + * + * + * @see TaxationWithRoot.impl.DS_for_Loss_CarryforwardImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Loss_Carryforward() + * @generated + */ + int DS_FOR_LOSS_CARRYFORWARD = 44; + + /** + * The feature id for the 'Maximum deductible amount' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_LOSS_CARRYFORWARD__MAXIMUM_DEDUCTIBLE_AMOUNT = DS__MAXIMUM_DEDUCTIBLE_AMOUNT; + + /** + * The feature id for the 'Id3' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_LOSS_CARRYFORWARD__ID3 = DS__ID3; + + /** + * The number of structural features of the 'DS for Loss Carryforward' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_LOSS_CARRYFORWARD_FEATURE_COUNT = DS_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'DS for Loss Carryforward' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_LOSS_CARRYFORWARD_OPERATION_COUNT = DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.DS_for_DonationImpl DS for Donation}' class. + * + * + * @see TaxationWithRoot.impl.DS_for_DonationImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Donation() + * @generated + */ + int DS_FOR_DONATION = 45; + + /** + * The feature id for the 'Maximum deductible amount' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_DONATION__MAXIMUM_DEDUCTIBLE_AMOUNT = DS__MAXIMUM_DEDUCTIBLE_AMOUNT; + + /** + * The feature id for the 'Id3' attribute. + * + * + * @generated + * @ordered + */ + int DS_FOR_DONATION__ID3 = DS__ID3; + + /** + * The number of structural features of the 'DS for Donation' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_DONATION_FEATURE_COUNT = DS_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'DS for Donation' class. + * + * + * @generated + * @ordered + */ + int DS_FOR_DONATION_OPERATION_COUNT = DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Special_Expense_DSImpl Special Expense DS}' class. + * + * + * @see TaxationWithRoot.impl.Special_Expense_DSImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getSpecial_Expense_DS() + * @generated + */ + int SPECIAL_EXPENSE_DS = 47; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int SPECIAL_EXPENSE_DS__DECLARED_AMOUNT = EXPENSE__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int SPECIAL_EXPENSE_DS__EXPENSE_PURPOSE = EXPENSE__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int SPECIAL_EXPENSE_DS__DEPENDENT = EXPENSE__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int SPECIAL_EXPENSE_DS__FROM_AGENT = EXPENSE__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int SPECIAL_EXPENSE_DS__INCOME = EXPENSE__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int SPECIAL_EXPENSE_DS__ID4 = EXPENSE__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int SPECIAL_EXPENSE_DS__BENEFICIARY = EXPENSE__BENEFICIARY; + + /** + * The number of structural features of the 'Special Expense DS' class. + * + * + * @generated + * @ordered + */ + int SPECIAL_EXPENSE_DS_FEATURE_COUNT = EXPENSE_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Special Expense DS' class. + * + * + * @generated + * @ordered + */ + int SPECIAL_EXPENSE_DS_OPERATION_COUNT = EXPENSE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Permanent_ExpenseImpl Permanent Expense}' class. + * + * + * @see TaxationWithRoot.impl.Permanent_ExpenseImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getPermanent_Expense() + * @generated + */ + int PERMANENT_EXPENSE = 46; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE__DECLARED_AMOUNT = SPECIAL_EXPENSE_DS__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE__EXPENSE_PURPOSE = SPECIAL_EXPENSE_DS__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE__DEPENDENT = SPECIAL_EXPENSE_DS__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE__FROM_AGENT = SPECIAL_EXPENSE_DS__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE__INCOME = SPECIAL_EXPENSE_DS__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE__ID4 = SPECIAL_EXPENSE_DS__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE__BENEFICIARY = SPECIAL_EXPENSE_DS__BENEFICIARY; + + /** + * The feature id for the 'Category' attribute. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE__CATEGORY = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 0; + + /** + * The number of structural features of the 'Permanent Expense' class. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 1; + + /** + * The number of operations of the 'Permanent Expense' class. + * + * + * @generated + * @ordered + */ + int PERMANENT_EXPENSE_OPERATION_COUNT = SPECIAL_EXPENSE_DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Interest_ExpenseImpl Interest Expense}' class. + * + * + * @see TaxationWithRoot.impl.Interest_ExpenseImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getInterest_Expense() + * @generated + */ + int INTEREST_EXPENSE = 48; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int INTEREST_EXPENSE__DECLARED_AMOUNT = SPECIAL_EXPENSE_DS__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int INTEREST_EXPENSE__EXPENSE_PURPOSE = SPECIAL_EXPENSE_DS__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int INTEREST_EXPENSE__DEPENDENT = SPECIAL_EXPENSE_DS__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int INTEREST_EXPENSE__FROM_AGENT = SPECIAL_EXPENSE_DS__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int INTEREST_EXPENSE__INCOME = SPECIAL_EXPENSE_DS__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int INTEREST_EXPENSE__ID4 = SPECIAL_EXPENSE_DS__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int INTEREST_EXPENSE__BENEFICIARY = SPECIAL_EXPENSE_DS__BENEFICIARY; + + /** + * The number of structural features of the 'Interest Expense' class. + * + * + * @generated + * @ordered + */ + int INTEREST_EXPENSE_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Interest Expense' class. + * + * + * @generated + * @ordered + */ + int INTEREST_EXPENSE_OPERATION_COUNT = SPECIAL_EXPENSE_DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Private_Insurance_and_PlanImpl Private Insurance and Plan}' class. + * + * + * @see TaxationWithRoot.impl.Private_Insurance_and_PlanImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getPrivate_Insurance_and_Plan() + * @generated + */ + int PRIVATE_INSURANCE_AND_PLAN = 49; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__DECLARED_AMOUNT = SPECIAL_EXPENSE_DS__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__EXPENSE_PURPOSE = SPECIAL_EXPENSE_DS__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__DEPENDENT = SPECIAL_EXPENSE_DS__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__FROM_AGENT = SPECIAL_EXPENSE_DS__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__INCOME = SPECIAL_EXPENSE_DS__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__ID4 = SPECIAL_EXPENSE_DS__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__BENEFICIARY = SPECIAL_EXPENSE_DS__BENEFICIARY; + + /** + * The feature id for the 'Category' attribute. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__CATEGORY = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Duration of contract' attribute. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Private Insurance and Plan' class. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Private Insurance and Plan' class. + * + * + * @generated + * @ordered + */ + int PRIVATE_INSURANCE_AND_PLAN_OPERATION_COUNT = SPECIAL_EXPENSE_DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Health_and_Pension_InsuranceImpl Health and Pension Insurance}' class. + * + * + * @see TaxationWithRoot.impl.Health_and_Pension_InsuranceImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getHealth_and_Pension_Insurance() + * @generated + */ + int HEALTH_AND_PENSION_INSURANCE = 50; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE__DECLARED_AMOUNT = SPECIAL_EXPENSE_DS__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE__EXPENSE_PURPOSE = SPECIAL_EXPENSE_DS__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE__DEPENDENT = SPECIAL_EXPENSE_DS__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE__FROM_AGENT = SPECIAL_EXPENSE_DS__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE__INCOME = SPECIAL_EXPENSE_DS__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE__ID4 = SPECIAL_EXPENSE_DS__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE__BENEFICIARY = SPECIAL_EXPENSE_DS__BENEFICIARY; + + /** + * The feature id for the 'Category' attribute. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE__CATEGORY = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Is related to additional salary' attribute. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE__IS_RELATED_TO_ADDITIONAL_SALARY = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Health and Pension Insurance' class. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Health and Pension Insurance' class. + * + * + * @generated + * @ordered + */ + int HEALTH_AND_PENSION_INSURANCE_OPERATION_COUNT = SPECIAL_EXPENSE_DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.DonationImpl Donation}' class. + * + * + * @see TaxationWithRoot.impl.DonationImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDonation() + * @generated + */ + int DONATION = 51; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int DONATION__DECLARED_AMOUNT = SPECIAL_EXPENSE_DS__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int DONATION__EXPENSE_PURPOSE = SPECIAL_EXPENSE_DS__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int DONATION__DEPENDENT = SPECIAL_EXPENSE_DS__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int DONATION__FROM_AGENT = SPECIAL_EXPENSE_DS__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int DONATION__INCOME = SPECIAL_EXPENSE_DS__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int DONATION__ID4 = SPECIAL_EXPENSE_DS__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int DONATION__BENEFICIARY = SPECIAL_EXPENSE_DS__BENEFICIARY; + + /** + * The feature id for the 'Beneficiary1' attribute. + * + * + * @generated + * @ordered + */ + int DONATION__BENEFICIARY1 = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Is donation reported' attribute. + * + * + * @generated + * @ordered + */ + int DONATION__IS_DONATION_REPORTED = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Donation' class. + * + * + * @generated + * @ordered + */ + int DONATION_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Donation' class. + * + * + * @generated + * @ordered + */ + int DONATION_OPERATION_COUNT = SPECIAL_EXPENSE_DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Loss_CarryforwardImpl Loss Carryforward}' class. + * + * + * @see TaxationWithRoot.impl.Loss_CarryforwardImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getLoss_Carryforward() + * @generated + */ + int LOSS_CARRYFORWARD = 52; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD__DECLARED_AMOUNT = SPECIAL_EXPENSE_DS__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD__EXPENSE_PURPOSE = SPECIAL_EXPENSE_DS__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD__DEPENDENT = SPECIAL_EXPENSE_DS__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD__FROM_AGENT = SPECIAL_EXPENSE_DS__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD__INCOME = SPECIAL_EXPENSE_DS__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD__ID4 = SPECIAL_EXPENSE_DS__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD__BENEFICIARY = SPECIAL_EXPENSE_DS__BENEFICIARY; + + /** + * The number of structural features of the 'Loss Carryforward' class. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD_FEATURE_COUNT = SPECIAL_EXPENSE_DS_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Loss Carryforward' class. + * + * + * @generated + * @ordered + */ + int LOSS_CARRYFORWARD_OPERATION_COUNT = SPECIAL_EXPENSE_DS_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Spousal_Expense_ACImpl Spousal Expense AC}' class. + * + * + * @see TaxationWithRoot.impl.Spousal_Expense_ACImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getSpousal_Expense_AC() + * @generated + */ + int SPOUSAL_EXPENSE_AC = 53; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int SPOUSAL_EXPENSE_AC__DECLARED_AMOUNT = EXPENSE__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int SPOUSAL_EXPENSE_AC__EXPENSE_PURPOSE = EXPENSE__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int SPOUSAL_EXPENSE_AC__DEPENDENT = EXPENSE__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int SPOUSAL_EXPENSE_AC__FROM_AGENT = EXPENSE__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int SPOUSAL_EXPENSE_AC__INCOME = EXPENSE__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int SPOUSAL_EXPENSE_AC__ID4 = EXPENSE__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int SPOUSAL_EXPENSE_AC__BENEFICIARY = EXPENSE__BENEFICIARY; + + /** + * The number of structural features of the 'Spousal Expense AC' class. + * + * + * @generated + * @ordered + */ + int SPOUSAL_EXPENSE_AC_FEATURE_COUNT = EXPENSE_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Spousal Expense AC' class. + * + * + * @generated + * @ordered + */ + int SPOUSAL_EXPENSE_AC_OPERATION_COUNT = EXPENSE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Extraordinary_Expense_CEImpl Extraordinary Expense CE}' class. + * + * + * @see TaxationWithRoot.impl.Extraordinary_Expense_CEImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getExtraordinary_Expense_CE() + * @generated + */ + int EXTRAORDINARY_EXPENSE_CE = 54; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE__DECLARED_AMOUNT = EXPENSE__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE__EXPENSE_PURPOSE = EXPENSE__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE__DEPENDENT = EXPENSE__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE__FROM_AGENT = EXPENSE__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE__INCOME = EXPENSE__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE__ID4 = EXPENSE__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE__BENEFICIARY = EXPENSE__BENEFICIARY; + + /** + * The feature id for the 'Thresholded deduction percentage' attribute. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE__THRESHOLDED_DEDUCTION_PERCENTAGE = EXPENSE_FEATURE_COUNT + 0; + + /** + * The feature id for the 'Ce type' attribute. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE__CE_TYPE = EXPENSE_FEATURE_COUNT + 1; + + /** + * The number of structural features of the 'Extraordinary Expense CE' class. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE_FEATURE_COUNT = EXPENSE_FEATURE_COUNT + 2; + + /** + * The number of operations of the 'Extraordinary Expense CE' class. + * + * + * @generated + * @ordered + */ + int EXTRAORDINARY_EXPENSE_CE_OPERATION_COUNT = EXPENSE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Professional_ExpenseImpl Professional Expense}' class. + * + * + * @see TaxationWithRoot.impl.Professional_ExpenseImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getProfessional_Expense() + * @generated + */ + int PROFESSIONAL_EXPENSE = 56; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSE__DECLARED_AMOUNT = EXPENSE__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSE__EXPENSE_PURPOSE = EXPENSE__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSE__DEPENDENT = EXPENSE__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSE__FROM_AGENT = EXPENSE__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSE__INCOME = EXPENSE__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSE__ID4 = EXPENSE__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSE__BENEFICIARY = EXPENSE__BENEFICIARY; + + /** + * The number of structural features of the 'Professional Expense' class. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSE_FEATURE_COUNT = EXPENSE_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Professional Expense' class. + * + * + * @generated + * @ordered + */ + int PROFESSIONAL_EXPENSE_OPERATION_COUNT = EXPENSE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Travel_Expense_FDImpl Travel Expense FD}' class. + * + * + * @see TaxationWithRoot.impl.Travel_Expense_FDImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getTravel_Expense_FD() + * @generated + */ + int TRAVEL_EXPENSE_FD = 55; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int TRAVEL_EXPENSE_FD__DECLARED_AMOUNT = PROFESSIONAL_EXPENSE__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int TRAVEL_EXPENSE_FD__EXPENSE_PURPOSE = PROFESSIONAL_EXPENSE__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int TRAVEL_EXPENSE_FD__DEPENDENT = PROFESSIONAL_EXPENSE__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int TRAVEL_EXPENSE_FD__FROM_AGENT = PROFESSIONAL_EXPENSE__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int TRAVEL_EXPENSE_FD__INCOME = PROFESSIONAL_EXPENSE__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int TRAVEL_EXPENSE_FD__ID4 = PROFESSIONAL_EXPENSE__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int TRAVEL_EXPENSE_FD__BENEFICIARY = PROFESSIONAL_EXPENSE__BENEFICIARY; + + /** + * The number of structural features of the 'Travel Expense FD' class. + * + * + * @generated + * @ordered + */ + int TRAVEL_EXPENSE_FD_FEATURE_COUNT = PROFESSIONAL_EXPENSE_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Travel Expense FD' class. + * + * + * @generated + * @ordered + */ + int TRAVEL_EXPENSE_FD_OPERATION_COUNT = PROFESSIONAL_EXPENSE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.Miscellaneous_Expense_FOImpl Miscellaneous Expense FO}' class. + * + * + * @see TaxationWithRoot.impl.Miscellaneous_Expense_FOImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getMiscellaneous_Expense_FO() + * @generated + */ + int MISCELLANEOUS_EXPENSE_FO = 57; + + /** + * The feature id for the 'Declared amount' attribute. + * + * + * @generated + * @ordered + */ + int MISCELLANEOUS_EXPENSE_FO__DECLARED_AMOUNT = PROFESSIONAL_EXPENSE__DECLARED_AMOUNT; + + /** + * The feature id for the 'Expense purpose' attribute. + * + * + * @generated + * @ordered + */ + int MISCELLANEOUS_EXPENSE_FO__EXPENSE_PURPOSE = PROFESSIONAL_EXPENSE__EXPENSE_PURPOSE; + + /** + * The feature id for the 'Dependent' reference. + * + * + * @generated + * @ordered + */ + int MISCELLANEOUS_EXPENSE_FO__DEPENDENT = PROFESSIONAL_EXPENSE__DEPENDENT; + + /** + * The feature id for the 'From agent' reference. + * + * + * @generated + * @ordered + */ + int MISCELLANEOUS_EXPENSE_FO__FROM_AGENT = PROFESSIONAL_EXPENSE__FROM_AGENT; + + /** + * The feature id for the 'Income' container reference. + * + * + * @generated + * @ordered + */ + int MISCELLANEOUS_EXPENSE_FO__INCOME = PROFESSIONAL_EXPENSE__INCOME; + + /** + * The feature id for the 'Id4' attribute. + * + * + * @generated + * @ordered + */ + int MISCELLANEOUS_EXPENSE_FO__ID4 = PROFESSIONAL_EXPENSE__ID4; + + /** + * The feature id for the 'Beneficiary' reference. + * + * + * @generated + * @ordered + */ + int MISCELLANEOUS_EXPENSE_FO__BENEFICIARY = PROFESSIONAL_EXPENSE__BENEFICIARY; + + /** + * The number of structural features of the 'Miscellaneous Expense FO' class. + * + * + * @generated + * @ordered + */ + int MISCELLANEOUS_EXPENSE_FO_FEATURE_COUNT = PROFESSIONAL_EXPENSE_FEATURE_COUNT + 0; + + /** + * The number of operations of the 'Miscellaneous Expense FO' class. + * + * + * @generated + * @ordered + */ + int MISCELLANEOUS_EXPENSE_FO_OPERATION_COUNT = PROFESSIONAL_EXPENSE_OPERATION_COUNT + 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.impl.ResourceImpl Resource}' class. + * + * + * @see TaxationWithRoot.impl.ResourceImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getResource() + * @generated + */ + int RESOURCE = 58; + + /** + * The feature id for the 'Contains' containment reference list. + * + * + * @generated + * @ordered + */ + int RESOURCE__CONTAINS = 0; + + /** + * The number of structural features of the 'Resource' class. + * + * + * @generated + * @ordered + */ + int RESOURCE_FEATURE_COUNT = 1; + + /** + * The number of operations of the 'Resource' class. + * + * + * @generated + * @ordered + */ + int RESOURCE_OPERATION_COUNT = 0; + + /** + * The meta object id for the '{@link TaxationWithRoot.Grantor Grantor}' enum. + * + * + * @see TaxationWithRoot.Grantor + * @see TaxationWithRoot.impl.TaxationPackageImpl#getGrantor() + * @generated + */ + int GRANTOR = 60; + + /** + * The meta object id for the '{@link TaxationWithRoot.Disability_Types Disability Types}' enum. + * + * + * @see TaxationWithRoot.Disability_Types + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDisability_Types() + * @generated + */ + int DISABILITY_TYPES = 61; + + /** + * The meta object id for the '{@link TaxationWithRoot.Country Country}' enum. + * + * + * @see TaxationWithRoot.Country + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCountry() + * @generated + */ + int COUNTRY = 62; + + /** + * The meta object id for the '{@link TaxationWithRoot.Tax_Office Tax Office}' enum. + * + * + * @see TaxationWithRoot.Tax_Office + * @see TaxationWithRoot.impl.TaxationPackageImpl#getTax_Office() + * @generated + */ + int TAX_OFFICE = 63; + + /** + * The meta object id for the '{@link TaxationWithRoot.Tax_Class_Category Tax Class Category}' enum. + * + * + * @see TaxationWithRoot.Tax_Class_Category + * @see TaxationWithRoot.impl.TaxationPackageImpl#getTax_Class_Category() + * @generated + */ + int TAX_CLASS_CATEGORY = 64; + + /** + * The meta object id for the '{@link TaxationWithRoot.Job_Activity Job Activity}' enum. + * + * + * @see TaxationWithRoot.Job_Activity + * @see TaxationWithRoot.impl.TaxationPackageImpl#getJob_Activity() + * @generated + */ + int JOB_ACTIVITY = 65; + + /** + * The meta object id for the '{@link TaxationWithRoot.Town Town}' enum. + * + * + * @see TaxationWithRoot.Town + * @see TaxationWithRoot.impl.TaxationPackageImpl#getTown() + * @generated + */ + int TOWN = 66; + + /** + * The meta object id for the '{@link TaxationWithRoot.CE_Type CE Type}' enum. + * + * + * @see TaxationWithRoot.CE_Type + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCE_Type() + * @generated + */ + int CE_TYPE = 67; + + /** + * The meta object id for the '{@link TaxationWithRoot.Expense_Purpose Expense Purpose}' enum. + * + * + * @see TaxationWithRoot.Expense_Purpose + * @see TaxationWithRoot.impl.TaxationPackageImpl#getExpense_Purpose() + * @generated + */ + int EXPENSE_PURPOSE = 68; + + /** + * The meta object id for the '{@link TaxationWithRoot.Dependent_Type Dependent Type}' enum. + * + * + * @see TaxationWithRoot.Dependent_Type + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDependent_Type() + * @generated + */ + int DEPENDENT_TYPE = 69; + + /** + * The meta object id for the '{@link TaxationWithRoot.Separation_Causes Separation Causes}' enum. + * + * + * @see TaxationWithRoot.Separation_Causes + * @see TaxationWithRoot.impl.TaxationPackageImpl#getSeparation_Causes() + * @generated + */ + int SEPARATION_CAUSES = 70; + + /** + * The meta object id for the '{@link TaxationWithRoot.Category_of_Permanent_Expense Category of Permanent Expense}' enum. + * + * + * @see TaxationWithRoot.Category_of_Permanent_Expense + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCategory_of_Permanent_Expense() + * @generated + */ + int CATEGORY_OF_PERMANENT_EXPENSE = 71; + + /** + * The meta object id for the '{@link TaxationWithRoot.Category_of_Health_and_Pension_Insurances Category of Health and Pension Insurances}' enum. + * + * + * @see TaxationWithRoot.Category_of_Health_and_Pension_Insurances + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCategory_of_Health_and_Pension_Insurances() + * @generated + */ + int CATEGORY_OF_HEALTH_AND_PENSION_INSURANCES = 72; + + /** + * The meta object id for the '{@link TaxationWithRoot.Category_of_Private_Insurance_and_Plan Category of Private Insurance and Plan}' enum. + * + * + * @see TaxationWithRoot.Category_of_Private_Insurance_and_Plan + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCategory_of_Private_Insurance_and_Plan() + * @generated + */ + int CATEGORY_OF_PRIVATE_INSURANCE_AND_PLAN = 73; + + /** + * The meta object id for the '{@link TaxationWithRoot.Legal_Union_Types Legal Union Types}' enum. + * + * + * @see TaxationWithRoot.Legal_Union_Types + * @see TaxationWithRoot.impl.TaxationPackageImpl#getLegal_Union_Types() + * @generated + */ + int LEGAL_UNION_TYPES = 74; + + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Constants Constants}'. + * + * + * @return the meta object for class 'Constants'. + * @see TaxationWithRoot.Constants + * @generated + */ + EClass getConstants(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD}'. + * + * + * @return the meta object for the attribute 'MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD'. + * @see TaxationWithRoot.Constants#getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE}'. + * + * + * @return the meta object for the attribute 'MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE'. + * @see TaxationWithRoot.Constants#getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getMINIMUM_SALARY MINIMUM SALARY}'. + * + * + * @return the meta object for the attribute 'MINIMUM SALARY'. + * @see TaxationWithRoot.Constants#getMINIMUM_SALARY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MINIMUM_SALARY(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION}'. + * + * + * @return the meta object for the attribute 'FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION'. + * @see TaxationWithRoot.Constants#getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS}'. + * + * + * @return the meta object for the attribute 'MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS'. + * @see TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS}'. + * + * + * @return the meta object for the attribute 'MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS'. + * @see TaxationWithRoot.Constants#getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC}'. + * + * + * @return the meta object for the attribute 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC'. + * @see TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE}'. + * + * + * @return the meta object for the attribute 'MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE'. + * @see TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}'. + * + * + * @return the meta object for the attribute 'MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION'. + * @see TaxationWithRoot.Constants#getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION}'. + * + * + * @return the meta object for the attribute 'MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION'. + * @see TaxationWithRoot.Constants#getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}'. + * + * + * @return the meta object for the attribute 'MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION'. + * @see TaxationWithRoot.Constants#getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getFLAT_RATE_CIM_DAILY FLAT RATE CIM DAILY}'. + * + * + * @return the meta object for the attribute 'FLAT RATE CIM DAILY'. + * @see TaxationWithRoot.Constants#getFLAT_RATE_CIM_DAILY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_CIM_DAILY(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getFLAT_RATE_CIM_MONTHLY FLAT RATE CIM MONTHLY}'. + * + * + * @return the meta object for the attribute 'FLAT RATE CIM MONTHLY'. + * @see TaxationWithRoot.Constants#getFLAT_RATE_CIM_MONTHLY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_CIM_MONTHLY(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getFLAT_RATE_CIM_YEARLY FLAT RATE CIM YEARLY}'. + * + * + * @return the meta object for the attribute 'FLAT RATE CIM YEARLY'. + * @see TaxationWithRoot.Constants#getFLAT_RATE_CIM_YEARLY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_CIM_YEARLY(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getFLAT_RATE_CIP_DAILY FLAT RATE CIP DAILY}'. + * + * + * @return the meta object for the attribute 'FLAT RATE CIP DAILY'. + * @see TaxationWithRoot.Constants#getFLAT_RATE_CIP_DAILY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_CIP_DAILY(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getFLAT_RATE_CIP_MONTHLY FLAT RATE CIP MONTHLY}'. + * + * + * @return the meta object for the attribute 'FLAT RATE CIP MONTHLY'. + * @see TaxationWithRoot.Constants#getFLAT_RATE_CIP_MONTHLY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_CIP_MONTHLY(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getFLAT_RATE_CIP_YEARLY FLAT RATE CIP YEARLY}'. + * + * + * @return the meta object for the attribute 'FLAT RATE CIP YEARLY'. + * @see TaxationWithRoot.Constants#getFLAT_RATE_CIP_YEARLY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_CIP_YEARLY(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getFLAT_RATE_CIS_DAILY FLAT RATE CIS DAILY}'. + * + * + * @return the meta object for the attribute 'FLAT RATE CIS DAILY'. + * @see TaxationWithRoot.Constants#getFLAT_RATE_CIS_DAILY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_CIS_DAILY(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getFLAT_RATE_CIS_MONTHLY FLAT RATE CIS MONTHLY}'. + * + * + * @return the meta object for the attribute 'FLAT RATE CIS MONTHLY'. + * @see TaxationWithRoot.Constants#getFLAT_RATE_CIS_MONTHLY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_CIS_MONTHLY(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getFLAT_RATE_CIS_YEARLY FLAT RATE CIS YEARLY}'. + * + * + * @return the meta object for the attribute 'FLAT RATE CIS YEARLY'. + * @see TaxationWithRoot.Constants#getFLAT_RATE_CIS_YEARLY() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_CIS_YEARLY(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT FLAT RATE FOR TRAVEL EXPENSE PER UNIT}'. + * + * + * @return the meta object for the attribute 'FLAT RATE FOR TRAVEL EXPENSE PER UNIT'. + * @see TaxationWithRoot.Constants#getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS MAXIMUM DEDUCTIBLE AMOUNT FOR DS}'. + * + * + * @return the meta object for the attribute 'MAXIMUM DEDUCTIBLE AMOUNT FOR DS'. + * @see TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE FLAT RATE FOR MISCELLANEOUS EXPENSE}'. + * + * + * @return the meta object for the attribute 'FLAT RATE FOR MISCELLANEOUS EXPENSE'. + * @see TaxationWithRoot.Constants#getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE}'. + * + * + * @return the meta object for the attribute 'DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE'. + * @see TaxationWithRoot.Constants#getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE}'. + * + * + * @return the meta object for the attribute 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE'. + * @see TaxationWithRoot.Constants#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE() + * @see #getConstants() + * @generated + */ + EAttribute getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Income_Tax Income Tax}'. + * + * + * @return the meta object for class 'Income Tax'. + * @see TaxationWithRoot.Income_Tax + * @generated + */ + EClass getIncome_Tax(); + + /** + * Returns the meta object for the reference '{@link TaxationWithRoot.Income_Tax#getTaxPayer Tax Payer}'. + * + * + * @return the meta object for the reference 'Tax Payer'. + * @see TaxationWithRoot.Income_Tax#getTaxPayer() + * @see #getIncome_Tax() + * @generated + */ + EReference getIncome_Tax_TaxPayer(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income_Tax#getTax_amount Tax amount}'. + * + * + * @return the meta object for the attribute 'Tax amount'. + * @see TaxationWithRoot.Income_Tax#getTax_amount() + * @see #getIncome_Tax() + * @generated + */ + EAttribute getIncome_Tax_Tax_amount(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income_Tax#getTax_year Tax year}'. + * + * + * @return the meta object for the attribute 'Tax year'. + * @see TaxationWithRoot.Income_Tax#getTax_year() + * @see #getIncome_Tax() + * @generated + */ + EAttribute getIncome_Tax_Tax_year(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income_Tax#getId6 Id6}'. + * + * + * @return the meta object for the attribute 'Id6'. + * @see TaxationWithRoot.Income_Tax#getId6() + * @see #getIncome_Tax() + * @generated + */ + EAttribute getIncome_Tax_Id6(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Tax_Payer Tax Payer}'. + * + * + * @return the meta object for class 'Tax Payer'. + * @see TaxationWithRoot.Tax_Payer + * @generated + */ + EClass getTax_Payer(); + + /** + * Returns the meta object for the containment reference list '{@link TaxationWithRoot.Tax_Payer#getDependents Dependents}'. + * + * + * @return the meta object for the containment reference list 'Dependents'. + * @see TaxationWithRoot.Tax_Payer#getDependents() + * @see #getTax_Payer() + * @generated + */ + EReference getTax_Payer_Dependents(); + + /** + * Returns the meta object for the containment reference '{@link TaxationWithRoot.Tax_Payer#getFrom_agent From agent}'. + * + * + * @return the meta object for the containment reference 'From agent'. + * @see TaxationWithRoot.Tax_Payer#getFrom_agent() + * @see #getTax_Payer() + * @generated + */ + EReference getTax_Payer_From_agent(); + + /** + * Returns the meta object for the containment reference list '{@link TaxationWithRoot.Tax_Payer#getIncomes Incomes}'. + * + * + * @return the meta object for the containment reference list 'Incomes'. + * @see TaxationWithRoot.Tax_Payer#getIncomes() + * @see #getTax_Payer() + * @generated + */ + EReference getTax_Payer_Incomes(); + + /** + * Returns the meta object for the containment reference '{@link TaxationWithRoot.Tax_Payer#getFrom_law From law}'. + * + * + * @return the meta object for the containment reference 'From law'. + * @see TaxationWithRoot.Tax_Payer#getFrom_law() + * @see #getTax_Payer() + * @generated + */ + EReference getTax_Payer_From_law(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Physical_Person Physical Person}'. + * + * + * @return the meta object for class 'Physical Person'. + * @see TaxationWithRoot.Physical_Person + * @generated + */ + EClass getPhysical_Person(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Physical_Person#getSSNo SS No}'. + * + * + * @return the meta object for the attribute 'SS No'. + * @see TaxationWithRoot.Physical_Person#getSSNo() + * @see #getPhysical_Person() + * @generated + */ + EAttribute getPhysical_Person_SSNo(); + + /** + * Returns the meta object for the reference list '{@link TaxationWithRoot.Physical_Person#getAddresses Addresses}'. + * + * + * @return the meta object for the reference list 'Addresses'. + * @see TaxationWithRoot.Physical_Person#getAddresses() + * @see #getPhysical_Person() + * @generated + */ + EReference getPhysical_Person_Addresses(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Physical_Person#getBirth_year Birth year}'. + * + * + * @return the meta object for the attribute 'Birth year'. + * @see TaxationWithRoot.Physical_Person#getBirth_year() + * @see #getPhysical_Person() + * @generated + */ + EAttribute getPhysical_Person_Birth_year(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Physical_Person#getDisability_percentage Disability percentage}'. + * + * + * @return the meta object for the attribute 'Disability percentage'. + * @see TaxationWithRoot.Physical_Person#getDisability_percentage() + * @see #getPhysical_Person() + * @generated + */ + EAttribute getPhysical_Person_Disability_percentage(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Physical_Person#getDisability_type Disability type}'. + * + * + * @return the meta object for the attribute 'Disability type'. + * @see TaxationWithRoot.Physical_Person#getDisability_type() + * @see #getPhysical_Person() + * @generated + */ + EAttribute getPhysical_Person_Disability_type(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Physical_Person#getBirth_month Birth month}'. + * + * + * @return the meta object for the attribute 'Birth month'. + * @see TaxationWithRoot.Physical_Person#getBirth_month() + * @see #getPhysical_Person() + * @generated + */ + EAttribute getPhysical_Person_Birth_month(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Physical_Person#getBirth_day Birth day}'. + * + * + * @return the meta object for the attribute 'Birth day'. + * @see TaxationWithRoot.Physical_Person#getBirth_day() + * @see #getPhysical_Person() + * @generated + */ + EAttribute getPhysical_Person_Birth_day(); + + /** + * Returns the meta object for the reference list '{@link TaxationWithRoot.Physical_Person#getExpenses Expenses}'. + * + * + * @return the meta object for the reference list 'Expenses'. + * @see TaxationWithRoot.Physical_Person#getExpenses() + * @see #getPhysical_Person() + * @generated + */ + EReference getPhysical_Person_Expenses(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Physical_Person#isIs_widower Is widower}'. + * + * + * @return the meta object for the attribute 'Is widower'. + * @see TaxationWithRoot.Physical_Person#isIs_widower() + * @see #getPhysical_Person() + * @generated + */ + EAttribute getPhysical_Person_Is_widower(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Address Address}'. + * + * + * @return the meta object for class 'Address'. + * @see TaxationWithRoot.Address + * @generated + */ + EClass getAddress(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Address#getCountry Country}'. + * + * + * @return the meta object for the attribute 'Country'. + * @see TaxationWithRoot.Address#getCountry() + * @see #getAddress() + * @generated + */ + EAttribute getAddress_Country(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Address#getStreet Street}'. + * + * + * @return the meta object for the attribute 'Street'. + * @see TaxationWithRoot.Address#getStreet() + * @see #getAddress() + * @generated + */ + EAttribute getAddress_Street(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Address#getZipCode Zip Code}'. + * + * + * @return the meta object for the attribute 'Zip Code'. + * @see TaxationWithRoot.Address#getZipCode() + * @see #getAddress() + * @generated + */ + EAttribute getAddress_ZipCode(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Address#getCity City}'. + * + * + * @return the meta object for the attribute 'City'. + * @see TaxationWithRoot.Address#getCity() + * @see #getAddress() + * @generated + */ + EAttribute getAddress_City(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Address#getId2 Id2}'. + * + * + * @return the meta object for the attribute 'Id2'. + * @see TaxationWithRoot.Address#getId2() + * @see #getAddress() + * @generated + */ + EAttribute getAddress_Id2(); + + /** + * Returns the meta object for the reference list '{@link TaxationWithRoot.Address#getTaxPayer Tax Payer}'. + * + * + * @return the meta object for the reference list 'Tax Payer'. + * @see TaxationWithRoot.Address#getTaxPayer() + * @see #getAddress() + * @generated + */ + EReference getAddress_TaxPayer(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Expense Expense}'. + * + * + * @return the meta object for class 'Expense'. + * @see TaxationWithRoot.Expense + * @generated + */ + EClass getExpense(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Expense#getDeclared_amount Declared amount}'. + * + * + * @return the meta object for the attribute 'Declared amount'. + * @see TaxationWithRoot.Expense#getDeclared_amount() + * @see #getExpense() + * @generated + */ + EAttribute getExpense_Declared_amount(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Expense#getExpense_purpose Expense purpose}'. + * + * + * @return the meta object for the attribute 'Expense purpose'. + * @see TaxationWithRoot.Expense#getExpense_purpose() + * @see #getExpense() + * @generated + */ + EAttribute getExpense_Expense_purpose(); + + /** + * Returns the meta object for the reference '{@link TaxationWithRoot.Expense#getDependent Dependent}'. + * + * + * @return the meta object for the reference 'Dependent'. + * @see TaxationWithRoot.Expense#getDependent() + * @see #getExpense() + * @generated + */ + EReference getExpense_Dependent(); + + /** + * Returns the meta object for the reference '{@link TaxationWithRoot.Expense#getFrom_agent From agent}'. + * + * + * @return the meta object for the reference 'From agent'. + * @see TaxationWithRoot.Expense#getFrom_agent() + * @see #getExpense() + * @generated + */ + EReference getExpense_From_agent(); + + /** + * Returns the meta object for the container reference '{@link TaxationWithRoot.Expense#getIncome Income}'. + * + * + * @return the meta object for the container reference 'Income'. + * @see TaxationWithRoot.Expense#getIncome() + * @see #getExpense() + * @generated + */ + EReference getExpense_Income(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Expense#getId4 Id4}'. + * + * + * @return the meta object for the attribute 'Id4'. + * @see TaxationWithRoot.Expense#getId4() + * @see #getExpense() + * @generated + */ + EAttribute getExpense_Id4(); + + /** + * Returns the meta object for the reference '{@link TaxationWithRoot.Expense#getBeneficiary Beneficiary}'. + * + * + * @return the meta object for the reference 'Beneficiary'. + * @see TaxationWithRoot.Expense#getBeneficiary() + * @see #getExpense() + * @generated + */ + EReference getExpense_Beneficiary(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Dependent Dependent}'. + * + * + * @return the meta object for class 'Dependent'. + * @see TaxationWithRoot.Dependent + * @generated + */ + EClass getDependent(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Dependent#getDependent_type Dependent type}'. + * + * + * @return the meta object for the attribute 'Dependent type'. + * @see TaxationWithRoot.Dependent#getDependent_type() + * @see #getDependent() + * @generated + */ + EAttribute getDependent_Dependent_type(); + + /** + * Returns the meta object for the container reference '{@link TaxationWithRoot.Dependent#getResponsible_person Responsible person}'. + * + * + * @return the meta object for the container reference 'Responsible person'. + * @see TaxationWithRoot.Dependent#getResponsible_person() + * @see #getDependent() + * @generated + */ + EReference getDependent_Responsible_person(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Dependent#isContinued_studies Continued studies}'. + * + * + * @return the meta object for the attribute 'Continued studies'. + * @see TaxationWithRoot.Dependent#isContinued_studies() + * @see #getDependent() + * @generated + */ + EAttribute getDependent_Continued_studies(); + + /** + * Returns the meta object for the containment reference '{@link TaxationWithRoot.Dependent#getAllowances Allowances}'. + * + * + * @return the meta object for the containment reference 'Allowances'. + * @see TaxationWithRoot.Dependent#getAllowances() + * @see #getDependent() + * @generated + */ + EReference getDependent_Allowances(); + + /** + * Returns the meta object for the container reference '{@link TaxationWithRoot.Dependent#getHousehold Household}'. + * + * + * @return the meta object for the container reference 'Household'. + * @see TaxationWithRoot.Dependent#getHousehold() + * @see #getDependent() + * @generated + */ + EReference getDependent_Household(); + + /** + * Returns the meta object for the reference '{@link TaxationWithRoot.Dependent#getFrom_agent From agent}'. + * + * + * @return the meta object for the reference 'From agent'. + * @see TaxationWithRoot.Dependent#getFrom_agent() + * @see #getDependent() + * @generated + */ + EReference getDependent_From_agent(); + + /** + * Returns the meta object for the reference list '{@link TaxationWithRoot.Dependent#getExpense Expense}'. + * + * + * @return the meta object for the reference list 'Expense'. + * @see TaxationWithRoot.Dependent#getExpense() + * @see #getDependent() + * @generated + */ + EReference getDependent_Expense(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.External_Allowance External Allowance}'. + * + * + * @return the meta object for class 'External Allowance'. + * @see TaxationWithRoot.External_Allowance + * @generated + */ + EClass getExternal_Allowance(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.External_Allowance#getGrantor Grantor}'. + * + * + * @return the meta object for the attribute 'Grantor'. + * @see TaxationWithRoot.External_Allowance#getGrantor() + * @see #getExternal_Allowance() + * @generated + */ + EAttribute getExternal_Allowance_Grantor(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.External_Allowance#getStarting_year Starting year}'. + * + * + * @return the meta object for the attribute 'Starting year'. + * @see TaxationWithRoot.External_Allowance#getStarting_year() + * @see #getExternal_Allowance() + * @generated + */ + EAttribute getExternal_Allowance_Starting_year(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.External_Allowance#getEnding_year Ending year}'. + * + * + * @return the meta object for the attribute 'Ending year'. + * @see TaxationWithRoot.External_Allowance#getEnding_year() + * @see #getExternal_Allowance() + * @generated + */ + EAttribute getExternal_Allowance_Ending_year(); + + /** + * Returns the meta object for the reference '{@link TaxationWithRoot.External_Allowance#getReciver Reciver}'. + * + * + * @return the meta object for the reference 'Reciver'. + * @see TaxationWithRoot.External_Allowance#getReciver() + * @see #getExternal_Allowance() + * @generated + */ + EReference getExternal_Allowance_Reciver(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.External_Allowance#getId5 Id5}'. + * + * + * @return the meta object for the attribute 'Id5'. + * @see TaxationWithRoot.External_Allowance#getId5() + * @see #getExternal_Allowance() + * @generated + */ + EAttribute getExternal_Allowance_Id5(); + + /** + * Returns the meta object for the container reference '{@link TaxationWithRoot.External_Allowance#getPerson Person}'. + * + * + * @return the meta object for the container reference 'Person'. + * @see TaxationWithRoot.External_Allowance#getPerson() + * @see #getExternal_Allowance() + * @generated + */ + EReference getExternal_Allowance_Person(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Household Household}'. + * + * + * @return the meta object for class 'Household'. + * @see TaxationWithRoot.Household + * @generated + */ + EClass getHousehold(); + + /** + * Returns the meta object for the containment reference '{@link TaxationWithRoot.Household#getParents Parents}'. + * + * + * @return the meta object for the containment reference 'Parents'. + * @see TaxationWithRoot.Household#getParents() + * @see #getHousehold() + * @generated + */ + EReference getHousehold_Parents(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Household#getId1 Id1}'. + * + * + * @return the meta object for the attribute 'Id1'. + * @see TaxationWithRoot.Household#getId1() + * @see #getHousehold() + * @generated + */ + EAttribute getHousehold_Id1(); + + /** + * Returns the meta object for the containment reference list '{@link TaxationWithRoot.Household#getChildren Children}'. + * + * + * @return the meta object for the containment reference list 'Children'. + * @see TaxationWithRoot.Household#getChildren() + * @see #getHousehold() + * @generated + */ + EReference getHousehold_Children(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Legal_Union_Record Legal Union Record}'. + * + * + * @return the meta object for class 'Legal Union Record'. + * @see TaxationWithRoot.Legal_Union_Record + * @generated + */ + EClass getLegal_Union_Record(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Legal_Union_Record#getStart_year Start year}'. + * + * + * @return the meta object for the attribute 'Start year'. + * @see TaxationWithRoot.Legal_Union_Record#getStart_year() + * @see #getLegal_Union_Record() + * @generated + */ + EAttribute getLegal_Union_Record_Start_year(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Legal_Union_Record#getEnd_year End year}'. + * + * + * @return the meta object for the attribute 'End year'. + * @see TaxationWithRoot.Legal_Union_Record#getEnd_year() + * @see #getLegal_Union_Record() + * @generated + */ + EAttribute getLegal_Union_Record_End_year(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Legal_Union_Record#getSeparation_cause Separation cause}'. + * + * + * @return the meta object for the attribute 'Separation cause'. + * @see TaxationWithRoot.Legal_Union_Record#getSeparation_cause() + * @see #getLegal_Union_Record() + * @generated + */ + EAttribute getLegal_Union_Record_Separation_cause(); + + /** + * Returns the meta object for the containment reference '{@link TaxationWithRoot.Legal_Union_Record#getIndividual_A Individual A}'. + * + * + * @return the meta object for the containment reference 'Individual A'. + * @see TaxationWithRoot.Legal_Union_Record#getIndividual_A() + * @see #getLegal_Union_Record() + * @generated + */ + EReference getLegal_Union_Record_Individual_A(); + + /** + * Returns the meta object for the containment reference list '{@link TaxationWithRoot.Legal_Union_Record#getIndividual_B Individual B}'. + * + * + * @return the meta object for the containment reference list 'Individual B'. + * @see TaxationWithRoot.Legal_Union_Record#getIndividual_B() + * @see #getLegal_Union_Record() + * @generated + */ + EReference getLegal_Union_Record_Individual_B(); + + /** + * Returns the meta object for the containment reference list '{@link TaxationWithRoot.Legal_Union_Record#getProperties Properties}'. + * + * + * @return the meta object for the containment reference list 'Properties'. + * @see TaxationWithRoot.Legal_Union_Record#getProperties() + * @see #getLegal_Union_Record() + * @generated + */ + EReference getLegal_Union_Record_Properties(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Legal_Union_Record#isMutual_agreement Mutual agreement}'. + * + * + * @return the meta object for the attribute 'Mutual agreement'. + * @see TaxationWithRoot.Legal_Union_Record#isMutual_agreement() + * @see #getLegal_Union_Record() + * @generated + */ + EAttribute getLegal_Union_Record_Mutual_agreement(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Legal_Union_Record#getId9 Id9}'. + * + * + * @return the meta object for the attribute 'Id9'. + * @see TaxationWithRoot.Legal_Union_Record#getId9() + * @see #getLegal_Union_Record() + * @generated + */ + EAttribute getLegal_Union_Record_Id9(); + + /** + * Returns the meta object for the container reference '{@link TaxationWithRoot.Legal_Union_Record#getHousehold Household}'. + * + * + * @return the meta object for the container reference 'Household'. + * @see TaxationWithRoot.Legal_Union_Record#getHousehold() + * @see #getLegal_Union_Record() + * @generated + */ + EReference getLegal_Union_Record_Household(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Tax_Property Tax Property}'. + * + * + * @return the meta object for class 'Tax Property'. + * @see TaxationWithRoot.Tax_Property + * @generated + */ + EClass getTax_Property(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Property#getStarting_year Starting year}'. + * + * + * @return the meta object for the attribute 'Starting year'. + * @see TaxationWithRoot.Tax_Property#getStarting_year() + * @see #getTax_Property() + * @generated + */ + EAttribute getTax_Property_Starting_year(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Property#getId10 Id10}'. + * + * + * @return the meta object for the attribute 'Id10'. + * @see TaxationWithRoot.Tax_Property#getId10() + * @see #getTax_Property() + * @generated + */ + EAttribute getTax_Property_Id10(); + + /** + * Returns the meta object for the container reference '{@link TaxationWithRoot.Tax_Property#getUnion_record Union record}'. + * + * + * @return the meta object for the container reference 'Union record'. + * @see TaxationWithRoot.Tax_Property#getUnion_record() + * @see #getTax_Property() + * @generated + */ + EReference getTax_Property_Union_record(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Tax_Case Tax Case}'. + * + * + * @return the meta object for class 'Tax Case'. + * @see TaxationWithRoot.Tax_Case + * @generated + */ + EClass getTax_Case(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.FromAgent From Agent}'. + * + * + * @return the meta object for class 'From Agent'. + * @see TaxationWithRoot.FromAgent + * @generated + */ + EClass getFromAgent(); + + /** + * Returns the meta object for the container reference '{@link TaxationWithRoot.FromAgent#getTaxPayer Tax Payer}'. + * + * + * @return the meta object for the container reference 'Tax Payer'. + * @see TaxationWithRoot.FromAgent#getTaxPayer() + * @see #getFromAgent() + * @generated + */ + EReference getFromAgent_TaxPayer(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.FromAgent#isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care Is dependent eligible for CE Not In Houshold Children Care}'. + * + * + * @return the meta object for the attribute 'Is dependent eligible for CE Not In Houshold Children Care'. + * @see TaxationWithRoot.FromAgent#isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care() + * @see #getFromAgent() + * @generated + */ + EAttribute getFromAgent_Is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care(); + + /** + * Returns the meta object for the reference '{@link TaxationWithRoot.FromAgent#getExpense Expense}'. + * + * + * @return the meta object for the reference 'Expense'. + * @see TaxationWithRoot.FromAgent#getExpense() + * @see #getFromAgent() + * @generated + */ + EReference getFromAgent_Expense(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.FromAgent#isIs_eligible_debt Is eligible debt}'. + * + * + * @return the meta object for the attribute 'Is eligible debt'. + * @see TaxationWithRoot.FromAgent#isIs_eligible_debt() + * @see #getFromAgent() + * @generated + */ + EAttribute getFromAgent_Is_eligible_debt(); + + /** + * Returns the meta object for the reference '{@link TaxationWithRoot.FromAgent#getDependent Dependent}'. + * + * + * @return the meta object for the reference 'Dependent'. + * @see TaxationWithRoot.FromAgent#getDependent() + * @see #getFromAgent() + * @generated + */ + EReference getFromAgent_Dependent(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Income Income}'. + * + * + * @return the meta object for class 'Income'. + * @see TaxationWithRoot.Income + * @generated + */ + EClass getIncome(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income#getIncome_amount Income amount}'. + * + * + * @return the meta object for the attribute 'Income amount'. + * @see TaxationWithRoot.Income#getIncome_amount() + * @see #getIncome() + * @generated + */ + EAttribute getIncome_Income_amount(); + + /** + * Returns the meta object for the containment reference '{@link TaxationWithRoot.Income#getIncome_type Income type}'. + * + * + * @return the meta object for the containment reference 'Income type'. + * @see TaxationWithRoot.Income#getIncome_type() + * @see #getIncome() + * @generated + */ + EReference getIncome_Income_type(); + + /** + * Returns the meta object for the containment reference '{@link TaxationWithRoot.Income#getTax_card Tax card}'. + * + * + * @return the meta object for the containment reference 'Tax card'. + * @see TaxationWithRoot.Income#getTax_card() + * @see #getIncome() + * @generated + */ + EReference getIncome_Tax_card(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income#getTax_liability Tax liability}'. + * + * + * @return the meta object for the attribute 'Tax liability'. + * @see TaxationWithRoot.Income#getTax_liability() + * @see #getIncome() + * @generated + */ + EAttribute getIncome_Tax_liability(); + + /** + * Returns the meta object for the container reference '{@link TaxationWithRoot.Income#getTaxPayer Tax Payer}'. + * + * + * @return the meta object for the container reference 'Tax Payer'. + * @see TaxationWithRoot.Income#getTaxPayer() + * @see #getIncome() + * @generated + */ + EReference getIncome_TaxPayer(); + + /** + * Returns the meta object for the containment reference list '{@link TaxationWithRoot.Income#getDetails Details}'. + * + * + * @return the meta object for the containment reference list 'Details'. + * @see TaxationWithRoot.Income#getDetails() + * @see #getIncome() + * @generated + */ + EReference getIncome_Details(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income#getNum Num}'. + * + * + * @return the meta object for the attribute 'Num'. + * @see TaxationWithRoot.Income#getNum() + * @see #getIncome() + * @generated + */ + EAttribute getIncome_Num(); + + /** + * Returns the meta object for the containment reference list '{@link TaxationWithRoot.Income#getExpenses Expenses}'. + * + * + * @return the meta object for the containment reference list 'Expenses'. + * @see TaxationWithRoot.Income#getExpenses() + * @see #getIncome() + * @generated + */ + EReference getIncome_Expenses(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Income_Type Income Type}'. + * + * + * @return the meta object for class 'Income Type'. + * @see TaxationWithRoot.Income_Type + * @generated + */ + EClass getIncome_Type(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income_Type#getId8 Id8}'. + * + * + * @return the meta object for the attribute 'Id8'. + * @see TaxationWithRoot.Income_Type#getId8() + * @see #getIncome_Type() + * @generated + */ + EAttribute getIncome_Type_Id8(); + + /** + * Returns the meta object for the container reference '{@link TaxationWithRoot.Income_Type#getIncome Income}'. + * + * + * @return the meta object for the container reference 'Income'. + * @see TaxationWithRoot.Income_Type#getIncome() + * @see #getIncome_Type() + * @generated + */ + EReference getIncome_Type_Income(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Tax_Card Tax Card}'. + * + * + * @return the meta object for class 'Tax Card'. + * @see TaxationWithRoot.Tax_Card + * @generated + */ + EClass getTax_Card(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getCard_identifier Card identifier}'. + * + * + * @return the meta object for the attribute 'Card identifier'. + * @see TaxationWithRoot.Tax_Card#getCard_identifier() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Card_identifier(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getTax_office Tax office}'. + * + * + * @return the meta object for the attribute 'Tax office'. + * @see TaxationWithRoot.Tax_Card#getTax_office() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Tax_office(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getPercentage_of_witholding Percentage of witholding}'. + * + * + * @return the meta object for the attribute 'Percentage of witholding'. + * @see TaxationWithRoot.Tax_Card#getPercentage_of_witholding() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Percentage_of_witholding(); + + /** + * Returns the meta object for the attribute list '{@link TaxationWithRoot.Tax_Card#getTax_payers_name_surname Tax payers name surname}'. + * + * + * @return the meta object for the attribute list 'Tax payers name surname'. + * @see TaxationWithRoot.Tax_Card#getTax_payers_name_surname() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Tax_payers_name_surname(); + + /** + * Returns the meta object for the attribute list '{@link TaxationWithRoot.Tax_Card#getTax_payers_partner_name_surname Tax payers partner name surname}'. + * + * + * @return the meta object for the attribute list 'Tax payers partner name surname'. + * @see TaxationWithRoot.Tax_Card#getTax_payers_partner_name_surname() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Tax_payers_partner_name_surname(); + + /** + * Returns the meta object for the reference '{@link TaxationWithRoot.Tax_Card#getTax_payers_address Tax payers address}'. + * + * + * @return the meta object for the reference 'Tax payers address'. + * @see TaxationWithRoot.Tax_Card#getTax_payers_address() + * @see #getTax_Card() + * @generated + */ + EReference getTax_Card_Tax_payers_address(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getJobs_Employer_SSNo Jobs Employer SS No}'. + * + * + * @return the meta object for the attribute 'Jobs Employer SS No'. + * @see TaxationWithRoot.Tax_Card#getJobs_Employer_SSNo() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Jobs_Employer_SSNo(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getJobs_employers_name Jobs employers name}'. + * + * + * @return the meta object for the attribute 'Jobs employers name'. + * @see TaxationWithRoot.Tax_Card#getJobs_employers_name() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Jobs_employers_name(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getJobs_activity_type Jobs activity type}'. + * + * + * @return the meta object for the attribute 'Jobs activity type'. + * @see TaxationWithRoot.Tax_Card#getJobs_activity_type() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Jobs_activity_type(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getJobs_place_of_work Jobs place of work}'. + * + * + * @return the meta object for the attribute 'Jobs place of work'. + * @see TaxationWithRoot.Tax_Card#getJobs_place_of_work() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Jobs_place_of_work(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getDeduction_FD_daily Deduction FD daily}'. + * + * + * @return the meta object for the attribute 'Deduction FD daily'. + * @see TaxationWithRoot.Tax_Card#getDeduction_FD_daily() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_FD_daily(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getDeduction_FD_monthly Deduction FD monthly}'. + * + * + * @return the meta object for the attribute 'Deduction FD monthly'. + * @see TaxationWithRoot.Tax_Card#getDeduction_FD_monthly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_FD_monthly(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getDeduction_AC_daily Deduction AC daily}'. + * + * + * @return the meta object for the attribute 'Deduction AC daily'. + * @see TaxationWithRoot.Tax_Card#getDeduction_AC_daily() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_AC_daily(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getDeduction_AC_monthly Deduction AC monthly}'. + * + * + * @return the meta object for the attribute 'Deduction AC monthly'. + * @see TaxationWithRoot.Tax_Card#getDeduction_AC_monthly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_AC_monthly(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getDeduction_AC_yearly Deduction AC yearly}'. + * + * + * @return the meta object for the attribute 'Deduction AC yearly'. + * @see TaxationWithRoot.Tax_Card#getDeduction_AC_yearly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_AC_yearly(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getDeduction_CE_daily Deduction CE daily}'. + * + * + * @return the meta object for the attribute 'Deduction CE daily'. + * @see TaxationWithRoot.Tax_Card#getDeduction_CE_daily() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_CE_daily(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getDeduction_CE_monthly Deduction CE monthly}'. + * + * + * @return the meta object for the attribute 'Deduction CE monthly'. + * @see TaxationWithRoot.Tax_Card#getDeduction_CE_monthly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_CE_monthly(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getDeduction_CE_yearly Deduction CE yearly}'. + * + * + * @return the meta object for the attribute 'Deduction CE yearly'. + * @see TaxationWithRoot.Tax_Card#getDeduction_CE_yearly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_CE_yearly(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getDeduction_DS_daily Deduction DS daily}'. + * + * + * @return the meta object for the attribute 'Deduction DS daily'. + * @see TaxationWithRoot.Tax_Card#getDeduction_DS_daily() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_DS_daily(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getDeduction_DS_monthly Deduction DS monthly}'. + * + * + * @return the meta object for the attribute 'Deduction DS monthly'. + * @see TaxationWithRoot.Tax_Card#getDeduction_DS_monthly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_DS_monthly(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getDeduction_FO_daily Deduction FO daily}'. + * + * + * @return the meta object for the attribute 'Deduction FO daily'. + * @see TaxationWithRoot.Tax_Card#getDeduction_FO_daily() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_FO_daily(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getDeduction_FO_monthly Deduction FO monthly}'. + * + * + * @return the meta object for the attribute 'Deduction FO monthly'. + * @see TaxationWithRoot.Tax_Card#getDeduction_FO_monthly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_FO_monthly(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getDeduction_FO_yearly Deduction FO yearly}'. + * + * + * @return the meta object for the attribute 'Deduction FO yearly'. + * @see TaxationWithRoot.Tax_Card#getDeduction_FO_yearly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_FO_yearly(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getCredit_CIS_daily Credit CIS daily}'. + * + * + * @return the meta object for the attribute 'Credit CIS daily'. + * @see TaxationWithRoot.Tax_Card#getCredit_CIS_daily() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Credit_CIS_daily(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getCredit_CIS_monthly Credit CIS monthly}'. + * + * + * @return the meta object for the attribute 'Credit CIS monthly'. + * @see TaxationWithRoot.Tax_Card#getCredit_CIS_monthly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Credit_CIS_monthly(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getCredit_CIM_daily Credit CIM daily}'. + * + * + * @return the meta object for the attribute 'Credit CIM daily'. + * @see TaxationWithRoot.Tax_Card#getCredit_CIM_daily() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Credit_CIM_daily(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#isValidity Validity}'. + * + * + * @return the meta object for the attribute 'Validity'. + * @see TaxationWithRoot.Tax_Card#isValidity() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Validity(); + + /** + * Returns the meta object for the reference list '{@link TaxationWithRoot.Tax_Card#getIncome_Tax_Credit Income Tax Credit}'. + * + * + * @return the meta object for the reference list 'Income Tax Credit'. + * @see TaxationWithRoot.Tax_Card#getIncome_Tax_Credit() + * @see #getTax_Card() + * @generated + */ + EReference getTax_Card_Income_Tax_Credit(); + + /** + * Returns the meta object for the reference '{@link TaxationWithRoot.Tax_Card#getPrevious Previous}'. + * + * + * @return the meta object for the reference 'Previous'. + * @see TaxationWithRoot.Tax_Card#getPrevious() + * @see #getTax_Card() + * @generated + */ + EReference getTax_Card_Previous(); + + /** + * Returns the meta object for the reference '{@link TaxationWithRoot.Tax_Card#getCurrent_tax_card Current tax card}'. + * + * + * @return the meta object for the reference 'Current tax card'. + * @see TaxationWithRoot.Tax_Card#getCurrent_tax_card() + * @see #getTax_Card() + * @generated + */ + EReference getTax_Card_Current_tax_card(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getCredit_CIM_yearly Credit CIM yearly}'. + * + * + * @return the meta object for the attribute 'Credit CIM yearly'. + * @see TaxationWithRoot.Tax_Card#getCredit_CIM_yearly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Credit_CIM_yearly(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getDeduction_DS_Alimony_yearly Deduction DS Alimony yearly}'. + * + * + * @return the meta object for the attribute 'Deduction DS Alimony yearly'. + * @see TaxationWithRoot.Tax_Card#getDeduction_DS_Alimony_yearly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_DS_Alimony_yearly(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Tax_Card#getDeduction_DS_Debt_yearly Deduction DS Debt yearly}'. + * + * + * @return the meta object for the attribute 'Deduction DS Debt yearly'. + * @see TaxationWithRoot.Tax_Card#getDeduction_DS_Debt_yearly() + * @see #getTax_Card() + * @generated + */ + EAttribute getTax_Card_Deduction_DS_Debt_yearly(); + + /** + * Returns the meta object for the container reference '{@link TaxationWithRoot.Tax_Card#getIncome Income}'. + * + * + * @return the meta object for the container reference 'Income'. + * @see TaxationWithRoot.Tax_Card#getIncome() + * @see #getTax_Card() + * @generated + */ + EReference getTax_Card_Income(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Income_Tax_Credit Income Tax Credit}'. + * + * + * @return the meta object for class 'Income Tax Credit'. + * @see TaxationWithRoot.Income_Tax_Credit + * @generated + */ + EClass getIncome_Tax_Credit(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income_Tax_Credit#getGrantedBy Granted By}'. + * + * + * @return the meta object for the attribute 'Granted By'. + * @see TaxationWithRoot.Income_Tax_Credit#getGrantedBy() + * @see #getIncome_Tax_Credit() + * @generated + */ + EAttribute getIncome_Tax_Credit_GrantedBy(); + + /** + * Returns the meta object for the reference '{@link TaxationWithRoot.Income_Tax_Credit#getTaxPayer Tax Payer}'. + * + * + * @return the meta object for the reference 'Tax Payer'. + * @see TaxationWithRoot.Income_Tax_Credit#getTaxPayer() + * @see #getIncome_Tax_Credit() + * @generated + */ + EReference getIncome_Tax_Credit_TaxPayer(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income_Tax_Credit#getTax_year Tax year}'. + * + * + * @return the meta object for the attribute 'Tax year'. + * @see TaxationWithRoot.Income_Tax_Credit#getTax_year() + * @see #getIncome_Tax_Credit() + * @generated + */ + EAttribute getIncome_Tax_Credit_Tax_year(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income_Tax_Credit#getYearly Yearly}'. + * + * + * @return the meta object for the attribute 'Yearly'. + * @see TaxationWithRoot.Income_Tax_Credit#getYearly() + * @see #getIncome_Tax_Credit() + * @generated + */ + EAttribute getIncome_Tax_Credit_Yearly(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income_Tax_Credit#getMonthly Monthly}'. + * + * + * @return the meta object for the attribute 'Monthly'. + * @see TaxationWithRoot.Income_Tax_Credit#getMonthly() + * @see #getIncome_Tax_Credit() + * @generated + */ + EAttribute getIncome_Tax_Credit_Monthly(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income_Tax_Credit#getDaily Daily}'. + * + * + * @return the meta object for the attribute 'Daily'. + * @see TaxationWithRoot.Income_Tax_Credit#getDaily() + * @see #getIncome_Tax_Credit() + * @generated + */ + EAttribute getIncome_Tax_Credit_Daily(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income_Tax_Credit#getId7 Id7}'. + * + * + * @return the meta object for the attribute 'Id7'. + * @see TaxationWithRoot.Income_Tax_Credit#getId7() + * @see #getIncome_Tax_Credit() + * @generated + */ + EAttribute getIncome_Tax_Credit_Id7(); + + /** + * Returns the meta object for the reference '{@link TaxationWithRoot.Income_Tax_Credit#getTaxation_Frame Taxation Frame}'. + * + * + * @return the meta object for the reference 'Taxation Frame'. + * @see TaxationWithRoot.Income_Tax_Credit#getTaxation_Frame() + * @see #getIncome_Tax_Credit() + * @generated + */ + EReference getIncome_Tax_Credit_Taxation_Frame(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Income_Detail Income Detail}'. + * + * + * @return the meta object for class 'Income Detail'. + * @see TaxationWithRoot.Income_Detail + * @generated + */ + EClass getIncome_Detail(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income_Detail#getAmount Amount}'. + * + * + * @return the meta object for the attribute 'Amount'. + * @see TaxationWithRoot.Income_Detail#getAmount() + * @see #getIncome_Detail() + * @generated + */ + EAttribute getIncome_Detail_Amount(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income_Detail#isIs_worked Is worked}'. + * + * + * @return the meta object for the attribute 'Is worked'. + * @see TaxationWithRoot.Income_Detail#isIs_worked() + * @see #getIncome_Detail() + * @generated + */ + EAttribute getIncome_Detail_Is_worked(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income_Detail#getDistance Distance}'. + * + * + * @return the meta object for the attribute 'Distance'. + * @see TaxationWithRoot.Income_Detail#getDistance() + * @see #getIncome_Detail() + * @generated + */ + EAttribute getIncome_Detail_Distance(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income_Detail#getWorked_days Worked days}'. + * + * + * @return the meta object for the attribute 'Worked days'. + * @see TaxationWithRoot.Income_Detail#getWorked_days() + * @see #getIncome_Detail() + * @generated + */ + EAttribute getIncome_Detail_Worked_days(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income_Detail#isIs_contributing_CNS Is contributing CNS}'. + * + * + * @return the meta object for the attribute 'Is contributing CNS'. + * @see TaxationWithRoot.Income_Detail#isIs_contributing_CNS() + * @see #getIncome_Detail() + * @generated + */ + EAttribute getIncome_Detail_Is_contributing_CNS(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Income_Detail#getId5 Id5}'. + * + * + * @return the meta object for the attribute 'Id5'. + * @see TaxationWithRoot.Income_Detail#getId5() + * @see #getIncome_Detail() + * @generated + */ + EAttribute getIncome_Detail_Id5(); + + /** + * Returns the meta object for the container reference '{@link TaxationWithRoot.Income_Detail#getIncome Income}'. + * + * + * @return the meta object for the container reference 'Income'. + * @see TaxationWithRoot.Income_Detail#getIncome() + * @see #getIncome_Detail() + * @generated + */ + EReference getIncome_Detail_Income(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.FromLaw From Law}'. + * + * + * @return the meta object for class 'From Law'. + * @see TaxationWithRoot.FromLaw + * @generated + */ + EClass getFromLaw(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.FromLaw#getId Id}'. + * + * + * @return the meta object for the attribute 'Id'. + * @see TaxationWithRoot.FromLaw#getId() + * @see #getFromLaw() + * @generated + */ + EAttribute getFromLaw_Id(); + + /** + * Returns the meta object for the container reference '{@link TaxationWithRoot.FromLaw#getTaxPayer Tax Payer}'. + * + * + * @return the meta object for the container reference 'Tax Payer'. + * @see TaxationWithRoot.FromLaw#getTaxPayer() + * @see #getFromLaw() + * @generated + */ + EReference getFromLaw_TaxPayer(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Fiscal_Address Fiscal Address}'. + * + * + * @return the meta object for class 'Fiscal Address'. + * @see TaxationWithRoot.Fiscal_Address + * @generated + */ + EClass getFiscal_Address(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Habitual_Address Habitual Address}'. + * + * + * @return the meta object for class 'Habitual Address'. + * @see TaxationWithRoot.Habitual_Address + * @generated + */ + EClass getHabitual_Address(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Marriage_Record Marriage Record}'. + * + * + * @return the meta object for class 'Marriage Record'. + * @see TaxationWithRoot.Marriage_Record + * @generated + */ + EClass getMarriage_Record(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Non_Resident_Tax_Payer Non Resident Tax Payer}'. + * + * + * @return the meta object for class 'Non Resident Tax Payer'. + * @see TaxationWithRoot.Non_Resident_Tax_Payer + * @generated + */ + EClass getNon_Resident_Tax_Payer(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Non_Resident_Tax_Payer#isIs_assimilated_to_resident Is assimilated to resident}'. + * + * + * @return the meta object for the attribute 'Is assimilated to resident'. + * @see TaxationWithRoot.Non_Resident_Tax_Payer#isIs_assimilated_to_resident() + * @see #getNon_Resident_Tax_Payer() + * @generated + */ + EAttribute getNon_Resident_Tax_Payer_Is_assimilated_to_resident(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Partnership_Record Partnership Record}'. + * + * + * @return the meta object for class 'Partnership Record'. + * @see TaxationWithRoot.Partnership_Record + * @generated + */ + EClass getPartnership_Record(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Resident_Tax_Payer Resident Tax Payer}'. + * + * + * @return the meta object for class 'Resident Tax Payer'. + * @see TaxationWithRoot.Resident_Tax_Payer + * @generated + */ + EClass getResident_Tax_Payer(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Trade_and_Business_Income Trade and Business Income}'. + * + * + * @return the meta object for class 'Trade and Business Income'. + * @see TaxationWithRoot.Trade_and_Business_Income + * @generated + */ + EClass getTrade_and_Business_Income(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Agriculture_and_Forestry_Income Agriculture and Forestry Income}'. + * + * + * @return the meta object for class 'Agriculture and Forestry Income'. + * @see TaxationWithRoot.Agriculture_and_Forestry_Income + * @generated + */ + EClass getAgriculture_and_Forestry_Income(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Pensions_and_Annuities_Income Pensions and Annuities Income}'. + * + * + * @return the meta object for class 'Pensions and Annuities Income'. + * @see TaxationWithRoot.Pensions_and_Annuities_Income + * @generated + */ + EClass getPensions_and_Annuities_Income(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Pensions_and_Annuities_Income#isOccasional_payement Occasional payement}'. + * + * + * @return the meta object for the attribute 'Occasional payement'. + * @see TaxationWithRoot.Pensions_and_Annuities_Income#isOccasional_payement() + * @see #getPensions_and_Annuities_Income() + * @generated + */ + EAttribute getPensions_and_Annuities_Income_Occasional_payement(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Capital_and_Investments_Income Capital and Investments Income}'. + * + * + * @return the meta object for class 'Capital and Investments Income'. + * @see TaxationWithRoot.Capital_and_Investments_Income + * @generated + */ + EClass getCapital_and_Investments_Income(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Employment_Income Employment Income}'. + * + * + * @return the meta object for class 'Employment Income'. + * @see TaxationWithRoot.Employment_Income + * @generated + */ + EClass getEmployment_Income(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Rentals_and_Leases_Income Rentals and Leases Income}'. + * + * + * @return the meta object for class 'Rentals and Leases Income'. + * @see TaxationWithRoot.Rentals_and_Leases_Income + * @generated + */ + EClass getRentals_and_Leases_Income(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Rentals_and_Leases_Income#isIs_periodic Is periodic}'. + * + * + * @return the meta object for the attribute 'Is periodic'. + * @see TaxationWithRoot.Rentals_and_Leases_Income#isIs_periodic() + * @see #getRentals_and_Leases_Income() + * @generated + */ + EAttribute getRentals_and_Leases_Income_Is_periodic(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Foreign_Income Foreign Income}'. + * + * + * @return the meta object for class 'Foreign Income'. + * @see TaxationWithRoot.Foreign_Income + * @generated + */ + EClass getForeign_Income(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Local_Income Local Income}'. + * + * + * @return the meta object for class 'Local Income'. + * @see TaxationWithRoot.Local_Income + * @generated + */ + EClass getLocal_Income(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.CIM CIM}'. + * + * + * @return the meta object for class 'CIM'. + * @see TaxationWithRoot.CIM + * @generated + */ + EClass getCIM(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.CIP CIP}'. + * + * + * @return the meta object for class 'CIP'. + * @see TaxationWithRoot.CIP + * @generated + */ + EClass getCIP(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.CIS CIS}'. + * + * + * @return the meta object for class 'CIS'. + * @see TaxationWithRoot.CIS + * @generated + */ + EClass getCIS(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.FD FD}'. + * + * + * @return the meta object for class 'FD'. + * @see TaxationWithRoot.FD + * @generated + */ + EClass getFD(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.FD#getDistance_declared_in_january Distance declared in january}'. + * + * + * @return the meta object for the attribute 'Distance declared in january'. + * @see TaxationWithRoot.FD#getDistance_declared_in_january() + * @see #getFD() + * @generated + */ + EAttribute getFD_Distance_declared_in_january(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Professional_Expenses_Deduction Professional Expenses Deduction}'. + * + * + * @return the meta object for class 'Professional Expenses Deduction'. + * @see TaxationWithRoot.Professional_Expenses_Deduction + * @generated + */ + EClass getProfessional_Expenses_Deduction(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.FO FO}'. + * + * + * @return the meta object for class 'FO'. + * @see TaxationWithRoot.FO + * @generated + */ + EClass getFO(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.DS_for_Permanent_Expense DS for Permanent Expense}'. + * + * + * @return the meta object for class 'DS for Permanent Expense'. + * @see TaxationWithRoot.DS_for_Permanent_Expense + * @generated + */ + EClass getDS_for_Permanent_Expense(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.DS_for_Permanent_Expense#getPermanent_expense_category Permanent expense category}'. + * + * + * @return the meta object for the attribute 'Permanent expense category'. + * @see TaxationWithRoot.DS_for_Permanent_Expense#getPermanent_expense_category() + * @see #getDS_for_Permanent_Expense() + * @generated + */ + EAttribute getDS_for_Permanent_Expense_Permanent_expense_category(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.DS DS}'. + * + * + * @return the meta object for class 'DS'. + * @see TaxationWithRoot.DS + * @generated + */ + EClass getDS(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.DS#getMaximum_deductible_amount Maximum deductible amount}'. + * + * + * @return the meta object for the attribute 'Maximum deductible amount'. + * @see TaxationWithRoot.DS#getMaximum_deductible_amount() + * @see #getDS() + * @generated + */ + EAttribute getDS_Maximum_deductible_amount(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.DS#getId3 Id3}'. + * + * + * @return the meta object for the attribute 'Id3'. + * @see TaxationWithRoot.DS#getId3() + * @see #getDS() + * @generated + */ + EAttribute getDS_Id3(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.DS_for_Interest_Expense DS for Interest Expense}'. + * + * + * @return the meta object for class 'DS for Interest Expense'. + * @see TaxationWithRoot.DS_for_Interest_Expense + * @generated + */ + EClass getDS_for_Interest_Expense(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.DS_for_Health_and_Pension_Insurance DS for Health and Pension Insurance}'. + * + * + * @return the meta object for class 'DS for Health and Pension Insurance'. + * @see TaxationWithRoot.DS_for_Health_and_Pension_Insurance + * @generated + */ + EClass getDS_for_Health_and_Pension_Insurance(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.DS_for_Health_and_Pension_Insurance#getInsurance_category Insurance category}'. + * + * + * @return the meta object for the attribute 'Insurance category'. + * @see TaxationWithRoot.DS_for_Health_and_Pension_Insurance#getInsurance_category() + * @see #getDS_for_Health_and_Pension_Insurance() + * @generated + */ + EAttribute getDS_for_Health_and_Pension_Insurance_Insurance_category(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.DS_for_Private_Insurance_and_Plan DS for Private Insurance and Plan}'. + * + * + * @return the meta object for class 'DS for Private Insurance and Plan'. + * @see TaxationWithRoot.DS_for_Private_Insurance_and_Plan + * @generated + */ + EClass getDS_for_Private_Insurance_and_Plan(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.DS_for_Private_Insurance_and_Plan#getPrivate_insurance_and_plan_category Private insurance and plan category}'. + * + * + * @return the meta object for the attribute 'Private insurance and plan category'. + * @see TaxationWithRoot.DS_for_Private_Insurance_and_Plan#getPrivate_insurance_and_plan_category() + * @see #getDS_for_Private_Insurance_and_Plan() + * @generated + */ + EAttribute getDS_for_Private_Insurance_and_Plan_Private_insurance_and_plan_category(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.DS_for_Loss_Carryforward DS for Loss Carryforward}'. + * + * + * @return the meta object for class 'DS for Loss Carryforward'. + * @see TaxationWithRoot.DS_for_Loss_Carryforward + * @generated + */ + EClass getDS_for_Loss_Carryforward(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.DS_for_Donation DS for Donation}'. + * + * + * @return the meta object for class 'DS for Donation'. + * @see TaxationWithRoot.DS_for_Donation + * @generated + */ + EClass getDS_for_Donation(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Permanent_Expense Permanent Expense}'. + * + * + * @return the meta object for class 'Permanent Expense'. + * @see TaxationWithRoot.Permanent_Expense + * @generated + */ + EClass getPermanent_Expense(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Permanent_Expense#getCategory Category}'. + * + * + * @return the meta object for the attribute 'Category'. + * @see TaxationWithRoot.Permanent_Expense#getCategory() + * @see #getPermanent_Expense() + * @generated + */ + EAttribute getPermanent_Expense_Category(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Special_Expense_DS Special Expense DS}'. + * + * + * @return the meta object for class 'Special Expense DS'. + * @see TaxationWithRoot.Special_Expense_DS + * @generated + */ + EClass getSpecial_Expense_DS(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Interest_Expense Interest Expense}'. + * + * + * @return the meta object for class 'Interest Expense'. + * @see TaxationWithRoot.Interest_Expense + * @generated + */ + EClass getInterest_Expense(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Private_Insurance_and_Plan Private Insurance and Plan}'. + * + * + * @return the meta object for class 'Private Insurance and Plan'. + * @see TaxationWithRoot.Private_Insurance_and_Plan + * @generated + */ + EClass getPrivate_Insurance_and_Plan(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Private_Insurance_and_Plan#getCategory Category}'. + * + * + * @return the meta object for the attribute 'Category'. + * @see TaxationWithRoot.Private_Insurance_and_Plan#getCategory() + * @see #getPrivate_Insurance_and_Plan() + * @generated + */ + EAttribute getPrivate_Insurance_and_Plan_Category(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Private_Insurance_and_Plan#getDuration_of_contract Duration of contract}'. + * + * + * @return the meta object for the attribute 'Duration of contract'. + * @see TaxationWithRoot.Private_Insurance_and_Plan#getDuration_of_contract() + * @see #getPrivate_Insurance_and_Plan() + * @generated + */ + EAttribute getPrivate_Insurance_and_Plan_Duration_of_contract(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Health_and_Pension_Insurance Health and Pension Insurance}'. + * + * + * @return the meta object for class 'Health and Pension Insurance'. + * @see TaxationWithRoot.Health_and_Pension_Insurance + * @generated + */ + EClass getHealth_and_Pension_Insurance(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Health_and_Pension_Insurance#getCategory Category}'. + * + * + * @return the meta object for the attribute 'Category'. + * @see TaxationWithRoot.Health_and_Pension_Insurance#getCategory() + * @see #getHealth_and_Pension_Insurance() + * @generated + */ + EAttribute getHealth_and_Pension_Insurance_Category(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Health_and_Pension_Insurance#isIs_related_to_additional_salary Is related to additional salary}'. + * + * + * @return the meta object for the attribute 'Is related to additional salary'. + * @see TaxationWithRoot.Health_and_Pension_Insurance#isIs_related_to_additional_salary() + * @see #getHealth_and_Pension_Insurance() + * @generated + */ + EAttribute getHealth_and_Pension_Insurance_Is_related_to_additional_salary(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Donation Donation}'. + * + * + * @return the meta object for class 'Donation'. + * @see TaxationWithRoot.Donation + * @generated + */ + EClass getDonation(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Donation#getBeneficiary1 Beneficiary1}'. + * + * + * @return the meta object for the attribute 'Beneficiary1'. + * @see TaxationWithRoot.Donation#getBeneficiary1() + * @see #getDonation() + * @generated + */ + EAttribute getDonation_Beneficiary1(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Donation#isIs_donation_reported Is donation reported}'. + * + * + * @return the meta object for the attribute 'Is donation reported'. + * @see TaxationWithRoot.Donation#isIs_donation_reported() + * @see #getDonation() + * @generated + */ + EAttribute getDonation_Is_donation_reported(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Loss_Carryforward Loss Carryforward}'. + * + * + * @return the meta object for class 'Loss Carryforward'. + * @see TaxationWithRoot.Loss_Carryforward + * @generated + */ + EClass getLoss_Carryforward(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Spousal_Expense_AC Spousal Expense AC}'. + * + * + * @return the meta object for class 'Spousal Expense AC'. + * @see TaxationWithRoot.Spousal_Expense_AC + * @generated + */ + EClass getSpousal_Expense_AC(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Extraordinary_Expense_CE Extraordinary Expense CE}'. + * + * + * @return the meta object for class 'Extraordinary Expense CE'. + * @see TaxationWithRoot.Extraordinary_Expense_CE + * @generated + */ + EClass getExtraordinary_Expense_CE(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Extraordinary_Expense_CE#getThresholded_deduction_percentage Thresholded deduction percentage}'. + * + * + * @return the meta object for the attribute 'Thresholded deduction percentage'. + * @see TaxationWithRoot.Extraordinary_Expense_CE#getThresholded_deduction_percentage() + * @see #getExtraordinary_Expense_CE() + * @generated + */ + EAttribute getExtraordinary_Expense_CE_Thresholded_deduction_percentage(); + + /** + * Returns the meta object for the attribute '{@link TaxationWithRoot.Extraordinary_Expense_CE#getCe_type Ce type}'. + * + * + * @return the meta object for the attribute 'Ce type'. + * @see TaxationWithRoot.Extraordinary_Expense_CE#getCe_type() + * @see #getExtraordinary_Expense_CE() + * @generated + */ + EAttribute getExtraordinary_Expense_CE_Ce_type(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Travel_Expense_FD Travel Expense FD}'. + * + * + * @return the meta object for class 'Travel Expense FD'. + * @see TaxationWithRoot.Travel_Expense_FD + * @generated + */ + EClass getTravel_Expense_FD(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Professional_Expense Professional Expense}'. + * + * + * @return the meta object for class 'Professional Expense'. + * @see TaxationWithRoot.Professional_Expense + * @generated + */ + EClass getProfessional_Expense(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Miscellaneous_Expense_FO Miscellaneous Expense FO}'. + * + * + * @return the meta object for class 'Miscellaneous Expense FO'. + * @see TaxationWithRoot.Miscellaneous_Expense_FO + * @generated + */ + EClass getMiscellaneous_Expense_FO(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Resource Resource}'. + * + * + * @return the meta object for class 'Resource'. + * @see TaxationWithRoot.Resource + * @generated + */ + EClass getResource(); + + /** + * Returns the meta object for the containment reference list '{@link TaxationWithRoot.Resource#getContains Contains}'. + * + * + * @return the meta object for the containment reference list 'Contains'. + * @see TaxationWithRoot.Resource#getContains() + * @see #getResource() + * @generated + */ + EReference getResource_Contains(); + + /** + * Returns the meta object for class '{@link TaxationWithRoot.Root Root}'. + * + * + * @return the meta object for class 'Root'. + * @see TaxationWithRoot.Root + * @generated + */ + EClass getRoot(); + + /** + * Returns the meta object for enum '{@link TaxationWithRoot.Grantor Grantor}'. + * + * + * @return the meta object for enum 'Grantor'. + * @see TaxationWithRoot.Grantor + * @generated + */ + EEnum getGrantor(); + + /** + * Returns the meta object for enum '{@link TaxationWithRoot.Disability_Types Disability Types}'. + * + * + * @return the meta object for enum 'Disability Types'. + * @see TaxationWithRoot.Disability_Types + * @generated + */ + EEnum getDisability_Types(); + + /** + * Returns the meta object for enum '{@link TaxationWithRoot.Country Country}'. + * + * + * @return the meta object for enum 'Country'. + * @see TaxationWithRoot.Country + * @generated + */ + EEnum getCountry(); + + /** + * Returns the meta object for enum '{@link TaxationWithRoot.Tax_Office Tax Office}'. + * + * + * @return the meta object for enum 'Tax Office'. + * @see TaxationWithRoot.Tax_Office + * @generated + */ + EEnum getTax_Office(); + + /** + * Returns the meta object for enum '{@link TaxationWithRoot.Tax_Class_Category Tax Class Category}'. + * + * + * @return the meta object for enum 'Tax Class Category'. + * @see TaxationWithRoot.Tax_Class_Category + * @generated + */ + EEnum getTax_Class_Category(); + + /** + * Returns the meta object for enum '{@link TaxationWithRoot.Job_Activity Job Activity}'. + * + * + * @return the meta object for enum 'Job Activity'. + * @see TaxationWithRoot.Job_Activity + * @generated + */ + EEnum getJob_Activity(); + + /** + * Returns the meta object for enum '{@link TaxationWithRoot.Town Town}'. + * + * + * @return the meta object for enum 'Town'. + * @see TaxationWithRoot.Town + * @generated + */ + EEnum getTown(); + + /** + * Returns the meta object for enum '{@link TaxationWithRoot.CE_Type CE Type}'. + * + * + * @return the meta object for enum 'CE Type'. + * @see TaxationWithRoot.CE_Type + * @generated + */ + EEnum getCE_Type(); + + /** + * Returns the meta object for enum '{@link TaxationWithRoot.Expense_Purpose Expense Purpose}'. + * + * + * @return the meta object for enum 'Expense Purpose'. + * @see TaxationWithRoot.Expense_Purpose + * @generated + */ + EEnum getExpense_Purpose(); + + /** + * Returns the meta object for enum '{@link TaxationWithRoot.Dependent_Type Dependent Type}'. + * + * + * @return the meta object for enum 'Dependent Type'. + * @see TaxationWithRoot.Dependent_Type + * @generated + */ + EEnum getDependent_Type(); + + /** + * Returns the meta object for enum '{@link TaxationWithRoot.Separation_Causes Separation Causes}'. + * + * + * @return the meta object for enum 'Separation Causes'. + * @see TaxationWithRoot.Separation_Causes + * @generated + */ + EEnum getSeparation_Causes(); + + /** + * Returns the meta object for enum '{@link TaxationWithRoot.Category_of_Permanent_Expense Category of Permanent Expense}'. + * + * + * @return the meta object for enum 'Category of Permanent Expense'. + * @see TaxationWithRoot.Category_of_Permanent_Expense + * @generated + */ + EEnum getCategory_of_Permanent_Expense(); + + /** + * Returns the meta object for enum '{@link TaxationWithRoot.Category_of_Health_and_Pension_Insurances Category of Health and Pension Insurances}'. + * + * + * @return the meta object for enum 'Category of Health and Pension Insurances'. + * @see TaxationWithRoot.Category_of_Health_and_Pension_Insurances + * @generated + */ + EEnum getCategory_of_Health_and_Pension_Insurances(); + + /** + * Returns the meta object for enum '{@link TaxationWithRoot.Category_of_Private_Insurance_and_Plan Category of Private Insurance and Plan}'. + * + * + * @return the meta object for enum 'Category of Private Insurance and Plan'. + * @see TaxationWithRoot.Category_of_Private_Insurance_and_Plan + * @generated + */ + EEnum getCategory_of_Private_Insurance_and_Plan(); + + /** + * Returns the meta object for enum '{@link TaxationWithRoot.Legal_Union_Types Legal Union Types}'. + * + * + * @return the meta object for enum 'Legal Union Types'. + * @see TaxationWithRoot.Legal_Union_Types + * @generated + */ + EEnum getLegal_Union_Types(); + + /** + * Returns the factory that creates the instances of the model. + * + * + * @return the factory that creates the instances of the model. + * @generated + */ + TaxationFactory getTaxationFactory(); + + /** + * + * Defines literals for the meta objects that represent + *
              + *
            • each class,
            • + *
            • each feature of each class,
            • + *
            • each operation of each class,
            • + *
            • each enum,
            • + *
            • and each data type
            • + *
            + * + * @generated + */ + interface Literals { + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.ConstantsImpl Constants}' class. + * + * + * @see TaxationWithRoot.impl.ConstantsImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getConstants() + * @generated + */ + EClass CONSTANTS = eINSTANCE.getConstants(); + + /** + * The meta object literal for the 'MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD = eINSTANCE.getConstants_MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD(); + + /** + * The meta object literal for the 'MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE = eINSTANCE.getConstants_MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE(); + + /** + * The meta object literal for the 'MINIMUM SALARY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MINIMUM_SALARY = eINSTANCE.getConstants_MINIMUM_SALARY(); + + /** + * The meta object literal for the 'FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION = eINSTANCE.getConstants_FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION(); + + /** + * The meta object literal for the 'MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS = eINSTANCE.getConstants_MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS(); + + /** + * The meta object literal for the 'MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS = eINSTANCE.getConstants_MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS(); + + /** + * The meta object literal for the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC = eINSTANCE.getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC(); + + /** + * The meta object literal for the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE = eINSTANCE.getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE(); + + /** + * The meta object literal for the 'MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = eINSTANCE.getConstants_MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + + /** + * The meta object literal for the 'MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = eINSTANCE.getConstants_MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + + /** + * The meta object literal for the 'MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = eINSTANCE.getConstants_MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + + /** + * The meta object literal for the 'FLAT RATE CIM DAILY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_CIM_DAILY = eINSTANCE.getConstants_FLAT_RATE_CIM_DAILY(); + + /** + * The meta object literal for the 'FLAT RATE CIM MONTHLY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_CIM_MONTHLY = eINSTANCE.getConstants_FLAT_RATE_CIM_MONTHLY(); + + /** + * The meta object literal for the 'FLAT RATE CIM YEARLY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_CIM_YEARLY = eINSTANCE.getConstants_FLAT_RATE_CIM_YEARLY(); + + /** + * The meta object literal for the 'FLAT RATE CIP DAILY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_CIP_DAILY = eINSTANCE.getConstants_FLAT_RATE_CIP_DAILY(); + + /** + * The meta object literal for the 'FLAT RATE CIP MONTHLY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_CIP_MONTHLY = eINSTANCE.getConstants_FLAT_RATE_CIP_MONTHLY(); + + /** + * The meta object literal for the 'FLAT RATE CIP YEARLY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_CIP_YEARLY = eINSTANCE.getConstants_FLAT_RATE_CIP_YEARLY(); + + /** + * The meta object literal for the 'FLAT RATE CIS DAILY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_CIS_DAILY = eINSTANCE.getConstants_FLAT_RATE_CIS_DAILY(); + + /** + * The meta object literal for the 'FLAT RATE CIS MONTHLY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_CIS_MONTHLY = eINSTANCE.getConstants_FLAT_RATE_CIS_MONTHLY(); + + /** + * The meta object literal for the 'FLAT RATE CIS YEARLY' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_CIS_YEARLY = eINSTANCE.getConstants_FLAT_RATE_CIS_YEARLY(); + + /** + * The meta object literal for the 'FLAT RATE FOR TRAVEL EXPENSE PER UNIT' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT = eINSTANCE.getConstants_FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT(); + + /** + * The meta object literal for the 'MAXIMUM DEDUCTIBLE AMOUNT FOR DS' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS = eINSTANCE.getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS(); + + /** + * The meta object literal for the 'FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE = eINSTANCE.getConstants_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(); + + /** + * The meta object literal for the 'DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE = eINSTANCE.getConstants_DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(); + + /** + * The meta object literal for the 'MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE' attribute feature. + * + * + * @generated + */ + EAttribute CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE = eINSTANCE.getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Income_TaxImpl Income Tax}' class. + * + * + * @see TaxationWithRoot.impl.Income_TaxImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getIncome_Tax() + * @generated + */ + EClass INCOME_TAX = eINSTANCE.getIncome_Tax(); + + /** + * The meta object literal for the 'Tax Payer' reference feature. + * + * + * @generated + */ + EReference INCOME_TAX__TAX_PAYER = eINSTANCE.getIncome_Tax_TaxPayer(); + + /** + * The meta object literal for the 'Tax amount' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TAX__TAX_AMOUNT = eINSTANCE.getIncome_Tax_Tax_amount(); + + /** + * The meta object literal for the 'Tax year' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TAX__TAX_YEAR = eINSTANCE.getIncome_Tax_Tax_year(); + + /** + * The meta object literal for the 'Id6' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TAX__ID6 = eINSTANCE.getIncome_Tax_Id6(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Tax_PayerImpl Tax Payer}' class. + * + * + * @see TaxationWithRoot.impl.Tax_PayerImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getTax_Payer() + * @generated + */ + EClass TAX_PAYER = eINSTANCE.getTax_Payer(); + + /** + * The meta object literal for the 'Dependents' containment reference list feature. + * + * + * @generated + */ + EReference TAX_PAYER__DEPENDENTS = eINSTANCE.getTax_Payer_Dependents(); + + /** + * The meta object literal for the 'From agent' containment reference feature. + * + * + * @generated + */ + EReference TAX_PAYER__FROM_AGENT = eINSTANCE.getTax_Payer_From_agent(); + + /** + * The meta object literal for the 'Incomes' containment reference list feature. + * + * + * @generated + */ + EReference TAX_PAYER__INCOMES = eINSTANCE.getTax_Payer_Incomes(); + + /** + * The meta object literal for the 'From law' containment reference feature. + * + * + * @generated + */ + EReference TAX_PAYER__FROM_LAW = eINSTANCE.getTax_Payer_From_law(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Physical_PersonImpl Physical Person}' class. + * + * + * @see TaxationWithRoot.impl.Physical_PersonImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getPhysical_Person() + * @generated + */ + EClass PHYSICAL_PERSON = eINSTANCE.getPhysical_Person(); + + /** + * The meta object literal for the 'SS No' attribute feature. + * + * + * @generated + */ + EAttribute PHYSICAL_PERSON__SS_NO = eINSTANCE.getPhysical_Person_SSNo(); + + /** + * The meta object literal for the 'Addresses' reference list feature. + * + * + * @generated + */ + EReference PHYSICAL_PERSON__ADDRESSES = eINSTANCE.getPhysical_Person_Addresses(); + + /** + * The meta object literal for the 'Birth year' attribute feature. + * + * + * @generated + */ + EAttribute PHYSICAL_PERSON__BIRTH_YEAR = eINSTANCE.getPhysical_Person_Birth_year(); + + /** + * The meta object literal for the 'Disability percentage' attribute feature. + * + * + * @generated + */ + EAttribute PHYSICAL_PERSON__DISABILITY_PERCENTAGE = eINSTANCE.getPhysical_Person_Disability_percentage(); + + /** + * The meta object literal for the 'Disability type' attribute feature. + * + * + * @generated + */ + EAttribute PHYSICAL_PERSON__DISABILITY_TYPE = eINSTANCE.getPhysical_Person_Disability_type(); + + /** + * The meta object literal for the 'Birth month' attribute feature. + * + * + * @generated + */ + EAttribute PHYSICAL_PERSON__BIRTH_MONTH = eINSTANCE.getPhysical_Person_Birth_month(); + + /** + * The meta object literal for the 'Birth day' attribute feature. + * + * + * @generated + */ + EAttribute PHYSICAL_PERSON__BIRTH_DAY = eINSTANCE.getPhysical_Person_Birth_day(); + + /** + * The meta object literal for the 'Expenses' reference list feature. + * + * + * @generated + */ + EReference PHYSICAL_PERSON__EXPENSES = eINSTANCE.getPhysical_Person_Expenses(); + + /** + * The meta object literal for the 'Is widower' attribute feature. + * + * + * @generated + */ + EAttribute PHYSICAL_PERSON__IS_WIDOWER = eINSTANCE.getPhysical_Person_Is_widower(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.AddressImpl Address}' class. + * + * + * @see TaxationWithRoot.impl.AddressImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getAddress() + * @generated + */ + EClass ADDRESS = eINSTANCE.getAddress(); + + /** + * The meta object literal for the 'Country' attribute feature. + * + * + * @generated + */ + EAttribute ADDRESS__COUNTRY = eINSTANCE.getAddress_Country(); + + /** + * The meta object literal for the 'Street' attribute feature. + * + * + * @generated + */ + EAttribute ADDRESS__STREET = eINSTANCE.getAddress_Street(); + + /** + * The meta object literal for the 'Zip Code' attribute feature. + * + * + * @generated + */ + EAttribute ADDRESS__ZIP_CODE = eINSTANCE.getAddress_ZipCode(); + + /** + * The meta object literal for the 'City' attribute feature. + * + * + * @generated + */ + EAttribute ADDRESS__CITY = eINSTANCE.getAddress_City(); + + /** + * The meta object literal for the 'Id2' attribute feature. + * + * + * @generated + */ + EAttribute ADDRESS__ID2 = eINSTANCE.getAddress_Id2(); + + /** + * The meta object literal for the 'Tax Payer' reference list feature. + * + * + * @generated + */ + EReference ADDRESS__TAX_PAYER = eINSTANCE.getAddress_TaxPayer(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.ExpenseImpl Expense}' class. + * + * + * @see TaxationWithRoot.impl.ExpenseImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getExpense() + * @generated + */ + EClass EXPENSE = eINSTANCE.getExpense(); + + /** + * The meta object literal for the 'Declared amount' attribute feature. + * + * + * @generated + */ + EAttribute EXPENSE__DECLARED_AMOUNT = eINSTANCE.getExpense_Declared_amount(); + + /** + * The meta object literal for the 'Expense purpose' attribute feature. + * + * + * @generated + */ + EAttribute EXPENSE__EXPENSE_PURPOSE = eINSTANCE.getExpense_Expense_purpose(); + + /** + * The meta object literal for the 'Dependent' reference feature. + * + * + * @generated + */ + EReference EXPENSE__DEPENDENT = eINSTANCE.getExpense_Dependent(); + + /** + * The meta object literal for the 'From agent' reference feature. + * + * + * @generated + */ + EReference EXPENSE__FROM_AGENT = eINSTANCE.getExpense_From_agent(); + + /** + * The meta object literal for the 'Income' container reference feature. + * + * + * @generated + */ + EReference EXPENSE__INCOME = eINSTANCE.getExpense_Income(); + + /** + * The meta object literal for the 'Id4' attribute feature. + * + * + * @generated + */ + EAttribute EXPENSE__ID4 = eINSTANCE.getExpense_Id4(); + + /** + * The meta object literal for the 'Beneficiary' reference feature. + * + * + * @generated + */ + EReference EXPENSE__BENEFICIARY = eINSTANCE.getExpense_Beneficiary(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.DependentImpl Dependent}' class. + * + * + * @see TaxationWithRoot.impl.DependentImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDependent() + * @generated + */ + EClass DEPENDENT = eINSTANCE.getDependent(); + + /** + * The meta object literal for the 'Dependent type' attribute feature. + * + * + * @generated + */ + EAttribute DEPENDENT__DEPENDENT_TYPE = eINSTANCE.getDependent_Dependent_type(); + + /** + * The meta object literal for the 'Responsible person' container reference feature. + * + * + * @generated + */ + EReference DEPENDENT__RESPONSIBLE_PERSON = eINSTANCE.getDependent_Responsible_person(); + + /** + * The meta object literal for the 'Continued studies' attribute feature. + * + * + * @generated + */ + EAttribute DEPENDENT__CONTINUED_STUDIES = eINSTANCE.getDependent_Continued_studies(); + + /** + * The meta object literal for the 'Allowances' containment reference feature. + * + * + * @generated + */ + EReference DEPENDENT__ALLOWANCES = eINSTANCE.getDependent_Allowances(); + + /** + * The meta object literal for the 'Household' container reference feature. + * + * + * @generated + */ + EReference DEPENDENT__HOUSEHOLD = eINSTANCE.getDependent_Household(); + + /** + * The meta object literal for the 'From agent' reference feature. + * + * + * @generated + */ + EReference DEPENDENT__FROM_AGENT = eINSTANCE.getDependent_From_agent(); + + /** + * The meta object literal for the 'Expense' reference list feature. + * + * + * @generated + */ + EReference DEPENDENT__EXPENSE = eINSTANCE.getDependent_Expense(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.External_AllowanceImpl External Allowance}' class. + * + * + * @see TaxationWithRoot.impl.External_AllowanceImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getExternal_Allowance() + * @generated + */ + EClass EXTERNAL_ALLOWANCE = eINSTANCE.getExternal_Allowance(); + + /** + * The meta object literal for the 'Grantor' attribute feature. + * + * + * @generated + */ + EAttribute EXTERNAL_ALLOWANCE__GRANTOR = eINSTANCE.getExternal_Allowance_Grantor(); + + /** + * The meta object literal for the 'Starting year' attribute feature. + * + * + * @generated + */ + EAttribute EXTERNAL_ALLOWANCE__STARTING_YEAR = eINSTANCE.getExternal_Allowance_Starting_year(); + + /** + * The meta object literal for the 'Ending year' attribute feature. + * + * + * @generated + */ + EAttribute EXTERNAL_ALLOWANCE__ENDING_YEAR = eINSTANCE.getExternal_Allowance_Ending_year(); + + /** + * The meta object literal for the 'Reciver' reference feature. + * + * + * @generated + */ + EReference EXTERNAL_ALLOWANCE__RECIVER = eINSTANCE.getExternal_Allowance_Reciver(); + + /** + * The meta object literal for the 'Id5' attribute feature. + * + * + * @generated + */ + EAttribute EXTERNAL_ALLOWANCE__ID5 = eINSTANCE.getExternal_Allowance_Id5(); + + /** + * The meta object literal for the 'Person' container reference feature. + * + * + * @generated + */ + EReference EXTERNAL_ALLOWANCE__PERSON = eINSTANCE.getExternal_Allowance_Person(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.HouseholdImpl Household}' class. + * + * + * @see TaxationWithRoot.impl.HouseholdImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getHousehold() + * @generated + */ + EClass HOUSEHOLD = eINSTANCE.getHousehold(); + + /** + * The meta object literal for the 'Parents' containment reference feature. + * + * + * @generated + */ + EReference HOUSEHOLD__PARENTS = eINSTANCE.getHousehold_Parents(); + + /** + * The meta object literal for the 'Id1' attribute feature. + * + * + * @generated + */ + EAttribute HOUSEHOLD__ID1 = eINSTANCE.getHousehold_Id1(); + + /** + * The meta object literal for the 'Children' containment reference list feature. + * + * + * @generated + */ + EReference HOUSEHOLD__CHILDREN = eINSTANCE.getHousehold_Children(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Legal_Union_RecordImpl Legal Union Record}' class. + * + * + * @see TaxationWithRoot.impl.Legal_Union_RecordImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getLegal_Union_Record() + * @generated + */ + EClass LEGAL_UNION_RECORD = eINSTANCE.getLegal_Union_Record(); + + /** + * The meta object literal for the 'Start year' attribute feature. + * + * + * @generated + */ + EAttribute LEGAL_UNION_RECORD__START_YEAR = eINSTANCE.getLegal_Union_Record_Start_year(); + + /** + * The meta object literal for the 'End year' attribute feature. + * + * + * @generated + */ + EAttribute LEGAL_UNION_RECORD__END_YEAR = eINSTANCE.getLegal_Union_Record_End_year(); + + /** + * The meta object literal for the 'Separation cause' attribute feature. + * + * + * @generated + */ + EAttribute LEGAL_UNION_RECORD__SEPARATION_CAUSE = eINSTANCE.getLegal_Union_Record_Separation_cause(); + + /** + * The meta object literal for the 'Individual A' containment reference feature. + * + * + * @generated + */ + EReference LEGAL_UNION_RECORD__INDIVIDUAL_A = eINSTANCE.getLegal_Union_Record_Individual_A(); + + /** + * The meta object literal for the 'Individual B' containment reference list feature. + * + * + * @generated + */ + EReference LEGAL_UNION_RECORD__INDIVIDUAL_B = eINSTANCE.getLegal_Union_Record_Individual_B(); + + /** + * The meta object literal for the 'Properties' containment reference list feature. + * + * + * @generated + */ + EReference LEGAL_UNION_RECORD__PROPERTIES = eINSTANCE.getLegal_Union_Record_Properties(); + + /** + * The meta object literal for the 'Mutual agreement' attribute feature. + * + * + * @generated + */ + EAttribute LEGAL_UNION_RECORD__MUTUAL_AGREEMENT = eINSTANCE.getLegal_Union_Record_Mutual_agreement(); + + /** + * The meta object literal for the 'Id9' attribute feature. + * + * + * @generated + */ + EAttribute LEGAL_UNION_RECORD__ID9 = eINSTANCE.getLegal_Union_Record_Id9(); + + /** + * The meta object literal for the 'Household' container reference feature. + * + * + * @generated + */ + EReference LEGAL_UNION_RECORD__HOUSEHOLD = eINSTANCE.getLegal_Union_Record_Household(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Tax_PropertyImpl Tax Property}' class. + * + * + * @see TaxationWithRoot.impl.Tax_PropertyImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getTax_Property() + * @generated + */ + EClass TAX_PROPERTY = eINSTANCE.getTax_Property(); + + /** + * The meta object literal for the 'Starting year' attribute feature. + * + * + * @generated + */ + EAttribute TAX_PROPERTY__STARTING_YEAR = eINSTANCE.getTax_Property_Starting_year(); + + /** + * The meta object literal for the 'Id10' attribute feature. + * + * + * @generated + */ + EAttribute TAX_PROPERTY__ID10 = eINSTANCE.getTax_Property_Id10(); + + /** + * The meta object literal for the 'Union record' container reference feature. + * + * + * @generated + */ + EReference TAX_PROPERTY__UNION_RECORD = eINSTANCE.getTax_Property_Union_record(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.Tax_Case Tax Case}' class. + * + * + * @see TaxationWithRoot.Tax_Case + * @see TaxationWithRoot.impl.TaxationPackageImpl#getTax_Case() + * @generated + */ + EClass TAX_CASE = eINSTANCE.getTax_Case(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.FromAgentImpl From Agent}' class. + * + * + * @see TaxationWithRoot.impl.FromAgentImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getFromAgent() + * @generated + */ + EClass FROM_AGENT = eINSTANCE.getFromAgent(); + + /** + * The meta object literal for the 'Tax Payer' container reference feature. + * + * + * @generated + */ + EReference FROM_AGENT__TAX_PAYER = eINSTANCE.getFromAgent_TaxPayer(); + + /** + * The meta object literal for the 'Is dependent eligible for CE Not In Houshold Children Care' attribute feature. + * + * + * @generated + */ + EAttribute FROM_AGENT__IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE = eINSTANCE.getFromAgent_Is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care(); + + /** + * The meta object literal for the 'Expense' reference feature. + * + * + * @generated + */ + EReference FROM_AGENT__EXPENSE = eINSTANCE.getFromAgent_Expense(); + + /** + * The meta object literal for the 'Is eligible debt' attribute feature. + * + * + * @generated + */ + EAttribute FROM_AGENT__IS_ELIGIBLE_DEBT = eINSTANCE.getFromAgent_Is_eligible_debt(); + + /** + * The meta object literal for the 'Dependent' reference feature. + * + * + * @generated + */ + EReference FROM_AGENT__DEPENDENT = eINSTANCE.getFromAgent_Dependent(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.IncomeImpl Income}' class. + * + * + * @see TaxationWithRoot.impl.IncomeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getIncome() + * @generated + */ + EClass INCOME = eINSTANCE.getIncome(); + + /** + * The meta object literal for the 'Income amount' attribute feature. + * + * + * @generated + */ + EAttribute INCOME__INCOME_AMOUNT = eINSTANCE.getIncome_Income_amount(); + + /** + * The meta object literal for the 'Income type' containment reference feature. + * + * + * @generated + */ + EReference INCOME__INCOME_TYPE = eINSTANCE.getIncome_Income_type(); + + /** + * The meta object literal for the 'Tax card' containment reference feature. + * + * + * @generated + */ + EReference INCOME__TAX_CARD = eINSTANCE.getIncome_Tax_card(); + + /** + * The meta object literal for the 'Tax liability' attribute feature. + * + * + * @generated + */ + EAttribute INCOME__TAX_LIABILITY = eINSTANCE.getIncome_Tax_liability(); + + /** + * The meta object literal for the 'Tax Payer' container reference feature. + * + * + * @generated + */ + EReference INCOME__TAX_PAYER = eINSTANCE.getIncome_TaxPayer(); + + /** + * The meta object literal for the 'Details' containment reference list feature. + * + * + * @generated + */ + EReference INCOME__DETAILS = eINSTANCE.getIncome_Details(); + + /** + * The meta object literal for the 'Num' attribute feature. + * + * + * @generated + */ + EAttribute INCOME__NUM = eINSTANCE.getIncome_Num(); + + /** + * The meta object literal for the 'Expenses' containment reference list feature. + * + * + * @generated + */ + EReference INCOME__EXPENSES = eINSTANCE.getIncome_Expenses(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Income_TypeImpl Income Type}' class. + * + * + * @see TaxationWithRoot.impl.Income_TypeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getIncome_Type() + * @generated + */ + EClass INCOME_TYPE = eINSTANCE.getIncome_Type(); + + /** + * The meta object literal for the 'Id8' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TYPE__ID8 = eINSTANCE.getIncome_Type_Id8(); + + /** + * The meta object literal for the 'Income' container reference feature. + * + * + * @generated + */ + EReference INCOME_TYPE__INCOME = eINSTANCE.getIncome_Type_Income(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Tax_CardImpl Tax Card}' class. + * + * + * @see TaxationWithRoot.impl.Tax_CardImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getTax_Card() + * @generated + */ + EClass TAX_CARD = eINSTANCE.getTax_Card(); + + /** + * The meta object literal for the 'Card identifier' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__CARD_IDENTIFIER = eINSTANCE.getTax_Card_Card_identifier(); + + /** + * The meta object literal for the 'Tax office' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__TAX_OFFICE = eINSTANCE.getTax_Card_Tax_office(); + + /** + * The meta object literal for the 'Percentage of witholding' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__PERCENTAGE_OF_WITHOLDING = eINSTANCE.getTax_Card_Percentage_of_witholding(); + + /** + * The meta object literal for the 'Tax payers name surname' attribute list feature. + * + * + * @generated + */ + EAttribute TAX_CARD__TAX_PAYERS_NAME_SURNAME = eINSTANCE.getTax_Card_Tax_payers_name_surname(); + + /** + * The meta object literal for the 'Tax payers partner name surname' attribute list feature. + * + * + * @generated + */ + EAttribute TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME = eINSTANCE.getTax_Card_Tax_payers_partner_name_surname(); + + /** + * The meta object literal for the 'Tax payers address' reference feature. + * + * + * @generated + */ + EReference TAX_CARD__TAX_PAYERS_ADDRESS = eINSTANCE.getTax_Card_Tax_payers_address(); + + /** + * The meta object literal for the 'Jobs Employer SS No' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__JOBS_EMPLOYER_SS_NO = eINSTANCE.getTax_Card_Jobs_Employer_SSNo(); + + /** + * The meta object literal for the 'Jobs employers name' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__JOBS_EMPLOYERS_NAME = eINSTANCE.getTax_Card_Jobs_employers_name(); + + /** + * The meta object literal for the 'Jobs activity type' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__JOBS_ACTIVITY_TYPE = eINSTANCE.getTax_Card_Jobs_activity_type(); + + /** + * The meta object literal for the 'Jobs place of work' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__JOBS_PLACE_OF_WORK = eINSTANCE.getTax_Card_Jobs_place_of_work(); + + /** + * The meta object literal for the 'Deduction FD daily' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_FD_DAILY = eINSTANCE.getTax_Card_Deduction_FD_daily(); + + /** + * The meta object literal for the 'Deduction FD monthly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_FD_MONTHLY = eINSTANCE.getTax_Card_Deduction_FD_monthly(); + + /** + * The meta object literal for the 'Deduction AC daily' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_AC_DAILY = eINSTANCE.getTax_Card_Deduction_AC_daily(); + + /** + * The meta object literal for the 'Deduction AC monthly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_AC_MONTHLY = eINSTANCE.getTax_Card_Deduction_AC_monthly(); + + /** + * The meta object literal for the 'Deduction AC yearly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_AC_YEARLY = eINSTANCE.getTax_Card_Deduction_AC_yearly(); + + /** + * The meta object literal for the 'Deduction CE daily' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_CE_DAILY = eINSTANCE.getTax_Card_Deduction_CE_daily(); + + /** + * The meta object literal for the 'Deduction CE monthly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_CE_MONTHLY = eINSTANCE.getTax_Card_Deduction_CE_monthly(); + + /** + * The meta object literal for the 'Deduction CE yearly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_CE_YEARLY = eINSTANCE.getTax_Card_Deduction_CE_yearly(); + + /** + * The meta object literal for the 'Deduction DS daily' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_DS_DAILY = eINSTANCE.getTax_Card_Deduction_DS_daily(); + + /** + * The meta object literal for the 'Deduction DS monthly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_DS_MONTHLY = eINSTANCE.getTax_Card_Deduction_DS_monthly(); + + /** + * The meta object literal for the 'Deduction FO daily' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_FO_DAILY = eINSTANCE.getTax_Card_Deduction_FO_daily(); + + /** + * The meta object literal for the 'Deduction FO monthly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_FO_MONTHLY = eINSTANCE.getTax_Card_Deduction_FO_monthly(); + + /** + * The meta object literal for the 'Deduction FO yearly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_FO_YEARLY = eINSTANCE.getTax_Card_Deduction_FO_yearly(); + + /** + * The meta object literal for the 'Credit CIS daily' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__CREDIT_CIS_DAILY = eINSTANCE.getTax_Card_Credit_CIS_daily(); + + /** + * The meta object literal for the 'Credit CIS monthly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__CREDIT_CIS_MONTHLY = eINSTANCE.getTax_Card_Credit_CIS_monthly(); + + /** + * The meta object literal for the 'Credit CIM daily' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__CREDIT_CIM_DAILY = eINSTANCE.getTax_Card_Credit_CIM_daily(); + + /** + * The meta object literal for the 'Validity' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__VALIDITY = eINSTANCE.getTax_Card_Validity(); + + /** + * The meta object literal for the 'Income Tax Credit' reference list feature. + * + * + * @generated + */ + EReference TAX_CARD__INCOME_TAX_CREDIT = eINSTANCE.getTax_Card_Income_Tax_Credit(); + + /** + * The meta object literal for the 'Previous' reference feature. + * + * + * @generated + */ + EReference TAX_CARD__PREVIOUS = eINSTANCE.getTax_Card_Previous(); + + /** + * The meta object literal for the 'Current tax card' reference feature. + * + * + * @generated + */ + EReference TAX_CARD__CURRENT_TAX_CARD = eINSTANCE.getTax_Card_Current_tax_card(); + + /** + * The meta object literal for the 'Credit CIM yearly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__CREDIT_CIM_YEARLY = eINSTANCE.getTax_Card_Credit_CIM_yearly(); + + /** + * The meta object literal for the 'Deduction DS Alimony yearly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY = eINSTANCE.getTax_Card_Deduction_DS_Alimony_yearly(); + + /** + * The meta object literal for the 'Deduction DS Debt yearly' attribute feature. + * + * + * @generated + */ + EAttribute TAX_CARD__DEDUCTION_DS_DEBT_YEARLY = eINSTANCE.getTax_Card_Deduction_DS_Debt_yearly(); + + /** + * The meta object literal for the 'Income' container reference feature. + * + * + * @generated + */ + EReference TAX_CARD__INCOME = eINSTANCE.getTax_Card_Income(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Income_Tax_CreditImpl Income Tax Credit}' class. + * + * + * @see TaxationWithRoot.impl.Income_Tax_CreditImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getIncome_Tax_Credit() + * @generated + */ + EClass INCOME_TAX_CREDIT = eINSTANCE.getIncome_Tax_Credit(); + + /** + * The meta object literal for the 'Granted By' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TAX_CREDIT__GRANTED_BY = eINSTANCE.getIncome_Tax_Credit_GrantedBy(); + + /** + * The meta object literal for the 'Tax Payer' reference feature. + * + * + * @generated + */ + EReference INCOME_TAX_CREDIT__TAX_PAYER = eINSTANCE.getIncome_Tax_Credit_TaxPayer(); + + /** + * The meta object literal for the 'Tax year' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TAX_CREDIT__TAX_YEAR = eINSTANCE.getIncome_Tax_Credit_Tax_year(); + + /** + * The meta object literal for the 'Yearly' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TAX_CREDIT__YEARLY = eINSTANCE.getIncome_Tax_Credit_Yearly(); + + /** + * The meta object literal for the 'Monthly' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TAX_CREDIT__MONTHLY = eINSTANCE.getIncome_Tax_Credit_Monthly(); + + /** + * The meta object literal for the 'Daily' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TAX_CREDIT__DAILY = eINSTANCE.getIncome_Tax_Credit_Daily(); + + /** + * The meta object literal for the 'Id7' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_TAX_CREDIT__ID7 = eINSTANCE.getIncome_Tax_Credit_Id7(); + + /** + * The meta object literal for the 'Taxation Frame' reference feature. + * + * + * @generated + */ + EReference INCOME_TAX_CREDIT__TAXATION_FRAME = eINSTANCE.getIncome_Tax_Credit_Taxation_Frame(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Income_DetailImpl Income Detail}' class. + * + * + * @see TaxationWithRoot.impl.Income_DetailImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getIncome_Detail() + * @generated + */ + EClass INCOME_DETAIL = eINSTANCE.getIncome_Detail(); + + /** + * The meta object literal for the 'Amount' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_DETAIL__AMOUNT = eINSTANCE.getIncome_Detail_Amount(); + + /** + * The meta object literal for the 'Is worked' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_DETAIL__IS_WORKED = eINSTANCE.getIncome_Detail_Is_worked(); + + /** + * The meta object literal for the 'Distance' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_DETAIL__DISTANCE = eINSTANCE.getIncome_Detail_Distance(); + + /** + * The meta object literal for the 'Worked days' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_DETAIL__WORKED_DAYS = eINSTANCE.getIncome_Detail_Worked_days(); + + /** + * The meta object literal for the 'Is contributing CNS' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_DETAIL__IS_CONTRIBUTING_CNS = eINSTANCE.getIncome_Detail_Is_contributing_CNS(); + + /** + * The meta object literal for the 'Id5' attribute feature. + * + * + * @generated + */ + EAttribute INCOME_DETAIL__ID5 = eINSTANCE.getIncome_Detail_Id5(); + + /** + * The meta object literal for the 'Income' container reference feature. + * + * + * @generated + */ + EReference INCOME_DETAIL__INCOME = eINSTANCE.getIncome_Detail_Income(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.FromLawImpl From Law}' class. + * + * + * @see TaxationWithRoot.impl.FromLawImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getFromLaw() + * @generated + */ + EClass FROM_LAW = eINSTANCE.getFromLaw(); + + /** + * The meta object literal for the 'Id' attribute feature. + * + * + * @generated + */ + EAttribute FROM_LAW__ID = eINSTANCE.getFromLaw_Id(); + + /** + * The meta object literal for the 'Tax Payer' container reference feature. + * + * + * @generated + */ + EReference FROM_LAW__TAX_PAYER = eINSTANCE.getFromLaw_TaxPayer(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Fiscal_AddressImpl Fiscal Address}' class. + * + * + * @see TaxationWithRoot.impl.Fiscal_AddressImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getFiscal_Address() + * @generated + */ + EClass FISCAL_ADDRESS = eINSTANCE.getFiscal_Address(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Habitual_AddressImpl Habitual Address}' class. + * + * + * @see TaxationWithRoot.impl.Habitual_AddressImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getHabitual_Address() + * @generated + */ + EClass HABITUAL_ADDRESS = eINSTANCE.getHabitual_Address(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Marriage_RecordImpl Marriage Record}' class. + * + * + * @see TaxationWithRoot.impl.Marriage_RecordImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getMarriage_Record() + * @generated + */ + EClass MARRIAGE_RECORD = eINSTANCE.getMarriage_Record(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Non_Resident_Tax_PayerImpl Non Resident Tax Payer}' class. + * + * + * @see TaxationWithRoot.impl.Non_Resident_Tax_PayerImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getNon_Resident_Tax_Payer() + * @generated + */ + EClass NON_RESIDENT_TAX_PAYER = eINSTANCE.getNon_Resident_Tax_Payer(); + + /** + * The meta object literal for the 'Is assimilated to resident' attribute feature. + * + * + * @generated + */ + EAttribute NON_RESIDENT_TAX_PAYER__IS_ASSIMILATED_TO_RESIDENT = eINSTANCE.getNon_Resident_Tax_Payer_Is_assimilated_to_resident(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Partnership_RecordImpl Partnership Record}' class. + * + * + * @see TaxationWithRoot.impl.Partnership_RecordImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getPartnership_Record() + * @generated + */ + EClass PARTNERSHIP_RECORD = eINSTANCE.getPartnership_Record(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Resident_Tax_PayerImpl Resident Tax Payer}' class. + * + * + * @see TaxationWithRoot.impl.Resident_Tax_PayerImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getResident_Tax_Payer() + * @generated + */ + EClass RESIDENT_TAX_PAYER = eINSTANCE.getResident_Tax_Payer(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Trade_and_Business_IncomeImpl Trade and Business Income}' class. + * + * + * @see TaxationWithRoot.impl.Trade_and_Business_IncomeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getTrade_and_Business_Income() + * @generated + */ + EClass TRADE_AND_BUSINESS_INCOME = eINSTANCE.getTrade_and_Business_Income(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Agriculture_and_Forestry_IncomeImpl Agriculture and Forestry Income}' class. + * + * + * @see TaxationWithRoot.impl.Agriculture_and_Forestry_IncomeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getAgriculture_and_Forestry_Income() + * @generated + */ + EClass AGRICULTURE_AND_FORESTRY_INCOME = eINSTANCE.getAgriculture_and_Forestry_Income(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Pensions_and_Annuities_IncomeImpl Pensions and Annuities Income}' class. + * + * + * @see TaxationWithRoot.impl.Pensions_and_Annuities_IncomeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getPensions_and_Annuities_Income() + * @generated + */ + EClass PENSIONS_AND_ANNUITIES_INCOME = eINSTANCE.getPensions_and_Annuities_Income(); + + /** + * The meta object literal for the 'Occasional payement' attribute feature. + * + * + * @generated + */ + EAttribute PENSIONS_AND_ANNUITIES_INCOME__OCCASIONAL_PAYEMENT = eINSTANCE.getPensions_and_Annuities_Income_Occasional_payement(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Capital_and_Investments_IncomeImpl Capital and Investments Income}' class. + * + * + * @see TaxationWithRoot.impl.Capital_and_Investments_IncomeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCapital_and_Investments_Income() + * @generated + */ + EClass CAPITAL_AND_INVESTMENTS_INCOME = eINSTANCE.getCapital_and_Investments_Income(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Employment_IncomeImpl Employment Income}' class. + * + * + * @see TaxationWithRoot.impl.Employment_IncomeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getEmployment_Income() + * @generated + */ + EClass EMPLOYMENT_INCOME = eINSTANCE.getEmployment_Income(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Rentals_and_Leases_IncomeImpl Rentals and Leases Income}' class. + * + * + * @see TaxationWithRoot.impl.Rentals_and_Leases_IncomeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getRentals_and_Leases_Income() + * @generated + */ + EClass RENTALS_AND_LEASES_INCOME = eINSTANCE.getRentals_and_Leases_Income(); + + /** + * The meta object literal for the 'Is periodic' attribute feature. + * + * + * @generated + */ + EAttribute RENTALS_AND_LEASES_INCOME__IS_PERIODIC = eINSTANCE.getRentals_and_Leases_Income_Is_periodic(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Foreign_IncomeImpl Foreign Income}' class. + * + * + * @see TaxationWithRoot.impl.Foreign_IncomeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getForeign_Income() + * @generated + */ + EClass FOREIGN_INCOME = eINSTANCE.getForeign_Income(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Local_IncomeImpl Local Income}' class. + * + * + * @see TaxationWithRoot.impl.Local_IncomeImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getLocal_Income() + * @generated + */ + EClass LOCAL_INCOME = eINSTANCE.getLocal_Income(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.CIMImpl CIM}' class. + * + * + * @see TaxationWithRoot.impl.CIMImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCIM() + * @generated + */ + EClass CIM = eINSTANCE.getCIM(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.CIPImpl CIP}' class. + * + * + * @see TaxationWithRoot.impl.CIPImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCIP() + * @generated + */ + EClass CIP = eINSTANCE.getCIP(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.CISImpl CIS}' class. + * + * + * @see TaxationWithRoot.impl.CISImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCIS() + * @generated + */ + EClass CIS = eINSTANCE.getCIS(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.FDImpl FD}' class. + * + * + * @see TaxationWithRoot.impl.FDImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getFD() + * @generated + */ + EClass FD = eINSTANCE.getFD(); + + /** + * The meta object literal for the 'Distance declared in january' attribute feature. + * + * + * @generated + */ + EAttribute FD__DISTANCE_DECLARED_IN_JANUARY = eINSTANCE.getFD_Distance_declared_in_january(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Professional_Expenses_DeductionImpl Professional Expenses Deduction}' class. + * + * + * @see TaxationWithRoot.impl.Professional_Expenses_DeductionImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getProfessional_Expenses_Deduction() + * @generated + */ + EClass PROFESSIONAL_EXPENSES_DEDUCTION = eINSTANCE.getProfessional_Expenses_Deduction(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.FOImpl FO}' class. + * + * + * @see TaxationWithRoot.impl.FOImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getFO() + * @generated + */ + EClass FO = eINSTANCE.getFO(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.DS_for_Permanent_ExpenseImpl DS for Permanent Expense}' class. + * + * + * @see TaxationWithRoot.impl.DS_for_Permanent_ExpenseImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Permanent_Expense() + * @generated + */ + EClass DS_FOR_PERMANENT_EXPENSE = eINSTANCE.getDS_for_Permanent_Expense(); + + /** + * The meta object literal for the 'Permanent expense category' attribute feature. + * + * + * @generated + */ + EAttribute DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY = eINSTANCE.getDS_for_Permanent_Expense_Permanent_expense_category(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.DSImpl DS}' class. + * + * + * @see TaxationWithRoot.impl.DSImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS() + * @generated + */ + EClass DS = eINSTANCE.getDS(); + + /** + * The meta object literal for the 'Maximum deductible amount' attribute feature. + * + * + * @generated + */ + EAttribute DS__MAXIMUM_DEDUCTIBLE_AMOUNT = eINSTANCE.getDS_Maximum_deductible_amount(); + + /** + * The meta object literal for the 'Id3' attribute feature. + * + * + * @generated + */ + EAttribute DS__ID3 = eINSTANCE.getDS_Id3(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.DS_for_Interest_ExpenseImpl DS for Interest Expense}' class. + * + * + * @see TaxationWithRoot.impl.DS_for_Interest_ExpenseImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Interest_Expense() + * @generated + */ + EClass DS_FOR_INTEREST_EXPENSE = eINSTANCE.getDS_for_Interest_Expense(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.DS_for_Health_and_Pension_InsuranceImpl DS for Health and Pension Insurance}' class. + * + * + * @see TaxationWithRoot.impl.DS_for_Health_and_Pension_InsuranceImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Health_and_Pension_Insurance() + * @generated + */ + EClass DS_FOR_HEALTH_AND_PENSION_INSURANCE = eINSTANCE.getDS_for_Health_and_Pension_Insurance(); + + /** + * The meta object literal for the 'Insurance category' attribute feature. + * + * + * @generated + */ + EAttribute DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY = eINSTANCE.getDS_for_Health_and_Pension_Insurance_Insurance_category(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.DS_for_Private_Insurance_and_PlanImpl DS for Private Insurance and Plan}' class. + * + * + * @see TaxationWithRoot.impl.DS_for_Private_Insurance_and_PlanImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Private_Insurance_and_Plan() + * @generated + */ + EClass DS_FOR_PRIVATE_INSURANCE_AND_PLAN = eINSTANCE.getDS_for_Private_Insurance_and_Plan(); + + /** + * The meta object literal for the 'Private insurance and plan category' attribute feature. + * + * + * @generated + */ + EAttribute DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY = eINSTANCE.getDS_for_Private_Insurance_and_Plan_Private_insurance_and_plan_category(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.DS_for_Loss_CarryforwardImpl DS for Loss Carryforward}' class. + * + * + * @see TaxationWithRoot.impl.DS_for_Loss_CarryforwardImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Loss_Carryforward() + * @generated + */ + EClass DS_FOR_LOSS_CARRYFORWARD = eINSTANCE.getDS_for_Loss_Carryforward(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.DS_for_DonationImpl DS for Donation}' class. + * + * + * @see TaxationWithRoot.impl.DS_for_DonationImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Donation() + * @generated + */ + EClass DS_FOR_DONATION = eINSTANCE.getDS_for_Donation(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Permanent_ExpenseImpl Permanent Expense}' class. + * + * + * @see TaxationWithRoot.impl.Permanent_ExpenseImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getPermanent_Expense() + * @generated + */ + EClass PERMANENT_EXPENSE = eINSTANCE.getPermanent_Expense(); + + /** + * The meta object literal for the 'Category' attribute feature. + * + * + * @generated + */ + EAttribute PERMANENT_EXPENSE__CATEGORY = eINSTANCE.getPermanent_Expense_Category(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Special_Expense_DSImpl Special Expense DS}' class. + * + * + * @see TaxationWithRoot.impl.Special_Expense_DSImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getSpecial_Expense_DS() + * @generated + */ + EClass SPECIAL_EXPENSE_DS = eINSTANCE.getSpecial_Expense_DS(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Interest_ExpenseImpl Interest Expense}' class. + * + * + * @see TaxationWithRoot.impl.Interest_ExpenseImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getInterest_Expense() + * @generated + */ + EClass INTEREST_EXPENSE = eINSTANCE.getInterest_Expense(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Private_Insurance_and_PlanImpl Private Insurance and Plan}' class. + * + * + * @see TaxationWithRoot.impl.Private_Insurance_and_PlanImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getPrivate_Insurance_and_Plan() + * @generated + */ + EClass PRIVATE_INSURANCE_AND_PLAN = eINSTANCE.getPrivate_Insurance_and_Plan(); + + /** + * The meta object literal for the 'Category' attribute feature. + * + * + * @generated + */ + EAttribute PRIVATE_INSURANCE_AND_PLAN__CATEGORY = eINSTANCE.getPrivate_Insurance_and_Plan_Category(); + + /** + * The meta object literal for the 'Duration of contract' attribute feature. + * + * + * @generated + */ + EAttribute PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT = eINSTANCE.getPrivate_Insurance_and_Plan_Duration_of_contract(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Health_and_Pension_InsuranceImpl Health and Pension Insurance}' class. + * + * + * @see TaxationWithRoot.impl.Health_and_Pension_InsuranceImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getHealth_and_Pension_Insurance() + * @generated + */ + EClass HEALTH_AND_PENSION_INSURANCE = eINSTANCE.getHealth_and_Pension_Insurance(); + + /** + * The meta object literal for the 'Category' attribute feature. + * + * + * @generated + */ + EAttribute HEALTH_AND_PENSION_INSURANCE__CATEGORY = eINSTANCE.getHealth_and_Pension_Insurance_Category(); + + /** + * The meta object literal for the 'Is related to additional salary' attribute feature. + * + * + * @generated + */ + EAttribute HEALTH_AND_PENSION_INSURANCE__IS_RELATED_TO_ADDITIONAL_SALARY = eINSTANCE.getHealth_and_Pension_Insurance_Is_related_to_additional_salary(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.DonationImpl Donation}' class. + * + * + * @see TaxationWithRoot.impl.DonationImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDonation() + * @generated + */ + EClass DONATION = eINSTANCE.getDonation(); + + /** + * The meta object literal for the 'Beneficiary1' attribute feature. + * + * + * @generated + */ + EAttribute DONATION__BENEFICIARY1 = eINSTANCE.getDonation_Beneficiary1(); + + /** + * The meta object literal for the 'Is donation reported' attribute feature. + * + * + * @generated + */ + EAttribute DONATION__IS_DONATION_REPORTED = eINSTANCE.getDonation_Is_donation_reported(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Loss_CarryforwardImpl Loss Carryforward}' class. + * + * + * @see TaxationWithRoot.impl.Loss_CarryforwardImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getLoss_Carryforward() + * @generated + */ + EClass LOSS_CARRYFORWARD = eINSTANCE.getLoss_Carryforward(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Spousal_Expense_ACImpl Spousal Expense AC}' class. + * + * + * @see TaxationWithRoot.impl.Spousal_Expense_ACImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getSpousal_Expense_AC() + * @generated + */ + EClass SPOUSAL_EXPENSE_AC = eINSTANCE.getSpousal_Expense_AC(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Extraordinary_Expense_CEImpl Extraordinary Expense CE}' class. + * + * + * @see TaxationWithRoot.impl.Extraordinary_Expense_CEImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getExtraordinary_Expense_CE() + * @generated + */ + EClass EXTRAORDINARY_EXPENSE_CE = eINSTANCE.getExtraordinary_Expense_CE(); + + /** + * The meta object literal for the 'Thresholded deduction percentage' attribute feature. + * + * + * @generated + */ + EAttribute EXTRAORDINARY_EXPENSE_CE__THRESHOLDED_DEDUCTION_PERCENTAGE = eINSTANCE.getExtraordinary_Expense_CE_Thresholded_deduction_percentage(); + + /** + * The meta object literal for the 'Ce type' attribute feature. + * + * + * @generated + */ + EAttribute EXTRAORDINARY_EXPENSE_CE__CE_TYPE = eINSTANCE.getExtraordinary_Expense_CE_Ce_type(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Travel_Expense_FDImpl Travel Expense FD}' class. + * + * + * @see TaxationWithRoot.impl.Travel_Expense_FDImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getTravel_Expense_FD() + * @generated + */ + EClass TRAVEL_EXPENSE_FD = eINSTANCE.getTravel_Expense_FD(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Professional_ExpenseImpl Professional Expense}' class. + * + * + * @see TaxationWithRoot.impl.Professional_ExpenseImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getProfessional_Expense() + * @generated + */ + EClass PROFESSIONAL_EXPENSE = eINSTANCE.getProfessional_Expense(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.Miscellaneous_Expense_FOImpl Miscellaneous Expense FO}' class. + * + * + * @see TaxationWithRoot.impl.Miscellaneous_Expense_FOImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getMiscellaneous_Expense_FO() + * @generated + */ + EClass MISCELLANEOUS_EXPENSE_FO = eINSTANCE.getMiscellaneous_Expense_FO(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.ResourceImpl Resource}' class. + * + * + * @see TaxationWithRoot.impl.ResourceImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getResource() + * @generated + */ + EClass RESOURCE = eINSTANCE.getResource(); + + /** + * The meta object literal for the 'Contains' containment reference list feature. + * + * + * @generated + */ + EReference RESOURCE__CONTAINS = eINSTANCE.getResource_Contains(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.impl.RootImpl Root}' class. + * + * + * @see TaxationWithRoot.impl.RootImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getRoot() + * @generated + */ + EClass ROOT = eINSTANCE.getRoot(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.Grantor Grantor}' enum. + * + * + * @see TaxationWithRoot.Grantor + * @see TaxationWithRoot.impl.TaxationPackageImpl#getGrantor() + * @generated + */ + EEnum GRANTOR = eINSTANCE.getGrantor(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.Disability_Types Disability Types}' enum. + * + * + * @see TaxationWithRoot.Disability_Types + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDisability_Types() + * @generated + */ + EEnum DISABILITY_TYPES = eINSTANCE.getDisability_Types(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.Country Country}' enum. + * + * + * @see TaxationWithRoot.Country + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCountry() + * @generated + */ + EEnum COUNTRY = eINSTANCE.getCountry(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.Tax_Office Tax Office}' enum. + * + * + * @see TaxationWithRoot.Tax_Office + * @see TaxationWithRoot.impl.TaxationPackageImpl#getTax_Office() + * @generated + */ + EEnum TAX_OFFICE = eINSTANCE.getTax_Office(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.Tax_Class_Category Tax Class Category}' enum. + * + * + * @see TaxationWithRoot.Tax_Class_Category + * @see TaxationWithRoot.impl.TaxationPackageImpl#getTax_Class_Category() + * @generated + */ + EEnum TAX_CLASS_CATEGORY = eINSTANCE.getTax_Class_Category(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.Job_Activity Job Activity}' enum. + * + * + * @see TaxationWithRoot.Job_Activity + * @see TaxationWithRoot.impl.TaxationPackageImpl#getJob_Activity() + * @generated + */ + EEnum JOB_ACTIVITY = eINSTANCE.getJob_Activity(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.Town Town}' enum. + * + * + * @see TaxationWithRoot.Town + * @see TaxationWithRoot.impl.TaxationPackageImpl#getTown() + * @generated + */ + EEnum TOWN = eINSTANCE.getTown(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.CE_Type CE Type}' enum. + * + * + * @see TaxationWithRoot.CE_Type + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCE_Type() + * @generated + */ + EEnum CE_TYPE = eINSTANCE.getCE_Type(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.Expense_Purpose Expense Purpose}' enum. + * + * + * @see TaxationWithRoot.Expense_Purpose + * @see TaxationWithRoot.impl.TaxationPackageImpl#getExpense_Purpose() + * @generated + */ + EEnum EXPENSE_PURPOSE = eINSTANCE.getExpense_Purpose(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.Dependent_Type Dependent Type}' enum. + * + * + * @see TaxationWithRoot.Dependent_Type + * @see TaxationWithRoot.impl.TaxationPackageImpl#getDependent_Type() + * @generated + */ + EEnum DEPENDENT_TYPE = eINSTANCE.getDependent_Type(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.Separation_Causes Separation Causes}' enum. + * + * + * @see TaxationWithRoot.Separation_Causes + * @see TaxationWithRoot.impl.TaxationPackageImpl#getSeparation_Causes() + * @generated + */ + EEnum SEPARATION_CAUSES = eINSTANCE.getSeparation_Causes(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.Category_of_Permanent_Expense Category of Permanent Expense}' enum. + * + * + * @see TaxationWithRoot.Category_of_Permanent_Expense + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCategory_of_Permanent_Expense() + * @generated + */ + EEnum CATEGORY_OF_PERMANENT_EXPENSE = eINSTANCE.getCategory_of_Permanent_Expense(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.Category_of_Health_and_Pension_Insurances Category of Health and Pension Insurances}' enum. + * + * + * @see TaxationWithRoot.Category_of_Health_and_Pension_Insurances + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCategory_of_Health_and_Pension_Insurances() + * @generated + */ + EEnum CATEGORY_OF_HEALTH_AND_PENSION_INSURANCES = eINSTANCE.getCategory_of_Health_and_Pension_Insurances(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.Category_of_Private_Insurance_and_Plan Category of Private Insurance and Plan}' enum. + * + * + * @see TaxationWithRoot.Category_of_Private_Insurance_and_Plan + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCategory_of_Private_Insurance_and_Plan() + * @generated + */ + EEnum CATEGORY_OF_PRIVATE_INSURANCE_AND_PLAN = eINSTANCE.getCategory_of_Private_Insurance_and_Plan(); + + /** + * The meta object literal for the '{@link TaxationWithRoot.Legal_Union_Types Legal Union Types}' enum. + * + * + * @see TaxationWithRoot.Legal_Union_Types + * @see TaxationWithRoot.impl.TaxationPackageImpl#getLegal_Union_Types() + * @generated + */ + EEnum LEGAL_UNION_TYPES = eINSTANCE.getLegal_Union_Types(); + + } + +} //TaxationPackage diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Town.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Town.java new file mode 100644 index 00000000..5b917a69 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Town.java @@ -0,0 +1,278 @@ +/** + */ +package TaxationWithRoot; + +import java.util.Arrays; +import java.util.Collections; +import java.util.List; + +import org.eclipse.emf.common.util.Enumerator; + +/** + * + * A representation of the literals of the enumeration 'Town', + * and utility methods for working with them. + * + * @see TaxationWithRoot.TaxationPackage#getTown() + * @model + * @generated + */ +public enum Town implements Enumerator { + /** + * The 'LL' literal object. + * + * + * @see #LL_VALUE + * @generated + * @ordered + */ + LL(0, "LL", "LL"), + + /** + * The 'BB' literal object. + * + * + * @see #BB_VALUE + * @generated + * @ordered + */ + BB(1, "BB", "BB"), + + /** + * The 'SS' literal object. + * + * + * @see #SS_VALUE + * @generated + * @ordered + */ + SS(2, "SS", "SS"), + + /** + * The 'TT' literal object. + * + * + * @see #TT_VALUE + * @generated + * @ordered + */ + TT(3, "TT", "TT"), + + /** + * The 'Other' literal object. + * + * + * @see #OTHER_VALUE + * @generated + * @ordered + */ + OTHER(4, "Other", "Other"); + + /** + * The 'LL' literal value. + * + * + * @see #LL + * @model + * @generated + * @ordered + */ + public static final int LL_VALUE = 0; + + /** + * The 'BB' literal value. + * + * + * @see #BB + * @model + * @generated + * @ordered + */ + public static final int BB_VALUE = 1; + + /** + * The 'SS' literal value. + * + * + * @see #SS + * @model + * @generated + * @ordered + */ + public static final int SS_VALUE = 2; + + /** + * The 'TT' literal value. + * + * + * @see #TT + * @model + * @generated + * @ordered + */ + public static final int TT_VALUE = 3; + + /** + * The 'Other' literal value. + * + * + * @see #OTHER + * @model name="Other" + * @generated + * @ordered + */ + public static final int OTHER_VALUE = 4; + + /** + * An array of all the 'Town' enumerators. + * + * + * @generated + */ + private static final Town[] VALUES_ARRAY = + new Town[] { + LL, + BB, + SS, + TT, + OTHER, + }; + + /** + * A public read-only list of all the 'Town' enumerators. + * + * + * @generated + */ + public static final List VALUES = Collections.unmodifiableList(Arrays.asList(VALUES_ARRAY)); + + /** + * Returns the 'Town' literal with the specified literal value. + * + * + * @param literal the literal. + * @return the matching enumerator or null. + * @generated + */ + public static Town get(String literal) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Town result = VALUES_ARRAY[i]; + if (result.toString().equals(literal)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Town' literal with the specified name. + * + * + * @param name the name. + * @return the matching enumerator or null. + * @generated + */ + public static Town getByName(String name) { + for (int i = 0; i < VALUES_ARRAY.length; ++i) { + Town result = VALUES_ARRAY[i]; + if (result.getName().equals(name)) { + return result; + } + } + return null; + } + + /** + * Returns the 'Town' literal with the specified integer value. + * + * + * @param value the integer value. + * @return the matching enumerator or null. + * @generated + */ + public static Town get(int value) { + switch (value) { + case LL_VALUE: return LL; + case BB_VALUE: return BB; + case SS_VALUE: return SS; + case TT_VALUE: return TT; + case OTHER_VALUE: return OTHER; + } + return null; + } + + /** + * + * + * @generated + */ + private final int value; + + /** + * + * + * @generated + */ + private final String name; + + /** + * + * + * @generated + */ + private final String literal; + + /** + * Only this class can construct instances. + * + * + * @generated + */ + private Town(int value, String name, String literal) { + this.value = value; + this.name = name; + this.literal = literal; + } + + /** + * + * + * @generated + */ + @Override + public int getValue() { + return value; + } + + /** + * + * + * @generated + */ + @Override + public String getName() { + return name; + } + + /** + * + * + * @generated + */ + @Override + public String getLiteral() { + return literal; + } + + /** + * Returns the literal value of the enumerator, which is its string representation. + * + * + * @generated + */ + @Override + public String toString() { + return literal; + } + +} //Town diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Trade_and_Business_Income.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Trade_and_Business_Income.java new file mode 100644 index 00000000..02a818a4 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Trade_and_Business_Income.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Trade and Business Income'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getTrade_and_Business_Income() + * @model + * @generated + */ +public interface Trade_and_Business_Income extends Income_Type { +} // Trade_and_Business_Income diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Travel_Expense_FD.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Travel_Expense_FD.java new file mode 100644 index 00000000..eed6ddb9 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Travel_Expense_FD.java @@ -0,0 +1,17 @@ +/** + */ +package TaxationWithRoot; + + +/** + * + * A representation of the model object 'Travel Expense FD'. + * + * + * + * @see TaxationWithRoot.TaxationPackage#getTravel_Expense_FD() + * @model + * @generated + */ +public interface Travel_Expense_FD extends Professional_Expense { +} // Travel_Expense_FD diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/AddressImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/AddressImpl.java new file mode 100644 index 00000000..c6062848 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/AddressImpl.java @@ -0,0 +1,463 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Address; +import TaxationWithRoot.Country; +import TaxationWithRoot.Physical_Person; +import TaxationWithRoot.TaxationPackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'Address'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.AddressImpl#getCountry Country}
            • + *
            • {@link TaxationWithRoot.impl.AddressImpl#getStreet Street}
            • + *
            • {@link TaxationWithRoot.impl.AddressImpl#getZipCode Zip Code}
            • + *
            • {@link TaxationWithRoot.impl.AddressImpl#getCity City}
            • + *
            • {@link TaxationWithRoot.impl.AddressImpl#getId2 Id2}
            • + *
            • {@link TaxationWithRoot.impl.AddressImpl#getTaxPayer Tax Payer}
            • + *
            + * + * @generated + */ +public class AddressImpl extends RootImpl implements Address { + /** + * The default value of the '{@link #getCountry() Country}' attribute. + * + * + * @see #getCountry() + * @generated + * @ordered + */ + protected static final Country COUNTRY_EDEFAULT = Country.ZZ; + + /** + * The cached value of the '{@link #getCountry() Country}' attribute. + * + * + * @see #getCountry() + * @generated + * @ordered + */ + protected Country country = COUNTRY_EDEFAULT; + + /** + * The default value of the '{@link #getStreet() Street}' attribute. + * + * + * @see #getStreet() + * @generated + * @ordered + */ + protected static final String STREET_EDEFAULT = null; + + /** + * The cached value of the '{@link #getStreet() Street}' attribute. + * + * + * @see #getStreet() + * @generated + * @ordered + */ + protected String street = STREET_EDEFAULT; + + /** + * The default value of the '{@link #getZipCode() Zip Code}' attribute. + * + * + * @see #getZipCode() + * @generated + * @ordered + */ + protected static final String ZIP_CODE_EDEFAULT = null; + + /** + * The cached value of the '{@link #getZipCode() Zip Code}' attribute. + * + * + * @see #getZipCode() + * @generated + * @ordered + */ + protected String zipCode = ZIP_CODE_EDEFAULT; + + /** + * The default value of the '{@link #getCity() City}' attribute. + * + * + * @see #getCity() + * @generated + * @ordered + */ + protected static final String CITY_EDEFAULT = null; + + /** + * The cached value of the '{@link #getCity() City}' attribute. + * + * + * @see #getCity() + * @generated + * @ordered + */ + protected String city = CITY_EDEFAULT; + + /** + * The default value of the '{@link #getId2() Id2}' attribute. + * + * + * @see #getId2() + * @generated + * @ordered + */ + protected static final String ID2_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId2() Id2}' attribute. + * + * + * @see #getId2() + * @generated + * @ordered + */ + protected String id2 = ID2_EDEFAULT; + + /** + * The cached value of the '{@link #getTaxPayer() Tax Payer}' reference list. + * + * + * @see #getTaxPayer() + * @generated + * @ordered + */ + protected EList taxPayer; + + /** + * + * + * @generated + */ + protected AddressImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.ADDRESS; + } + + /** + * + * + * @generated + */ + @Override + public Country getCountry() { + return country; + } + + /** + * + * + * @generated + */ + @Override + public void setCountry(Country newCountry) { + Country oldCountry = country; + country = newCountry == null ? COUNTRY_EDEFAULT : newCountry; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.ADDRESS__COUNTRY, oldCountry, country)); + } + + /** + * + * + * @generated + */ + @Override + public String getStreet() { + return street; + } + + /** + * + * + * @generated + */ + @Override + public void setStreet(String newStreet) { + String oldStreet = street; + street = newStreet; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.ADDRESS__STREET, oldStreet, street)); + } + + /** + * + * + * @generated + */ + @Override + public String getZipCode() { + return zipCode; + } + + /** + * + * + * @generated + */ + @Override + public void setZipCode(String newZipCode) { + String oldZipCode = zipCode; + zipCode = newZipCode; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.ADDRESS__ZIP_CODE, oldZipCode, zipCode)); + } + + /** + * + * + * @generated + */ + @Override + public String getCity() { + return city; + } + + /** + * + * + * @generated + */ + @Override + public void setCity(String newCity) { + String oldCity = city; + city = newCity; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.ADDRESS__CITY, oldCity, city)); + } + + /** + * + * + * @generated + */ + @Override + public String getId2() { + return id2; + } + + /** + * + * + * @generated + */ + @Override + public void setId2(String newId2) { + String oldId2 = id2; + id2 = newId2; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.ADDRESS__ID2, oldId2, id2)); + } + + /** + * + * + * @generated + */ + @Override + public EList getTaxPayer() { + if (taxPayer == null) { + taxPayer = new EObjectWithInverseResolvingEList.ManyInverse(Physical_Person.class, this, TaxationPackage.ADDRESS__TAX_PAYER, TaxationPackage.PHYSICAL_PERSON__ADDRESSES); + } + return taxPayer; + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.ADDRESS__TAX_PAYER: + return ((InternalEList)(InternalEList)getTaxPayer()).basicAdd(otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.ADDRESS__TAX_PAYER: + return ((InternalEList)getTaxPayer()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.ADDRESS__COUNTRY: + return getCountry(); + case TaxationPackage.ADDRESS__STREET: + return getStreet(); + case TaxationPackage.ADDRESS__ZIP_CODE: + return getZipCode(); + case TaxationPackage.ADDRESS__CITY: + return getCity(); + case TaxationPackage.ADDRESS__ID2: + return getId2(); + case TaxationPackage.ADDRESS__TAX_PAYER: + return getTaxPayer(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.ADDRESS__COUNTRY: + setCountry((Country)newValue); + return; + case TaxationPackage.ADDRESS__STREET: + setStreet((String)newValue); + return; + case TaxationPackage.ADDRESS__ZIP_CODE: + setZipCode((String)newValue); + return; + case TaxationPackage.ADDRESS__CITY: + setCity((String)newValue); + return; + case TaxationPackage.ADDRESS__ID2: + setId2((String)newValue); + return; + case TaxationPackage.ADDRESS__TAX_PAYER: + getTaxPayer().clear(); + getTaxPayer().addAll((Collection)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.ADDRESS__COUNTRY: + setCountry(COUNTRY_EDEFAULT); + return; + case TaxationPackage.ADDRESS__STREET: + setStreet(STREET_EDEFAULT); + return; + case TaxationPackage.ADDRESS__ZIP_CODE: + setZipCode(ZIP_CODE_EDEFAULT); + return; + case TaxationPackage.ADDRESS__CITY: + setCity(CITY_EDEFAULT); + return; + case TaxationPackage.ADDRESS__ID2: + setId2(ID2_EDEFAULT); + return; + case TaxationPackage.ADDRESS__TAX_PAYER: + getTaxPayer().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.ADDRESS__COUNTRY: + return country != COUNTRY_EDEFAULT; + case TaxationPackage.ADDRESS__STREET: + return STREET_EDEFAULT == null ? street != null : !STREET_EDEFAULT.equals(street); + case TaxationPackage.ADDRESS__ZIP_CODE: + return ZIP_CODE_EDEFAULT == null ? zipCode != null : !ZIP_CODE_EDEFAULT.equals(zipCode); + case TaxationPackage.ADDRESS__CITY: + return CITY_EDEFAULT == null ? city != null : !CITY_EDEFAULT.equals(city); + case TaxationPackage.ADDRESS__ID2: + return ID2_EDEFAULT == null ? id2 != null : !ID2_EDEFAULT.equals(id2); + case TaxationPackage.ADDRESS__TAX_PAYER: + return taxPayer != null && !taxPayer.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (country: "); + result.append(country); + result.append(", street: "); + result.append(street); + result.append(", zipCode: "); + result.append(zipCode); + result.append(", city: "); + result.append(city); + result.append(", id2: "); + result.append(id2); + result.append(')'); + return result.toString(); + } + +} //AddressImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Agriculture_and_Forestry_IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Agriculture_and_Forestry_IncomeImpl.java new file mode 100644 index 00000000..b8ed3fdc --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Agriculture_and_Forestry_IncomeImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Agriculture_and_Forestry_Income; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Agriculture and Forestry Income'. + * + * + * @generated + */ +public class Agriculture_and_Forestry_IncomeImpl extends Income_TypeImpl implements Agriculture_and_Forestry_Income { + /** + * + * + * @generated + */ + protected Agriculture_and_Forestry_IncomeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.AGRICULTURE_AND_FORESTRY_INCOME; + } + +} //Agriculture_and_Forestry_IncomeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/CIMImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/CIMImpl.java new file mode 100644 index 00000000..0a10b004 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/CIMImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.CIM; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'CIM'. + * + * + * @generated + */ +public class CIMImpl extends Income_Tax_CreditImpl implements CIM { + /** + * + * + * @generated + */ + protected CIMImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.CIM; + } + +} //CIMImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/CIPImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/CIPImpl.java new file mode 100644 index 00000000..ba532b25 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/CIPImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.CIP; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'CIP'. + * + * + * @generated + */ +public class CIPImpl extends Income_Tax_CreditImpl implements CIP { + /** + * + * + * @generated + */ + protected CIPImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.CIP; + } + +} //CIPImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/CISImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/CISImpl.java new file mode 100644 index 00000000..86f79bfe --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/CISImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.CIS; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'CIS'. + * + * + * @generated + */ +public class CISImpl extends Income_Tax_CreditImpl implements CIS { + /** + * + * + * @generated + */ + protected CISImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.CIS; + } + +} //CISImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Capital_and_Investments_IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Capital_and_Investments_IncomeImpl.java new file mode 100644 index 00000000..a3987505 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Capital_and_Investments_IncomeImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Capital_and_Investments_Income; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Capital and Investments Income'. + * + * + * @generated + */ +public class Capital_and_Investments_IncomeImpl extends Income_TypeImpl implements Capital_and_Investments_Income { + /** + * + * + * @generated + */ + protected Capital_and_Investments_IncomeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.CAPITAL_AND_INVESTMENTS_INCOME; + } + +} //Capital_and_Investments_IncomeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/ConstantsImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/ConstantsImpl.java new file mode 100644 index 00000000..a6bc738b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/ConstantsImpl.java @@ -0,0 +1,1509 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Constants; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * + * An implementation of the model object 'Constants'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getMINIMUM_SALARY MINIMUM SALARY}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getFLAT_RATE_CIM_DAILY FLAT RATE CIM DAILY}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getFLAT_RATE_CIM_MONTHLY FLAT RATE CIM MONTHLY}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getFLAT_RATE_CIM_YEARLY FLAT RATE CIM YEARLY}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getFLAT_RATE_CIP_DAILY FLAT RATE CIP DAILY}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getFLAT_RATE_CIP_MONTHLY FLAT RATE CIP MONTHLY}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getFLAT_RATE_CIP_YEARLY FLAT RATE CIP YEARLY}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getFLAT_RATE_CIS_DAILY FLAT RATE CIS DAILY}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getFLAT_RATE_CIS_MONTHLY FLAT RATE CIS MONTHLY}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getFLAT_RATE_CIS_YEARLY FLAT RATE CIS YEARLY}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT FLAT RATE FOR TRAVEL EXPENSE PER UNIT}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS MAXIMUM DEDUCTIBLE AMOUNT FOR DS}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE FLAT RATE FOR MISCELLANEOUS EXPENSE}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE}
            • + *
            • {@link TaxationWithRoot.impl.ConstantsImpl#getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE}
            • + *
            + * + * @generated + */ +public abstract class ConstantsImpl extends MinimalEObjectImpl.Container implements Constants { + /** + * The default value of the '{@link #getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD() MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD}' attribute. + * + * + * @see #getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD() + * @generated + * @ordered + */ + protected static final double MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD_EDEFAULT = 3480.0; + + /** + * The cached value of the '{@link #getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD() MAXIMUM CE RATE FOR CHILD NOT BEING PART OF HOUSEHOLD}' attribute. + * + * + * @see #getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD() + * @generated + * @ordered + */ + protected double maximuM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD = MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD_EDEFAULT; + + /** + * The default value of the '{@link #getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE() MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE}' attribute. + * + * + * @see #getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE() + * @generated + * @ordered + */ + protected static final double MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE_EDEFAULT = 3600.0; + + /** + * The cached value of the '{@link #getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE() MAXIMUM CE RATE FOR HOUSE CARE AND CHILD PART OF THE HOUSEHOLD CARE}' attribute. + * + * + * @see #getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE() + * @generated + * @ordered + */ + protected double maximuM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE = MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE_EDEFAULT; + + /** + * The default value of the '{@link #getMINIMUM_SALARY() MINIMUM SALARY}' attribute. + * + * + * @see #getMINIMUM_SALARY() + * @generated + * @ordered + */ + protected static final double MINIMUM_SALARY_EDEFAULT = 1500.0; + + /** + * The cached value of the '{@link #getMINIMUM_SALARY() MINIMUM SALARY}' attribute. + * + * + * @see #getMINIMUM_SALARY() + * @generated + * @ordered + */ + protected double minimuM_SALARY = MINIMUM_SALARY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION() FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION}' attribute. + * + * + * @see #getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION_EDEFAULT = 4500.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION() FLAT RATE FOR EXTRA PROFESSIONAL DEDUCTION}' attribute. + * + * + * @see #getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION() + * @generated + * @ordered + */ + protected double flaT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION = FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION_EDEFAULT; + + /** + * The default value of the '{@link #getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS() MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS() + * @generated + * @ordered + */ + protected static final double MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS_EDEFAULT = 20.0; + + /** + * The cached value of the '{@link #getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS() MAXIMUM DEDUCTIBLE PERCENTAGE FOR DONATIONS}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS() + * @generated + * @ordered + */ + protected double maximuM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS = MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS_EDEFAULT; + + /** + * The default value of the '{@link #getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS() MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS}' attribute. + * + * + * @see #getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS() + * @generated + * @ordered + */ + protected static final double MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS_EDEFAULT = 120.0; + + /** + * The cached value of the '{@link #getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS() MINIMUM DEDUCTIBLE AMOUNT FOR DONATIONS}' attribute. + * + * + * @see #getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS() + * @generated + * @ordered + */ + protected double minimuM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS = MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS_EDEFAULT; + + /** + * The default value of the '{@link #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC() MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC() + * @generated + * @ordered + */ + protected static final double MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC() MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANC}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC() + * @generated + * @ordered + */ + protected double maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC = MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC_EDEFAULT; + + /** + * The default value of the '{@link #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE() MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE() + * @generated + * @ordered + */ + protected static final double MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE_EDEFAULT = 24000.0; + + /** + * The cached value of the '{@link #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE() MAXIMUM DEDUCTIBLE AMOUNT FOR ALIMONY EXPENSE}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE() + * @generated + * @ordered + */ + protected double maximuM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE = MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE_EDEFAULT; + + /** + * The default value of the '{@link #getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}' attribute. + * + * + * @see #getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @generated + * @ordered + */ + protected static final double MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT = 99.0; + + /** + * The cached value of the '{@link #getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() MAXIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}' attribute. + * + * + * @see #getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @generated + * @ordered + */ + protected double maximaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT; + + /** + * The default value of the '{@link #getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION}' attribute. + * + * + * @see #getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @generated + * @ordered + */ + protected static final double MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT = 30.0; + + /** + * The cached value of the '{@link #getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() MAXIMAL FLAT DISTANCE FOR TRAVEL EXPENSE DEDUCTION}' attribute. + * + * + * @see #getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @generated + * @ordered + */ + protected double maximaL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT; + + /** + * The default value of the '{@link #getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}' attribute. + * + * + * @see #getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @generated + * @ordered + */ + protected static final double MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT = 4.0; + + /** + * The cached value of the '{@link #getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() MINIMAL DISTANCE FOR TRAVEL EXPENSE DEDUCTION}' attribute. + * + * + * @see #getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() + * @generated + * @ordered + */ + protected double minimaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_CIM_DAILY() FLAT RATE CIM DAILY}' attribute. + * + * + * @see #getFLAT_RATE_CIM_DAILY() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_CIM_DAILY_EDEFAULT = 2.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_CIM_DAILY() FLAT RATE CIM DAILY}' attribute. + * + * + * @see #getFLAT_RATE_CIM_DAILY() + * @generated + * @ordered + */ + protected double flaT_RATE_CIM_DAILY = FLAT_RATE_CIM_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_CIM_MONTHLY() FLAT RATE CIM MONTHLY}' attribute. + * + * + * @see #getFLAT_RATE_CIM_MONTHLY() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_CIM_MONTHLY_EDEFAULT = 62.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_CIM_MONTHLY() FLAT RATE CIM MONTHLY}' attribute. + * + * + * @see #getFLAT_RATE_CIM_MONTHLY() + * @generated + * @ordered + */ + protected double flaT_RATE_CIM_MONTHLY = FLAT_RATE_CIM_MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_CIM_YEARLY() FLAT RATE CIM YEARLY}' attribute. + * + * + * @see #getFLAT_RATE_CIM_YEARLY() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_CIM_YEARLY_EDEFAULT = 750.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_CIM_YEARLY() FLAT RATE CIM YEARLY}' attribute. + * + * + * @see #getFLAT_RATE_CIM_YEARLY() + * @generated + * @ordered + */ + protected double flaT_RATE_CIM_YEARLY = FLAT_RATE_CIM_YEARLY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_CIP_DAILY() FLAT RATE CIP DAILY}' attribute. + * + * + * @see #getFLAT_RATE_CIP_DAILY() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_CIP_DAILY_EDEFAULT = 1.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_CIP_DAILY() FLAT RATE CIP DAILY}' attribute. + * + * + * @see #getFLAT_RATE_CIP_DAILY() + * @generated + * @ordered + */ + protected double flaT_RATE_CIP_DAILY = FLAT_RATE_CIP_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_CIP_MONTHLY() FLAT RATE CIP MONTHLY}' attribute. + * + * + * @see #getFLAT_RATE_CIP_MONTHLY() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_CIP_MONTHLY_EDEFAULT = 25.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_CIP_MONTHLY() FLAT RATE CIP MONTHLY}' attribute. + * + * + * @see #getFLAT_RATE_CIP_MONTHLY() + * @generated + * @ordered + */ + protected double flaT_RATE_CIP_MONTHLY = FLAT_RATE_CIP_MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_CIP_YEARLY() FLAT RATE CIP YEARLY}' attribute. + * + * + * @see #getFLAT_RATE_CIP_YEARLY() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_CIP_YEARLY_EDEFAULT = 30.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_CIP_YEARLY() FLAT RATE CIP YEARLY}' attribute. + * + * + * @see #getFLAT_RATE_CIP_YEARLY() + * @generated + * @ordered + */ + protected double flaT_RATE_CIP_YEARLY = FLAT_RATE_CIP_YEARLY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_CIS_DAILY() FLAT RATE CIS DAILY}' attribute. + * + * + * @see #getFLAT_RATE_CIS_DAILY() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_CIS_DAILY_EDEFAULT = 1.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_CIS_DAILY() FLAT RATE CIS DAILY}' attribute. + * + * + * @see #getFLAT_RATE_CIS_DAILY() + * @generated + * @ordered + */ + protected double flaT_RATE_CIS_DAILY = FLAT_RATE_CIS_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_CIS_MONTHLY() FLAT RATE CIS MONTHLY}' attribute. + * + * + * @see #getFLAT_RATE_CIS_MONTHLY() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_CIS_MONTHLY_EDEFAULT = 25.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_CIS_MONTHLY() FLAT RATE CIS MONTHLY}' attribute. + * + * + * @see #getFLAT_RATE_CIS_MONTHLY() + * @generated + * @ordered + */ + protected double flaT_RATE_CIS_MONTHLY = FLAT_RATE_CIS_MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_CIS_YEARLY() FLAT RATE CIS YEARLY}' attribute. + * + * + * @see #getFLAT_RATE_CIS_YEARLY() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_CIS_YEARLY_EDEFAULT = 300.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_CIS_YEARLY() FLAT RATE CIS YEARLY}' attribute. + * + * + * @see #getFLAT_RATE_CIS_YEARLY() + * @generated + * @ordered + */ + protected double flaT_RATE_CIS_YEARLY = FLAT_RATE_CIS_YEARLY_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT() FLAT RATE FOR TRAVEL EXPENSE PER UNIT}' attribute. + * + * + * @see #getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT_EDEFAULT = 99.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT() FLAT RATE FOR TRAVEL EXPENSE PER UNIT}' attribute. + * + * + * @see #getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT() + * @generated + * @ordered + */ + protected double flaT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT = FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT_EDEFAULT; + + /** + * The default value of the '{@link #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS() MAXIMUM DEDUCTIBLE AMOUNT FOR DS}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS() + * @generated + * @ordered + */ + protected static final double MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS() MAXIMUM DEDUCTIBLE AMOUNT FOR DS}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS() + * @generated + * @ordered + */ + protected double maximuM_DEDUCTIBLE_AMOUNT_FOR_DS = MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS_EDEFAULT; + + /** + * The default value of the '{@link #getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() FLAT RATE FOR MISCELLANEOUS EXPENSE}' attribute. + * + * + * @see #getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @generated + * @ordered + */ + protected static final double FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() FLAT RATE FOR MISCELLANEOUS EXPENSE}' attribute. + * + * + * @see #getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @generated + * @ordered + */ + protected double flaT_RATE_FOR_MISCELLANEOUS_EXPENSE = FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE_EDEFAULT; + + /** + * The default value of the '{@link #getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE}' attribute. + * + * + * @see #getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @generated + * @ordered + */ + protected static final double DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() DISABILITY FLAT RATE FOR MISCELLANEOUS EXPENSE}' attribute. + * + * + * @see #getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() + * @generated + * @ordered + */ + protected double disabilitY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE = DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE_EDEFAULT; + + /** + * The default value of the '{@link #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE() MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE() + * @generated + * @ordered + */ + protected static final double MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE() MAXIMUM DEDUCTIBLE AMOUNT FOR ADDITIONAL PENSION AND INSURANCE}' attribute. + * + * + * @see #getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE() + * @generated + * @ordered + */ + protected double maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE = MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE_EDEFAULT; + + /** + * + * + * @generated + */ + protected ConstantsImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.CONSTANTS; + } + + /** + * + * + * @generated + */ + @Override + public double getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD() { + return maximuM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD; + } + + /** + * + * + * @generated + */ + @Override + public void setMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD(double newMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD) { + double oldMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD = maximuM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD; + maximuM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD = newMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD, oldMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD, maximuM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD)); + } + + /** + * + * + * @generated + */ + @Override + public double getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE() { + return maximuM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE; + } + + /** + * + * + * @generated + */ + @Override + public void setMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE(double newMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE) { + double oldMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE = maximuM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE; + maximuM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE = newMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE, oldMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE, maximuM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE)); + } + + /** + * + * + * @generated + */ + @Override + public double getMINIMUM_SALARY() { + return minimuM_SALARY; + } + + /** + * + * + * @generated + */ + @Override + public void setMINIMUM_SALARY(double newMINIMUM_SALARY) { + double oldMINIMUM_SALARY = minimuM_SALARY; + minimuM_SALARY = newMINIMUM_SALARY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MINIMUM_SALARY, oldMINIMUM_SALARY, minimuM_SALARY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION() { + return flaT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION(double newFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION) { + double oldFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION = flaT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION; + flaT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION = newFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION, oldFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION, flaT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION)); + } + + /** + * + * + * @generated + */ + @Override + public double getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS() { + return maximuM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS; + } + + /** + * + * + * @generated + */ + @Override + public void setMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS(double newMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS) { + double oldMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS = maximuM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS; + maximuM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS = newMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS, oldMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS, maximuM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS)); + } + + /** + * + * + * @generated + */ + @Override + public double getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS() { + return minimuM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS; + } + + /** + * + * + * @generated + */ + @Override + public void setMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS(double newMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS) { + double oldMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS = minimuM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS; + minimuM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS = newMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS, oldMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS, minimuM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS)); + } + + /** + * + * + * @generated + */ + @Override + public double getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC() { + return maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC; + } + + /** + * + * + * @generated + */ + @Override + public void setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC(double newMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC) { + double oldMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC = maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC; + maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC = newMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC, oldMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC, maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC)); + } + + /** + * + * + * @generated + */ + @Override + public double getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE() { + return maximuM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE; + } + + /** + * + * + * @generated + */ + @Override + public void setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE(double newMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE) { + double oldMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE = maximuM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE; + maximuM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE = newMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE, oldMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE, maximuM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE)); + } + + /** + * + * + * @generated + */ + @Override + public double getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() { + return maximaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION; + } + + /** + * + * + * @generated + */ + @Override + public void setMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(double newMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION) { + double oldMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = maximaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION; + maximaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = newMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION, oldMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION, maximaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION)); + } + + /** + * + * + * @generated + */ + @Override + public double getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() { + return maximaL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION; + } + + /** + * + * + * @generated + */ + @Override + public void setMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(double newMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION) { + double oldMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = maximaL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION; + maximaL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = newMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION, oldMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION, maximaL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION)); + } + + /** + * + * + * @generated + */ + @Override + public double getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() { + return minimaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION; + } + + /** + * + * + * @generated + */ + @Override + public void setMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(double newMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION) { + double oldMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = minimaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION; + minimaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION = newMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION, oldMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION, minimaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_CIM_DAILY() { + return flaT_RATE_CIM_DAILY; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_CIM_DAILY(double newFLAT_RATE_CIM_DAILY) { + double oldFLAT_RATE_CIM_DAILY = flaT_RATE_CIM_DAILY; + flaT_RATE_CIM_DAILY = newFLAT_RATE_CIM_DAILY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_CIM_DAILY, oldFLAT_RATE_CIM_DAILY, flaT_RATE_CIM_DAILY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_CIM_MONTHLY() { + return flaT_RATE_CIM_MONTHLY; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_CIM_MONTHLY(double newFLAT_RATE_CIM_MONTHLY) { + double oldFLAT_RATE_CIM_MONTHLY = flaT_RATE_CIM_MONTHLY; + flaT_RATE_CIM_MONTHLY = newFLAT_RATE_CIM_MONTHLY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_CIM_MONTHLY, oldFLAT_RATE_CIM_MONTHLY, flaT_RATE_CIM_MONTHLY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_CIM_YEARLY() { + return flaT_RATE_CIM_YEARLY; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_CIM_YEARLY(double newFLAT_RATE_CIM_YEARLY) { + double oldFLAT_RATE_CIM_YEARLY = flaT_RATE_CIM_YEARLY; + flaT_RATE_CIM_YEARLY = newFLAT_RATE_CIM_YEARLY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_CIM_YEARLY, oldFLAT_RATE_CIM_YEARLY, flaT_RATE_CIM_YEARLY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_CIP_DAILY() { + return flaT_RATE_CIP_DAILY; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_CIP_DAILY(double newFLAT_RATE_CIP_DAILY) { + double oldFLAT_RATE_CIP_DAILY = flaT_RATE_CIP_DAILY; + flaT_RATE_CIP_DAILY = newFLAT_RATE_CIP_DAILY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_CIP_DAILY, oldFLAT_RATE_CIP_DAILY, flaT_RATE_CIP_DAILY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_CIP_MONTHLY() { + return flaT_RATE_CIP_MONTHLY; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_CIP_MONTHLY(double newFLAT_RATE_CIP_MONTHLY) { + double oldFLAT_RATE_CIP_MONTHLY = flaT_RATE_CIP_MONTHLY; + flaT_RATE_CIP_MONTHLY = newFLAT_RATE_CIP_MONTHLY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_CIP_MONTHLY, oldFLAT_RATE_CIP_MONTHLY, flaT_RATE_CIP_MONTHLY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_CIP_YEARLY() { + return flaT_RATE_CIP_YEARLY; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_CIP_YEARLY(double newFLAT_RATE_CIP_YEARLY) { + double oldFLAT_RATE_CIP_YEARLY = flaT_RATE_CIP_YEARLY; + flaT_RATE_CIP_YEARLY = newFLAT_RATE_CIP_YEARLY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_CIP_YEARLY, oldFLAT_RATE_CIP_YEARLY, flaT_RATE_CIP_YEARLY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_CIS_DAILY() { + return flaT_RATE_CIS_DAILY; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_CIS_DAILY(double newFLAT_RATE_CIS_DAILY) { + double oldFLAT_RATE_CIS_DAILY = flaT_RATE_CIS_DAILY; + flaT_RATE_CIS_DAILY = newFLAT_RATE_CIS_DAILY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_CIS_DAILY, oldFLAT_RATE_CIS_DAILY, flaT_RATE_CIS_DAILY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_CIS_MONTHLY() { + return flaT_RATE_CIS_MONTHLY; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_CIS_MONTHLY(double newFLAT_RATE_CIS_MONTHLY) { + double oldFLAT_RATE_CIS_MONTHLY = flaT_RATE_CIS_MONTHLY; + flaT_RATE_CIS_MONTHLY = newFLAT_RATE_CIS_MONTHLY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_CIS_MONTHLY, oldFLAT_RATE_CIS_MONTHLY, flaT_RATE_CIS_MONTHLY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_CIS_YEARLY() { + return flaT_RATE_CIS_YEARLY; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_CIS_YEARLY(double newFLAT_RATE_CIS_YEARLY) { + double oldFLAT_RATE_CIS_YEARLY = flaT_RATE_CIS_YEARLY; + flaT_RATE_CIS_YEARLY = newFLAT_RATE_CIS_YEARLY; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_CIS_YEARLY, oldFLAT_RATE_CIS_YEARLY, flaT_RATE_CIS_YEARLY)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT() { + return flaT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT(double newFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT) { + double oldFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT = flaT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT; + flaT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT = newFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT, oldFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT, flaT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT)); + } + + /** + * + * + * @generated + */ + @Override + public double getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS() { + return maximuM_DEDUCTIBLE_AMOUNT_FOR_DS; + } + + /** + * + * + * @generated + */ + @Override + public void setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS(double newMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS) { + double oldMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS = maximuM_DEDUCTIBLE_AMOUNT_FOR_DS; + maximuM_DEDUCTIBLE_AMOUNT_FOR_DS = newMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS, oldMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS, maximuM_DEDUCTIBLE_AMOUNT_FOR_DS)); + } + + /** + * + * + * @generated + */ + @Override + public double getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() { + return flaT_RATE_FOR_MISCELLANEOUS_EXPENSE; + } + + /** + * + * + * @generated + */ + @Override + public void setFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(double newFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE) { + double oldFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE = flaT_RATE_FOR_MISCELLANEOUS_EXPENSE; + flaT_RATE_FOR_MISCELLANEOUS_EXPENSE = newFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE, oldFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE, flaT_RATE_FOR_MISCELLANEOUS_EXPENSE)); + } + + /** + * + * + * @generated + */ + @Override + public double getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() { + return disabilitY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE; + } + + /** + * + * + * @generated + */ + @Override + public void setDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(double newDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE) { + double oldDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE = disabilitY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE; + disabilitY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE = newDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE, oldDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE, disabilitY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE)); + } + + /** + * + * + * @generated + */ + @Override + public double getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE() { + return maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE; + } + + /** + * + * + * @generated + */ + @Override + public void setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE(double newMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE) { + double oldMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE = maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE; + maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE = newMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE, oldMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE, maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD: + return getMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD(); + case TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE: + return getMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE(); + case TaxationPackage.CONSTANTS__MINIMUM_SALARY: + return getMINIMUM_SALARY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION: + return getFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION(); + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS: + return getMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS(); + case TaxationPackage.CONSTANTS__MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS: + return getMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS(); + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC: + return getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC(); + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE: + return getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE(); + case TaxationPackage.CONSTANTS__MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + return getMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + case TaxationPackage.CONSTANTS__MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + return getMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + case TaxationPackage.CONSTANTS__MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + return getMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(); + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_DAILY: + return getFLAT_RATE_CIM_DAILY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_MONTHLY: + return getFLAT_RATE_CIM_MONTHLY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_YEARLY: + return getFLAT_RATE_CIM_YEARLY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_DAILY: + return getFLAT_RATE_CIP_DAILY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_MONTHLY: + return getFLAT_RATE_CIP_MONTHLY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_YEARLY: + return getFLAT_RATE_CIP_YEARLY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_DAILY: + return getFLAT_RATE_CIS_DAILY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_MONTHLY: + return getFLAT_RATE_CIS_MONTHLY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_YEARLY: + return getFLAT_RATE_CIS_YEARLY(); + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT: + return getFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT(); + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS: + return getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS(); + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: + return getFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(); + case TaxationPackage.CONSTANTS__DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: + return getDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(); + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE: + return getMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD: + setMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE: + setMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MINIMUM_SALARY: + setMINIMUM_SALARY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION: + setFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS: + setMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS: + setMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC: + setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE: + setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + setMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + setMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + setMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_DAILY: + setFLAT_RATE_CIM_DAILY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_MONTHLY: + setFLAT_RATE_CIM_MONTHLY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_YEARLY: + setFLAT_RATE_CIM_YEARLY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_DAILY: + setFLAT_RATE_CIP_DAILY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_MONTHLY: + setFLAT_RATE_CIP_MONTHLY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_YEARLY: + setFLAT_RATE_CIP_YEARLY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_DAILY: + setFLAT_RATE_CIS_DAILY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_MONTHLY: + setFLAT_RATE_CIS_MONTHLY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_YEARLY: + setFLAT_RATE_CIS_YEARLY((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT: + setFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS: + setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS((Double)newValue); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: + setFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE((Double)newValue); + return; + case TaxationPackage.CONSTANTS__DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: + setDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE((Double)newValue); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE: + setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE((Double)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD: + setMAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD(MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE: + setMAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE(MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MINIMUM_SALARY: + setMINIMUM_SALARY(MINIMUM_SALARY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION: + setFLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION(FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS: + setMAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS(MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS: + setMINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS(MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC: + setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC(MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE: + setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE(MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + setMAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + setMAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + setMINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_DAILY: + setFLAT_RATE_CIM_DAILY(FLAT_RATE_CIM_DAILY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_MONTHLY: + setFLAT_RATE_CIM_MONTHLY(FLAT_RATE_CIM_MONTHLY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_YEARLY: + setFLAT_RATE_CIM_YEARLY(FLAT_RATE_CIM_YEARLY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_DAILY: + setFLAT_RATE_CIP_DAILY(FLAT_RATE_CIP_DAILY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_MONTHLY: + setFLAT_RATE_CIP_MONTHLY(FLAT_RATE_CIP_MONTHLY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_YEARLY: + setFLAT_RATE_CIP_YEARLY(FLAT_RATE_CIP_YEARLY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_DAILY: + setFLAT_RATE_CIS_DAILY(FLAT_RATE_CIS_DAILY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_MONTHLY: + setFLAT_RATE_CIS_MONTHLY(FLAT_RATE_CIS_MONTHLY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_YEARLY: + setFLAT_RATE_CIS_YEARLY(FLAT_RATE_CIS_YEARLY_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT: + setFLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT(FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS: + setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS(MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: + setFLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: + setDISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE_EDEFAULT); + return; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE: + setMAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE(MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD: + return maximuM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD != MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD_EDEFAULT; + case TaxationPackage.CONSTANTS__MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE: + return maximuM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE != MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE_EDEFAULT; + case TaxationPackage.CONSTANTS__MINIMUM_SALARY: + return minimuM_SALARY != MINIMUM_SALARY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION: + return flaT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION != FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION_EDEFAULT; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS: + return maximuM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS != MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS_EDEFAULT; + case TaxationPackage.CONSTANTS__MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS: + return minimuM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS != MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS_EDEFAULT; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC: + return maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC != MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC_EDEFAULT; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE: + return maximuM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE != MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE_EDEFAULT; + case TaxationPackage.CONSTANTS__MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + return maximaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION != MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT; + case TaxationPackage.CONSTANTS__MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + return maximaL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION != MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT; + case TaxationPackage.CONSTANTS__MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: + return minimaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION != MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_DAILY: + return flaT_RATE_CIM_DAILY != FLAT_RATE_CIM_DAILY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_MONTHLY: + return flaT_RATE_CIM_MONTHLY != FLAT_RATE_CIM_MONTHLY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIM_YEARLY: + return flaT_RATE_CIM_YEARLY != FLAT_RATE_CIM_YEARLY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_DAILY: + return flaT_RATE_CIP_DAILY != FLAT_RATE_CIP_DAILY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_MONTHLY: + return flaT_RATE_CIP_MONTHLY != FLAT_RATE_CIP_MONTHLY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIP_YEARLY: + return flaT_RATE_CIP_YEARLY != FLAT_RATE_CIP_YEARLY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_DAILY: + return flaT_RATE_CIS_DAILY != FLAT_RATE_CIS_DAILY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_MONTHLY: + return flaT_RATE_CIS_MONTHLY != FLAT_RATE_CIS_MONTHLY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_CIS_YEARLY: + return flaT_RATE_CIS_YEARLY != FLAT_RATE_CIS_YEARLY_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT: + return flaT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT != FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT_EDEFAULT; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS: + return maximuM_DEDUCTIBLE_AMOUNT_FOR_DS != MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS_EDEFAULT; + case TaxationPackage.CONSTANTS__FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: + return flaT_RATE_FOR_MISCELLANEOUS_EXPENSE != FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE_EDEFAULT; + case TaxationPackage.CONSTANTS__DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: + return disabilitY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE != DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE_EDEFAULT; + case TaxationPackage.CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE: + return maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE != MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD: "); + result.append(maximuM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD); + result.append(", MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE: "); + result.append(maximuM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE); + result.append(", MINIMUM_SALARY: "); + result.append(minimuM_SALARY); + result.append(", FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION: "); + result.append(flaT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION); + result.append(", MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS: "); + result.append(maximuM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS); + result.append(", MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS: "); + result.append(minimuM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS); + result.append(", MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC: "); + result.append(maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC); + result.append(", MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE: "); + result.append(maximuM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE); + result.append(", MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: "); + result.append(maximaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION); + result.append(", MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: "); + result.append(maximaL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION); + result.append(", MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION: "); + result.append(minimaL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION); + result.append(", FLAT_RATE_CIM_DAILY: "); + result.append(flaT_RATE_CIM_DAILY); + result.append(", FLAT_RATE_CIM_MONTHLY: "); + result.append(flaT_RATE_CIM_MONTHLY); + result.append(", FLAT_RATE_CIM_YEARLY: "); + result.append(flaT_RATE_CIM_YEARLY); + result.append(", FLAT_RATE_CIP_DAILY: "); + result.append(flaT_RATE_CIP_DAILY); + result.append(", FLAT_RATE_CIP_MONTHLY: "); + result.append(flaT_RATE_CIP_MONTHLY); + result.append(", FLAT_RATE_CIP_YEARLY: "); + result.append(flaT_RATE_CIP_YEARLY); + result.append(", FLAT_RATE_CIS_DAILY: "); + result.append(flaT_RATE_CIS_DAILY); + result.append(", FLAT_RATE_CIS_MONTHLY: "); + result.append(flaT_RATE_CIS_MONTHLY); + result.append(", FLAT_RATE_CIS_YEARLY: "); + result.append(flaT_RATE_CIS_YEARLY); + result.append(", FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT: "); + result.append(flaT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT); + result.append(", MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS: "); + result.append(maximuM_DEDUCTIBLE_AMOUNT_FOR_DS); + result.append(", FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: "); + result.append(flaT_RATE_FOR_MISCELLANEOUS_EXPENSE); + result.append(", DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE: "); + result.append(disabilitY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE); + result.append(", MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE: "); + result.append(maximuM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE); + result.append(')'); + return result.toString(); + } + +} //ConstantsImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DSImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DSImpl.java new file mode 100644 index 00000000..dabc6b3c --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DSImpl.java @@ -0,0 +1,220 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.DS; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'DS'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.DSImpl#getMaximum_deductible_amount Maximum deductible amount}
            • + *
            • {@link TaxationWithRoot.impl.DSImpl#getId3 Id3}
            • + *
            + * + * @generated + */ +public class DSImpl extends RootImpl implements DS { + /** + * The default value of the '{@link #getMaximum_deductible_amount() Maximum deductible amount}' attribute. + * + * + * @see #getMaximum_deductible_amount() + * @generated + * @ordered + */ + protected static final double MAXIMUM_DEDUCTIBLE_AMOUNT_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getMaximum_deductible_amount() Maximum deductible amount}' attribute. + * + * + * @see #getMaximum_deductible_amount() + * @generated + * @ordered + */ + protected double maximum_deductible_amount = MAXIMUM_DEDUCTIBLE_AMOUNT_EDEFAULT; + + /** + * The default value of the '{@link #getId3() Id3}' attribute. + * + * + * @see #getId3() + * @generated + * @ordered + */ + protected static final String ID3_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId3() Id3}' attribute. + * + * + * @see #getId3() + * @generated + * @ordered + */ + protected String id3 = ID3_EDEFAULT; + + /** + * + * + * @generated + */ + protected DSImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.DS; + } + + /** + * + * + * @generated + */ + @Override + public double getMaximum_deductible_amount() { + return maximum_deductible_amount; + } + + /** + * + * + * @generated + */ + @Override + public void setMaximum_deductible_amount(double newMaximum_deductible_amount) { + double oldMaximum_deductible_amount = maximum_deductible_amount; + maximum_deductible_amount = newMaximum_deductible_amount; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS__MAXIMUM_DEDUCTIBLE_AMOUNT, oldMaximum_deductible_amount, maximum_deductible_amount)); + } + + /** + * + * + * @generated + */ + @Override + public String getId3() { + return id3; + } + + /** + * + * + * @generated + */ + @Override + public void setId3(String newId3) { + String oldId3 = id3; + id3 = newId3; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS__ID3, oldId3, id3)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.DS__MAXIMUM_DEDUCTIBLE_AMOUNT: + return getMaximum_deductible_amount(); + case TaxationPackage.DS__ID3: + return getId3(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.DS__MAXIMUM_DEDUCTIBLE_AMOUNT: + setMaximum_deductible_amount((Double)newValue); + return; + case TaxationPackage.DS__ID3: + setId3((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.DS__MAXIMUM_DEDUCTIBLE_AMOUNT: + setMaximum_deductible_amount(MAXIMUM_DEDUCTIBLE_AMOUNT_EDEFAULT); + return; + case TaxationPackage.DS__ID3: + setId3(ID3_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.DS__MAXIMUM_DEDUCTIBLE_AMOUNT: + return maximum_deductible_amount != MAXIMUM_DEDUCTIBLE_AMOUNT_EDEFAULT; + case TaxationPackage.DS__ID3: + return ID3_EDEFAULT == null ? id3 != null : !ID3_EDEFAULT.equals(id3); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (maximum_deductible_amount: "); + result.append(maximum_deductible_amount); + result.append(", id3: "); + result.append(id3); + result.append(')'); + return result.toString(); + } + +} //DSImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_DonationImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_DonationImpl.java new file mode 100644 index 00000000..2340f538 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_DonationImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.DS_for_Donation; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'DS for Donation'. + * + * + * @generated + */ +public class DS_for_DonationImpl extends DSImpl implements DS_for_Donation { + /** + * + * + * @generated + */ + protected DS_for_DonationImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.DS_FOR_DONATION; + } + +} //DS_for_DonationImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Health_and_Pension_InsuranceImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Health_and_Pension_InsuranceImpl.java new file mode 100644 index 00000000..98886913 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Health_and_Pension_InsuranceImpl.java @@ -0,0 +1,165 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Category_of_Health_and_Pension_Insurances; +import TaxationWithRoot.DS_for_Health_and_Pension_Insurance; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'DS for Health and Pension Insurance'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.DS_for_Health_and_Pension_InsuranceImpl#getInsurance_category Insurance category}
            • + *
            + * + * @generated + */ +public class DS_for_Health_and_Pension_InsuranceImpl extends DSImpl implements DS_for_Health_and_Pension_Insurance { + /** + * The default value of the '{@link #getInsurance_category() Insurance category}' attribute. + * + * + * @see #getInsurance_category() + * @generated + * @ordered + */ + protected static final Category_of_Health_and_Pension_Insurances INSURANCE_CATEGORY_EDEFAULT = Category_of_Health_and_Pension_Insurances.MANDATORY_HEALTH_AND_PENSION_INSURANCE; + + /** + * The cached value of the '{@link #getInsurance_category() Insurance category}' attribute. + * + * + * @see #getInsurance_category() + * @generated + * @ordered + */ + protected Category_of_Health_and_Pension_Insurances insurance_category = INSURANCE_CATEGORY_EDEFAULT; + + /** + * + * + * @generated + */ + protected DS_for_Health_and_Pension_InsuranceImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.DS_FOR_HEALTH_AND_PENSION_INSURANCE; + } + + /** + * + * + * @generated + */ + @Override + public Category_of_Health_and_Pension_Insurances getInsurance_category() { + return insurance_category; + } + + /** + * + * + * @generated + */ + @Override + public void setInsurance_category(Category_of_Health_and_Pension_Insurances newInsurance_category) { + Category_of_Health_and_Pension_Insurances oldInsurance_category = insurance_category; + insurance_category = newInsurance_category == null ? INSURANCE_CATEGORY_EDEFAULT : newInsurance_category; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY, oldInsurance_category, insurance_category)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY: + return getInsurance_category(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY: + setInsurance_category((Category_of_Health_and_Pension_Insurances)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY: + setInsurance_category(INSURANCE_CATEGORY_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY: + return insurance_category != INSURANCE_CATEGORY_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (insurance_category: "); + result.append(insurance_category); + result.append(')'); + return result.toString(); + } + +} //DS_for_Health_and_Pension_InsuranceImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Interest_ExpenseImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Interest_ExpenseImpl.java new file mode 100644 index 00000000..c7472a4e --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Interest_ExpenseImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.DS_for_Interest_Expense; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'DS for Interest Expense'. + * + * + * @generated + */ +public class DS_for_Interest_ExpenseImpl extends DSImpl implements DS_for_Interest_Expense { + /** + * + * + * @generated + */ + protected DS_for_Interest_ExpenseImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.DS_FOR_INTEREST_EXPENSE; + } + +} //DS_for_Interest_ExpenseImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Loss_CarryforwardImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Loss_CarryforwardImpl.java new file mode 100644 index 00000000..f08a6c28 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Loss_CarryforwardImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.DS_for_Loss_Carryforward; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'DS for Loss Carryforward'. + * + * + * @generated + */ +public class DS_for_Loss_CarryforwardImpl extends DSImpl implements DS_for_Loss_Carryforward { + /** + * + * + * @generated + */ + protected DS_for_Loss_CarryforwardImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.DS_FOR_LOSS_CARRYFORWARD; + } + +} //DS_for_Loss_CarryforwardImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Permanent_ExpenseImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Permanent_ExpenseImpl.java new file mode 100644 index 00000000..09859cfc --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Permanent_ExpenseImpl.java @@ -0,0 +1,165 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Category_of_Permanent_Expense; +import TaxationWithRoot.DS_for_Permanent_Expense; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'DS for Permanent Expense'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.DS_for_Permanent_ExpenseImpl#getPermanent_expense_category Permanent expense category}
            • + *
            + * + * @generated + */ +public class DS_for_Permanent_ExpenseImpl extends DSImpl implements DS_for_Permanent_Expense { + /** + * The default value of the '{@link #getPermanent_expense_category() Permanent expense category}' attribute. + * + * + * @see #getPermanent_expense_category() + * @generated + * @ordered + */ + protected static final Category_of_Permanent_Expense PERMANENT_EXPENSE_CATEGORY_EDEFAULT = Category_of_Permanent_Expense.MISCELLANEOUS_DEBT; + + /** + * The cached value of the '{@link #getPermanent_expense_category() Permanent expense category}' attribute. + * + * + * @see #getPermanent_expense_category() + * @generated + * @ordered + */ + protected Category_of_Permanent_Expense permanent_expense_category = PERMANENT_EXPENSE_CATEGORY_EDEFAULT; + + /** + * + * + * @generated + */ + protected DS_for_Permanent_ExpenseImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.DS_FOR_PERMANENT_EXPENSE; + } + + /** + * + * + * @generated + */ + @Override + public Category_of_Permanent_Expense getPermanent_expense_category() { + return permanent_expense_category; + } + + /** + * + * + * @generated + */ + @Override + public void setPermanent_expense_category(Category_of_Permanent_Expense newPermanent_expense_category) { + Category_of_Permanent_Expense oldPermanent_expense_category = permanent_expense_category; + permanent_expense_category = newPermanent_expense_category == null ? PERMANENT_EXPENSE_CATEGORY_EDEFAULT : newPermanent_expense_category; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY, oldPermanent_expense_category, permanent_expense_category)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY: + return getPermanent_expense_category(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY: + setPermanent_expense_category((Category_of_Permanent_Expense)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY: + setPermanent_expense_category(PERMANENT_EXPENSE_CATEGORY_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY: + return permanent_expense_category != PERMANENT_EXPENSE_CATEGORY_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (permanent_expense_category: "); + result.append(permanent_expense_category); + result.append(')'); + return result.toString(); + } + +} //DS_for_Permanent_ExpenseImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Private_Insurance_and_PlanImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Private_Insurance_and_PlanImpl.java new file mode 100644 index 00000000..479477c9 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Private_Insurance_and_PlanImpl.java @@ -0,0 +1,165 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Category_of_Private_Insurance_and_Plan; +import TaxationWithRoot.DS_for_Private_Insurance_and_Plan; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'DS for Private Insurance and Plan'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.DS_for_Private_Insurance_and_PlanImpl#getPrivate_insurance_and_plan_category Private insurance and plan category}
            • + *
            + * + * @generated + */ +public class DS_for_Private_Insurance_and_PlanImpl extends DSImpl implements DS_for_Private_Insurance_and_Plan { + /** + * The default value of the '{@link #getPrivate_insurance_and_plan_category() Private insurance and plan category}' attribute. + * + * + * @see #getPrivate_insurance_and_plan_category() + * @generated + * @ordered + */ + protected static final Category_of_Private_Insurance_and_Plan PRIVATE_INSURANCE_AND_PLAN_CATEGORY_EDEFAULT = Category_of_Private_Insurance_and_Plan.PRIVATE_INSURANCE; + + /** + * The cached value of the '{@link #getPrivate_insurance_and_plan_category() Private insurance and plan category}' attribute. + * + * + * @see #getPrivate_insurance_and_plan_category() + * @generated + * @ordered + */ + protected Category_of_Private_Insurance_and_Plan private_insurance_and_plan_category = PRIVATE_INSURANCE_AND_PLAN_CATEGORY_EDEFAULT; + + /** + * + * + * @generated + */ + protected DS_for_Private_Insurance_and_PlanImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.DS_FOR_PRIVATE_INSURANCE_AND_PLAN; + } + + /** + * + * + * @generated + */ + @Override + public Category_of_Private_Insurance_and_Plan getPrivate_insurance_and_plan_category() { + return private_insurance_and_plan_category; + } + + /** + * + * + * @generated + */ + @Override + public void setPrivate_insurance_and_plan_category(Category_of_Private_Insurance_and_Plan newPrivate_insurance_and_plan_category) { + Category_of_Private_Insurance_and_Plan oldPrivate_insurance_and_plan_category = private_insurance_and_plan_category; + private_insurance_and_plan_category = newPrivate_insurance_and_plan_category == null ? PRIVATE_INSURANCE_AND_PLAN_CATEGORY_EDEFAULT : newPrivate_insurance_and_plan_category; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY, oldPrivate_insurance_and_plan_category, private_insurance_and_plan_category)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY: + return getPrivate_insurance_and_plan_category(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY: + setPrivate_insurance_and_plan_category((Category_of_Private_Insurance_and_Plan)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY: + setPrivate_insurance_and_plan_category(PRIVATE_INSURANCE_AND_PLAN_CATEGORY_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY: + return private_insurance_and_plan_category != PRIVATE_INSURANCE_AND_PLAN_CATEGORY_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (private_insurance_and_plan_category: "); + result.append(private_insurance_and_plan_category); + result.append(')'); + return result.toString(); + } + +} //DS_for_Private_Insurance_and_PlanImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DependentImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DependentImpl.java new file mode 100644 index 00000000..3067b0f0 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DependentImpl.java @@ -0,0 +1,599 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Dependent; +import TaxationWithRoot.Dependent_Type; +import TaxationWithRoot.Expense; +import TaxationWithRoot.External_Allowance; +import TaxationWithRoot.FromAgent; +import TaxationWithRoot.Household; +import TaxationWithRoot.Tax_Payer; +import TaxationWithRoot.TaxationPackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'Dependent'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.DependentImpl#getDependent_type Dependent type}
            • + *
            • {@link TaxationWithRoot.impl.DependentImpl#getResponsible_person Responsible person}
            • + *
            • {@link TaxationWithRoot.impl.DependentImpl#isContinued_studies Continued studies}
            • + *
            • {@link TaxationWithRoot.impl.DependentImpl#getAllowances Allowances}
            • + *
            • {@link TaxationWithRoot.impl.DependentImpl#getHousehold Household}
            • + *
            • {@link TaxationWithRoot.impl.DependentImpl#getFrom_agent From agent}
            • + *
            • {@link TaxationWithRoot.impl.DependentImpl#getExpense Expense}
            • + *
            + * + * @generated + */ +public class DependentImpl extends Physical_PersonImpl implements Dependent { + /** + * The default value of the '{@link #getDependent_type() Dependent type}' attribute. + * + * + * @see #getDependent_type() + * @generated + * @ordered + */ + protected static final Dependent_Type DEPENDENT_TYPE_EDEFAULT = Dependent_Type.CHILD; + + /** + * The cached value of the '{@link #getDependent_type() Dependent type}' attribute. + * + * + * @see #getDependent_type() + * @generated + * @ordered + */ + protected Dependent_Type dependent_type = DEPENDENT_TYPE_EDEFAULT; + + /** + * The default value of the '{@link #isContinued_studies() Continued studies}' attribute. + * + * + * @see #isContinued_studies() + * @generated + * @ordered + */ + protected static final boolean CONTINUED_STUDIES_EDEFAULT = false; + + /** + * The cached value of the '{@link #isContinued_studies() Continued studies}' attribute. + * + * + * @see #isContinued_studies() + * @generated + * @ordered + */ + protected boolean continued_studies = CONTINUED_STUDIES_EDEFAULT; + + /** + * The cached value of the '{@link #getAllowances() Allowances}' containment reference. + * + * + * @see #getAllowances() + * @generated + * @ordered + */ + protected External_Allowance allowances; + + /** + * The cached value of the '{@link #getFrom_agent() From agent}' reference. + * + * + * @see #getFrom_agent() + * @generated + * @ordered + */ + protected FromAgent from_agent; + + /** + * The cached value of the '{@link #getExpense() Expense}' reference list. + * + * + * @see #getExpense() + * @generated + * @ordered + */ + protected EList expense; + + /** + * + * + * @generated + */ + protected DependentImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.DEPENDENT; + } + + /** + * + * + * @generated + */ + @Override + public Dependent_Type getDependent_type() { + return dependent_type; + } + + /** + * + * + * @generated + */ + @Override + public void setDependent_type(Dependent_Type newDependent_type) { + Dependent_Type oldDependent_type = dependent_type; + dependent_type = newDependent_type == null ? DEPENDENT_TYPE_EDEFAULT : newDependent_type; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DEPENDENT__DEPENDENT_TYPE, oldDependent_type, dependent_type)); + } + + /** + * + * + * @generated + */ + @Override + public Tax_Payer getResponsible_person() { + if (eContainerFeatureID() != TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON) return null; + return (Tax_Payer)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetResponsible_person(Tax_Payer newResponsible_person, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newResponsible_person, TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setResponsible_person(Tax_Payer newResponsible_person) { + if (newResponsible_person != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON && newResponsible_person != null)) { + if (EcoreUtil.isAncestor(this, newResponsible_person)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newResponsible_person != null) + msgs = ((InternalEObject)newResponsible_person).eInverseAdd(this, TaxationPackage.TAX_PAYER__DEPENDENTS, Tax_Payer.class, msgs); + msgs = basicSetResponsible_person(newResponsible_person, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON, newResponsible_person, newResponsible_person)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isContinued_studies() { + return continued_studies; + } + + /** + * + * + * @generated + */ + @Override + public void setContinued_studies(boolean newContinued_studies) { + boolean oldContinued_studies = continued_studies; + continued_studies = newContinued_studies; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DEPENDENT__CONTINUED_STUDIES, oldContinued_studies, continued_studies)); + } + + /** + * + * + * @generated + */ + @Override + public External_Allowance getAllowances() { + return allowances; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetAllowances(External_Allowance newAllowances, NotificationChain msgs) { + External_Allowance oldAllowances = allowances; + allowances = newAllowances; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.DEPENDENT__ALLOWANCES, oldAllowances, newAllowances); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setAllowances(External_Allowance newAllowances) { + if (newAllowances != allowances) { + NotificationChain msgs = null; + if (allowances != null) + msgs = ((InternalEObject)allowances).eInverseRemove(this, TaxationPackage.EXTERNAL_ALLOWANCE__PERSON, External_Allowance.class, msgs); + if (newAllowances != null) + msgs = ((InternalEObject)newAllowances).eInverseAdd(this, TaxationPackage.EXTERNAL_ALLOWANCE__PERSON, External_Allowance.class, msgs); + msgs = basicSetAllowances(newAllowances, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DEPENDENT__ALLOWANCES, newAllowances, newAllowances)); + } + + /** + * + * + * @generated + */ + @Override + public Household getHousehold() { + if (eContainerFeatureID() != TaxationPackage.DEPENDENT__HOUSEHOLD) return null; + return (Household)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetHousehold(Household newHousehold, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newHousehold, TaxationPackage.DEPENDENT__HOUSEHOLD, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setHousehold(Household newHousehold) { + if (newHousehold != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.DEPENDENT__HOUSEHOLD && newHousehold != null)) { + if (EcoreUtil.isAncestor(this, newHousehold)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newHousehold != null) + msgs = ((InternalEObject)newHousehold).eInverseAdd(this, TaxationPackage.HOUSEHOLD__CHILDREN, Household.class, msgs); + msgs = basicSetHousehold(newHousehold, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DEPENDENT__HOUSEHOLD, newHousehold, newHousehold)); + } + + /** + * + * + * @generated + */ + @Override + public FromAgent getFrom_agent() { + if (from_agent != null && from_agent.eIsProxy()) { + InternalEObject oldFrom_agent = (InternalEObject)from_agent; + from_agent = (FromAgent)eResolveProxy(oldFrom_agent); + if (from_agent != oldFrom_agent) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.DEPENDENT__FROM_AGENT, oldFrom_agent, from_agent)); + } + } + return from_agent; + } + + /** + * + * + * @generated + */ + public FromAgent basicGetFrom_agent() { + return from_agent; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetFrom_agent(FromAgent newFrom_agent, NotificationChain msgs) { + FromAgent oldFrom_agent = from_agent; + from_agent = newFrom_agent; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.DEPENDENT__FROM_AGENT, oldFrom_agent, newFrom_agent); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setFrom_agent(FromAgent newFrom_agent) { + if (newFrom_agent != from_agent) { + NotificationChain msgs = null; + if (from_agent != null) + msgs = ((InternalEObject)from_agent).eInverseRemove(this, TaxationPackage.FROM_AGENT__DEPENDENT, FromAgent.class, msgs); + if (newFrom_agent != null) + msgs = ((InternalEObject)newFrom_agent).eInverseAdd(this, TaxationPackage.FROM_AGENT__DEPENDENT, FromAgent.class, msgs); + msgs = basicSetFrom_agent(newFrom_agent, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DEPENDENT__FROM_AGENT, newFrom_agent, newFrom_agent)); + } + + /** + * + * + * @generated + */ + @Override + public EList getExpense() { + if (expense == null) { + expense = new EObjectWithInverseResolvingEList(Expense.class, this, TaxationPackage.DEPENDENT__EXPENSE, TaxationPackage.EXPENSE__DEPENDENT); + } + return expense; + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetResponsible_person((Tax_Payer)otherEnd, msgs); + case TaxationPackage.DEPENDENT__ALLOWANCES: + if (allowances != null) + msgs = ((InternalEObject)allowances).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - TaxationPackage.DEPENDENT__ALLOWANCES, null, msgs); + return basicSetAllowances((External_Allowance)otherEnd, msgs); + case TaxationPackage.DEPENDENT__HOUSEHOLD: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetHousehold((Household)otherEnd, msgs); + case TaxationPackage.DEPENDENT__FROM_AGENT: + if (from_agent != null) + msgs = ((InternalEObject)from_agent).eInverseRemove(this, TaxationPackage.FROM_AGENT__DEPENDENT, FromAgent.class, msgs); + return basicSetFrom_agent((FromAgent)otherEnd, msgs); + case TaxationPackage.DEPENDENT__EXPENSE: + return ((InternalEList)(InternalEList)getExpense()).basicAdd(otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON: + return basicSetResponsible_person(null, msgs); + case TaxationPackage.DEPENDENT__ALLOWANCES: + return basicSetAllowances(null, msgs); + case TaxationPackage.DEPENDENT__HOUSEHOLD: + return basicSetHousehold(null, msgs); + case TaxationPackage.DEPENDENT__FROM_AGENT: + return basicSetFrom_agent(null, msgs); + case TaxationPackage.DEPENDENT__EXPENSE: + return ((InternalEList)getExpense()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON: + return eInternalContainer().eInverseRemove(this, TaxationPackage.TAX_PAYER__DEPENDENTS, Tax_Payer.class, msgs); + case TaxationPackage.DEPENDENT__HOUSEHOLD: + return eInternalContainer().eInverseRemove(this, TaxationPackage.HOUSEHOLD__CHILDREN, Household.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.DEPENDENT__DEPENDENT_TYPE: + return getDependent_type(); + case TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON: + return getResponsible_person(); + case TaxationPackage.DEPENDENT__CONTINUED_STUDIES: + return isContinued_studies(); + case TaxationPackage.DEPENDENT__ALLOWANCES: + return getAllowances(); + case TaxationPackage.DEPENDENT__HOUSEHOLD: + return getHousehold(); + case TaxationPackage.DEPENDENT__FROM_AGENT: + if (resolve) return getFrom_agent(); + return basicGetFrom_agent(); + case TaxationPackage.DEPENDENT__EXPENSE: + return getExpense(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.DEPENDENT__DEPENDENT_TYPE: + setDependent_type((Dependent_Type)newValue); + return; + case TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON: + setResponsible_person((Tax_Payer)newValue); + return; + case TaxationPackage.DEPENDENT__CONTINUED_STUDIES: + setContinued_studies((Boolean)newValue); + return; + case TaxationPackage.DEPENDENT__ALLOWANCES: + setAllowances((External_Allowance)newValue); + return; + case TaxationPackage.DEPENDENT__HOUSEHOLD: + setHousehold((Household)newValue); + return; + case TaxationPackage.DEPENDENT__FROM_AGENT: + setFrom_agent((FromAgent)newValue); + return; + case TaxationPackage.DEPENDENT__EXPENSE: + getExpense().clear(); + getExpense().addAll((Collection)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.DEPENDENT__DEPENDENT_TYPE: + setDependent_type(DEPENDENT_TYPE_EDEFAULT); + return; + case TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON: + setResponsible_person((Tax_Payer)null); + return; + case TaxationPackage.DEPENDENT__CONTINUED_STUDIES: + setContinued_studies(CONTINUED_STUDIES_EDEFAULT); + return; + case TaxationPackage.DEPENDENT__ALLOWANCES: + setAllowances((External_Allowance)null); + return; + case TaxationPackage.DEPENDENT__HOUSEHOLD: + setHousehold((Household)null); + return; + case TaxationPackage.DEPENDENT__FROM_AGENT: + setFrom_agent((FromAgent)null); + return; + case TaxationPackage.DEPENDENT__EXPENSE: + getExpense().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.DEPENDENT__DEPENDENT_TYPE: + return dependent_type != DEPENDENT_TYPE_EDEFAULT; + case TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON: + return getResponsible_person() != null; + case TaxationPackage.DEPENDENT__CONTINUED_STUDIES: + return continued_studies != CONTINUED_STUDIES_EDEFAULT; + case TaxationPackage.DEPENDENT__ALLOWANCES: + return allowances != null; + case TaxationPackage.DEPENDENT__HOUSEHOLD: + return getHousehold() != null; + case TaxationPackage.DEPENDENT__FROM_AGENT: + return from_agent != null; + case TaxationPackage.DEPENDENT__EXPENSE: + return expense != null && !expense.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (dependent_type: "); + result.append(dependent_type); + result.append(", continued_studies: "); + result.append(continued_studies); + result.append(')'); + return result.toString(); + } + +} //DependentImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DonationImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DonationImpl.java new file mode 100644 index 00000000..9a34362f --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DonationImpl.java @@ -0,0 +1,220 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Donation; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Donation'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.DonationImpl#getBeneficiary1 Beneficiary1}
            • + *
            • {@link TaxationWithRoot.impl.DonationImpl#isIs_donation_reported Is donation reported}
            • + *
            + * + * @generated + */ +public class DonationImpl extends Special_Expense_DSImpl implements Donation { + /** + * The default value of the '{@link #getBeneficiary1() Beneficiary1}' attribute. + * + * + * @see #getBeneficiary1() + * @generated + * @ordered + */ + protected static final String BENEFICIARY1_EDEFAULT = null; + + /** + * The cached value of the '{@link #getBeneficiary1() Beneficiary1}' attribute. + * + * + * @see #getBeneficiary1() + * @generated + * @ordered + */ + protected String beneficiary1 = BENEFICIARY1_EDEFAULT; + + /** + * The default value of the '{@link #isIs_donation_reported() Is donation reported}' attribute. + * + * + * @see #isIs_donation_reported() + * @generated + * @ordered + */ + protected static final boolean IS_DONATION_REPORTED_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_donation_reported() Is donation reported}' attribute. + * + * + * @see #isIs_donation_reported() + * @generated + * @ordered + */ + protected boolean is_donation_reported = IS_DONATION_REPORTED_EDEFAULT; + + /** + * + * + * @generated + */ + protected DonationImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.DONATION; + } + + /** + * + * + * @generated + */ + @Override + public String getBeneficiary1() { + return beneficiary1; + } + + /** + * + * + * @generated + */ + @Override + public void setBeneficiary1(String newBeneficiary1) { + String oldBeneficiary1 = beneficiary1; + beneficiary1 = newBeneficiary1; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DONATION__BENEFICIARY1, oldBeneficiary1, beneficiary1)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_donation_reported() { + return is_donation_reported; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_donation_reported(boolean newIs_donation_reported) { + boolean oldIs_donation_reported = is_donation_reported; + is_donation_reported = newIs_donation_reported; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DONATION__IS_DONATION_REPORTED, oldIs_donation_reported, is_donation_reported)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.DONATION__BENEFICIARY1: + return getBeneficiary1(); + case TaxationPackage.DONATION__IS_DONATION_REPORTED: + return isIs_donation_reported(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.DONATION__BENEFICIARY1: + setBeneficiary1((String)newValue); + return; + case TaxationPackage.DONATION__IS_DONATION_REPORTED: + setIs_donation_reported((Boolean)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.DONATION__BENEFICIARY1: + setBeneficiary1(BENEFICIARY1_EDEFAULT); + return; + case TaxationPackage.DONATION__IS_DONATION_REPORTED: + setIs_donation_reported(IS_DONATION_REPORTED_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.DONATION__BENEFICIARY1: + return BENEFICIARY1_EDEFAULT == null ? beneficiary1 != null : !BENEFICIARY1_EDEFAULT.equals(beneficiary1); + case TaxationPackage.DONATION__IS_DONATION_REPORTED: + return is_donation_reported != IS_DONATION_REPORTED_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (beneficiary1: "); + result.append(beneficiary1); + result.append(", is_donation_reported: "); + result.append(is_donation_reported); + result.append(')'); + return result.toString(); + } + +} //DonationImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Employment_IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Employment_IncomeImpl.java new file mode 100644 index 00000000..537e0006 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Employment_IncomeImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Employment_Income; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Employment Income'. + * + * + * @generated + */ +public class Employment_IncomeImpl extends Income_TypeImpl implements Employment_Income { + /** + * + * + * @generated + */ + protected Employment_IncomeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.EMPLOYMENT_INCOME; + } + +} //Employment_IncomeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/ExpenseImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/ExpenseImpl.java new file mode 100644 index 00000000..7aaf4b51 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/ExpenseImpl.java @@ -0,0 +1,654 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Dependent; +import TaxationWithRoot.Expense; +import TaxationWithRoot.Expense_Purpose; +import TaxationWithRoot.FromAgent; +import TaxationWithRoot.Income; +import TaxationWithRoot.Physical_Person; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EcoreUtil; + +/** + * + * An implementation of the model object 'Expense'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.ExpenseImpl#getDeclared_amount Declared amount}
            • + *
            • {@link TaxationWithRoot.impl.ExpenseImpl#getExpense_purpose Expense purpose}
            • + *
            • {@link TaxationWithRoot.impl.ExpenseImpl#getDependent Dependent}
            • + *
            • {@link TaxationWithRoot.impl.ExpenseImpl#getFrom_agent From agent}
            • + *
            • {@link TaxationWithRoot.impl.ExpenseImpl#getIncome Income}
            • + *
            • {@link TaxationWithRoot.impl.ExpenseImpl#getId4 Id4}
            • + *
            • {@link TaxationWithRoot.impl.ExpenseImpl#getBeneficiary Beneficiary}
            • + *
            + * + * @generated + */ +public class ExpenseImpl extends MinimalEObjectImpl.Container implements Expense { + /** + * The default value of the '{@link #getDeclared_amount() Declared amount}' attribute. + * + * + * @see #getDeclared_amount() + * @generated + * @ordered + */ + protected static final double DECLARED_AMOUNT_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeclared_amount() Declared amount}' attribute. + * + * + * @see #getDeclared_amount() + * @generated + * @ordered + */ + protected double declared_amount = DECLARED_AMOUNT_EDEFAULT; + + /** + * The default value of the '{@link #getExpense_purpose() Expense purpose}' attribute. + * + * + * @see #getExpense_purpose() + * @generated + * @ordered + */ + protected static final Expense_Purpose EXPENSE_PURPOSE_EDEFAULT = Expense_Purpose.OTHER; + + /** + * The cached value of the '{@link #getExpense_purpose() Expense purpose}' attribute. + * + * + * @see #getExpense_purpose() + * @generated + * @ordered + */ + protected Expense_Purpose expense_purpose = EXPENSE_PURPOSE_EDEFAULT; + + /** + * The cached value of the '{@link #getDependent() Dependent}' reference. + * + * + * @see #getDependent() + * @generated + * @ordered + */ + protected Dependent dependent; + + /** + * The cached value of the '{@link #getFrom_agent() From agent}' reference. + * + * + * @see #getFrom_agent() + * @generated + * @ordered + */ + protected FromAgent from_agent; + + /** + * The default value of the '{@link #getId4() Id4}' attribute. + * + * + * @see #getId4() + * @generated + * @ordered + */ + protected static final String ID4_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId4() Id4}' attribute. + * + * + * @see #getId4() + * @generated + * @ordered + */ + protected String id4 = ID4_EDEFAULT; + + /** + * The cached value of the '{@link #getBeneficiary() Beneficiary}' reference. + * + * + * @see #getBeneficiary() + * @generated + * @ordered + */ + protected Physical_Person beneficiary; + + /** + * + * + * @generated + */ + protected ExpenseImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.EXPENSE; + } + + /** + * + * + * @generated + */ + @Override + public double getDeclared_amount() { + return declared_amount; + } + + /** + * + * + * @generated + */ + @Override + public void setDeclared_amount(double newDeclared_amount) { + double oldDeclared_amount = declared_amount; + declared_amount = newDeclared_amount; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__DECLARED_AMOUNT, oldDeclared_amount, declared_amount)); + } + + /** + * + * + * @generated + */ + @Override + public Expense_Purpose getExpense_purpose() { + return expense_purpose; + } + + /** + * + * + * @generated + */ + @Override + public void setExpense_purpose(Expense_Purpose newExpense_purpose) { + Expense_Purpose oldExpense_purpose = expense_purpose; + expense_purpose = newExpense_purpose == null ? EXPENSE_PURPOSE_EDEFAULT : newExpense_purpose; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__EXPENSE_PURPOSE, oldExpense_purpose, expense_purpose)); + } + + /** + * + * + * @generated + */ + @Override + public Dependent getDependent() { + if (dependent != null && dependent.eIsProxy()) { + InternalEObject oldDependent = (InternalEObject)dependent; + dependent = (Dependent)eResolveProxy(oldDependent); + if (dependent != oldDependent) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.EXPENSE__DEPENDENT, oldDependent, dependent)); + } + } + return dependent; + } + + /** + * + * + * @generated + */ + public Dependent basicGetDependent() { + return dependent; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetDependent(Dependent newDependent, NotificationChain msgs) { + Dependent oldDependent = dependent; + dependent = newDependent; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__DEPENDENT, oldDependent, newDependent); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setDependent(Dependent newDependent) { + if (newDependent != dependent) { + NotificationChain msgs = null; + if (dependent != null) + msgs = ((InternalEObject)dependent).eInverseRemove(this, TaxationPackage.DEPENDENT__EXPENSE, Dependent.class, msgs); + if (newDependent != null) + msgs = ((InternalEObject)newDependent).eInverseAdd(this, TaxationPackage.DEPENDENT__EXPENSE, Dependent.class, msgs); + msgs = basicSetDependent(newDependent, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__DEPENDENT, newDependent, newDependent)); + } + + /** + * + * + * @generated + */ + @Override + public FromAgent getFrom_agent() { + if (from_agent != null && from_agent.eIsProxy()) { + InternalEObject oldFrom_agent = (InternalEObject)from_agent; + from_agent = (FromAgent)eResolveProxy(oldFrom_agent); + if (from_agent != oldFrom_agent) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.EXPENSE__FROM_AGENT, oldFrom_agent, from_agent)); + } + } + return from_agent; + } + + /** + * + * + * @generated + */ + public FromAgent basicGetFrom_agent() { + return from_agent; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetFrom_agent(FromAgent newFrom_agent, NotificationChain msgs) { + FromAgent oldFrom_agent = from_agent; + from_agent = newFrom_agent; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__FROM_AGENT, oldFrom_agent, newFrom_agent); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setFrom_agent(FromAgent newFrom_agent) { + if (newFrom_agent != from_agent) { + NotificationChain msgs = null; + if (from_agent != null) + msgs = ((InternalEObject)from_agent).eInverseRemove(this, TaxationPackage.FROM_AGENT__EXPENSE, FromAgent.class, msgs); + if (newFrom_agent != null) + msgs = ((InternalEObject)newFrom_agent).eInverseAdd(this, TaxationPackage.FROM_AGENT__EXPENSE, FromAgent.class, msgs); + msgs = basicSetFrom_agent(newFrom_agent, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__FROM_AGENT, newFrom_agent, newFrom_agent)); + } + + /** + * + * + * @generated + */ + @Override + public Income getIncome() { + if (eContainerFeatureID() != TaxationPackage.EXPENSE__INCOME) return null; + return (Income)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetIncome(Income newIncome, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newIncome, TaxationPackage.EXPENSE__INCOME, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setIncome(Income newIncome) { + if (newIncome != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.EXPENSE__INCOME && newIncome != null)) { + if (EcoreUtil.isAncestor(this, newIncome)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newIncome != null) + msgs = ((InternalEObject)newIncome).eInverseAdd(this, TaxationPackage.INCOME__EXPENSES, Income.class, msgs); + msgs = basicSetIncome(newIncome, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__INCOME, newIncome, newIncome)); + } + + /** + * + * + * @generated + */ + @Override + public String getId4() { + return id4; + } + + /** + * + * + * @generated + */ + @Override + public void setId4(String newId4) { + String oldId4 = id4; + id4 = newId4; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__ID4, oldId4, id4)); + } + + /** + * + * + * @generated + */ + @Override + public Physical_Person getBeneficiary() { + if (beneficiary != null && beneficiary.eIsProxy()) { + InternalEObject oldBeneficiary = (InternalEObject)beneficiary; + beneficiary = (Physical_Person)eResolveProxy(oldBeneficiary); + if (beneficiary != oldBeneficiary) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.EXPENSE__BENEFICIARY, oldBeneficiary, beneficiary)); + } + } + return beneficiary; + } + + /** + * + * + * @generated + */ + public Physical_Person basicGetBeneficiary() { + return beneficiary; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetBeneficiary(Physical_Person newBeneficiary, NotificationChain msgs) { + Physical_Person oldBeneficiary = beneficiary; + beneficiary = newBeneficiary; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__BENEFICIARY, oldBeneficiary, newBeneficiary); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setBeneficiary(Physical_Person newBeneficiary) { + if (newBeneficiary != beneficiary) { + NotificationChain msgs = null; + if (beneficiary != null) + msgs = ((InternalEObject)beneficiary).eInverseRemove(this, TaxationPackage.PHYSICAL_PERSON__EXPENSES, Physical_Person.class, msgs); + if (newBeneficiary != null) + msgs = ((InternalEObject)newBeneficiary).eInverseAdd(this, TaxationPackage.PHYSICAL_PERSON__EXPENSES, Physical_Person.class, msgs); + msgs = basicSetBeneficiary(newBeneficiary, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXPENSE__BENEFICIARY, newBeneficiary, newBeneficiary)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.EXPENSE__DEPENDENT: + if (dependent != null) + msgs = ((InternalEObject)dependent).eInverseRemove(this, TaxationPackage.DEPENDENT__EXPENSE, Dependent.class, msgs); + return basicSetDependent((Dependent)otherEnd, msgs); + case TaxationPackage.EXPENSE__FROM_AGENT: + if (from_agent != null) + msgs = ((InternalEObject)from_agent).eInverseRemove(this, TaxationPackage.FROM_AGENT__EXPENSE, FromAgent.class, msgs); + return basicSetFrom_agent((FromAgent)otherEnd, msgs); + case TaxationPackage.EXPENSE__INCOME: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetIncome((Income)otherEnd, msgs); + case TaxationPackage.EXPENSE__BENEFICIARY: + if (beneficiary != null) + msgs = ((InternalEObject)beneficiary).eInverseRemove(this, TaxationPackage.PHYSICAL_PERSON__EXPENSES, Physical_Person.class, msgs); + return basicSetBeneficiary((Physical_Person)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.EXPENSE__DEPENDENT: + return basicSetDependent(null, msgs); + case TaxationPackage.EXPENSE__FROM_AGENT: + return basicSetFrom_agent(null, msgs); + case TaxationPackage.EXPENSE__INCOME: + return basicSetIncome(null, msgs); + case TaxationPackage.EXPENSE__BENEFICIARY: + return basicSetBeneficiary(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.EXPENSE__INCOME: + return eInternalContainer().eInverseRemove(this, TaxationPackage.INCOME__EXPENSES, Income.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.EXPENSE__DECLARED_AMOUNT: + return getDeclared_amount(); + case TaxationPackage.EXPENSE__EXPENSE_PURPOSE: + return getExpense_purpose(); + case TaxationPackage.EXPENSE__DEPENDENT: + if (resolve) return getDependent(); + return basicGetDependent(); + case TaxationPackage.EXPENSE__FROM_AGENT: + if (resolve) return getFrom_agent(); + return basicGetFrom_agent(); + case TaxationPackage.EXPENSE__INCOME: + return getIncome(); + case TaxationPackage.EXPENSE__ID4: + return getId4(); + case TaxationPackage.EXPENSE__BENEFICIARY: + if (resolve) return getBeneficiary(); + return basicGetBeneficiary(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.EXPENSE__DECLARED_AMOUNT: + setDeclared_amount((Double)newValue); + return; + case TaxationPackage.EXPENSE__EXPENSE_PURPOSE: + setExpense_purpose((Expense_Purpose)newValue); + return; + case TaxationPackage.EXPENSE__DEPENDENT: + setDependent((Dependent)newValue); + return; + case TaxationPackage.EXPENSE__FROM_AGENT: + setFrom_agent((FromAgent)newValue); + return; + case TaxationPackage.EXPENSE__INCOME: + setIncome((Income)newValue); + return; + case TaxationPackage.EXPENSE__ID4: + setId4((String)newValue); + return; + case TaxationPackage.EXPENSE__BENEFICIARY: + setBeneficiary((Physical_Person)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.EXPENSE__DECLARED_AMOUNT: + setDeclared_amount(DECLARED_AMOUNT_EDEFAULT); + return; + case TaxationPackage.EXPENSE__EXPENSE_PURPOSE: + setExpense_purpose(EXPENSE_PURPOSE_EDEFAULT); + return; + case TaxationPackage.EXPENSE__DEPENDENT: + setDependent((Dependent)null); + return; + case TaxationPackage.EXPENSE__FROM_AGENT: + setFrom_agent((FromAgent)null); + return; + case TaxationPackage.EXPENSE__INCOME: + setIncome((Income)null); + return; + case TaxationPackage.EXPENSE__ID4: + setId4(ID4_EDEFAULT); + return; + case TaxationPackage.EXPENSE__BENEFICIARY: + setBeneficiary((Physical_Person)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.EXPENSE__DECLARED_AMOUNT: + return declared_amount != DECLARED_AMOUNT_EDEFAULT; + case TaxationPackage.EXPENSE__EXPENSE_PURPOSE: + return expense_purpose != EXPENSE_PURPOSE_EDEFAULT; + case TaxationPackage.EXPENSE__DEPENDENT: + return dependent != null; + case TaxationPackage.EXPENSE__FROM_AGENT: + return from_agent != null; + case TaxationPackage.EXPENSE__INCOME: + return getIncome() != null; + case TaxationPackage.EXPENSE__ID4: + return ID4_EDEFAULT == null ? id4 != null : !ID4_EDEFAULT.equals(id4); + case TaxationPackage.EXPENSE__BENEFICIARY: + return beneficiary != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (declared_amount: "); + result.append(declared_amount); + result.append(", expense_purpose: "); + result.append(expense_purpose); + result.append(", id4: "); + result.append(id4); + result.append(')'); + return result.toString(); + } + +} //ExpenseImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/External_AllowanceImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/External_AllowanceImpl.java new file mode 100644 index 00000000..1949a481 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/External_AllowanceImpl.java @@ -0,0 +1,500 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Dependent; +import TaxationWithRoot.External_Allowance; +import TaxationWithRoot.Grantor; +import TaxationWithRoot.Physical_Person; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EcoreUtil; + +/** + * + * An implementation of the model object 'External Allowance'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.External_AllowanceImpl#getGrantor Grantor}
            • + *
            • {@link TaxationWithRoot.impl.External_AllowanceImpl#getStarting_year Starting year}
            • + *
            • {@link TaxationWithRoot.impl.External_AllowanceImpl#getEnding_year Ending year}
            • + *
            • {@link TaxationWithRoot.impl.External_AllowanceImpl#getReciver Reciver}
            • + *
            • {@link TaxationWithRoot.impl.External_AllowanceImpl#getId5 Id5}
            • + *
            • {@link TaxationWithRoot.impl.External_AllowanceImpl#getPerson Person}
            • + *
            + * + * @generated + */ +public class External_AllowanceImpl extends MinimalEObjectImpl.Container implements External_Allowance { + /** + * The default value of the '{@link #getGrantor() Grantor}' attribute. + * + * + * @see #getGrantor() + * @generated + * @ordered + */ + protected static final Grantor GRANTOR_EDEFAULT = Grantor.WWW; + + /** + * The cached value of the '{@link #getGrantor() Grantor}' attribute. + * + * + * @see #getGrantor() + * @generated + * @ordered + */ + protected Grantor grantor = GRANTOR_EDEFAULT; + + /** + * The default value of the '{@link #getStarting_year() Starting year}' attribute. + * + * + * @see #getStarting_year() + * @generated + * @ordered + */ + protected static final int STARTING_YEAR_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getStarting_year() Starting year}' attribute. + * + * + * @see #getStarting_year() + * @generated + * @ordered + */ + protected int starting_year = STARTING_YEAR_EDEFAULT; + + /** + * The default value of the '{@link #getEnding_year() Ending year}' attribute. + * + * + * @see #getEnding_year() + * @generated + * @ordered + */ + protected static final int ENDING_YEAR_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getEnding_year() Ending year}' attribute. + * + * + * @see #getEnding_year() + * @generated + * @ordered + */ + protected int ending_year = ENDING_YEAR_EDEFAULT; + + /** + * The cached value of the '{@link #getReciver() Reciver}' reference. + * + * + * @see #getReciver() + * @generated + * @ordered + */ + protected Physical_Person reciver; + + /** + * The default value of the '{@link #getId5() Id5}' attribute. + * + * + * @see #getId5() + * @generated + * @ordered + */ + protected static final String ID5_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId5() Id5}' attribute. + * + * + * @see #getId5() + * @generated + * @ordered + */ + protected String id5 = ID5_EDEFAULT; + + /** + * + * + * @generated + */ + protected External_AllowanceImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.EXTERNAL_ALLOWANCE; + } + + /** + * + * + * @generated + */ + @Override + public Grantor getGrantor() { + return grantor; + } + + /** + * + * + * @generated + */ + @Override + public void setGrantor(Grantor newGrantor) { + Grantor oldGrantor = grantor; + grantor = newGrantor == null ? GRANTOR_EDEFAULT : newGrantor; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXTERNAL_ALLOWANCE__GRANTOR, oldGrantor, grantor)); + } + + /** + * + * + * @generated + */ + @Override + public int getStarting_year() { + return starting_year; + } + + /** + * + * + * @generated + */ + @Override + public void setStarting_year(int newStarting_year) { + int oldStarting_year = starting_year; + starting_year = newStarting_year; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXTERNAL_ALLOWANCE__STARTING_YEAR, oldStarting_year, starting_year)); + } + + /** + * + * + * @generated + */ + @Override + public int getEnding_year() { + return ending_year; + } + + /** + * + * + * @generated + */ + @Override + public void setEnding_year(int newEnding_year) { + int oldEnding_year = ending_year; + ending_year = newEnding_year; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXTERNAL_ALLOWANCE__ENDING_YEAR, oldEnding_year, ending_year)); + } + + /** + * + * + * @generated + */ + @Override + public Physical_Person getReciver() { + if (reciver != null && reciver.eIsProxy()) { + InternalEObject oldReciver = (InternalEObject)reciver; + reciver = (Physical_Person)eResolveProxy(oldReciver); + if (reciver != oldReciver) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.EXTERNAL_ALLOWANCE__RECIVER, oldReciver, reciver)); + } + } + return reciver; + } + + /** + * + * + * @generated + */ + public Physical_Person basicGetReciver() { + return reciver; + } + + /** + * + * + * @generated + */ + @Override + public void setReciver(Physical_Person newReciver) { + Physical_Person oldReciver = reciver; + reciver = newReciver; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXTERNAL_ALLOWANCE__RECIVER, oldReciver, reciver)); + } + + /** + * + * + * @generated + */ + @Override + public String getId5() { + return id5; + } + + /** + * + * + * @generated + */ + @Override + public void setId5(String newId5) { + String oldId5 = id5; + id5 = newId5; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXTERNAL_ALLOWANCE__ID5, oldId5, id5)); + } + + /** + * + * + * @generated + */ + @Override + public Dependent getPerson() { + if (eContainerFeatureID() != TaxationPackage.EXTERNAL_ALLOWANCE__PERSON) return null; + return (Dependent)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetPerson(Dependent newPerson, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newPerson, TaxationPackage.EXTERNAL_ALLOWANCE__PERSON, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setPerson(Dependent newPerson) { + if (newPerson != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.EXTERNAL_ALLOWANCE__PERSON && newPerson != null)) { + if (EcoreUtil.isAncestor(this, newPerson)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newPerson != null) + msgs = ((InternalEObject)newPerson).eInverseAdd(this, TaxationPackage.DEPENDENT__ALLOWANCES, Dependent.class, msgs); + msgs = basicSetPerson(newPerson, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXTERNAL_ALLOWANCE__PERSON, newPerson, newPerson)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.EXTERNAL_ALLOWANCE__PERSON: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetPerson((Dependent)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.EXTERNAL_ALLOWANCE__PERSON: + return basicSetPerson(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.EXTERNAL_ALLOWANCE__PERSON: + return eInternalContainer().eInverseRemove(this, TaxationPackage.DEPENDENT__ALLOWANCES, Dependent.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.EXTERNAL_ALLOWANCE__GRANTOR: + return getGrantor(); + case TaxationPackage.EXTERNAL_ALLOWANCE__STARTING_YEAR: + return getStarting_year(); + case TaxationPackage.EXTERNAL_ALLOWANCE__ENDING_YEAR: + return getEnding_year(); + case TaxationPackage.EXTERNAL_ALLOWANCE__RECIVER: + if (resolve) return getReciver(); + return basicGetReciver(); + case TaxationPackage.EXTERNAL_ALLOWANCE__ID5: + return getId5(); + case TaxationPackage.EXTERNAL_ALLOWANCE__PERSON: + return getPerson(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.EXTERNAL_ALLOWANCE__GRANTOR: + setGrantor((Grantor)newValue); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__STARTING_YEAR: + setStarting_year((Integer)newValue); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__ENDING_YEAR: + setEnding_year((Integer)newValue); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__RECIVER: + setReciver((Physical_Person)newValue); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__ID5: + setId5((String)newValue); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__PERSON: + setPerson((Dependent)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.EXTERNAL_ALLOWANCE__GRANTOR: + setGrantor(GRANTOR_EDEFAULT); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__STARTING_YEAR: + setStarting_year(STARTING_YEAR_EDEFAULT); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__ENDING_YEAR: + setEnding_year(ENDING_YEAR_EDEFAULT); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__RECIVER: + setReciver((Physical_Person)null); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__ID5: + setId5(ID5_EDEFAULT); + return; + case TaxationPackage.EXTERNAL_ALLOWANCE__PERSON: + setPerson((Dependent)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.EXTERNAL_ALLOWANCE__GRANTOR: + return grantor != GRANTOR_EDEFAULT; + case TaxationPackage.EXTERNAL_ALLOWANCE__STARTING_YEAR: + return starting_year != STARTING_YEAR_EDEFAULT; + case TaxationPackage.EXTERNAL_ALLOWANCE__ENDING_YEAR: + return ending_year != ENDING_YEAR_EDEFAULT; + case TaxationPackage.EXTERNAL_ALLOWANCE__RECIVER: + return reciver != null; + case TaxationPackage.EXTERNAL_ALLOWANCE__ID5: + return ID5_EDEFAULT == null ? id5 != null : !ID5_EDEFAULT.equals(id5); + case TaxationPackage.EXTERNAL_ALLOWANCE__PERSON: + return getPerson() != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (grantor: "); + result.append(grantor); + result.append(", starting_year: "); + result.append(starting_year); + result.append(", ending_year: "); + result.append(ending_year); + result.append(", id5: "); + result.append(id5); + result.append(')'); + return result.toString(); + } + +} //External_AllowanceImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Extraordinary_Expense_CEImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Extraordinary_Expense_CEImpl.java new file mode 100644 index 00000000..2951776a --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Extraordinary_Expense_CEImpl.java @@ -0,0 +1,221 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.CE_Type; +import TaxationWithRoot.Extraordinary_Expense_CE; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Extraordinary Expense CE'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.Extraordinary_Expense_CEImpl#getThresholded_deduction_percentage Thresholded deduction percentage}
            • + *
            • {@link TaxationWithRoot.impl.Extraordinary_Expense_CEImpl#getCe_type Ce type}
            • + *
            + * + * @generated + */ +public class Extraordinary_Expense_CEImpl extends ExpenseImpl implements Extraordinary_Expense_CE { + /** + * The default value of the '{@link #getThresholded_deduction_percentage() Thresholded deduction percentage}' attribute. + * + * + * @see #getThresholded_deduction_percentage() + * @generated + * @ordered + */ + protected static final double THRESHOLDED_DEDUCTION_PERCENTAGE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getThresholded_deduction_percentage() Thresholded deduction percentage}' attribute. + * + * + * @see #getThresholded_deduction_percentage() + * @generated + * @ordered + */ + protected double thresholded_deduction_percentage = THRESHOLDED_DEDUCTION_PERCENTAGE_EDEFAULT; + + /** + * The default value of the '{@link #getCe_type() Ce type}' attribute. + * + * + * @see #getCe_type() + * @generated + * @ordered + */ + protected static final CE_Type CE_TYPE_EDEFAULT = CE_Type.INALIDITY_AND_INFIRMITY; + + /** + * The cached value of the '{@link #getCe_type() Ce type}' attribute. + * + * + * @see #getCe_type() + * @generated + * @ordered + */ + protected CE_Type ce_type = CE_TYPE_EDEFAULT; + + /** + * + * + * @generated + */ + protected Extraordinary_Expense_CEImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.EXTRAORDINARY_EXPENSE_CE; + } + + /** + * + * + * @generated + */ + @Override + public double getThresholded_deduction_percentage() { + return thresholded_deduction_percentage; + } + + /** + * + * + * @generated + */ + @Override + public void setThresholded_deduction_percentage(double newThresholded_deduction_percentage) { + double oldThresholded_deduction_percentage = thresholded_deduction_percentage; + thresholded_deduction_percentage = newThresholded_deduction_percentage; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXTRAORDINARY_EXPENSE_CE__THRESHOLDED_DEDUCTION_PERCENTAGE, oldThresholded_deduction_percentage, thresholded_deduction_percentage)); + } + + /** + * + * + * @generated + */ + @Override + public CE_Type getCe_type() { + return ce_type; + } + + /** + * + * + * @generated + */ + @Override + public void setCe_type(CE_Type newCe_type) { + CE_Type oldCe_type = ce_type; + ce_type = newCe_type == null ? CE_TYPE_EDEFAULT : newCe_type; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.EXTRAORDINARY_EXPENSE_CE__CE_TYPE, oldCe_type, ce_type)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE__THRESHOLDED_DEDUCTION_PERCENTAGE: + return getThresholded_deduction_percentage(); + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE__CE_TYPE: + return getCe_type(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE__THRESHOLDED_DEDUCTION_PERCENTAGE: + setThresholded_deduction_percentage((Double)newValue); + return; + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE__CE_TYPE: + setCe_type((CE_Type)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE__THRESHOLDED_DEDUCTION_PERCENTAGE: + setThresholded_deduction_percentage(THRESHOLDED_DEDUCTION_PERCENTAGE_EDEFAULT); + return; + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE__CE_TYPE: + setCe_type(CE_TYPE_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE__THRESHOLDED_DEDUCTION_PERCENTAGE: + return thresholded_deduction_percentage != THRESHOLDED_DEDUCTION_PERCENTAGE_EDEFAULT; + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE__CE_TYPE: + return ce_type != CE_TYPE_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (thresholded_deduction_percentage: "); + result.append(thresholded_deduction_percentage); + result.append(", ce_type: "); + result.append(ce_type); + result.append(')'); + return result.toString(); + } + +} //Extraordinary_Expense_CEImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FDImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FDImpl.java new file mode 100644 index 00000000..270e8f39 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FDImpl.java @@ -0,0 +1,164 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.FD; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'FD'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.FDImpl#getDistance_declared_in_january Distance declared in january}
            • + *
            + * + * @generated + */ +public class FDImpl extends Professional_Expenses_DeductionImpl implements FD { + /** + * The default value of the '{@link #getDistance_declared_in_january() Distance declared in january}' attribute. + * + * + * @see #getDistance_declared_in_january() + * @generated + * @ordered + */ + protected static final double DISTANCE_DECLARED_IN_JANUARY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDistance_declared_in_january() Distance declared in january}' attribute. + * + * + * @see #getDistance_declared_in_january() + * @generated + * @ordered + */ + protected double distance_declared_in_january = DISTANCE_DECLARED_IN_JANUARY_EDEFAULT; + + /** + * + * + * @generated + */ + protected FDImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.FD; + } + + /** + * + * + * @generated + */ + @Override + public double getDistance_declared_in_january() { + return distance_declared_in_january; + } + + /** + * + * + * @generated + */ + @Override + public void setDistance_declared_in_january(double newDistance_declared_in_january) { + double oldDistance_declared_in_january = distance_declared_in_january; + distance_declared_in_january = newDistance_declared_in_january; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY, oldDistance_declared_in_january, distance_declared_in_january)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY: + return getDistance_declared_in_january(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY: + setDistance_declared_in_january((Double)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY: + setDistance_declared_in_january(DISTANCE_DECLARED_IN_JANUARY_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY: + return distance_declared_in_january != DISTANCE_DECLARED_IN_JANUARY_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (distance_declared_in_january: "); + result.append(distance_declared_in_january); + result.append(')'); + return result.toString(); + } + +} //FDImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FOImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FOImpl.java new file mode 100644 index 00000000..18919a65 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FOImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.FO; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'FO'. + * + * + * @generated + */ +public class FOImpl extends Professional_Expenses_DeductionImpl implements FO { + /** + * + * + * @generated + */ + protected FOImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.FO; + } + +} //FOImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Fiscal_AddressImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Fiscal_AddressImpl.java new file mode 100644 index 00000000..007f77de --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Fiscal_AddressImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Fiscal_Address; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Fiscal Address'. + * + * + * @generated + */ +public class Fiscal_AddressImpl extends AddressImpl implements Fiscal_Address { + /** + * + * + * @generated + */ + protected Fiscal_AddressImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.FISCAL_ADDRESS; + } + +} //Fiscal_AddressImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Foreign_IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Foreign_IncomeImpl.java new file mode 100644 index 00000000..2eeee8e5 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Foreign_IncomeImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Foreign_Income; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Foreign Income'. + * + * + * @generated + */ +public class Foreign_IncomeImpl extends IncomeImpl implements Foreign_Income { + /** + * + * + * @generated + */ + protected Foreign_IncomeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.FOREIGN_INCOME; + } + +} //Foreign_IncomeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FromAgentImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FromAgentImpl.java new file mode 100644 index 00000000..c5e0181b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FromAgentImpl.java @@ -0,0 +1,506 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Dependent; +import TaxationWithRoot.Expense; +import TaxationWithRoot.FromAgent; +import TaxationWithRoot.Tax_Payer; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EcoreUtil; + +/** + * + * An implementation of the model object 'From Agent'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.FromAgentImpl#getTaxPayer Tax Payer}
            • + *
            • {@link TaxationWithRoot.impl.FromAgentImpl#isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care Is dependent eligible for CE Not In Houshold Children Care}
            • + *
            • {@link TaxationWithRoot.impl.FromAgentImpl#getExpense Expense}
            • + *
            • {@link TaxationWithRoot.impl.FromAgentImpl#isIs_eligible_debt Is eligible debt}
            • + *
            • {@link TaxationWithRoot.impl.FromAgentImpl#getDependent Dependent}
            • + *
            + * + * @generated + */ +public class FromAgentImpl extends MinimalEObjectImpl.Container implements FromAgent { + /** + * The default value of the '{@link #isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care() Is dependent eligible for CE Not In Houshold Children Care}' attribute. + * + * + * @see #isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care() + * @generated + * @ordered + */ + protected static final boolean IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care() Is dependent eligible for CE Not In Houshold Children Care}' attribute. + * + * + * @see #isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care() + * @generated + * @ordered + */ + protected boolean is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care = IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE_EDEFAULT; + + /** + * The cached value of the '{@link #getExpense() Expense}' reference. + * + * + * @see #getExpense() + * @generated + * @ordered + */ + protected Expense expense; + + /** + * The default value of the '{@link #isIs_eligible_debt() Is eligible debt}' attribute. + * + * + * @see #isIs_eligible_debt() + * @generated + * @ordered + */ + protected static final boolean IS_ELIGIBLE_DEBT_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_eligible_debt() Is eligible debt}' attribute. + * + * + * @see #isIs_eligible_debt() + * @generated + * @ordered + */ + protected boolean is_eligible_debt = IS_ELIGIBLE_DEBT_EDEFAULT; + + /** + * The cached value of the '{@link #getDependent() Dependent}' reference. + * + * + * @see #getDependent() + * @generated + * @ordered + */ + protected Dependent dependent; + + /** + * + * + * @generated + */ + protected FromAgentImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.FROM_AGENT; + } + + /** + * + * + * @generated + */ + @Override + public Tax_Payer getTaxPayer() { + if (eContainerFeatureID() != TaxationPackage.FROM_AGENT__TAX_PAYER) return null; + return (Tax_Payer)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetTaxPayer(Tax_Payer newTaxPayer, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newTaxPayer, TaxationPackage.FROM_AGENT__TAX_PAYER, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setTaxPayer(Tax_Payer newTaxPayer) { + if (newTaxPayer != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.FROM_AGENT__TAX_PAYER && newTaxPayer != null)) { + if (EcoreUtil.isAncestor(this, newTaxPayer)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newTaxPayer != null) + msgs = ((InternalEObject)newTaxPayer).eInverseAdd(this, TaxationPackage.TAX_PAYER__FROM_AGENT, Tax_Payer.class, msgs); + msgs = basicSetTaxPayer(newTaxPayer, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FROM_AGENT__TAX_PAYER, newTaxPayer, newTaxPayer)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care() { + return is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care(boolean newIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care) { + boolean oldIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care = is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care; + is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care = newIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FROM_AGENT__IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE, oldIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care, is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care)); + } + + /** + * + * + * @generated + */ + @Override + public Expense getExpense() { + if (expense != null && expense.eIsProxy()) { + InternalEObject oldExpense = (InternalEObject)expense; + expense = (Expense)eResolveProxy(oldExpense); + if (expense != oldExpense) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.FROM_AGENT__EXPENSE, oldExpense, expense)); + } + } + return expense; + } + + /** + * + * + * @generated + */ + public Expense basicGetExpense() { + return expense; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetExpense(Expense newExpense, NotificationChain msgs) { + Expense oldExpense = expense; + expense = newExpense; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.FROM_AGENT__EXPENSE, oldExpense, newExpense); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setExpense(Expense newExpense) { + if (newExpense != expense) { + NotificationChain msgs = null; + if (expense != null) + msgs = ((InternalEObject)expense).eInverseRemove(this, TaxationPackage.EXPENSE__FROM_AGENT, Expense.class, msgs); + if (newExpense != null) + msgs = ((InternalEObject)newExpense).eInverseAdd(this, TaxationPackage.EXPENSE__FROM_AGENT, Expense.class, msgs); + msgs = basicSetExpense(newExpense, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FROM_AGENT__EXPENSE, newExpense, newExpense)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_eligible_debt() { + return is_eligible_debt; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_eligible_debt(boolean newIs_eligible_debt) { + boolean oldIs_eligible_debt = is_eligible_debt; + is_eligible_debt = newIs_eligible_debt; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FROM_AGENT__IS_ELIGIBLE_DEBT, oldIs_eligible_debt, is_eligible_debt)); + } + + /** + * + * + * @generated + */ + @Override + public Dependent getDependent() { + if (dependent != null && dependent.eIsProxy()) { + InternalEObject oldDependent = (InternalEObject)dependent; + dependent = (Dependent)eResolveProxy(oldDependent); + if (dependent != oldDependent) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.FROM_AGENT__DEPENDENT, oldDependent, dependent)); + } + } + return dependent; + } + + /** + * + * + * @generated + */ + public Dependent basicGetDependent() { + return dependent; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetDependent(Dependent newDependent, NotificationChain msgs) { + Dependent oldDependent = dependent; + dependent = newDependent; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.FROM_AGENT__DEPENDENT, oldDependent, newDependent); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setDependent(Dependent newDependent) { + if (newDependent != dependent) { + NotificationChain msgs = null; + if (dependent != null) + msgs = ((InternalEObject)dependent).eInverseRemove(this, TaxationPackage.DEPENDENT__FROM_AGENT, Dependent.class, msgs); + if (newDependent != null) + msgs = ((InternalEObject)newDependent).eInverseAdd(this, TaxationPackage.DEPENDENT__FROM_AGENT, Dependent.class, msgs); + msgs = basicSetDependent(newDependent, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FROM_AGENT__DEPENDENT, newDependent, newDependent)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.FROM_AGENT__TAX_PAYER: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetTaxPayer((Tax_Payer)otherEnd, msgs); + case TaxationPackage.FROM_AGENT__EXPENSE: + if (expense != null) + msgs = ((InternalEObject)expense).eInverseRemove(this, TaxationPackage.EXPENSE__FROM_AGENT, Expense.class, msgs); + return basicSetExpense((Expense)otherEnd, msgs); + case TaxationPackage.FROM_AGENT__DEPENDENT: + if (dependent != null) + msgs = ((InternalEObject)dependent).eInverseRemove(this, TaxationPackage.DEPENDENT__FROM_AGENT, Dependent.class, msgs); + return basicSetDependent((Dependent)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.FROM_AGENT__TAX_PAYER: + return basicSetTaxPayer(null, msgs); + case TaxationPackage.FROM_AGENT__EXPENSE: + return basicSetExpense(null, msgs); + case TaxationPackage.FROM_AGENT__DEPENDENT: + return basicSetDependent(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.FROM_AGENT__TAX_PAYER: + return eInternalContainer().eInverseRemove(this, TaxationPackage.TAX_PAYER__FROM_AGENT, Tax_Payer.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.FROM_AGENT__TAX_PAYER: + return getTaxPayer(); + case TaxationPackage.FROM_AGENT__IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE: + return isIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care(); + case TaxationPackage.FROM_AGENT__EXPENSE: + if (resolve) return getExpense(); + return basicGetExpense(); + case TaxationPackage.FROM_AGENT__IS_ELIGIBLE_DEBT: + return isIs_eligible_debt(); + case TaxationPackage.FROM_AGENT__DEPENDENT: + if (resolve) return getDependent(); + return basicGetDependent(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.FROM_AGENT__TAX_PAYER: + setTaxPayer((Tax_Payer)newValue); + return; + case TaxationPackage.FROM_AGENT__IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE: + setIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care((Boolean)newValue); + return; + case TaxationPackage.FROM_AGENT__EXPENSE: + setExpense((Expense)newValue); + return; + case TaxationPackage.FROM_AGENT__IS_ELIGIBLE_DEBT: + setIs_eligible_debt((Boolean)newValue); + return; + case TaxationPackage.FROM_AGENT__DEPENDENT: + setDependent((Dependent)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.FROM_AGENT__TAX_PAYER: + setTaxPayer((Tax_Payer)null); + return; + case TaxationPackage.FROM_AGENT__IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE: + setIs_dependent_eligible_for_CE_Not_In_Houshold_Children_Care(IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE_EDEFAULT); + return; + case TaxationPackage.FROM_AGENT__EXPENSE: + setExpense((Expense)null); + return; + case TaxationPackage.FROM_AGENT__IS_ELIGIBLE_DEBT: + setIs_eligible_debt(IS_ELIGIBLE_DEBT_EDEFAULT); + return; + case TaxationPackage.FROM_AGENT__DEPENDENT: + setDependent((Dependent)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.FROM_AGENT__TAX_PAYER: + return getTaxPayer() != null; + case TaxationPackage.FROM_AGENT__IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE: + return is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care != IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE_EDEFAULT; + case TaxationPackage.FROM_AGENT__EXPENSE: + return expense != null; + case TaxationPackage.FROM_AGENT__IS_ELIGIBLE_DEBT: + return is_eligible_debt != IS_ELIGIBLE_DEBT_EDEFAULT; + case TaxationPackage.FROM_AGENT__DEPENDENT: + return dependent != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care: "); + result.append(is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care); + result.append(", is_eligible_debt: "); + result.append(is_eligible_debt); + result.append(')'); + return result.toString(); + } + +} //FromAgentImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FromLawImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FromLawImpl.java new file mode 100644 index 00000000..4a607481 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FromLawImpl.java @@ -0,0 +1,268 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.FromLaw; +import TaxationWithRoot.Tax_Payer; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EcoreUtil; + +/** + * + * An implementation of the model object 'From Law'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.FromLawImpl#getId Id}
            • + *
            • {@link TaxationWithRoot.impl.FromLawImpl#getTaxPayer Tax Payer}
            • + *
            + * + * @generated + */ +public class FromLawImpl extends MinimalEObjectImpl.Container implements FromLaw { + /** + * The default value of the '{@link #getId() Id}' attribute. + * + * + * @see #getId() + * @generated + * @ordered + */ + protected static final String ID_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId() Id}' attribute. + * + * + * @see #getId() + * @generated + * @ordered + */ + protected String id = ID_EDEFAULT; + + /** + * + * + * @generated + */ + protected FromLawImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.FROM_LAW; + } + + /** + * + * + * @generated + */ + @Override + public String getId() { + return id; + } + + /** + * + * + * @generated + */ + @Override + public void setId(String newId) { + String oldId = id; + id = newId; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FROM_LAW__ID, oldId, id)); + } + + /** + * + * + * @generated + */ + @Override + public Tax_Payer getTaxPayer() { + if (eContainerFeatureID() != TaxationPackage.FROM_LAW__TAX_PAYER) return null; + return (Tax_Payer)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetTaxPayer(Tax_Payer newTaxPayer, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newTaxPayer, TaxationPackage.FROM_LAW__TAX_PAYER, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setTaxPayer(Tax_Payer newTaxPayer) { + if (newTaxPayer != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.FROM_LAW__TAX_PAYER && newTaxPayer != null)) { + if (EcoreUtil.isAncestor(this, newTaxPayer)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newTaxPayer != null) + msgs = ((InternalEObject)newTaxPayer).eInverseAdd(this, TaxationPackage.TAX_PAYER__FROM_LAW, Tax_Payer.class, msgs); + msgs = basicSetTaxPayer(newTaxPayer, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FROM_LAW__TAX_PAYER, newTaxPayer, newTaxPayer)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.FROM_LAW__TAX_PAYER: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetTaxPayer((Tax_Payer)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.FROM_LAW__TAX_PAYER: + return basicSetTaxPayer(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.FROM_LAW__TAX_PAYER: + return eInternalContainer().eInverseRemove(this, TaxationPackage.TAX_PAYER__FROM_LAW, Tax_Payer.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.FROM_LAW__ID: + return getId(); + case TaxationPackage.FROM_LAW__TAX_PAYER: + return getTaxPayer(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.FROM_LAW__ID: + setId((String)newValue); + return; + case TaxationPackage.FROM_LAW__TAX_PAYER: + setTaxPayer((Tax_Payer)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.FROM_LAW__ID: + setId(ID_EDEFAULT); + return; + case TaxationPackage.FROM_LAW__TAX_PAYER: + setTaxPayer((Tax_Payer)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.FROM_LAW__ID: + return ID_EDEFAULT == null ? id != null : !ID_EDEFAULT.equals(id); + case TaxationPackage.FROM_LAW__TAX_PAYER: + return getTaxPayer() != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (id: "); + result.append(id); + result.append(')'); + return result.toString(); + } + +} //FromLawImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Habitual_AddressImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Habitual_AddressImpl.java new file mode 100644 index 00000000..97673402 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Habitual_AddressImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Habitual_Address; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Habitual Address'. + * + * + * @generated + */ +public class Habitual_AddressImpl extends AddressImpl implements Habitual_Address { + /** + * + * + * @generated + */ + protected Habitual_AddressImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.HABITUAL_ADDRESS; + } + +} //Habitual_AddressImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Health_and_Pension_InsuranceImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Health_and_Pension_InsuranceImpl.java new file mode 100644 index 00000000..1ea4d463 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Health_and_Pension_InsuranceImpl.java @@ -0,0 +1,221 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Category_of_Health_and_Pension_Insurances; +import TaxationWithRoot.Health_and_Pension_Insurance; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Health and Pension Insurance'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.Health_and_Pension_InsuranceImpl#getCategory Category}
            • + *
            • {@link TaxationWithRoot.impl.Health_and_Pension_InsuranceImpl#isIs_related_to_additional_salary Is related to additional salary}
            • + *
            + * + * @generated + */ +public class Health_and_Pension_InsuranceImpl extends Special_Expense_DSImpl implements Health_and_Pension_Insurance { + /** + * The default value of the '{@link #getCategory() Category}' attribute. + * + * + * @see #getCategory() + * @generated + * @ordered + */ + protected static final Category_of_Health_and_Pension_Insurances CATEGORY_EDEFAULT = Category_of_Health_and_Pension_Insurances.MANDATORY_HEALTH_AND_PENSION_INSURANCE; + + /** + * The cached value of the '{@link #getCategory() Category}' attribute. + * + * + * @see #getCategory() + * @generated + * @ordered + */ + protected Category_of_Health_and_Pension_Insurances category = CATEGORY_EDEFAULT; + + /** + * The default value of the '{@link #isIs_related_to_additional_salary() Is related to additional salary}' attribute. + * + * + * @see #isIs_related_to_additional_salary() + * @generated + * @ordered + */ + protected static final boolean IS_RELATED_TO_ADDITIONAL_SALARY_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_related_to_additional_salary() Is related to additional salary}' attribute. + * + * + * @see #isIs_related_to_additional_salary() + * @generated + * @ordered + */ + protected boolean is_related_to_additional_salary = IS_RELATED_TO_ADDITIONAL_SALARY_EDEFAULT; + + /** + * + * + * @generated + */ + protected Health_and_Pension_InsuranceImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.HEALTH_AND_PENSION_INSURANCE; + } + + /** + * + * + * @generated + */ + @Override + public Category_of_Health_and_Pension_Insurances getCategory() { + return category; + } + + /** + * + * + * @generated + */ + @Override + public void setCategory(Category_of_Health_and_Pension_Insurances newCategory) { + Category_of_Health_and_Pension_Insurances oldCategory = category; + category = newCategory == null ? CATEGORY_EDEFAULT : newCategory; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.HEALTH_AND_PENSION_INSURANCE__CATEGORY, oldCategory, category)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_related_to_additional_salary() { + return is_related_to_additional_salary; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_related_to_additional_salary(boolean newIs_related_to_additional_salary) { + boolean oldIs_related_to_additional_salary = is_related_to_additional_salary; + is_related_to_additional_salary = newIs_related_to_additional_salary; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.HEALTH_AND_PENSION_INSURANCE__IS_RELATED_TO_ADDITIONAL_SALARY, oldIs_related_to_additional_salary, is_related_to_additional_salary)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE__CATEGORY: + return getCategory(); + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE__IS_RELATED_TO_ADDITIONAL_SALARY: + return isIs_related_to_additional_salary(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE__CATEGORY: + setCategory((Category_of_Health_and_Pension_Insurances)newValue); + return; + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE__IS_RELATED_TO_ADDITIONAL_SALARY: + setIs_related_to_additional_salary((Boolean)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE__CATEGORY: + setCategory(CATEGORY_EDEFAULT); + return; + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE__IS_RELATED_TO_ADDITIONAL_SALARY: + setIs_related_to_additional_salary(IS_RELATED_TO_ADDITIONAL_SALARY_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE__CATEGORY: + return category != CATEGORY_EDEFAULT; + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE__IS_RELATED_TO_ADDITIONAL_SALARY: + return is_related_to_additional_salary != IS_RELATED_TO_ADDITIONAL_SALARY_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (category: "); + result.append(category); + result.append(", is_related_to_additional_salary: "); + result.append(is_related_to_additional_salary); + result.append(')'); + return result.toString(); + } + +} //Health_and_Pension_InsuranceImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/HouseholdImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/HouseholdImpl.java new file mode 100644 index 00000000..770bb5e0 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/HouseholdImpl.java @@ -0,0 +1,311 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Dependent; +import TaxationWithRoot.Household; +import TaxationWithRoot.Legal_Union_Record; +import TaxationWithRoot.TaxationPackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'Household'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.HouseholdImpl#getParents Parents}
            • + *
            • {@link TaxationWithRoot.impl.HouseholdImpl#getId1 Id1}
            • + *
            • {@link TaxationWithRoot.impl.HouseholdImpl#getChildren Children}
            • + *
            + * + * @generated + */ +public class HouseholdImpl extends RootImpl implements Household { + /** + * The cached value of the '{@link #getParents() Parents}' containment reference. + * + * + * @see #getParents() + * @generated + * @ordered + */ + protected Legal_Union_Record parents; + + /** + * The default value of the '{@link #getId1() Id1}' attribute. + * + * + * @see #getId1() + * @generated + * @ordered + */ + protected static final String ID1_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId1() Id1}' attribute. + * + * + * @see #getId1() + * @generated + * @ordered + */ + protected String id1 = ID1_EDEFAULT; + + /** + * The cached value of the '{@link #getChildren() Children}' containment reference list. + * + * + * @see #getChildren() + * @generated + * @ordered + */ + protected EList children; + + /** + * + * + * @generated + */ + protected HouseholdImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.HOUSEHOLD; + } + + /** + * + * + * @generated + */ + @Override + public Legal_Union_Record getParents() { + return parents; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetParents(Legal_Union_Record newParents, NotificationChain msgs) { + Legal_Union_Record oldParents = parents; + parents = newParents; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.HOUSEHOLD__PARENTS, oldParents, newParents); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setParents(Legal_Union_Record newParents) { + if (newParents != parents) { + NotificationChain msgs = null; + if (parents != null) + msgs = ((InternalEObject)parents).eInverseRemove(this, TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD, Legal_Union_Record.class, msgs); + if (newParents != null) + msgs = ((InternalEObject)newParents).eInverseAdd(this, TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD, Legal_Union_Record.class, msgs); + msgs = basicSetParents(newParents, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.HOUSEHOLD__PARENTS, newParents, newParents)); + } + + /** + * + * + * @generated + */ + @Override + public String getId1() { + return id1; + } + + /** + * + * + * @generated + */ + @Override + public void setId1(String newId1) { + String oldId1 = id1; + id1 = newId1; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.HOUSEHOLD__ID1, oldId1, id1)); + } + + /** + * + * + * @generated + */ + @Override + public EList getChildren() { + if (children == null) { + children = new EObjectContainmentWithInverseEList(Dependent.class, this, TaxationPackage.HOUSEHOLD__CHILDREN, TaxationPackage.DEPENDENT__HOUSEHOLD); + } + return children; + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.HOUSEHOLD__PARENTS: + if (parents != null) + msgs = ((InternalEObject)parents).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - TaxationPackage.HOUSEHOLD__PARENTS, null, msgs); + return basicSetParents((Legal_Union_Record)otherEnd, msgs); + case TaxationPackage.HOUSEHOLD__CHILDREN: + return ((InternalEList)(InternalEList)getChildren()).basicAdd(otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.HOUSEHOLD__PARENTS: + return basicSetParents(null, msgs); + case TaxationPackage.HOUSEHOLD__CHILDREN: + return ((InternalEList)getChildren()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.HOUSEHOLD__PARENTS: + return getParents(); + case TaxationPackage.HOUSEHOLD__ID1: + return getId1(); + case TaxationPackage.HOUSEHOLD__CHILDREN: + return getChildren(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.HOUSEHOLD__PARENTS: + setParents((Legal_Union_Record)newValue); + return; + case TaxationPackage.HOUSEHOLD__ID1: + setId1((String)newValue); + return; + case TaxationPackage.HOUSEHOLD__CHILDREN: + getChildren().clear(); + getChildren().addAll((Collection)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.HOUSEHOLD__PARENTS: + setParents((Legal_Union_Record)null); + return; + case TaxationPackage.HOUSEHOLD__ID1: + setId1(ID1_EDEFAULT); + return; + case TaxationPackage.HOUSEHOLD__CHILDREN: + getChildren().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.HOUSEHOLD__PARENTS: + return parents != null; + case TaxationPackage.HOUSEHOLD__ID1: + return ID1_EDEFAULT == null ? id1 != null : !ID1_EDEFAULT.equals(id1); + case TaxationPackage.HOUSEHOLD__CHILDREN: + return children != null && !children.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (id1: "); + result.append(id1); + result.append(')'); + return result.toString(); + } + +} //HouseholdImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/IncomeImpl.java new file mode 100644 index 00000000..3e979e7a --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/IncomeImpl.java @@ -0,0 +1,614 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Expense; +import TaxationWithRoot.Income; +import TaxationWithRoot.Income_Detail; +import TaxationWithRoot.Income_Type; +import TaxationWithRoot.Tax_Card; +import TaxationWithRoot.Tax_Payer; +import TaxationWithRoot.TaxationPackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'Income'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.IncomeImpl#getIncome_amount Income amount}
            • + *
            • {@link TaxationWithRoot.impl.IncomeImpl#getIncome_type Income type}
            • + *
            • {@link TaxationWithRoot.impl.IncomeImpl#getTax_card Tax card}
            • + *
            • {@link TaxationWithRoot.impl.IncomeImpl#getTax_liability Tax liability}
            • + *
            • {@link TaxationWithRoot.impl.IncomeImpl#getTaxPayer Tax Payer}
            • + *
            • {@link TaxationWithRoot.impl.IncomeImpl#getDetails Details}
            • + *
            • {@link TaxationWithRoot.impl.IncomeImpl#getNum Num}
            • + *
            • {@link TaxationWithRoot.impl.IncomeImpl#getExpenses Expenses}
            • + *
            + * + * @generated + */ +public abstract class IncomeImpl extends MinimalEObjectImpl.Container implements Income { + /** + * The default value of the '{@link #getIncome_amount() Income amount}' attribute. + * + * + * @see #getIncome_amount() + * @generated + * @ordered + */ + protected static final double INCOME_AMOUNT_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getIncome_amount() Income amount}' attribute. + * + * + * @see #getIncome_amount() + * @generated + * @ordered + */ + protected double income_amount = INCOME_AMOUNT_EDEFAULT; + + /** + * The cached value of the '{@link #getIncome_type() Income type}' containment reference. + * + * + * @see #getIncome_type() + * @generated + * @ordered + */ + protected Income_Type income_type; + + /** + * The cached value of the '{@link #getTax_card() Tax card}' containment reference. + * + * + * @see #getTax_card() + * @generated + * @ordered + */ + protected Tax_Card tax_card; + + /** + * The default value of the '{@link #getTax_liability() Tax liability}' attribute. + * + * + * @see #getTax_liability() + * @generated + * @ordered + */ + protected static final double TAX_LIABILITY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getTax_liability() Tax liability}' attribute. + * + * + * @see #getTax_liability() + * @generated + * @ordered + */ + protected double tax_liability = TAX_LIABILITY_EDEFAULT; + + /** + * The cached value of the '{@link #getDetails() Details}' containment reference list. + * + * + * @see #getDetails() + * @generated + * @ordered + */ + protected EList details; + + /** + * The default value of the '{@link #getNum() Num}' attribute. + * + * + * @see #getNum() + * @generated + * @ordered + */ + protected static final int NUM_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getNum() Num}' attribute. + * + * + * @see #getNum() + * @generated + * @ordered + */ + protected int num = NUM_EDEFAULT; + + /** + * The cached value of the '{@link #getExpenses() Expenses}' containment reference list. + * + * + * @see #getExpenses() + * @generated + * @ordered + */ + protected EList expenses; + + /** + * + * + * @generated + */ + protected IncomeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.INCOME; + } + + /** + * + * + * @generated + */ + @Override + public double getIncome_amount() { + return income_amount; + } + + /** + * + * + * @generated + */ + @Override + public void setIncome_amount(double newIncome_amount) { + double oldIncome_amount = income_amount; + income_amount = newIncome_amount; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__INCOME_AMOUNT, oldIncome_amount, income_amount)); + } + + /** + * + * + * @generated + */ + @Override + public Income_Type getIncome_type() { + return income_type; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetIncome_type(Income_Type newIncome_type, NotificationChain msgs) { + Income_Type oldIncome_type = income_type; + income_type = newIncome_type; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__INCOME_TYPE, oldIncome_type, newIncome_type); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setIncome_type(Income_Type newIncome_type) { + if (newIncome_type != income_type) { + NotificationChain msgs = null; + if (income_type != null) + msgs = ((InternalEObject)income_type).eInverseRemove(this, TaxationPackage.INCOME_TYPE__INCOME, Income_Type.class, msgs); + if (newIncome_type != null) + msgs = ((InternalEObject)newIncome_type).eInverseAdd(this, TaxationPackage.INCOME_TYPE__INCOME, Income_Type.class, msgs); + msgs = basicSetIncome_type(newIncome_type, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__INCOME_TYPE, newIncome_type, newIncome_type)); + } + + /** + * + * + * @generated + */ + @Override + public Tax_Card getTax_card() { + return tax_card; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetTax_card(Tax_Card newTax_card, NotificationChain msgs) { + Tax_Card oldTax_card = tax_card; + tax_card = newTax_card; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__TAX_CARD, oldTax_card, newTax_card); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setTax_card(Tax_Card newTax_card) { + if (newTax_card != tax_card) { + NotificationChain msgs = null; + if (tax_card != null) + msgs = ((InternalEObject)tax_card).eInverseRemove(this, TaxationPackage.TAX_CARD__INCOME, Tax_Card.class, msgs); + if (newTax_card != null) + msgs = ((InternalEObject)newTax_card).eInverseAdd(this, TaxationPackage.TAX_CARD__INCOME, Tax_Card.class, msgs); + msgs = basicSetTax_card(newTax_card, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__TAX_CARD, newTax_card, newTax_card)); + } + + /** + * + * + * @generated + */ + @Override + public double getTax_liability() { + return tax_liability; + } + + /** + * + * + * @generated + */ + @Override + public void setTax_liability(double newTax_liability) { + double oldTax_liability = tax_liability; + tax_liability = newTax_liability; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__TAX_LIABILITY, oldTax_liability, tax_liability)); + } + + /** + * + * + * @generated + */ + @Override + public Tax_Payer getTaxPayer() { + if (eContainerFeatureID() != TaxationPackage.INCOME__TAX_PAYER) return null; + return (Tax_Payer)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetTaxPayer(Tax_Payer newTaxPayer, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newTaxPayer, TaxationPackage.INCOME__TAX_PAYER, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setTaxPayer(Tax_Payer newTaxPayer) { + if (newTaxPayer != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.INCOME__TAX_PAYER && newTaxPayer != null)) { + if (EcoreUtil.isAncestor(this, newTaxPayer)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newTaxPayer != null) + msgs = ((InternalEObject)newTaxPayer).eInverseAdd(this, TaxationPackage.TAX_PAYER__INCOMES, Tax_Payer.class, msgs); + msgs = basicSetTaxPayer(newTaxPayer, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__TAX_PAYER, newTaxPayer, newTaxPayer)); + } + + /** + * + * + * @generated + */ + @Override + public EList getDetails() { + if (details == null) { + details = new EObjectContainmentWithInverseEList(Income_Detail.class, this, TaxationPackage.INCOME__DETAILS, TaxationPackage.INCOME_DETAIL__INCOME); + } + return details; + } + + /** + * + * + * @generated + */ + @Override + public int getNum() { + return num; + } + + /** + * + * + * @generated + */ + @Override + public void setNum(int newNum) { + int oldNum = num; + num = newNum; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME__NUM, oldNum, num)); + } + + /** + * + * + * @generated + */ + @Override + public EList getExpenses() { + if (expenses == null) { + expenses = new EObjectContainmentWithInverseEList(Expense.class, this, TaxationPackage.INCOME__EXPENSES, TaxationPackage.EXPENSE__INCOME); + } + return expenses; + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.INCOME__INCOME_TYPE: + if (income_type != null) + msgs = ((InternalEObject)income_type).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - TaxationPackage.INCOME__INCOME_TYPE, null, msgs); + return basicSetIncome_type((Income_Type)otherEnd, msgs); + case TaxationPackage.INCOME__TAX_CARD: + if (tax_card != null) + msgs = ((InternalEObject)tax_card).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - TaxationPackage.INCOME__TAX_CARD, null, msgs); + return basicSetTax_card((Tax_Card)otherEnd, msgs); + case TaxationPackage.INCOME__TAX_PAYER: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetTaxPayer((Tax_Payer)otherEnd, msgs); + case TaxationPackage.INCOME__DETAILS: + return ((InternalEList)(InternalEList)getDetails()).basicAdd(otherEnd, msgs); + case TaxationPackage.INCOME__EXPENSES: + return ((InternalEList)(InternalEList)getExpenses()).basicAdd(otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.INCOME__INCOME_TYPE: + return basicSetIncome_type(null, msgs); + case TaxationPackage.INCOME__TAX_CARD: + return basicSetTax_card(null, msgs); + case TaxationPackage.INCOME__TAX_PAYER: + return basicSetTaxPayer(null, msgs); + case TaxationPackage.INCOME__DETAILS: + return ((InternalEList)getDetails()).basicRemove(otherEnd, msgs); + case TaxationPackage.INCOME__EXPENSES: + return ((InternalEList)getExpenses()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.INCOME__TAX_PAYER: + return eInternalContainer().eInverseRemove(this, TaxationPackage.TAX_PAYER__INCOMES, Tax_Payer.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.INCOME__INCOME_AMOUNT: + return getIncome_amount(); + case TaxationPackage.INCOME__INCOME_TYPE: + return getIncome_type(); + case TaxationPackage.INCOME__TAX_CARD: + return getTax_card(); + case TaxationPackage.INCOME__TAX_LIABILITY: + return getTax_liability(); + case TaxationPackage.INCOME__TAX_PAYER: + return getTaxPayer(); + case TaxationPackage.INCOME__DETAILS: + return getDetails(); + case TaxationPackage.INCOME__NUM: + return getNum(); + case TaxationPackage.INCOME__EXPENSES: + return getExpenses(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.INCOME__INCOME_AMOUNT: + setIncome_amount((Double)newValue); + return; + case TaxationPackage.INCOME__INCOME_TYPE: + setIncome_type((Income_Type)newValue); + return; + case TaxationPackage.INCOME__TAX_CARD: + setTax_card((Tax_Card)newValue); + return; + case TaxationPackage.INCOME__TAX_LIABILITY: + setTax_liability((Double)newValue); + return; + case TaxationPackage.INCOME__TAX_PAYER: + setTaxPayer((Tax_Payer)newValue); + return; + case TaxationPackage.INCOME__DETAILS: + getDetails().clear(); + getDetails().addAll((Collection)newValue); + return; + case TaxationPackage.INCOME__NUM: + setNum((Integer)newValue); + return; + case TaxationPackage.INCOME__EXPENSES: + getExpenses().clear(); + getExpenses().addAll((Collection)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME__INCOME_AMOUNT: + setIncome_amount(INCOME_AMOUNT_EDEFAULT); + return; + case TaxationPackage.INCOME__INCOME_TYPE: + setIncome_type((Income_Type)null); + return; + case TaxationPackage.INCOME__TAX_CARD: + setTax_card((Tax_Card)null); + return; + case TaxationPackage.INCOME__TAX_LIABILITY: + setTax_liability(TAX_LIABILITY_EDEFAULT); + return; + case TaxationPackage.INCOME__TAX_PAYER: + setTaxPayer((Tax_Payer)null); + return; + case TaxationPackage.INCOME__DETAILS: + getDetails().clear(); + return; + case TaxationPackage.INCOME__NUM: + setNum(NUM_EDEFAULT); + return; + case TaxationPackage.INCOME__EXPENSES: + getExpenses().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME__INCOME_AMOUNT: + return income_amount != INCOME_AMOUNT_EDEFAULT; + case TaxationPackage.INCOME__INCOME_TYPE: + return income_type != null; + case TaxationPackage.INCOME__TAX_CARD: + return tax_card != null; + case TaxationPackage.INCOME__TAX_LIABILITY: + return tax_liability != TAX_LIABILITY_EDEFAULT; + case TaxationPackage.INCOME__TAX_PAYER: + return getTaxPayer() != null; + case TaxationPackage.INCOME__DETAILS: + return details != null && !details.isEmpty(); + case TaxationPackage.INCOME__NUM: + return num != NUM_EDEFAULT; + case TaxationPackage.INCOME__EXPENSES: + return expenses != null && !expenses.isEmpty(); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (income_amount: "); + result.append(income_amount); + result.append(", tax_liability: "); + result.append(tax_liability); + result.append(", num: "); + result.append(num); + result.append(')'); + return result.toString(); + } + +} //IncomeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_DetailImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_DetailImpl.java new file mode 100644 index 00000000..572f61a4 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_DetailImpl.java @@ -0,0 +1,548 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Income; +import TaxationWithRoot.Income_Detail; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EcoreUtil; + +/** + * + * An implementation of the model object 'Income Detail'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.Income_DetailImpl#getAmount Amount}
            • + *
            • {@link TaxationWithRoot.impl.Income_DetailImpl#isIs_worked Is worked}
            • + *
            • {@link TaxationWithRoot.impl.Income_DetailImpl#getDistance Distance}
            • + *
            • {@link TaxationWithRoot.impl.Income_DetailImpl#getWorked_days Worked days}
            • + *
            • {@link TaxationWithRoot.impl.Income_DetailImpl#isIs_contributing_CNS Is contributing CNS}
            • + *
            • {@link TaxationWithRoot.impl.Income_DetailImpl#getId5 Id5}
            • + *
            • {@link TaxationWithRoot.impl.Income_DetailImpl#getIncome Income}
            • + *
            + * + * @generated + */ +public class Income_DetailImpl extends MinimalEObjectImpl.Container implements Income_Detail { + /** + * The default value of the '{@link #getAmount() Amount}' attribute. + * + * + * @see #getAmount() + * @generated + * @ordered + */ + protected static final double AMOUNT_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getAmount() Amount}' attribute. + * + * + * @see #getAmount() + * @generated + * @ordered + */ + protected double amount = AMOUNT_EDEFAULT; + + /** + * The default value of the '{@link #isIs_worked() Is worked}' attribute. + * + * + * @see #isIs_worked() + * @generated + * @ordered + */ + protected static final boolean IS_WORKED_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_worked() Is worked}' attribute. + * + * + * @see #isIs_worked() + * @generated + * @ordered + */ + protected boolean is_worked = IS_WORKED_EDEFAULT; + + /** + * The default value of the '{@link #getDistance() Distance}' attribute. + * + * + * @see #getDistance() + * @generated + * @ordered + */ + protected static final double DISTANCE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDistance() Distance}' attribute. + * + * + * @see #getDistance() + * @generated + * @ordered + */ + protected double distance = DISTANCE_EDEFAULT; + + /** + * The default value of the '{@link #getWorked_days() Worked days}' attribute. + * + * + * @see #getWorked_days() + * @generated + * @ordered + */ + protected static final int WORKED_DAYS_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getWorked_days() Worked days}' attribute. + * + * + * @see #getWorked_days() + * @generated + * @ordered + */ + protected int worked_days = WORKED_DAYS_EDEFAULT; + + /** + * The default value of the '{@link #isIs_contributing_CNS() Is contributing CNS}' attribute. + * + * + * @see #isIs_contributing_CNS() + * @generated + * @ordered + */ + protected static final boolean IS_CONTRIBUTING_CNS_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_contributing_CNS() Is contributing CNS}' attribute. + * + * + * @see #isIs_contributing_CNS() + * @generated + * @ordered + */ + protected boolean is_contributing_CNS = IS_CONTRIBUTING_CNS_EDEFAULT; + + /** + * The default value of the '{@link #getId5() Id5}' attribute. + * + * + * @see #getId5() + * @generated + * @ordered + */ + protected static final String ID5_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId5() Id5}' attribute. + * + * + * @see #getId5() + * @generated + * @ordered + */ + protected String id5 = ID5_EDEFAULT; + + /** + * + * + * @generated + */ + protected Income_DetailImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.INCOME_DETAIL; + } + + /** + * + * + * @generated + */ + @Override + public double getAmount() { + return amount; + } + + /** + * + * + * @generated + */ + @Override + public void setAmount(double newAmount) { + double oldAmount = amount; + amount = newAmount; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_DETAIL__AMOUNT, oldAmount, amount)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_worked() { + return is_worked; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_worked(boolean newIs_worked) { + boolean oldIs_worked = is_worked; + is_worked = newIs_worked; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_DETAIL__IS_WORKED, oldIs_worked, is_worked)); + } + + /** + * + * + * @generated + */ + @Override + public double getDistance() { + return distance; + } + + /** + * + * + * @generated + */ + @Override + public void setDistance(double newDistance) { + double oldDistance = distance; + distance = newDistance; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_DETAIL__DISTANCE, oldDistance, distance)); + } + + /** + * + * + * @generated + */ + @Override + public int getWorked_days() { + return worked_days; + } + + /** + * + * + * @generated + */ + @Override + public void setWorked_days(int newWorked_days) { + int oldWorked_days = worked_days; + worked_days = newWorked_days; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_DETAIL__WORKED_DAYS, oldWorked_days, worked_days)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_contributing_CNS() { + return is_contributing_CNS; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_contributing_CNS(boolean newIs_contributing_CNS) { + boolean oldIs_contributing_CNS = is_contributing_CNS; + is_contributing_CNS = newIs_contributing_CNS; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_DETAIL__IS_CONTRIBUTING_CNS, oldIs_contributing_CNS, is_contributing_CNS)); + } + + /** + * + * + * @generated + */ + @Override + public String getId5() { + return id5; + } + + /** + * + * + * @generated + */ + @Override + public void setId5(String newId5) { + String oldId5 = id5; + id5 = newId5; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_DETAIL__ID5, oldId5, id5)); + } + + /** + * + * + * @generated + */ + @Override + public Income getIncome() { + if (eContainerFeatureID() != TaxationPackage.INCOME_DETAIL__INCOME) return null; + return (Income)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetIncome(Income newIncome, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newIncome, TaxationPackage.INCOME_DETAIL__INCOME, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setIncome(Income newIncome) { + if (newIncome != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.INCOME_DETAIL__INCOME && newIncome != null)) { + if (EcoreUtil.isAncestor(this, newIncome)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newIncome != null) + msgs = ((InternalEObject)newIncome).eInverseAdd(this, TaxationPackage.INCOME__DETAILS, Income.class, msgs); + msgs = basicSetIncome(newIncome, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_DETAIL__INCOME, newIncome, newIncome)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.INCOME_DETAIL__INCOME: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetIncome((Income)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.INCOME_DETAIL__INCOME: + return basicSetIncome(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.INCOME_DETAIL__INCOME: + return eInternalContainer().eInverseRemove(this, TaxationPackage.INCOME__DETAILS, Income.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.INCOME_DETAIL__AMOUNT: + return getAmount(); + case TaxationPackage.INCOME_DETAIL__IS_WORKED: + return isIs_worked(); + case TaxationPackage.INCOME_DETAIL__DISTANCE: + return getDistance(); + case TaxationPackage.INCOME_DETAIL__WORKED_DAYS: + return getWorked_days(); + case TaxationPackage.INCOME_DETAIL__IS_CONTRIBUTING_CNS: + return isIs_contributing_CNS(); + case TaxationPackage.INCOME_DETAIL__ID5: + return getId5(); + case TaxationPackage.INCOME_DETAIL__INCOME: + return getIncome(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.INCOME_DETAIL__AMOUNT: + setAmount((Double)newValue); + return; + case TaxationPackage.INCOME_DETAIL__IS_WORKED: + setIs_worked((Boolean)newValue); + return; + case TaxationPackage.INCOME_DETAIL__DISTANCE: + setDistance((Double)newValue); + return; + case TaxationPackage.INCOME_DETAIL__WORKED_DAYS: + setWorked_days((Integer)newValue); + return; + case TaxationPackage.INCOME_DETAIL__IS_CONTRIBUTING_CNS: + setIs_contributing_CNS((Boolean)newValue); + return; + case TaxationPackage.INCOME_DETAIL__ID5: + setId5((String)newValue); + return; + case TaxationPackage.INCOME_DETAIL__INCOME: + setIncome((Income)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME_DETAIL__AMOUNT: + setAmount(AMOUNT_EDEFAULT); + return; + case TaxationPackage.INCOME_DETAIL__IS_WORKED: + setIs_worked(IS_WORKED_EDEFAULT); + return; + case TaxationPackage.INCOME_DETAIL__DISTANCE: + setDistance(DISTANCE_EDEFAULT); + return; + case TaxationPackage.INCOME_DETAIL__WORKED_DAYS: + setWorked_days(WORKED_DAYS_EDEFAULT); + return; + case TaxationPackage.INCOME_DETAIL__IS_CONTRIBUTING_CNS: + setIs_contributing_CNS(IS_CONTRIBUTING_CNS_EDEFAULT); + return; + case TaxationPackage.INCOME_DETAIL__ID5: + setId5(ID5_EDEFAULT); + return; + case TaxationPackage.INCOME_DETAIL__INCOME: + setIncome((Income)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME_DETAIL__AMOUNT: + return amount != AMOUNT_EDEFAULT; + case TaxationPackage.INCOME_DETAIL__IS_WORKED: + return is_worked != IS_WORKED_EDEFAULT; + case TaxationPackage.INCOME_DETAIL__DISTANCE: + return distance != DISTANCE_EDEFAULT; + case TaxationPackage.INCOME_DETAIL__WORKED_DAYS: + return worked_days != WORKED_DAYS_EDEFAULT; + case TaxationPackage.INCOME_DETAIL__IS_CONTRIBUTING_CNS: + return is_contributing_CNS != IS_CONTRIBUTING_CNS_EDEFAULT; + case TaxationPackage.INCOME_DETAIL__ID5: + return ID5_EDEFAULT == null ? id5 != null : !ID5_EDEFAULT.equals(id5); + case TaxationPackage.INCOME_DETAIL__INCOME: + return getIncome() != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (amount: "); + result.append(amount); + result.append(", is_worked: "); + result.append(is_worked); + result.append(", distance: "); + result.append(distance); + result.append(", worked_days: "); + result.append(worked_days); + result.append(", is_contributing_CNS: "); + result.append(is_contributing_CNS); + result.append(", id5: "); + result.append(id5); + result.append(')'); + return result.toString(); + } + +} //Income_DetailImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_TaxImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_TaxImpl.java new file mode 100644 index 00000000..6f9b0f0d --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_TaxImpl.java @@ -0,0 +1,341 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Income_Tax; +import TaxationWithRoot.Tax_Payer; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * + * An implementation of the model object 'Income Tax'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.Income_TaxImpl#getTaxPayer Tax Payer}
            • + *
            • {@link TaxationWithRoot.impl.Income_TaxImpl#getTax_amount Tax amount}
            • + *
            • {@link TaxationWithRoot.impl.Income_TaxImpl#getTax_year Tax year}
            • + *
            • {@link TaxationWithRoot.impl.Income_TaxImpl#getId6 Id6}
            • + *
            + * + * @generated + */ +public class Income_TaxImpl extends MinimalEObjectImpl.Container implements Income_Tax { + /** + * The cached value of the '{@link #getTaxPayer() Tax Payer}' reference. + * + * + * @see #getTaxPayer() + * @generated + * @ordered + */ + protected Tax_Payer taxPayer; + + /** + * The default value of the '{@link #getTax_amount() Tax amount}' attribute. + * + * + * @see #getTax_amount() + * @generated + * @ordered + */ + protected static final double TAX_AMOUNT_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getTax_amount() Tax amount}' attribute. + * + * + * @see #getTax_amount() + * @generated + * @ordered + */ + protected double tax_amount = TAX_AMOUNT_EDEFAULT; + + /** + * The default value of the '{@link #getTax_year() Tax year}' attribute. + * + * + * @see #getTax_year() + * @generated + * @ordered + */ + protected static final int TAX_YEAR_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getTax_year() Tax year}' attribute. + * + * + * @see #getTax_year() + * @generated + * @ordered + */ + protected int tax_year = TAX_YEAR_EDEFAULT; + + /** + * The default value of the '{@link #getId6() Id6}' attribute. + * + * + * @see #getId6() + * @generated + * @ordered + */ + protected static final String ID6_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId6() Id6}' attribute. + * + * + * @see #getId6() + * @generated + * @ordered + */ + protected String id6 = ID6_EDEFAULT; + + /** + * + * + * @generated + */ + protected Income_TaxImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.INCOME_TAX; + } + + /** + * + * + * @generated + */ + @Override + public Tax_Payer getTaxPayer() { + if (taxPayer != null && taxPayer.eIsProxy()) { + InternalEObject oldTaxPayer = (InternalEObject)taxPayer; + taxPayer = (Tax_Payer)eResolveProxy(oldTaxPayer); + if (taxPayer != oldTaxPayer) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.INCOME_TAX__TAX_PAYER, oldTaxPayer, taxPayer)); + } + } + return taxPayer; + } + + /** + * + * + * @generated + */ + public Tax_Payer basicGetTaxPayer() { + return taxPayer; + } + + /** + * + * + * @generated + */ + @Override + public void setTaxPayer(Tax_Payer newTaxPayer) { + Tax_Payer oldTaxPayer = taxPayer; + taxPayer = newTaxPayer; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX__TAX_PAYER, oldTaxPayer, taxPayer)); + } + + /** + * + * + * @generated + */ + @Override + public double getTax_amount() { + return tax_amount; + } + + /** + * + * + * @generated + */ + @Override + public void setTax_amount(double newTax_amount) { + double oldTax_amount = tax_amount; + tax_amount = newTax_amount; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX__TAX_AMOUNT, oldTax_amount, tax_amount)); + } + + /** + * + * + * @generated + */ + @Override + public int getTax_year() { + return tax_year; + } + + /** + * + * + * @generated + */ + @Override + public void setTax_year(int newTax_year) { + int oldTax_year = tax_year; + tax_year = newTax_year; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX__TAX_YEAR, oldTax_year, tax_year)); + } + + /** + * + * + * @generated + */ + @Override + public String getId6() { + return id6; + } + + /** + * + * + * @generated + */ + @Override + public void setId6(String newId6) { + String oldId6 = id6; + id6 = newId6; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX__ID6, oldId6, id6)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.INCOME_TAX__TAX_PAYER: + if (resolve) return getTaxPayer(); + return basicGetTaxPayer(); + case TaxationPackage.INCOME_TAX__TAX_AMOUNT: + return getTax_amount(); + case TaxationPackage.INCOME_TAX__TAX_YEAR: + return getTax_year(); + case TaxationPackage.INCOME_TAX__ID6: + return getId6(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.INCOME_TAX__TAX_PAYER: + setTaxPayer((Tax_Payer)newValue); + return; + case TaxationPackage.INCOME_TAX__TAX_AMOUNT: + setTax_amount((Double)newValue); + return; + case TaxationPackage.INCOME_TAX__TAX_YEAR: + setTax_year((Integer)newValue); + return; + case TaxationPackage.INCOME_TAX__ID6: + setId6((String)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME_TAX__TAX_PAYER: + setTaxPayer((Tax_Payer)null); + return; + case TaxationPackage.INCOME_TAX__TAX_AMOUNT: + setTax_amount(TAX_AMOUNT_EDEFAULT); + return; + case TaxationPackage.INCOME_TAX__TAX_YEAR: + setTax_year(TAX_YEAR_EDEFAULT); + return; + case TaxationPackage.INCOME_TAX__ID6: + setId6(ID6_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME_TAX__TAX_PAYER: + return taxPayer != null; + case TaxationPackage.INCOME_TAX__TAX_AMOUNT: + return tax_amount != TAX_AMOUNT_EDEFAULT; + case TaxationPackage.INCOME_TAX__TAX_YEAR: + return tax_year != TAX_YEAR_EDEFAULT; + case TaxationPackage.INCOME_TAX__ID6: + return ID6_EDEFAULT == null ? id6 != null : !ID6_EDEFAULT.equals(id6); + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (tax_amount: "); + result.append(tax_amount); + result.append(", tax_year: "); + result.append(tax_year); + result.append(", id6: "); + result.append(id6); + result.append(')'); + return result.toString(); + } + +} //Income_TaxImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_Tax_CreditImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_Tax_CreditImpl.java new file mode 100644 index 00000000..308a8f01 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_Tax_CreditImpl.java @@ -0,0 +1,625 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Grantor; +import TaxationWithRoot.Income_Tax_Credit; +import TaxationWithRoot.Tax_Card; +import TaxationWithRoot.Tax_Payer; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Income Tax Credit'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.Income_Tax_CreditImpl#getGrantedBy Granted By}
            • + *
            • {@link TaxationWithRoot.impl.Income_Tax_CreditImpl#getTaxPayer Tax Payer}
            • + *
            • {@link TaxationWithRoot.impl.Income_Tax_CreditImpl#getTax_year Tax year}
            • + *
            • {@link TaxationWithRoot.impl.Income_Tax_CreditImpl#getYearly Yearly}
            • + *
            • {@link TaxationWithRoot.impl.Income_Tax_CreditImpl#getMonthly Monthly}
            • + *
            • {@link TaxationWithRoot.impl.Income_Tax_CreditImpl#getDaily Daily}
            • + *
            • {@link TaxationWithRoot.impl.Income_Tax_CreditImpl#getId7 Id7}
            • + *
            • {@link TaxationWithRoot.impl.Income_Tax_CreditImpl#getTaxation_Frame Taxation Frame}
            • + *
            + * + * @generated + */ +public class Income_Tax_CreditImpl extends RootImpl implements Income_Tax_Credit { + /** + * The default value of the '{@link #getGrantedBy() Granted By}' attribute. + * + * + * @see #getGrantedBy() + * @generated + * @ordered + */ + protected static final Grantor GRANTED_BY_EDEFAULT = Grantor.WWW; + + /** + * The cached value of the '{@link #getGrantedBy() Granted By}' attribute. + * + * + * @see #getGrantedBy() + * @generated + * @ordered + */ + protected Grantor grantedBy = GRANTED_BY_EDEFAULT; + + /** + * The cached value of the '{@link #getTaxPayer() Tax Payer}' reference. + * + * + * @see #getTaxPayer() + * @generated + * @ordered + */ + protected Tax_Payer taxPayer; + + /** + * The default value of the '{@link #getTax_year() Tax year}' attribute. + * + * + * @see #getTax_year() + * @generated + * @ordered + */ + protected static final int TAX_YEAR_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getTax_year() Tax year}' attribute. + * + * + * @see #getTax_year() + * @generated + * @ordered + */ + protected int tax_year = TAX_YEAR_EDEFAULT; + + /** + * The default value of the '{@link #getYearly() Yearly}' attribute. + * + * + * @see #getYearly() + * @generated + * @ordered + */ + protected static final double YEARLY_EDEFAULT = 300.0; + + /** + * The cached value of the '{@link #getYearly() Yearly}' attribute. + * + * + * @see #getYearly() + * @generated + * @ordered + */ + protected double yearly = YEARLY_EDEFAULT; + + /** + * The default value of the '{@link #getMonthly() Monthly}' attribute. + * + * + * @see #getMonthly() + * @generated + * @ordered + */ + protected static final double MONTHLY_EDEFAULT = 25.0; + + /** + * The cached value of the '{@link #getMonthly() Monthly}' attribute. + * + * + * @see #getMonthly() + * @generated + * @ordered + */ + protected double monthly = MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getDaily() Daily}' attribute. + * + * + * @see #getDaily() + * @generated + * @ordered + */ + protected static final double DAILY_EDEFAULT = 1.0; + + /** + * The cached value of the '{@link #getDaily() Daily}' attribute. + * + * + * @see #getDaily() + * @generated + * @ordered + */ + protected double daily = DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getId7() Id7}' attribute. + * + * + * @see #getId7() + * @generated + * @ordered + */ + protected static final String ID7_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId7() Id7}' attribute. + * + * + * @see #getId7() + * @generated + * @ordered + */ + protected String id7 = ID7_EDEFAULT; + + /** + * The cached value of the '{@link #getTaxation_Frame() Taxation Frame}' reference. + * + * + * @see #getTaxation_Frame() + * @generated + * @ordered + */ + protected Tax_Card taxation_Frame; + + /** + * + * + * @generated + */ + protected Income_Tax_CreditImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.INCOME_TAX_CREDIT; + } + + /** + * + * + * @generated + */ + @Override + public Grantor getGrantedBy() { + return grantedBy; + } + + /** + * + * + * @generated + */ + @Override + public void setGrantedBy(Grantor newGrantedBy) { + Grantor oldGrantedBy = grantedBy; + grantedBy = newGrantedBy == null ? GRANTED_BY_EDEFAULT : newGrantedBy; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX_CREDIT__GRANTED_BY, oldGrantedBy, grantedBy)); + } + + /** + * + * + * @generated + */ + @Override + public Tax_Payer getTaxPayer() { + if (taxPayer != null && taxPayer.eIsProxy()) { + InternalEObject oldTaxPayer = (InternalEObject)taxPayer; + taxPayer = (Tax_Payer)eResolveProxy(oldTaxPayer); + if (taxPayer != oldTaxPayer) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.INCOME_TAX_CREDIT__TAX_PAYER, oldTaxPayer, taxPayer)); + } + } + return taxPayer; + } + + /** + * + * + * @generated + */ + public Tax_Payer basicGetTaxPayer() { + return taxPayer; + } + + /** + * + * + * @generated + */ + @Override + public void setTaxPayer(Tax_Payer newTaxPayer) { + Tax_Payer oldTaxPayer = taxPayer; + taxPayer = newTaxPayer; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX_CREDIT__TAX_PAYER, oldTaxPayer, taxPayer)); + } + + /** + * + * + * @generated + */ + @Override + public int getTax_year() { + return tax_year; + } + + /** + * + * + * @generated + */ + @Override + public void setTax_year(int newTax_year) { + int oldTax_year = tax_year; + tax_year = newTax_year; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX_CREDIT__TAX_YEAR, oldTax_year, tax_year)); + } + + /** + * + * + * @generated + */ + @Override + public double getYearly() { + return yearly; + } + + /** + * + * + * @generated + */ + @Override + public void setYearly(double newYearly) { + double oldYearly = yearly; + yearly = newYearly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX_CREDIT__YEARLY, oldYearly, yearly)); + } + + /** + * + * + * @generated + */ + @Override + public double getMonthly() { + return monthly; + } + + /** + * + * + * @generated + */ + @Override + public void setMonthly(double newMonthly) { + double oldMonthly = monthly; + monthly = newMonthly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX_CREDIT__MONTHLY, oldMonthly, monthly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDaily() { + return daily; + } + + /** + * + * + * @generated + */ + @Override + public void setDaily(double newDaily) { + double oldDaily = daily; + daily = newDaily; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX_CREDIT__DAILY, oldDaily, daily)); + } + + /** + * + * + * @generated + */ + @Override + public String getId7() { + return id7; + } + + /** + * + * + * @generated + */ + @Override + public void setId7(String newId7) { + String oldId7 = id7; + id7 = newId7; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX_CREDIT__ID7, oldId7, id7)); + } + + /** + * + * + * @generated + */ + @Override + public Tax_Card getTaxation_Frame() { + if (taxation_Frame != null && taxation_Frame.eIsProxy()) { + InternalEObject oldTaxation_Frame = (InternalEObject)taxation_Frame; + taxation_Frame = (Tax_Card)eResolveProxy(oldTaxation_Frame); + if (taxation_Frame != oldTaxation_Frame) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME, oldTaxation_Frame, taxation_Frame)); + } + } + return taxation_Frame; + } + + /** + * + * + * @generated + */ + public Tax_Card basicGetTaxation_Frame() { + return taxation_Frame; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetTaxation_Frame(Tax_Card newTaxation_Frame, NotificationChain msgs) { + Tax_Card oldTaxation_Frame = taxation_Frame; + taxation_Frame = newTaxation_Frame; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME, oldTaxation_Frame, newTaxation_Frame); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setTaxation_Frame(Tax_Card newTaxation_Frame) { + if (newTaxation_Frame != taxation_Frame) { + NotificationChain msgs = null; + if (taxation_Frame != null) + msgs = ((InternalEObject)taxation_Frame).eInverseRemove(this, TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT, Tax_Card.class, msgs); + if (newTaxation_Frame != null) + msgs = ((InternalEObject)newTaxation_Frame).eInverseAdd(this, TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT, Tax_Card.class, msgs); + msgs = basicSetTaxation_Frame(newTaxation_Frame, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME, newTaxation_Frame, newTaxation_Frame)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME: + if (taxation_Frame != null) + msgs = ((InternalEObject)taxation_Frame).eInverseRemove(this, TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT, Tax_Card.class, msgs); + return basicSetTaxation_Frame((Tax_Card)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME: + return basicSetTaxation_Frame(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.INCOME_TAX_CREDIT__GRANTED_BY: + return getGrantedBy(); + case TaxationPackage.INCOME_TAX_CREDIT__TAX_PAYER: + if (resolve) return getTaxPayer(); + return basicGetTaxPayer(); + case TaxationPackage.INCOME_TAX_CREDIT__TAX_YEAR: + return getTax_year(); + case TaxationPackage.INCOME_TAX_CREDIT__YEARLY: + return getYearly(); + case TaxationPackage.INCOME_TAX_CREDIT__MONTHLY: + return getMonthly(); + case TaxationPackage.INCOME_TAX_CREDIT__DAILY: + return getDaily(); + case TaxationPackage.INCOME_TAX_CREDIT__ID7: + return getId7(); + case TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME: + if (resolve) return getTaxation_Frame(); + return basicGetTaxation_Frame(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.INCOME_TAX_CREDIT__GRANTED_BY: + setGrantedBy((Grantor)newValue); + return; + case TaxationPackage.INCOME_TAX_CREDIT__TAX_PAYER: + setTaxPayer((Tax_Payer)newValue); + return; + case TaxationPackage.INCOME_TAX_CREDIT__TAX_YEAR: + setTax_year((Integer)newValue); + return; + case TaxationPackage.INCOME_TAX_CREDIT__YEARLY: + setYearly((Double)newValue); + return; + case TaxationPackage.INCOME_TAX_CREDIT__MONTHLY: + setMonthly((Double)newValue); + return; + case TaxationPackage.INCOME_TAX_CREDIT__DAILY: + setDaily((Double)newValue); + return; + case TaxationPackage.INCOME_TAX_CREDIT__ID7: + setId7((String)newValue); + return; + case TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME: + setTaxation_Frame((Tax_Card)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME_TAX_CREDIT__GRANTED_BY: + setGrantedBy(GRANTED_BY_EDEFAULT); + return; + case TaxationPackage.INCOME_TAX_CREDIT__TAX_PAYER: + setTaxPayer((Tax_Payer)null); + return; + case TaxationPackage.INCOME_TAX_CREDIT__TAX_YEAR: + setTax_year(TAX_YEAR_EDEFAULT); + return; + case TaxationPackage.INCOME_TAX_CREDIT__YEARLY: + setYearly(YEARLY_EDEFAULT); + return; + case TaxationPackage.INCOME_TAX_CREDIT__MONTHLY: + setMonthly(MONTHLY_EDEFAULT); + return; + case TaxationPackage.INCOME_TAX_CREDIT__DAILY: + setDaily(DAILY_EDEFAULT); + return; + case TaxationPackage.INCOME_TAX_CREDIT__ID7: + setId7(ID7_EDEFAULT); + return; + case TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME: + setTaxation_Frame((Tax_Card)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME_TAX_CREDIT__GRANTED_BY: + return grantedBy != GRANTED_BY_EDEFAULT; + case TaxationPackage.INCOME_TAX_CREDIT__TAX_PAYER: + return taxPayer != null; + case TaxationPackage.INCOME_TAX_CREDIT__TAX_YEAR: + return tax_year != TAX_YEAR_EDEFAULT; + case TaxationPackage.INCOME_TAX_CREDIT__YEARLY: + return yearly != YEARLY_EDEFAULT; + case TaxationPackage.INCOME_TAX_CREDIT__MONTHLY: + return monthly != MONTHLY_EDEFAULT; + case TaxationPackage.INCOME_TAX_CREDIT__DAILY: + return daily != DAILY_EDEFAULT; + case TaxationPackage.INCOME_TAX_CREDIT__ID7: + return ID7_EDEFAULT == null ? id7 != null : !ID7_EDEFAULT.equals(id7); + case TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME: + return taxation_Frame != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (grantedBy: "); + result.append(grantedBy); + result.append(", tax_year: "); + result.append(tax_year); + result.append(", yearly: "); + result.append(yearly); + result.append(", monthly: "); + result.append(monthly); + result.append(", daily: "); + result.append(daily); + result.append(", id7: "); + result.append(id7); + result.append(')'); + return result.toString(); + } + +} //Income_Tax_CreditImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_TypeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_TypeImpl.java new file mode 100644 index 00000000..af44c0a0 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_TypeImpl.java @@ -0,0 +1,268 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Income; +import TaxationWithRoot.Income_Type; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EcoreUtil; + +/** + * + * An implementation of the model object 'Income Type'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.Income_TypeImpl#getId8 Id8}
            • + *
            • {@link TaxationWithRoot.impl.Income_TypeImpl#getIncome Income}
            • + *
            + * + * @generated + */ +public abstract class Income_TypeImpl extends MinimalEObjectImpl.Container implements Income_Type { + /** + * The default value of the '{@link #getId8() Id8}' attribute. + * + * + * @see #getId8() + * @generated + * @ordered + */ + protected static final String ID8_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId8() Id8}' attribute. + * + * + * @see #getId8() + * @generated + * @ordered + */ + protected String id8 = ID8_EDEFAULT; + + /** + * + * + * @generated + */ + protected Income_TypeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.INCOME_TYPE; + } + + /** + * + * + * @generated + */ + @Override + public String getId8() { + return id8; + } + + /** + * + * + * @generated + */ + @Override + public void setId8(String newId8) { + String oldId8 = id8; + id8 = newId8; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TYPE__ID8, oldId8, id8)); + } + + /** + * + * + * @generated + */ + @Override + public Income getIncome() { + if (eContainerFeatureID() != TaxationPackage.INCOME_TYPE__INCOME) return null; + return (Income)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetIncome(Income newIncome, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newIncome, TaxationPackage.INCOME_TYPE__INCOME, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setIncome(Income newIncome) { + if (newIncome != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.INCOME_TYPE__INCOME && newIncome != null)) { + if (EcoreUtil.isAncestor(this, newIncome)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newIncome != null) + msgs = ((InternalEObject)newIncome).eInverseAdd(this, TaxationPackage.INCOME__INCOME_TYPE, Income.class, msgs); + msgs = basicSetIncome(newIncome, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.INCOME_TYPE__INCOME, newIncome, newIncome)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.INCOME_TYPE__INCOME: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetIncome((Income)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.INCOME_TYPE__INCOME: + return basicSetIncome(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.INCOME_TYPE__INCOME: + return eInternalContainer().eInverseRemove(this, TaxationPackage.INCOME__INCOME_TYPE, Income.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.INCOME_TYPE__ID8: + return getId8(); + case TaxationPackage.INCOME_TYPE__INCOME: + return getIncome(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.INCOME_TYPE__ID8: + setId8((String)newValue); + return; + case TaxationPackage.INCOME_TYPE__INCOME: + setIncome((Income)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME_TYPE__ID8: + setId8(ID8_EDEFAULT); + return; + case TaxationPackage.INCOME_TYPE__INCOME: + setIncome((Income)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.INCOME_TYPE__ID8: + return ID8_EDEFAULT == null ? id8 != null : !ID8_EDEFAULT.equals(id8); + case TaxationPackage.INCOME_TYPE__INCOME: + return getIncome() != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (id8: "); + result.append(id8); + result.append(')'); + return result.toString(); + } + +} //Income_TypeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Interest_ExpenseImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Interest_ExpenseImpl.java new file mode 100644 index 00000000..14e78ab9 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Interest_ExpenseImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Interest_Expense; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Interest Expense'. + * + * + * @generated + */ +public class Interest_ExpenseImpl extends Special_Expense_DSImpl implements Interest_Expense { + /** + * + * + * @generated + */ + protected Interest_ExpenseImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.INTEREST_EXPENSE; + } + +} //Interest_ExpenseImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Legal_Union_RecordImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Legal_Union_RecordImpl.java new file mode 100644 index 00000000..5e81cb60 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Legal_Union_RecordImpl.java @@ -0,0 +1,648 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Household; +import TaxationWithRoot.Legal_Union_Record; +import TaxationWithRoot.Physical_Person; +import TaxationWithRoot.Separation_Causes; +import TaxationWithRoot.Tax_Property; +import TaxationWithRoot.TaxationPackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'Legal Union Record'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.Legal_Union_RecordImpl#getStart_year Start year}
            • + *
            • {@link TaxationWithRoot.impl.Legal_Union_RecordImpl#getEnd_year End year}
            • + *
            • {@link TaxationWithRoot.impl.Legal_Union_RecordImpl#getSeparation_cause Separation cause}
            • + *
            • {@link TaxationWithRoot.impl.Legal_Union_RecordImpl#getIndividual_A Individual A}
            • + *
            • {@link TaxationWithRoot.impl.Legal_Union_RecordImpl#getIndividual_B Individual B}
            • + *
            • {@link TaxationWithRoot.impl.Legal_Union_RecordImpl#getProperties Properties}
            • + *
            • {@link TaxationWithRoot.impl.Legal_Union_RecordImpl#isMutual_agreement Mutual agreement}
            • + *
            • {@link TaxationWithRoot.impl.Legal_Union_RecordImpl#getId9 Id9}
            • + *
            • {@link TaxationWithRoot.impl.Legal_Union_RecordImpl#getHousehold Household}
            • + *
            + * + * @generated + */ +public abstract class Legal_Union_RecordImpl extends MinimalEObjectImpl.Container implements Legal_Union_Record { + /** + * The default value of the '{@link #getStart_year() Start year}' attribute. + * + * + * @see #getStart_year() + * @generated + * @ordered + */ + protected static final int START_YEAR_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getStart_year() Start year}' attribute. + * + * + * @see #getStart_year() + * @generated + * @ordered + */ + protected int start_year = START_YEAR_EDEFAULT; + + /** + * The default value of the '{@link #getEnd_year() End year}' attribute. + * + * + * @see #getEnd_year() + * @generated + * @ordered + */ + protected static final int END_YEAR_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getEnd_year() End year}' attribute. + * + * + * @see #getEnd_year() + * @generated + * @ordered + */ + protected int end_year = END_YEAR_EDEFAULT; + + /** + * The default value of the '{@link #getSeparation_cause() Separation cause}' attribute. + * + * + * @see #getSeparation_cause() + * @generated + * @ordered + */ + protected static final Separation_Causes SEPARATION_CAUSE_EDEFAULT = Separation_Causes.NONE; + + /** + * The cached value of the '{@link #getSeparation_cause() Separation cause}' attribute. + * + * + * @see #getSeparation_cause() + * @generated + * @ordered + */ + protected Separation_Causes separation_cause = SEPARATION_CAUSE_EDEFAULT; + + /** + * The cached value of the '{@link #getIndividual_A() Individual A}' containment reference. + * + * + * @see #getIndividual_A() + * @generated + * @ordered + */ + protected Physical_Person individual_A; + + /** + * The cached value of the '{@link #getIndividual_B() Individual B}' containment reference list. + * + * + * @see #getIndividual_B() + * @generated + * @ordered + */ + protected EList individual_B; + + /** + * The cached value of the '{@link #getProperties() Properties}' containment reference list. + * + * + * @see #getProperties() + * @generated + * @ordered + */ + protected EList properties; + + /** + * The default value of the '{@link #isMutual_agreement() Mutual agreement}' attribute. + * + * + * @see #isMutual_agreement() + * @generated + * @ordered + */ + protected static final boolean MUTUAL_AGREEMENT_EDEFAULT = false; + + /** + * The cached value of the '{@link #isMutual_agreement() Mutual agreement}' attribute. + * + * + * @see #isMutual_agreement() + * @generated + * @ordered + */ + protected boolean mutual_agreement = MUTUAL_AGREEMENT_EDEFAULT; + + /** + * The default value of the '{@link #getId9() Id9}' attribute. + * + * + * @see #getId9() + * @generated + * @ordered + */ + protected static final String ID9_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId9() Id9}' attribute. + * + * + * @see #getId9() + * @generated + * @ordered + */ + protected String id9 = ID9_EDEFAULT; + + /** + * + * + * @generated + */ + protected Legal_Union_RecordImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.LEGAL_UNION_RECORD; + } + + /** + * + * + * @generated + */ + @Override + public int getStart_year() { + return start_year; + } + + /** + * + * + * @generated + */ + @Override + public void setStart_year(int newStart_year) { + int oldStart_year = start_year; + start_year = newStart_year; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LEGAL_UNION_RECORD__START_YEAR, oldStart_year, start_year)); + } + + /** + * + * + * @generated + */ + @Override + public int getEnd_year() { + return end_year; + } + + /** + * + * + * @generated + */ + @Override + public void setEnd_year(int newEnd_year) { + int oldEnd_year = end_year; + end_year = newEnd_year; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LEGAL_UNION_RECORD__END_YEAR, oldEnd_year, end_year)); + } + + /** + * + * + * @generated + */ + @Override + public Separation_Causes getSeparation_cause() { + return separation_cause; + } + + /** + * + * + * @generated + */ + @Override + public void setSeparation_cause(Separation_Causes newSeparation_cause) { + Separation_Causes oldSeparation_cause = separation_cause; + separation_cause = newSeparation_cause == null ? SEPARATION_CAUSE_EDEFAULT : newSeparation_cause; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LEGAL_UNION_RECORD__SEPARATION_CAUSE, oldSeparation_cause, separation_cause)); + } + + /** + * + * + * @generated + */ + @Override + public Physical_Person getIndividual_A() { + return individual_A; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetIndividual_A(Physical_Person newIndividual_A, NotificationChain msgs) { + Physical_Person oldIndividual_A = individual_A; + individual_A = newIndividual_A; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_A, oldIndividual_A, newIndividual_A); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setIndividual_A(Physical_Person newIndividual_A) { + if (newIndividual_A != individual_A) { + NotificationChain msgs = null; + if (individual_A != null) + msgs = ((InternalEObject)individual_A).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_A, null, msgs); + if (newIndividual_A != null) + msgs = ((InternalEObject)newIndividual_A).eInverseAdd(this, EOPPOSITE_FEATURE_BASE - TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_A, null, msgs); + msgs = basicSetIndividual_A(newIndividual_A, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_A, newIndividual_A, newIndividual_A)); + } + + /** + * + * + * @generated + */ + @Override + public EList getIndividual_B() { + if (individual_B == null) { + individual_B = new EObjectContainmentEList(Physical_Person.class, this, TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_B); + } + return individual_B; + } + + /** + * + * + * @generated + */ + @Override + public EList getProperties() { + if (properties == null) { + properties = new EObjectContainmentWithInverseEList(Tax_Property.class, this, TaxationPackage.LEGAL_UNION_RECORD__PROPERTIES, TaxationPackage.TAX_PROPERTY__UNION_RECORD); + } + return properties; + } + + /** + * + * + * @generated + */ + @Override + public boolean isMutual_agreement() { + return mutual_agreement; + } + + /** + * + * + * @generated + */ + @Override + public void setMutual_agreement(boolean newMutual_agreement) { + boolean oldMutual_agreement = mutual_agreement; + mutual_agreement = newMutual_agreement; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LEGAL_UNION_RECORD__MUTUAL_AGREEMENT, oldMutual_agreement, mutual_agreement)); + } + + /** + * + * + * @generated + */ + @Override + public String getId9() { + return id9; + } + + /** + * + * + * @generated + */ + @Override + public void setId9(String newId9) { + String oldId9 = id9; + id9 = newId9; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LEGAL_UNION_RECORD__ID9, oldId9, id9)); + } + + /** + * + * + * @generated + */ + @Override + public Household getHousehold() { + if (eContainerFeatureID() != TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD) return null; + return (Household)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetHousehold(Household newHousehold, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newHousehold, TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setHousehold(Household newHousehold) { + if (newHousehold != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD && newHousehold != null)) { + if (EcoreUtil.isAncestor(this, newHousehold)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newHousehold != null) + msgs = ((InternalEObject)newHousehold).eInverseAdd(this, TaxationPackage.HOUSEHOLD__PARENTS, Household.class, msgs); + msgs = basicSetHousehold(newHousehold, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD, newHousehold, newHousehold)); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.LEGAL_UNION_RECORD__PROPERTIES: + return ((InternalEList)(InternalEList)getProperties()).basicAdd(otherEnd, msgs); + case TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetHousehold((Household)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_A: + return basicSetIndividual_A(null, msgs); + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_B: + return ((InternalEList)getIndividual_B()).basicRemove(otherEnd, msgs); + case TaxationPackage.LEGAL_UNION_RECORD__PROPERTIES: + return ((InternalEList)getProperties()).basicRemove(otherEnd, msgs); + case TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD: + return basicSetHousehold(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD: + return eInternalContainer().eInverseRemove(this, TaxationPackage.HOUSEHOLD__PARENTS, Household.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.LEGAL_UNION_RECORD__START_YEAR: + return getStart_year(); + case TaxationPackage.LEGAL_UNION_RECORD__END_YEAR: + return getEnd_year(); + case TaxationPackage.LEGAL_UNION_RECORD__SEPARATION_CAUSE: + return getSeparation_cause(); + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_A: + return getIndividual_A(); + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_B: + return getIndividual_B(); + case TaxationPackage.LEGAL_UNION_RECORD__PROPERTIES: + return getProperties(); + case TaxationPackage.LEGAL_UNION_RECORD__MUTUAL_AGREEMENT: + return isMutual_agreement(); + case TaxationPackage.LEGAL_UNION_RECORD__ID9: + return getId9(); + case TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD: + return getHousehold(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.LEGAL_UNION_RECORD__START_YEAR: + setStart_year((Integer)newValue); + return; + case TaxationPackage.LEGAL_UNION_RECORD__END_YEAR: + setEnd_year((Integer)newValue); + return; + case TaxationPackage.LEGAL_UNION_RECORD__SEPARATION_CAUSE: + setSeparation_cause((Separation_Causes)newValue); + return; + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_A: + setIndividual_A((Physical_Person)newValue); + return; + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_B: + getIndividual_B().clear(); + getIndividual_B().addAll((Collection)newValue); + return; + case TaxationPackage.LEGAL_UNION_RECORD__PROPERTIES: + getProperties().clear(); + getProperties().addAll((Collection)newValue); + return; + case TaxationPackage.LEGAL_UNION_RECORD__MUTUAL_AGREEMENT: + setMutual_agreement((Boolean)newValue); + return; + case TaxationPackage.LEGAL_UNION_RECORD__ID9: + setId9((String)newValue); + return; + case TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD: + setHousehold((Household)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.LEGAL_UNION_RECORD__START_YEAR: + setStart_year(START_YEAR_EDEFAULT); + return; + case TaxationPackage.LEGAL_UNION_RECORD__END_YEAR: + setEnd_year(END_YEAR_EDEFAULT); + return; + case TaxationPackage.LEGAL_UNION_RECORD__SEPARATION_CAUSE: + setSeparation_cause(SEPARATION_CAUSE_EDEFAULT); + return; + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_A: + setIndividual_A((Physical_Person)null); + return; + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_B: + getIndividual_B().clear(); + return; + case TaxationPackage.LEGAL_UNION_RECORD__PROPERTIES: + getProperties().clear(); + return; + case TaxationPackage.LEGAL_UNION_RECORD__MUTUAL_AGREEMENT: + setMutual_agreement(MUTUAL_AGREEMENT_EDEFAULT); + return; + case TaxationPackage.LEGAL_UNION_RECORD__ID9: + setId9(ID9_EDEFAULT); + return; + case TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD: + setHousehold((Household)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.LEGAL_UNION_RECORD__START_YEAR: + return start_year != START_YEAR_EDEFAULT; + case TaxationPackage.LEGAL_UNION_RECORD__END_YEAR: + return end_year != END_YEAR_EDEFAULT; + case TaxationPackage.LEGAL_UNION_RECORD__SEPARATION_CAUSE: + return separation_cause != SEPARATION_CAUSE_EDEFAULT; + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_A: + return individual_A != null; + case TaxationPackage.LEGAL_UNION_RECORD__INDIVIDUAL_B: + return individual_B != null && !individual_B.isEmpty(); + case TaxationPackage.LEGAL_UNION_RECORD__PROPERTIES: + return properties != null && !properties.isEmpty(); + case TaxationPackage.LEGAL_UNION_RECORD__MUTUAL_AGREEMENT: + return mutual_agreement != MUTUAL_AGREEMENT_EDEFAULT; + case TaxationPackage.LEGAL_UNION_RECORD__ID9: + return ID9_EDEFAULT == null ? id9 != null : !ID9_EDEFAULT.equals(id9); + case TaxationPackage.LEGAL_UNION_RECORD__HOUSEHOLD: + return getHousehold() != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (start_year: "); + result.append(start_year); + result.append(", end_year: "); + result.append(end_year); + result.append(", separation_cause: "); + result.append(separation_cause); + result.append(", mutual_agreement: "); + result.append(mutual_agreement); + result.append(", id9: "); + result.append(id9); + result.append(')'); + return result.toString(); + } + +} //Legal_Union_RecordImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Local_IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Local_IncomeImpl.java new file mode 100644 index 00000000..e4d72407 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Local_IncomeImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Local_Income; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Local Income'. + * + * + * @generated + */ +public class Local_IncomeImpl extends IncomeImpl implements Local_Income { + /** + * + * + * @generated + */ + protected Local_IncomeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.LOCAL_INCOME; + } + +} //Local_IncomeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Loss_CarryforwardImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Loss_CarryforwardImpl.java new file mode 100644 index 00000000..9eff625c --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Loss_CarryforwardImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Loss_Carryforward; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Loss Carryforward'. + * + * + * @generated + */ +public class Loss_CarryforwardImpl extends Special_Expense_DSImpl implements Loss_Carryforward { + /** + * + * + * @generated + */ + protected Loss_CarryforwardImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.LOSS_CARRYFORWARD; + } + +} //Loss_CarryforwardImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Marriage_RecordImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Marriage_RecordImpl.java new file mode 100644 index 00000000..f4bce1e0 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Marriage_RecordImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Marriage_Record; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Marriage Record'. + * + * + * @generated + */ +public class Marriage_RecordImpl extends Legal_Union_RecordImpl implements Marriage_Record { + /** + * + * + * @generated + */ + protected Marriage_RecordImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.MARRIAGE_RECORD; + } + +} //Marriage_RecordImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Miscellaneous_Expense_FOImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Miscellaneous_Expense_FOImpl.java new file mode 100644 index 00000000..f65633e4 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Miscellaneous_Expense_FOImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Miscellaneous_Expense_FO; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Miscellaneous Expense FO'. + * + * + * @generated + */ +public class Miscellaneous_Expense_FOImpl extends Professional_ExpenseImpl implements Miscellaneous_Expense_FO { + /** + * + * + * @generated + */ + protected Miscellaneous_Expense_FOImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.MISCELLANEOUS_EXPENSE_FO; + } + +} //Miscellaneous_Expense_FOImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Non_Resident_Tax_PayerImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Non_Resident_Tax_PayerImpl.java new file mode 100644 index 00000000..182f297f --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Non_Resident_Tax_PayerImpl.java @@ -0,0 +1,164 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Non_Resident_Tax_Payer; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Non Resident Tax Payer'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.Non_Resident_Tax_PayerImpl#isIs_assimilated_to_resident Is assimilated to resident}
            • + *
            + * + * @generated + */ +public class Non_Resident_Tax_PayerImpl extends Tax_PayerImpl implements Non_Resident_Tax_Payer { + /** + * The default value of the '{@link #isIs_assimilated_to_resident() Is assimilated to resident}' attribute. + * + * + * @see #isIs_assimilated_to_resident() + * @generated + * @ordered + */ + protected static final boolean IS_ASSIMILATED_TO_RESIDENT_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_assimilated_to_resident() Is assimilated to resident}' attribute. + * + * + * @see #isIs_assimilated_to_resident() + * @generated + * @ordered + */ + protected boolean is_assimilated_to_resident = IS_ASSIMILATED_TO_RESIDENT_EDEFAULT; + + /** + * + * + * @generated + */ + protected Non_Resident_Tax_PayerImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.NON_RESIDENT_TAX_PAYER; + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_assimilated_to_resident() { + return is_assimilated_to_resident; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_assimilated_to_resident(boolean newIs_assimilated_to_resident) { + boolean oldIs_assimilated_to_resident = is_assimilated_to_resident; + is_assimilated_to_resident = newIs_assimilated_to_resident; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.NON_RESIDENT_TAX_PAYER__IS_ASSIMILATED_TO_RESIDENT, oldIs_assimilated_to_resident, is_assimilated_to_resident)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.NON_RESIDENT_TAX_PAYER__IS_ASSIMILATED_TO_RESIDENT: + return isIs_assimilated_to_resident(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.NON_RESIDENT_TAX_PAYER__IS_ASSIMILATED_TO_RESIDENT: + setIs_assimilated_to_resident((Boolean)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.NON_RESIDENT_TAX_PAYER__IS_ASSIMILATED_TO_RESIDENT: + setIs_assimilated_to_resident(IS_ASSIMILATED_TO_RESIDENT_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.NON_RESIDENT_TAX_PAYER__IS_ASSIMILATED_TO_RESIDENT: + return is_assimilated_to_resident != IS_ASSIMILATED_TO_RESIDENT_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (is_assimilated_to_resident: "); + result.append(is_assimilated_to_resident); + result.append(')'); + return result.toString(); + } + +} //Non_Resident_Tax_PayerImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Partnership_RecordImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Partnership_RecordImpl.java new file mode 100644 index 00000000..4fd5570d --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Partnership_RecordImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Partnership_Record; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Partnership Record'. + * + * + * @generated + */ +public class Partnership_RecordImpl extends Legal_Union_RecordImpl implements Partnership_Record { + /** + * + * + * @generated + */ + protected Partnership_RecordImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.PARTNERSHIP_RECORD; + } + +} //Partnership_RecordImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Pensions_and_Annuities_IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Pensions_and_Annuities_IncomeImpl.java new file mode 100644 index 00000000..2ab5a688 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Pensions_and_Annuities_IncomeImpl.java @@ -0,0 +1,164 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Pensions_and_Annuities_Income; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Pensions and Annuities Income'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.Pensions_and_Annuities_IncomeImpl#isOccasional_payement Occasional payement}
            • + *
            + * + * @generated + */ +public class Pensions_and_Annuities_IncomeImpl extends Income_TypeImpl implements Pensions_and_Annuities_Income { + /** + * The default value of the '{@link #isOccasional_payement() Occasional payement}' attribute. + * + * + * @see #isOccasional_payement() + * @generated + * @ordered + */ + protected static final boolean OCCASIONAL_PAYEMENT_EDEFAULT = false; + + /** + * The cached value of the '{@link #isOccasional_payement() Occasional payement}' attribute. + * + * + * @see #isOccasional_payement() + * @generated + * @ordered + */ + protected boolean occasional_payement = OCCASIONAL_PAYEMENT_EDEFAULT; + + /** + * + * + * @generated + */ + protected Pensions_and_Annuities_IncomeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.PENSIONS_AND_ANNUITIES_INCOME; + } + + /** + * + * + * @generated + */ + @Override + public boolean isOccasional_payement() { + return occasional_payement; + } + + /** + * + * + * @generated + */ + @Override + public void setOccasional_payement(boolean newOccasional_payement) { + boolean oldOccasional_payement = occasional_payement; + occasional_payement = newOccasional_payement; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PENSIONS_AND_ANNUITIES_INCOME__OCCASIONAL_PAYEMENT, oldOccasional_payement, occasional_payement)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.PENSIONS_AND_ANNUITIES_INCOME__OCCASIONAL_PAYEMENT: + return isOccasional_payement(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.PENSIONS_AND_ANNUITIES_INCOME__OCCASIONAL_PAYEMENT: + setOccasional_payement((Boolean)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.PENSIONS_AND_ANNUITIES_INCOME__OCCASIONAL_PAYEMENT: + setOccasional_payement(OCCASIONAL_PAYEMENT_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.PENSIONS_AND_ANNUITIES_INCOME__OCCASIONAL_PAYEMENT: + return occasional_payement != OCCASIONAL_PAYEMENT_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (occasional_payement: "); + result.append(occasional_payement); + result.append(')'); + return result.toString(); + } + +} //Pensions_and_Annuities_IncomeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Permanent_ExpenseImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Permanent_ExpenseImpl.java new file mode 100644 index 00000000..c09a5950 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Permanent_ExpenseImpl.java @@ -0,0 +1,165 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Category_of_Permanent_Expense; +import TaxationWithRoot.Permanent_Expense; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Permanent Expense'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.Permanent_ExpenseImpl#getCategory Category}
            • + *
            + * + * @generated + */ +public class Permanent_ExpenseImpl extends Special_Expense_DSImpl implements Permanent_Expense { + /** + * The default value of the '{@link #getCategory() Category}' attribute. + * + * + * @see #getCategory() + * @generated + * @ordered + */ + protected static final Category_of_Permanent_Expense CATEGORY_EDEFAULT = Category_of_Permanent_Expense.MISCELLANEOUS_DEBT; + + /** + * The cached value of the '{@link #getCategory() Category}' attribute. + * + * + * @see #getCategory() + * @generated + * @ordered + */ + protected Category_of_Permanent_Expense category = CATEGORY_EDEFAULT; + + /** + * + * + * @generated + */ + protected Permanent_ExpenseImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.PERMANENT_EXPENSE; + } + + /** + * + * + * @generated + */ + @Override + public Category_of_Permanent_Expense getCategory() { + return category; + } + + /** + * + * + * @generated + */ + @Override + public void setCategory(Category_of_Permanent_Expense newCategory) { + Category_of_Permanent_Expense oldCategory = category; + category = newCategory == null ? CATEGORY_EDEFAULT : newCategory; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PERMANENT_EXPENSE__CATEGORY, oldCategory, category)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.PERMANENT_EXPENSE__CATEGORY: + return getCategory(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.PERMANENT_EXPENSE__CATEGORY: + setCategory((Category_of_Permanent_Expense)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.PERMANENT_EXPENSE__CATEGORY: + setCategory(CATEGORY_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.PERMANENT_EXPENSE__CATEGORY: + return category != CATEGORY_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (category: "); + result.append(category); + result.append(')'); + return result.toString(); + } + +} //Permanent_ExpenseImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Physical_PersonImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Physical_PersonImpl.java new file mode 100644 index 00000000..d3a54bdd --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Physical_PersonImpl.java @@ -0,0 +1,617 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Address; +import TaxationWithRoot.Disability_Types; +import TaxationWithRoot.Expense; +import TaxationWithRoot.Physical_Person; +import TaxationWithRoot.TaxationPackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'Physical Person'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.Physical_PersonImpl#getSSNo SS No}
            • + *
            • {@link TaxationWithRoot.impl.Physical_PersonImpl#getAddresses Addresses}
            • + *
            • {@link TaxationWithRoot.impl.Physical_PersonImpl#getBirth_year Birth year}
            • + *
            • {@link TaxationWithRoot.impl.Physical_PersonImpl#getDisability_percentage Disability percentage}
            • + *
            • {@link TaxationWithRoot.impl.Physical_PersonImpl#getDisability_type Disability type}
            • + *
            • {@link TaxationWithRoot.impl.Physical_PersonImpl#getBirth_month Birth month}
            • + *
            • {@link TaxationWithRoot.impl.Physical_PersonImpl#getBirth_day Birth day}
            • + *
            • {@link TaxationWithRoot.impl.Physical_PersonImpl#getExpenses Expenses}
            • + *
            • {@link TaxationWithRoot.impl.Physical_PersonImpl#isIs_widower Is widower}
            • + *
            + * + * @generated + */ +public class Physical_PersonImpl extends MinimalEObjectImpl.Container implements Physical_Person { + /** + * The default value of the '{@link #getSSNo() SS No}' attribute. + * + * + * @see #getSSNo() + * @generated + * @ordered + */ + protected static final String SS_NO_EDEFAULT = null; + + /** + * The cached value of the '{@link #getSSNo() SS No}' attribute. + * + * + * @see #getSSNo() + * @generated + * @ordered + */ + protected String ssNo = SS_NO_EDEFAULT; + + /** + * The cached value of the '{@link #getAddresses() Addresses}' reference list. + * + * + * @see #getAddresses() + * @generated + * @ordered + */ + protected EList
            addresses; + + /** + * The default value of the '{@link #getBirth_year() Birth year}' attribute. + * + * + * @see #getBirth_year() + * @generated + * @ordered + */ + protected static final int BIRTH_YEAR_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getBirth_year() Birth year}' attribute. + * + * + * @see #getBirth_year() + * @generated + * @ordered + */ + protected int birth_year = BIRTH_YEAR_EDEFAULT; + + /** + * The default value of the '{@link #getDisability_percentage() Disability percentage}' attribute. + * + * + * @see #getDisability_percentage() + * @generated + * @ordered + */ + protected static final double DISABILITY_PERCENTAGE_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDisability_percentage() Disability percentage}' attribute. + * + * + * @see #getDisability_percentage() + * @generated + * @ordered + */ + protected double disability_percentage = DISABILITY_PERCENTAGE_EDEFAULT; + + /** + * The default value of the '{@link #getDisability_type() Disability type}' attribute. + * + * + * @see #getDisability_type() + * @generated + * @ordered + */ + protected static final Disability_Types DISABILITY_TYPE_EDEFAULT = Disability_Types.BEUG; + + /** + * The cached value of the '{@link #getDisability_type() Disability type}' attribute. + * + * + * @see #getDisability_type() + * @generated + * @ordered + */ + protected Disability_Types disability_type = DISABILITY_TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getBirth_month() Birth month}' attribute. + * + * + * @see #getBirth_month() + * @generated + * @ordered + */ + protected static final int BIRTH_MONTH_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getBirth_month() Birth month}' attribute. + * + * + * @see #getBirth_month() + * @generated + * @ordered + */ + protected int birth_month = BIRTH_MONTH_EDEFAULT; + + /** + * The default value of the '{@link #getBirth_day() Birth day}' attribute. + * + * + * @see #getBirth_day() + * @generated + * @ordered + */ + protected static final int BIRTH_DAY_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getBirth_day() Birth day}' attribute. + * + * + * @see #getBirth_day() + * @generated + * @ordered + */ + protected int birth_day = BIRTH_DAY_EDEFAULT; + + /** + * The cached value of the '{@link #getExpenses() Expenses}' reference list. + * + * + * @see #getExpenses() + * @generated + * @ordered + */ + protected EList expenses; + + /** + * The default value of the '{@link #isIs_widower() Is widower}' attribute. + * + * + * @see #isIs_widower() + * @generated + * @ordered + */ + protected static final boolean IS_WIDOWER_EDEFAULT = false; + + /** + * The cached value of the '{@link #isIs_widower() Is widower}' attribute. + * + * + * @see #isIs_widower() + * @generated + * @ordered + */ + protected boolean is_widower = IS_WIDOWER_EDEFAULT; + + /** + * + * + * @generated + */ + protected Physical_PersonImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.PHYSICAL_PERSON; + } + + /** + * + * + * @generated + */ + @Override + public String getSSNo() { + return ssNo; + } + + /** + * + * + * @generated + */ + @Override + public void setSSNo(String newSSNo) { + String oldSSNo = ssNo; + ssNo = newSSNo; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__SS_NO, oldSSNo, ssNo)); + } + + /** + * + * + * @generated + */ + @Override + public EList
            getAddresses() { + if (addresses == null) { + addresses = new EObjectWithInverseResolvingEList.ManyInverse
            (Address.class, this, TaxationPackage.PHYSICAL_PERSON__ADDRESSES, TaxationPackage.ADDRESS__TAX_PAYER); + } + return addresses; + } + + /** + * + * + * @generated + */ + @Override + public int getBirth_year() { + return birth_year; + } + + /** + * + * + * @generated + */ + @Override + public void setBirth_year(int newBirth_year) { + int oldBirth_year = birth_year; + birth_year = newBirth_year; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__BIRTH_YEAR, oldBirth_year, birth_year)); + } + + /** + * + * + * @generated + */ + @Override + public double getDisability_percentage() { + return disability_percentage; + } + + /** + * + * + * @generated + */ + @Override + public void setDisability_percentage(double newDisability_percentage) { + double oldDisability_percentage = disability_percentage; + disability_percentage = newDisability_percentage; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__DISABILITY_PERCENTAGE, oldDisability_percentage, disability_percentage)); + } + + /** + * + * + * @generated + */ + @Override + public Disability_Types getDisability_type() { + return disability_type; + } + + /** + * + * + * @generated + */ + @Override + public void setDisability_type(Disability_Types newDisability_type) { + Disability_Types oldDisability_type = disability_type; + disability_type = newDisability_type == null ? DISABILITY_TYPE_EDEFAULT : newDisability_type; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__DISABILITY_TYPE, oldDisability_type, disability_type)); + } + + /** + * + * + * @generated + */ + @Override + public int getBirth_month() { + return birth_month; + } + + /** + * + * + * @generated + */ + @Override + public void setBirth_month(int newBirth_month) { + int oldBirth_month = birth_month; + birth_month = newBirth_month; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__BIRTH_MONTH, oldBirth_month, birth_month)); + } + + /** + * + * + * @generated + */ + @Override + public int getBirth_day() { + return birth_day; + } + + /** + * + * + * @generated + */ + @Override + public void setBirth_day(int newBirth_day) { + int oldBirth_day = birth_day; + birth_day = newBirth_day; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__BIRTH_DAY, oldBirth_day, birth_day)); + } + + /** + * + * + * @generated + */ + @Override + public EList getExpenses() { + if (expenses == null) { + expenses = new EObjectWithInverseResolvingEList(Expense.class, this, TaxationPackage.PHYSICAL_PERSON__EXPENSES, TaxationPackage.EXPENSE__BENEFICIARY); + } + return expenses; + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_widower() { + return is_widower; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_widower(boolean newIs_widower) { + boolean oldIs_widower = is_widower; + is_widower = newIs_widower; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PHYSICAL_PERSON__IS_WIDOWER, oldIs_widower, is_widower)); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.PHYSICAL_PERSON__ADDRESSES: + return ((InternalEList)(InternalEList)getAddresses()).basicAdd(otherEnd, msgs); + case TaxationPackage.PHYSICAL_PERSON__EXPENSES: + return ((InternalEList)(InternalEList)getExpenses()).basicAdd(otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.PHYSICAL_PERSON__ADDRESSES: + return ((InternalEList)getAddresses()).basicRemove(otherEnd, msgs); + case TaxationPackage.PHYSICAL_PERSON__EXPENSES: + return ((InternalEList)getExpenses()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.PHYSICAL_PERSON__SS_NO: + return getSSNo(); + case TaxationPackage.PHYSICAL_PERSON__ADDRESSES: + return getAddresses(); + case TaxationPackage.PHYSICAL_PERSON__BIRTH_YEAR: + return getBirth_year(); + case TaxationPackage.PHYSICAL_PERSON__DISABILITY_PERCENTAGE: + return getDisability_percentage(); + case TaxationPackage.PHYSICAL_PERSON__DISABILITY_TYPE: + return getDisability_type(); + case TaxationPackage.PHYSICAL_PERSON__BIRTH_MONTH: + return getBirth_month(); + case TaxationPackage.PHYSICAL_PERSON__BIRTH_DAY: + return getBirth_day(); + case TaxationPackage.PHYSICAL_PERSON__EXPENSES: + return getExpenses(); + case TaxationPackage.PHYSICAL_PERSON__IS_WIDOWER: + return isIs_widower(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.PHYSICAL_PERSON__SS_NO: + setSSNo((String)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__ADDRESSES: + getAddresses().clear(); + getAddresses().addAll((Collection)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__BIRTH_YEAR: + setBirth_year((Integer)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__DISABILITY_PERCENTAGE: + setDisability_percentage((Double)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__DISABILITY_TYPE: + setDisability_type((Disability_Types)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__BIRTH_MONTH: + setBirth_month((Integer)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__BIRTH_DAY: + setBirth_day((Integer)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__EXPENSES: + getExpenses().clear(); + getExpenses().addAll((Collection)newValue); + return; + case TaxationPackage.PHYSICAL_PERSON__IS_WIDOWER: + setIs_widower((Boolean)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.PHYSICAL_PERSON__SS_NO: + setSSNo(SS_NO_EDEFAULT); + return; + case TaxationPackage.PHYSICAL_PERSON__ADDRESSES: + getAddresses().clear(); + return; + case TaxationPackage.PHYSICAL_PERSON__BIRTH_YEAR: + setBirth_year(BIRTH_YEAR_EDEFAULT); + return; + case TaxationPackage.PHYSICAL_PERSON__DISABILITY_PERCENTAGE: + setDisability_percentage(DISABILITY_PERCENTAGE_EDEFAULT); + return; + case TaxationPackage.PHYSICAL_PERSON__DISABILITY_TYPE: + setDisability_type(DISABILITY_TYPE_EDEFAULT); + return; + case TaxationPackage.PHYSICAL_PERSON__BIRTH_MONTH: + setBirth_month(BIRTH_MONTH_EDEFAULT); + return; + case TaxationPackage.PHYSICAL_PERSON__BIRTH_DAY: + setBirth_day(BIRTH_DAY_EDEFAULT); + return; + case TaxationPackage.PHYSICAL_PERSON__EXPENSES: + getExpenses().clear(); + return; + case TaxationPackage.PHYSICAL_PERSON__IS_WIDOWER: + setIs_widower(IS_WIDOWER_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.PHYSICAL_PERSON__SS_NO: + return SS_NO_EDEFAULT == null ? ssNo != null : !SS_NO_EDEFAULT.equals(ssNo); + case TaxationPackage.PHYSICAL_PERSON__ADDRESSES: + return addresses != null && !addresses.isEmpty(); + case TaxationPackage.PHYSICAL_PERSON__BIRTH_YEAR: + return birth_year != BIRTH_YEAR_EDEFAULT; + case TaxationPackage.PHYSICAL_PERSON__DISABILITY_PERCENTAGE: + return disability_percentage != DISABILITY_PERCENTAGE_EDEFAULT; + case TaxationPackage.PHYSICAL_PERSON__DISABILITY_TYPE: + return disability_type != DISABILITY_TYPE_EDEFAULT; + case TaxationPackage.PHYSICAL_PERSON__BIRTH_MONTH: + return birth_month != BIRTH_MONTH_EDEFAULT; + case TaxationPackage.PHYSICAL_PERSON__BIRTH_DAY: + return birth_day != BIRTH_DAY_EDEFAULT; + case TaxationPackage.PHYSICAL_PERSON__EXPENSES: + return expenses != null && !expenses.isEmpty(); + case TaxationPackage.PHYSICAL_PERSON__IS_WIDOWER: + return is_widower != IS_WIDOWER_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (SSNo: "); + result.append(ssNo); + result.append(", birth_year: "); + result.append(birth_year); + result.append(", disability_percentage: "); + result.append(disability_percentage); + result.append(", disability_type: "); + result.append(disability_type); + result.append(", birth_month: "); + result.append(birth_month); + result.append(", birth_day: "); + result.append(birth_day); + result.append(", is_widower: "); + result.append(is_widower); + result.append(')'); + return result.toString(); + } + +} //Physical_PersonImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Private_Insurance_and_PlanImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Private_Insurance_and_PlanImpl.java new file mode 100644 index 00000000..b1370999 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Private_Insurance_and_PlanImpl.java @@ -0,0 +1,221 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Category_of_Private_Insurance_and_Plan; +import TaxationWithRoot.Private_Insurance_and_Plan; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Private Insurance and Plan'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.Private_Insurance_and_PlanImpl#getCategory Category}
            • + *
            • {@link TaxationWithRoot.impl.Private_Insurance_and_PlanImpl#getDuration_of_contract Duration of contract}
            • + *
            + * + * @generated + */ +public class Private_Insurance_and_PlanImpl extends Special_Expense_DSImpl implements Private_Insurance_and_Plan { + /** + * The default value of the '{@link #getCategory() Category}' attribute. + * + * + * @see #getCategory() + * @generated + * @ordered + */ + protected static final Category_of_Private_Insurance_and_Plan CATEGORY_EDEFAULT = Category_of_Private_Insurance_and_Plan.PRIVATE_INSURANCE; + + /** + * The cached value of the '{@link #getCategory() Category}' attribute. + * + * + * @see #getCategory() + * @generated + * @ordered + */ + protected Category_of_Private_Insurance_and_Plan category = CATEGORY_EDEFAULT; + + /** + * The default value of the '{@link #getDuration_of_contract() Duration of contract}' attribute. + * + * + * @see #getDuration_of_contract() + * @generated + * @ordered + */ + protected static final int DURATION_OF_CONTRACT_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getDuration_of_contract() Duration of contract}' attribute. + * + * + * @see #getDuration_of_contract() + * @generated + * @ordered + */ + protected int duration_of_contract = DURATION_OF_CONTRACT_EDEFAULT; + + /** + * + * + * @generated + */ + protected Private_Insurance_and_PlanImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.PRIVATE_INSURANCE_AND_PLAN; + } + + /** + * + * + * @generated + */ + @Override + public Category_of_Private_Insurance_and_Plan getCategory() { + return category; + } + + /** + * + * + * @generated + */ + @Override + public void setCategory(Category_of_Private_Insurance_and_Plan newCategory) { + Category_of_Private_Insurance_and_Plan oldCategory = category; + category = newCategory == null ? CATEGORY_EDEFAULT : newCategory; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__CATEGORY, oldCategory, category)); + } + + /** + * + * + * @generated + */ + @Override + public int getDuration_of_contract() { + return duration_of_contract; + } + + /** + * + * + * @generated + */ + @Override + public void setDuration_of_contract(int newDuration_of_contract) { + int oldDuration_of_contract = duration_of_contract; + duration_of_contract = newDuration_of_contract; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT, oldDuration_of_contract, duration_of_contract)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__CATEGORY: + return getCategory(); + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT: + return getDuration_of_contract(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__CATEGORY: + setCategory((Category_of_Private_Insurance_and_Plan)newValue); + return; + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT: + setDuration_of_contract((Integer)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__CATEGORY: + setCategory(CATEGORY_EDEFAULT); + return; + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT: + setDuration_of_contract(DURATION_OF_CONTRACT_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__CATEGORY: + return category != CATEGORY_EDEFAULT; + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT: + return duration_of_contract != DURATION_OF_CONTRACT_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (category: "); + result.append(category); + result.append(", duration_of_contract: "); + result.append(duration_of_contract); + result.append(')'); + return result.toString(); + } + +} //Private_Insurance_and_PlanImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Professional_ExpenseImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Professional_ExpenseImpl.java new file mode 100644 index 00000000..308a453d --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Professional_ExpenseImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Professional_Expense; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Professional Expense'. + * + * + * @generated + */ +public class Professional_ExpenseImpl extends ExpenseImpl implements Professional_Expense { + /** + * + * + * @generated + */ + protected Professional_ExpenseImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.PROFESSIONAL_EXPENSE; + } + +} //Professional_ExpenseImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Professional_Expenses_DeductionImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Professional_Expenses_DeductionImpl.java new file mode 100644 index 00000000..a4a903e8 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Professional_Expenses_DeductionImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Professional_Expenses_Deduction; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Professional Expenses Deduction'. + * + * + * @generated + */ +public class Professional_Expenses_DeductionImpl extends RootImpl implements Professional_Expenses_Deduction { + /** + * + * + * @generated + */ + protected Professional_Expenses_DeductionImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.PROFESSIONAL_EXPENSES_DEDUCTION; + } + +} //Professional_Expenses_DeductionImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Rentals_and_Leases_IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Rentals_and_Leases_IncomeImpl.java new file mode 100644 index 00000000..fe3493b2 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Rentals_and_Leases_IncomeImpl.java @@ -0,0 +1,164 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Rentals_and_Leases_Income; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +/** + * + * An implementation of the model object 'Rentals and Leases Income'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.Rentals_and_Leases_IncomeImpl#isIs_periodic Is periodic}
            • + *
            + * + * @generated + */ +public class Rentals_and_Leases_IncomeImpl extends Income_TypeImpl implements Rentals_and_Leases_Income { + /** + * The default value of the '{@link #isIs_periodic() Is periodic}' attribute. + * + * + * @see #isIs_periodic() + * @generated + * @ordered + */ + protected static final boolean IS_PERIODIC_EDEFAULT = true; + + /** + * The cached value of the '{@link #isIs_periodic() Is periodic}' attribute. + * + * + * @see #isIs_periodic() + * @generated + * @ordered + */ + protected boolean is_periodic = IS_PERIODIC_EDEFAULT; + + /** + * + * + * @generated + */ + protected Rentals_and_Leases_IncomeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.RENTALS_AND_LEASES_INCOME; + } + + /** + * + * + * @generated + */ + @Override + public boolean isIs_periodic() { + return is_periodic; + } + + /** + * + * + * @generated + */ + @Override + public void setIs_periodic(boolean newIs_periodic) { + boolean oldIs_periodic = is_periodic; + is_periodic = newIs_periodic; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.RENTALS_AND_LEASES_INCOME__IS_PERIODIC, oldIs_periodic, is_periodic)); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.RENTALS_AND_LEASES_INCOME__IS_PERIODIC: + return isIs_periodic(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.RENTALS_AND_LEASES_INCOME__IS_PERIODIC: + setIs_periodic((Boolean)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.RENTALS_AND_LEASES_INCOME__IS_PERIODIC: + setIs_periodic(IS_PERIODIC_EDEFAULT); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.RENTALS_AND_LEASES_INCOME__IS_PERIODIC: + return is_periodic != IS_PERIODIC_EDEFAULT; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (is_periodic: "); + result.append(is_periodic); + result.append(')'); + return result.toString(); + } + +} //Rentals_and_Leases_IncomeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Resident_Tax_PayerImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Resident_Tax_PayerImpl.java new file mode 100644 index 00000000..39e32c90 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Resident_Tax_PayerImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Resident_Tax_Payer; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Resident Tax Payer'. + * + * + * @generated + */ +public class Resident_Tax_PayerImpl extends Tax_PayerImpl implements Resident_Tax_Payer { + /** + * + * + * @generated + */ + protected Resident_Tax_PayerImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.RESIDENT_TAX_PAYER; + } + +} //Resident_Tax_PayerImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/ResourceImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/ResourceImpl.java new file mode 100644 index 00000000..2104cce8 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/ResourceImpl.java @@ -0,0 +1,153 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Resource; +import TaxationWithRoot.Root; +import TaxationWithRoot.TaxationPackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'Resource'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.ResourceImpl#getContains Contains}
            • + *
            + * + * @generated + */ +public class ResourceImpl extends MinimalEObjectImpl.Container implements Resource { + /** + * The cached value of the '{@link #getContains() Contains}' containment reference list. + * + * + * @see #getContains() + * @generated + * @ordered + */ + protected EList contains; + + /** + * + * + * @generated + */ + protected ResourceImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.RESOURCE; + } + + /** + * + * + * @generated + */ + @Override + public EList getContains() { + if (contains == null) { + contains = new EObjectContainmentEList(Root.class, this, TaxationPackage.RESOURCE__CONTAINS); + } + return contains; + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.RESOURCE__CONTAINS: + return ((InternalEList)getContains()).basicRemove(otherEnd, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.RESOURCE__CONTAINS: + return getContains(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.RESOURCE__CONTAINS: + getContains().clear(); + getContains().addAll((Collection)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.RESOURCE__CONTAINS: + getContains().clear(); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.RESOURCE__CONTAINS: + return contains != null && !contains.isEmpty(); + } + return super.eIsSet(featureID); + } + +} //ResourceImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/RootImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/RootImpl.java new file mode 100644 index 00000000..65a8d68c --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/RootImpl.java @@ -0,0 +1,39 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Root; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +/** + * + * An implementation of the model object 'Root'. + * + * + * @generated + */ +public abstract class RootImpl extends MinimalEObjectImpl.Container implements Root { + /** + * + * + * @generated + */ + protected RootImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.ROOT; + } + +} //RootImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Special_Expense_DSImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Special_Expense_DSImpl.java new file mode 100644 index 00000000..b603c761 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Special_Expense_DSImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Special_Expense_DS; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Special Expense DS'. + * + * + * @generated + */ +public class Special_Expense_DSImpl extends ExpenseImpl implements Special_Expense_DS { + /** + * + * + * @generated + */ + protected Special_Expense_DSImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.SPECIAL_EXPENSE_DS; + } + +} //Special_Expense_DSImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Spousal_Expense_ACImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Spousal_Expense_ACImpl.java new file mode 100644 index 00000000..911bf73e --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Spousal_Expense_ACImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Spousal_Expense_AC; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Spousal Expense AC'. + * + * + * @generated + */ +public class Spousal_Expense_ACImpl extends ExpenseImpl implements Spousal_Expense_AC { + /** + * + * + * @generated + */ + protected Spousal_Expense_ACImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.SPOUSAL_EXPENSE_AC; + } + +} //Spousal_Expense_ACImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Tax_CardImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Tax_CardImpl.java new file mode 100644 index 00000000..fb1f670c --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Tax_CardImpl.java @@ -0,0 +1,2093 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Address; +import TaxationWithRoot.Income; +import TaxationWithRoot.Income_Tax_Credit; +import TaxationWithRoot.Job_Activity; +import TaxationWithRoot.Tax_Card; +import TaxationWithRoot.Tax_Office; +import TaxationWithRoot.TaxationPackage; +import TaxationWithRoot.Town; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EDataTypeUniqueEList; +import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList; +import org.eclipse.emf.ecore.util.EcoreUtil; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'Tax Card'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getCard_identifier Card identifier}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getTax_office Tax office}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getPercentage_of_witholding Percentage of witholding}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getTax_payers_name_surname Tax payers name surname}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getTax_payers_partner_name_surname Tax payers partner name surname}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getTax_payers_address Tax payers address}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getJobs_Employer_SSNo Jobs Employer SS No}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getJobs_employers_name Jobs employers name}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getJobs_activity_type Jobs activity type}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getJobs_place_of_work Jobs place of work}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getDeduction_FD_daily Deduction FD daily}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getDeduction_FD_monthly Deduction FD monthly}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getDeduction_AC_daily Deduction AC daily}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getDeduction_AC_monthly Deduction AC monthly}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getDeduction_AC_yearly Deduction AC yearly}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getDeduction_CE_daily Deduction CE daily}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getDeduction_CE_monthly Deduction CE monthly}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getDeduction_CE_yearly Deduction CE yearly}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getDeduction_DS_daily Deduction DS daily}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getDeduction_DS_monthly Deduction DS monthly}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getDeduction_FO_daily Deduction FO daily}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getDeduction_FO_monthly Deduction FO monthly}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getDeduction_FO_yearly Deduction FO yearly}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getCredit_CIS_daily Credit CIS daily}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getCredit_CIS_monthly Credit CIS monthly}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getCredit_CIM_daily Credit CIM daily}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#isValidity Validity}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getIncome_Tax_Credit Income Tax Credit}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getPrevious Previous}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getCurrent_tax_card Current tax card}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getCredit_CIM_yearly Credit CIM yearly}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getDeduction_DS_Alimony_yearly Deduction DS Alimony yearly}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getDeduction_DS_Debt_yearly Deduction DS Debt yearly}
            • + *
            • {@link TaxationWithRoot.impl.Tax_CardImpl#getIncome Income}
            • + *
            + * + * @generated + */ +public class Tax_CardImpl extends MinimalEObjectImpl.Container implements Tax_Card { + /** + * The default value of the '{@link #getCard_identifier() Card identifier}' attribute. + * + * + * @see #getCard_identifier() + * @generated + * @ordered + */ + protected static final String CARD_IDENTIFIER_EDEFAULT = null; + + /** + * The cached value of the '{@link #getCard_identifier() Card identifier}' attribute. + * + * + * @see #getCard_identifier() + * @generated + * @ordered + */ + protected String card_identifier = CARD_IDENTIFIER_EDEFAULT; + + /** + * The default value of the '{@link #getTax_office() Tax office}' attribute. + * + * + * @see #getTax_office() + * @generated + * @ordered + */ + protected static final Tax_Office TAX_OFFICE_EDEFAULT = Tax_Office.RTS_2; + + /** + * The cached value of the '{@link #getTax_office() Tax office}' attribute. + * + * + * @see #getTax_office() + * @generated + * @ordered + */ + protected Tax_Office tax_office = TAX_OFFICE_EDEFAULT; + + /** + * The default value of the '{@link #getPercentage_of_witholding() Percentage of witholding}' attribute. + * + * + * @see #getPercentage_of_witholding() + * @generated + * @ordered + */ + protected static final double PERCENTAGE_OF_WITHOLDING_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getPercentage_of_witholding() Percentage of witholding}' attribute. + * + * + * @see #getPercentage_of_witholding() + * @generated + * @ordered + */ + protected double percentage_of_witholding = PERCENTAGE_OF_WITHOLDING_EDEFAULT; + + /** + * The cached value of the '{@link #getTax_payers_name_surname() Tax payers name surname}' attribute list. + * + * + * @see #getTax_payers_name_surname() + * @generated + * @ordered + */ + protected EList tax_payers_name_surname; + + /** + * The cached value of the '{@link #getTax_payers_partner_name_surname() Tax payers partner name surname}' attribute list. + * + * + * @see #getTax_payers_partner_name_surname() + * @generated + * @ordered + */ + protected EList tax_payers_partner_name_surname; + + /** + * The cached value of the '{@link #getTax_payers_address() Tax payers address}' reference. + * + * + * @see #getTax_payers_address() + * @generated + * @ordered + */ + protected Address tax_payers_address; + + /** + * The default value of the '{@link #getJobs_Employer_SSNo() Jobs Employer SS No}' attribute. + * + * + * @see #getJobs_Employer_SSNo() + * @generated + * @ordered + */ + protected static final String JOBS_EMPLOYER_SS_NO_EDEFAULT = null; + + /** + * The cached value of the '{@link #getJobs_Employer_SSNo() Jobs Employer SS No}' attribute. + * + * + * @see #getJobs_Employer_SSNo() + * @generated + * @ordered + */ + protected String jobs_Employer_SSNo = JOBS_EMPLOYER_SS_NO_EDEFAULT; + + /** + * The default value of the '{@link #getJobs_employers_name() Jobs employers name}' attribute. + * + * + * @see #getJobs_employers_name() + * @generated + * @ordered + */ + protected static final String JOBS_EMPLOYERS_NAME_EDEFAULT = null; + + /** + * The cached value of the '{@link #getJobs_employers_name() Jobs employers name}' attribute. + * + * + * @see #getJobs_employers_name() + * @generated + * @ordered + */ + protected String jobs_employers_name = JOBS_EMPLOYERS_NAME_EDEFAULT; + + /** + * The default value of the '{@link #getJobs_activity_type() Jobs activity type}' attribute. + * + * + * @see #getJobs_activity_type() + * @generated + * @ordered + */ + protected static final Job_Activity JOBS_ACTIVITY_TYPE_EDEFAULT = Job_Activity.SALARY; + + /** + * The cached value of the '{@link #getJobs_activity_type() Jobs activity type}' attribute. + * + * + * @see #getJobs_activity_type() + * @generated + * @ordered + */ + protected Job_Activity jobs_activity_type = JOBS_ACTIVITY_TYPE_EDEFAULT; + + /** + * The default value of the '{@link #getJobs_place_of_work() Jobs place of work}' attribute. + * + * + * @see #getJobs_place_of_work() + * @generated + * @ordered + */ + protected static final Town JOBS_PLACE_OF_WORK_EDEFAULT = Town.LL; + + /** + * The cached value of the '{@link #getJobs_place_of_work() Jobs place of work}' attribute. + * + * + * @see #getJobs_place_of_work() + * @generated + * @ordered + */ + protected Town jobs_place_of_work = JOBS_PLACE_OF_WORK_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_FD_daily() Deduction FD daily}' attribute. + * + * + * @see #getDeduction_FD_daily() + * @generated + * @ordered + */ + protected static final double DEDUCTION_FD_DAILY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_FD_daily() Deduction FD daily}' attribute. + * + * + * @see #getDeduction_FD_daily() + * @generated + * @ordered + */ + protected double deduction_FD_daily = DEDUCTION_FD_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_FD_monthly() Deduction FD monthly}' attribute. + * + * + * @see #getDeduction_FD_monthly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_FD_MONTHLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_FD_monthly() Deduction FD monthly}' attribute. + * + * + * @see #getDeduction_FD_monthly() + * @generated + * @ordered + */ + protected double deduction_FD_monthly = DEDUCTION_FD_MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_AC_daily() Deduction AC daily}' attribute. + * + * + * @see #getDeduction_AC_daily() + * @generated + * @ordered + */ + protected static final double DEDUCTION_AC_DAILY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_AC_daily() Deduction AC daily}' attribute. + * + * + * @see #getDeduction_AC_daily() + * @generated + * @ordered + */ + protected double deduction_AC_daily = DEDUCTION_AC_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_AC_monthly() Deduction AC monthly}' attribute. + * + * + * @see #getDeduction_AC_monthly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_AC_MONTHLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_AC_monthly() Deduction AC monthly}' attribute. + * + * + * @see #getDeduction_AC_monthly() + * @generated + * @ordered + */ + protected double deduction_AC_monthly = DEDUCTION_AC_MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_AC_yearly() Deduction AC yearly}' attribute. + * + * + * @see #getDeduction_AC_yearly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_AC_YEARLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_AC_yearly() Deduction AC yearly}' attribute. + * + * + * @see #getDeduction_AC_yearly() + * @generated + * @ordered + */ + protected double deduction_AC_yearly = DEDUCTION_AC_YEARLY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_CE_daily() Deduction CE daily}' attribute. + * + * + * @see #getDeduction_CE_daily() + * @generated + * @ordered + */ + protected static final double DEDUCTION_CE_DAILY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_CE_daily() Deduction CE daily}' attribute. + * + * + * @see #getDeduction_CE_daily() + * @generated + * @ordered + */ + protected double deduction_CE_daily = DEDUCTION_CE_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_CE_monthly() Deduction CE monthly}' attribute. + * + * + * @see #getDeduction_CE_monthly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_CE_MONTHLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_CE_monthly() Deduction CE monthly}' attribute. + * + * + * @see #getDeduction_CE_monthly() + * @generated + * @ordered + */ + protected double deduction_CE_monthly = DEDUCTION_CE_MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_CE_yearly() Deduction CE yearly}' attribute. + * + * + * @see #getDeduction_CE_yearly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_CE_YEARLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_CE_yearly() Deduction CE yearly}' attribute. + * + * + * @see #getDeduction_CE_yearly() + * @generated + * @ordered + */ + protected double deduction_CE_yearly = DEDUCTION_CE_YEARLY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_DS_daily() Deduction DS daily}' attribute. + * + * + * @see #getDeduction_DS_daily() + * @generated + * @ordered + */ + protected static final double DEDUCTION_DS_DAILY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_DS_daily() Deduction DS daily}' attribute. + * + * + * @see #getDeduction_DS_daily() + * @generated + * @ordered + */ + protected double deduction_DS_daily = DEDUCTION_DS_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_DS_monthly() Deduction DS monthly}' attribute. + * + * + * @see #getDeduction_DS_monthly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_DS_MONTHLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_DS_monthly() Deduction DS monthly}' attribute. + * + * + * @see #getDeduction_DS_monthly() + * @generated + * @ordered + */ + protected double deduction_DS_monthly = DEDUCTION_DS_MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_FO_daily() Deduction FO daily}' attribute. + * + * + * @see #getDeduction_FO_daily() + * @generated + * @ordered + */ + protected static final double DEDUCTION_FO_DAILY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_FO_daily() Deduction FO daily}' attribute. + * + * + * @see #getDeduction_FO_daily() + * @generated + * @ordered + */ + protected double deduction_FO_daily = DEDUCTION_FO_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_FO_monthly() Deduction FO monthly}' attribute. + * + * + * @see #getDeduction_FO_monthly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_FO_MONTHLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_FO_monthly() Deduction FO monthly}' attribute. + * + * + * @see #getDeduction_FO_monthly() + * @generated + * @ordered + */ + protected double deduction_FO_monthly = DEDUCTION_FO_MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_FO_yearly() Deduction FO yearly}' attribute. + * + * + * @see #getDeduction_FO_yearly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_FO_YEARLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_FO_yearly() Deduction FO yearly}' attribute. + * + * + * @see #getDeduction_FO_yearly() + * @generated + * @ordered + */ + protected double deduction_FO_yearly = DEDUCTION_FO_YEARLY_EDEFAULT; + + /** + * The default value of the '{@link #getCredit_CIS_daily() Credit CIS daily}' attribute. + * + * + * @see #getCredit_CIS_daily() + * @generated + * @ordered + */ + protected static final double CREDIT_CIS_DAILY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getCredit_CIS_daily() Credit CIS daily}' attribute. + * + * + * @see #getCredit_CIS_daily() + * @generated + * @ordered + */ + protected double credit_CIS_daily = CREDIT_CIS_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #getCredit_CIS_monthly() Credit CIS monthly}' attribute. + * + * + * @see #getCredit_CIS_monthly() + * @generated + * @ordered + */ + protected static final double CREDIT_CIS_MONTHLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getCredit_CIS_monthly() Credit CIS monthly}' attribute. + * + * + * @see #getCredit_CIS_monthly() + * @generated + * @ordered + */ + protected double credit_CIS_monthly = CREDIT_CIS_MONTHLY_EDEFAULT; + + /** + * The default value of the '{@link #getCredit_CIM_daily() Credit CIM daily}' attribute. + * + * + * @see #getCredit_CIM_daily() + * @generated + * @ordered + */ + protected static final double CREDIT_CIM_DAILY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getCredit_CIM_daily() Credit CIM daily}' attribute. + * + * + * @see #getCredit_CIM_daily() + * @generated + * @ordered + */ + protected double credit_CIM_daily = CREDIT_CIM_DAILY_EDEFAULT; + + /** + * The default value of the '{@link #isValidity() Validity}' attribute. + * + * + * @see #isValidity() + * @generated + * @ordered + */ + protected static final boolean VALIDITY_EDEFAULT = false; + + /** + * The cached value of the '{@link #isValidity() Validity}' attribute. + * + * + * @see #isValidity() + * @generated + * @ordered + */ + protected boolean validity = VALIDITY_EDEFAULT; + + /** + * The cached value of the '{@link #getIncome_Tax_Credit() Income Tax Credit}' reference list. + * + * + * @see #getIncome_Tax_Credit() + * @generated + * @ordered + */ + protected EList income_Tax_Credit; + + /** + * The cached value of the '{@link #getPrevious() Previous}' reference. + * + * + * @see #getPrevious() + * @generated + * @ordered + */ + protected Tax_Card previous; + + /** + * The cached value of the '{@link #getCurrent_tax_card() Current tax card}' reference. + * + * + * @see #getCurrent_tax_card() + * @generated + * @ordered + */ + protected Tax_Card current_tax_card; + + /** + * The default value of the '{@link #getCredit_CIM_yearly() Credit CIM yearly}' attribute. + * + * + * @see #getCredit_CIM_yearly() + * @generated + * @ordered + */ + protected static final double CREDIT_CIM_YEARLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getCredit_CIM_yearly() Credit CIM yearly}' attribute. + * + * + * @see #getCredit_CIM_yearly() + * @generated + * @ordered + */ + protected double credit_CIM_yearly = CREDIT_CIM_YEARLY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_DS_Alimony_yearly() Deduction DS Alimony yearly}' attribute. + * + * + * @see #getDeduction_DS_Alimony_yearly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_DS_ALIMONY_YEARLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_DS_Alimony_yearly() Deduction DS Alimony yearly}' attribute. + * + * + * @see #getDeduction_DS_Alimony_yearly() + * @generated + * @ordered + */ + protected double deduction_DS_Alimony_yearly = DEDUCTION_DS_ALIMONY_YEARLY_EDEFAULT; + + /** + * The default value of the '{@link #getDeduction_DS_Debt_yearly() Deduction DS Debt yearly}' attribute. + * + * + * @see #getDeduction_DS_Debt_yearly() + * @generated + * @ordered + */ + protected static final double DEDUCTION_DS_DEBT_YEARLY_EDEFAULT = 0.0; + + /** + * The cached value of the '{@link #getDeduction_DS_Debt_yearly() Deduction DS Debt yearly}' attribute. + * + * + * @see #getDeduction_DS_Debt_yearly() + * @generated + * @ordered + */ + protected double deduction_DS_Debt_yearly = DEDUCTION_DS_DEBT_YEARLY_EDEFAULT; + + /** + * + * + * @generated + */ + protected Tax_CardImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.TAX_CARD; + } + + /** + * + * + * @generated + */ + @Override + public String getCard_identifier() { + return card_identifier; + } + + /** + * + * + * @generated + */ + @Override + public void setCard_identifier(String newCard_identifier) { + String oldCard_identifier = card_identifier; + card_identifier = newCard_identifier; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__CARD_IDENTIFIER, oldCard_identifier, card_identifier)); + } + + /** + * + * + * @generated + */ + @Override + public Tax_Office getTax_office() { + return tax_office; + } + + /** + * + * + * @generated + */ + @Override + public void setTax_office(Tax_Office newTax_office) { + Tax_Office oldTax_office = tax_office; + tax_office = newTax_office == null ? TAX_OFFICE_EDEFAULT : newTax_office; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__TAX_OFFICE, oldTax_office, tax_office)); + } + + /** + * + * + * @generated + */ + @Override + public double getPercentage_of_witholding() { + return percentage_of_witholding; + } + + /** + * + * + * @generated + */ + @Override + public void setPercentage_of_witholding(double newPercentage_of_witholding) { + double oldPercentage_of_witholding = percentage_of_witholding; + percentage_of_witholding = newPercentage_of_witholding; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__PERCENTAGE_OF_WITHOLDING, oldPercentage_of_witholding, percentage_of_witholding)); + } + + /** + * + * + * @generated + */ + @Override + public EList getTax_payers_name_surname() { + if (tax_payers_name_surname == null) { + tax_payers_name_surname = new EDataTypeUniqueEList(String.class, this, TaxationPackage.TAX_CARD__TAX_PAYERS_NAME_SURNAME); + } + return tax_payers_name_surname; + } + + /** + * + * + * @generated + */ + @Override + public EList getTax_payers_partner_name_surname() { + if (tax_payers_partner_name_surname == null) { + tax_payers_partner_name_surname = new EDataTypeUniqueEList(String.class, this, TaxationPackage.TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME); + } + return tax_payers_partner_name_surname; + } + + /** + * + * + * @generated + */ + @Override + public Address getTax_payers_address() { + if (tax_payers_address != null && tax_payers_address.eIsProxy()) { + InternalEObject oldTax_payers_address = (InternalEObject)tax_payers_address; + tax_payers_address = (Address)eResolveProxy(oldTax_payers_address); + if (tax_payers_address != oldTax_payers_address) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.TAX_CARD__TAX_PAYERS_ADDRESS, oldTax_payers_address, tax_payers_address)); + } + } + return tax_payers_address; + } + + /** + * + * + * @generated + */ + public Address basicGetTax_payers_address() { + return tax_payers_address; + } + + /** + * + * + * @generated + */ + @Override + public void setTax_payers_address(Address newTax_payers_address) { + Address oldTax_payers_address = tax_payers_address; + tax_payers_address = newTax_payers_address; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__TAX_PAYERS_ADDRESS, oldTax_payers_address, tax_payers_address)); + } + + /** + * + * + * @generated + */ + @Override + public String getJobs_Employer_SSNo() { + return jobs_Employer_SSNo; + } + + /** + * + * + * @generated + */ + @Override + public void setJobs_Employer_SSNo(String newJobs_Employer_SSNo) { + String oldJobs_Employer_SSNo = jobs_Employer_SSNo; + jobs_Employer_SSNo = newJobs_Employer_SSNo; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__JOBS_EMPLOYER_SS_NO, oldJobs_Employer_SSNo, jobs_Employer_SSNo)); + } + + /** + * + * + * @generated + */ + @Override + public String getJobs_employers_name() { + return jobs_employers_name; + } + + /** + * + * + * @generated + */ + @Override + public void setJobs_employers_name(String newJobs_employers_name) { + String oldJobs_employers_name = jobs_employers_name; + jobs_employers_name = newJobs_employers_name; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__JOBS_EMPLOYERS_NAME, oldJobs_employers_name, jobs_employers_name)); + } + + /** + * + * + * @generated + */ + @Override + public Job_Activity getJobs_activity_type() { + return jobs_activity_type; + } + + /** + * + * + * @generated + */ + @Override + public void setJobs_activity_type(Job_Activity newJobs_activity_type) { + Job_Activity oldJobs_activity_type = jobs_activity_type; + jobs_activity_type = newJobs_activity_type == null ? JOBS_ACTIVITY_TYPE_EDEFAULT : newJobs_activity_type; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__JOBS_ACTIVITY_TYPE, oldJobs_activity_type, jobs_activity_type)); + } + + /** + * + * + * @generated + */ + @Override + public Town getJobs_place_of_work() { + return jobs_place_of_work; + } + + /** + * + * + * @generated + */ + @Override + public void setJobs_place_of_work(Town newJobs_place_of_work) { + Town oldJobs_place_of_work = jobs_place_of_work; + jobs_place_of_work = newJobs_place_of_work == null ? JOBS_PLACE_OF_WORK_EDEFAULT : newJobs_place_of_work; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__JOBS_PLACE_OF_WORK, oldJobs_place_of_work, jobs_place_of_work)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_FD_daily() { + return deduction_FD_daily; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_FD_daily(double newDeduction_FD_daily) { + double oldDeduction_FD_daily = deduction_FD_daily; + deduction_FD_daily = newDeduction_FD_daily; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_FD_DAILY, oldDeduction_FD_daily, deduction_FD_daily)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_FD_monthly() { + return deduction_FD_monthly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_FD_monthly(double newDeduction_FD_monthly) { + double oldDeduction_FD_monthly = deduction_FD_monthly; + deduction_FD_monthly = newDeduction_FD_monthly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_FD_MONTHLY, oldDeduction_FD_monthly, deduction_FD_monthly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_AC_daily() { + return deduction_AC_daily; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_AC_daily(double newDeduction_AC_daily) { + double oldDeduction_AC_daily = deduction_AC_daily; + deduction_AC_daily = newDeduction_AC_daily; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_AC_DAILY, oldDeduction_AC_daily, deduction_AC_daily)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_AC_monthly() { + return deduction_AC_monthly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_AC_monthly(double newDeduction_AC_monthly) { + double oldDeduction_AC_monthly = deduction_AC_monthly; + deduction_AC_monthly = newDeduction_AC_monthly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_AC_MONTHLY, oldDeduction_AC_monthly, deduction_AC_monthly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_AC_yearly() { + return deduction_AC_yearly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_AC_yearly(double newDeduction_AC_yearly) { + double oldDeduction_AC_yearly = deduction_AC_yearly; + deduction_AC_yearly = newDeduction_AC_yearly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_AC_YEARLY, oldDeduction_AC_yearly, deduction_AC_yearly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_CE_daily() { + return deduction_CE_daily; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_CE_daily(double newDeduction_CE_daily) { + double oldDeduction_CE_daily = deduction_CE_daily; + deduction_CE_daily = newDeduction_CE_daily; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_CE_DAILY, oldDeduction_CE_daily, deduction_CE_daily)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_CE_monthly() { + return deduction_CE_monthly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_CE_monthly(double newDeduction_CE_monthly) { + double oldDeduction_CE_monthly = deduction_CE_monthly; + deduction_CE_monthly = newDeduction_CE_monthly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_CE_MONTHLY, oldDeduction_CE_monthly, deduction_CE_monthly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_CE_yearly() { + return deduction_CE_yearly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_CE_yearly(double newDeduction_CE_yearly) { + double oldDeduction_CE_yearly = deduction_CE_yearly; + deduction_CE_yearly = newDeduction_CE_yearly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_CE_YEARLY, oldDeduction_CE_yearly, deduction_CE_yearly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_DS_daily() { + return deduction_DS_daily; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_DS_daily(double newDeduction_DS_daily) { + double oldDeduction_DS_daily = deduction_DS_daily; + deduction_DS_daily = newDeduction_DS_daily; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_DS_DAILY, oldDeduction_DS_daily, deduction_DS_daily)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_DS_monthly() { + return deduction_DS_monthly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_DS_monthly(double newDeduction_DS_monthly) { + double oldDeduction_DS_monthly = deduction_DS_monthly; + deduction_DS_monthly = newDeduction_DS_monthly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_DS_MONTHLY, oldDeduction_DS_monthly, deduction_DS_monthly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_FO_daily() { + return deduction_FO_daily; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_FO_daily(double newDeduction_FO_daily) { + double oldDeduction_FO_daily = deduction_FO_daily; + deduction_FO_daily = newDeduction_FO_daily; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_FO_DAILY, oldDeduction_FO_daily, deduction_FO_daily)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_FO_monthly() { + return deduction_FO_monthly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_FO_monthly(double newDeduction_FO_monthly) { + double oldDeduction_FO_monthly = deduction_FO_monthly; + deduction_FO_monthly = newDeduction_FO_monthly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_FO_MONTHLY, oldDeduction_FO_monthly, deduction_FO_monthly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_FO_yearly() { + return deduction_FO_yearly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_FO_yearly(double newDeduction_FO_yearly) { + double oldDeduction_FO_yearly = deduction_FO_yearly; + deduction_FO_yearly = newDeduction_FO_yearly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_FO_YEARLY, oldDeduction_FO_yearly, deduction_FO_yearly)); + } + + /** + * + * + * @generated + */ + @Override + public double getCredit_CIS_daily() { + return credit_CIS_daily; + } + + /** + * + * + * @generated + */ + @Override + public void setCredit_CIS_daily(double newCredit_CIS_daily) { + double oldCredit_CIS_daily = credit_CIS_daily; + credit_CIS_daily = newCredit_CIS_daily; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__CREDIT_CIS_DAILY, oldCredit_CIS_daily, credit_CIS_daily)); + } + + /** + * + * + * @generated + */ + @Override + public double getCredit_CIS_monthly() { + return credit_CIS_monthly; + } + + /** + * + * + * @generated + */ + @Override + public void setCredit_CIS_monthly(double newCredit_CIS_monthly) { + double oldCredit_CIS_monthly = credit_CIS_monthly; + credit_CIS_monthly = newCredit_CIS_monthly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__CREDIT_CIS_MONTHLY, oldCredit_CIS_monthly, credit_CIS_monthly)); + } + + /** + * + * + * @generated + */ + @Override + public double getCredit_CIM_daily() { + return credit_CIM_daily; + } + + /** + * + * + * @generated + */ + @Override + public void setCredit_CIM_daily(double newCredit_CIM_daily) { + double oldCredit_CIM_daily = credit_CIM_daily; + credit_CIM_daily = newCredit_CIM_daily; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__CREDIT_CIM_DAILY, oldCredit_CIM_daily, credit_CIM_daily)); + } + + /** + * + * + * @generated + */ + @Override + public boolean isValidity() { + return validity; + } + + /** + * + * + * @generated + */ + @Override + public void setValidity(boolean newValidity) { + boolean oldValidity = validity; + validity = newValidity; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__VALIDITY, oldValidity, validity)); + } + + /** + * + * + * @generated + */ + @Override + public EList getIncome_Tax_Credit() { + if (income_Tax_Credit == null) { + income_Tax_Credit = new EObjectWithInverseResolvingEList(Income_Tax_Credit.class, this, TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT, TaxationPackage.INCOME_TAX_CREDIT__TAXATION_FRAME); + } + return income_Tax_Credit; + } + + /** + * + * + * @generated + */ + @Override + public Tax_Card getPrevious() { + if (previous != null && previous.eIsProxy()) { + InternalEObject oldPrevious = (InternalEObject)previous; + previous = (Tax_Card)eResolveProxy(oldPrevious); + if (previous != oldPrevious) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.TAX_CARD__PREVIOUS, oldPrevious, previous)); + } + } + return previous; + } + + /** + * + * + * @generated + */ + public Tax_Card basicGetPrevious() { + return previous; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetPrevious(Tax_Card newPrevious, NotificationChain msgs) { + Tax_Card oldPrevious = previous; + previous = newPrevious; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__PREVIOUS, oldPrevious, newPrevious); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setPrevious(Tax_Card newPrevious) { + if (newPrevious != previous) { + NotificationChain msgs = null; + if (previous != null) + msgs = ((InternalEObject)previous).eInverseRemove(this, TaxationPackage.TAX_CARD__CURRENT_TAX_CARD, Tax_Card.class, msgs); + if (newPrevious != null) + msgs = ((InternalEObject)newPrevious).eInverseAdd(this, TaxationPackage.TAX_CARD__CURRENT_TAX_CARD, Tax_Card.class, msgs); + msgs = basicSetPrevious(newPrevious, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__PREVIOUS, newPrevious, newPrevious)); + } + + /** + * + * + * @generated + */ + @Override + public Tax_Card getCurrent_tax_card() { + if (current_tax_card != null && current_tax_card.eIsProxy()) { + InternalEObject oldCurrent_tax_card = (InternalEObject)current_tax_card; + current_tax_card = (Tax_Card)eResolveProxy(oldCurrent_tax_card); + if (current_tax_card != oldCurrent_tax_card) { + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.RESOLVE, TaxationPackage.TAX_CARD__CURRENT_TAX_CARD, oldCurrent_tax_card, current_tax_card)); + } + } + return current_tax_card; + } + + /** + * + * + * @generated + */ + public Tax_Card basicGetCurrent_tax_card() { + return current_tax_card; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetCurrent_tax_card(Tax_Card newCurrent_tax_card, NotificationChain msgs) { + Tax_Card oldCurrent_tax_card = current_tax_card; + current_tax_card = newCurrent_tax_card; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__CURRENT_TAX_CARD, oldCurrent_tax_card, newCurrent_tax_card); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setCurrent_tax_card(Tax_Card newCurrent_tax_card) { + if (newCurrent_tax_card != current_tax_card) { + NotificationChain msgs = null; + if (current_tax_card != null) + msgs = ((InternalEObject)current_tax_card).eInverseRemove(this, TaxationPackage.TAX_CARD__PREVIOUS, Tax_Card.class, msgs); + if (newCurrent_tax_card != null) + msgs = ((InternalEObject)newCurrent_tax_card).eInverseAdd(this, TaxationPackage.TAX_CARD__PREVIOUS, Tax_Card.class, msgs); + msgs = basicSetCurrent_tax_card(newCurrent_tax_card, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__CURRENT_TAX_CARD, newCurrent_tax_card, newCurrent_tax_card)); + } + + /** + * + * + * @generated + */ + @Override + public double getCredit_CIM_yearly() { + return credit_CIM_yearly; + } + + /** + * + * + * @generated + */ + @Override + public void setCredit_CIM_yearly(double newCredit_CIM_yearly) { + double oldCredit_CIM_yearly = credit_CIM_yearly; + credit_CIM_yearly = newCredit_CIM_yearly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__CREDIT_CIM_YEARLY, oldCredit_CIM_yearly, credit_CIM_yearly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_DS_Alimony_yearly() { + return deduction_DS_Alimony_yearly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_DS_Alimony_yearly(double newDeduction_DS_Alimony_yearly) { + double oldDeduction_DS_Alimony_yearly = deduction_DS_Alimony_yearly; + deduction_DS_Alimony_yearly = newDeduction_DS_Alimony_yearly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY, oldDeduction_DS_Alimony_yearly, deduction_DS_Alimony_yearly)); + } + + /** + * + * + * @generated + */ + @Override + public double getDeduction_DS_Debt_yearly() { + return deduction_DS_Debt_yearly; + } + + /** + * + * + * @generated + */ + @Override + public void setDeduction_DS_Debt_yearly(double newDeduction_DS_Debt_yearly) { + double oldDeduction_DS_Debt_yearly = deduction_DS_Debt_yearly; + deduction_DS_Debt_yearly = newDeduction_DS_Debt_yearly; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__DEDUCTION_DS_DEBT_YEARLY, oldDeduction_DS_Debt_yearly, deduction_DS_Debt_yearly)); + } + + /** + * + * + * @generated + */ + @Override + public Income getIncome() { + if (eContainerFeatureID() != TaxationPackage.TAX_CARD__INCOME) return null; + return (Income)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetIncome(Income newIncome, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newIncome, TaxationPackage.TAX_CARD__INCOME, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setIncome(Income newIncome) { + if (newIncome != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.TAX_CARD__INCOME && newIncome != null)) { + if (EcoreUtil.isAncestor(this, newIncome)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newIncome != null) + msgs = ((InternalEObject)newIncome).eInverseAdd(this, TaxationPackage.INCOME__TAX_CARD, Income.class, msgs); + msgs = basicSetIncome(newIncome, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_CARD__INCOME, newIncome, newIncome)); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT: + return ((InternalEList)(InternalEList)getIncome_Tax_Credit()).basicAdd(otherEnd, msgs); + case TaxationPackage.TAX_CARD__PREVIOUS: + if (previous != null) + msgs = ((InternalEObject)previous).eInverseRemove(this, TaxationPackage.TAX_CARD__CURRENT_TAX_CARD, Tax_Card.class, msgs); + return basicSetPrevious((Tax_Card)otherEnd, msgs); + case TaxationPackage.TAX_CARD__CURRENT_TAX_CARD: + if (current_tax_card != null) + msgs = ((InternalEObject)current_tax_card).eInverseRemove(this, TaxationPackage.TAX_CARD__PREVIOUS, Tax_Card.class, msgs); + return basicSetCurrent_tax_card((Tax_Card)otherEnd, msgs); + case TaxationPackage.TAX_CARD__INCOME: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetIncome((Income)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT: + return ((InternalEList)getIncome_Tax_Credit()).basicRemove(otherEnd, msgs); + case TaxationPackage.TAX_CARD__PREVIOUS: + return basicSetPrevious(null, msgs); + case TaxationPackage.TAX_CARD__CURRENT_TAX_CARD: + return basicSetCurrent_tax_card(null, msgs); + case TaxationPackage.TAX_CARD__INCOME: + return basicSetIncome(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.TAX_CARD__INCOME: + return eInternalContainer().eInverseRemove(this, TaxationPackage.INCOME__TAX_CARD, Income.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.TAX_CARD__CARD_IDENTIFIER: + return getCard_identifier(); + case TaxationPackage.TAX_CARD__TAX_OFFICE: + return getTax_office(); + case TaxationPackage.TAX_CARD__PERCENTAGE_OF_WITHOLDING: + return getPercentage_of_witholding(); + case TaxationPackage.TAX_CARD__TAX_PAYERS_NAME_SURNAME: + return getTax_payers_name_surname(); + case TaxationPackage.TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME: + return getTax_payers_partner_name_surname(); + case TaxationPackage.TAX_CARD__TAX_PAYERS_ADDRESS: + if (resolve) return getTax_payers_address(); + return basicGetTax_payers_address(); + case TaxationPackage.TAX_CARD__JOBS_EMPLOYER_SS_NO: + return getJobs_Employer_SSNo(); + case TaxationPackage.TAX_CARD__JOBS_EMPLOYERS_NAME: + return getJobs_employers_name(); + case TaxationPackage.TAX_CARD__JOBS_ACTIVITY_TYPE: + return getJobs_activity_type(); + case TaxationPackage.TAX_CARD__JOBS_PLACE_OF_WORK: + return getJobs_place_of_work(); + case TaxationPackage.TAX_CARD__DEDUCTION_FD_DAILY: + return getDeduction_FD_daily(); + case TaxationPackage.TAX_CARD__DEDUCTION_FD_MONTHLY: + return getDeduction_FD_monthly(); + case TaxationPackage.TAX_CARD__DEDUCTION_AC_DAILY: + return getDeduction_AC_daily(); + case TaxationPackage.TAX_CARD__DEDUCTION_AC_MONTHLY: + return getDeduction_AC_monthly(); + case TaxationPackage.TAX_CARD__DEDUCTION_AC_YEARLY: + return getDeduction_AC_yearly(); + case TaxationPackage.TAX_CARD__DEDUCTION_CE_DAILY: + return getDeduction_CE_daily(); + case TaxationPackage.TAX_CARD__DEDUCTION_CE_MONTHLY: + return getDeduction_CE_monthly(); + case TaxationPackage.TAX_CARD__DEDUCTION_CE_YEARLY: + return getDeduction_CE_yearly(); + case TaxationPackage.TAX_CARD__DEDUCTION_DS_DAILY: + return getDeduction_DS_daily(); + case TaxationPackage.TAX_CARD__DEDUCTION_DS_MONTHLY: + return getDeduction_DS_monthly(); + case TaxationPackage.TAX_CARD__DEDUCTION_FO_DAILY: + return getDeduction_FO_daily(); + case TaxationPackage.TAX_CARD__DEDUCTION_FO_MONTHLY: + return getDeduction_FO_monthly(); + case TaxationPackage.TAX_CARD__DEDUCTION_FO_YEARLY: + return getDeduction_FO_yearly(); + case TaxationPackage.TAX_CARD__CREDIT_CIS_DAILY: + return getCredit_CIS_daily(); + case TaxationPackage.TAX_CARD__CREDIT_CIS_MONTHLY: + return getCredit_CIS_monthly(); + case TaxationPackage.TAX_CARD__CREDIT_CIM_DAILY: + return getCredit_CIM_daily(); + case TaxationPackage.TAX_CARD__VALIDITY: + return isValidity(); + case TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT: + return getIncome_Tax_Credit(); + case TaxationPackage.TAX_CARD__PREVIOUS: + if (resolve) return getPrevious(); + return basicGetPrevious(); + case TaxationPackage.TAX_CARD__CURRENT_TAX_CARD: + if (resolve) return getCurrent_tax_card(); + return basicGetCurrent_tax_card(); + case TaxationPackage.TAX_CARD__CREDIT_CIM_YEARLY: + return getCredit_CIM_yearly(); + case TaxationPackage.TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY: + return getDeduction_DS_Alimony_yearly(); + case TaxationPackage.TAX_CARD__DEDUCTION_DS_DEBT_YEARLY: + return getDeduction_DS_Debt_yearly(); + case TaxationPackage.TAX_CARD__INCOME: + return getIncome(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.TAX_CARD__CARD_IDENTIFIER: + setCard_identifier((String)newValue); + return; + case TaxationPackage.TAX_CARD__TAX_OFFICE: + setTax_office((Tax_Office)newValue); + return; + case TaxationPackage.TAX_CARD__PERCENTAGE_OF_WITHOLDING: + setPercentage_of_witholding((Double)newValue); + return; + case TaxationPackage.TAX_CARD__TAX_PAYERS_NAME_SURNAME: + getTax_payers_name_surname().clear(); + getTax_payers_name_surname().addAll((Collection)newValue); + return; + case TaxationPackage.TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME: + getTax_payers_partner_name_surname().clear(); + getTax_payers_partner_name_surname().addAll((Collection)newValue); + return; + case TaxationPackage.TAX_CARD__TAX_PAYERS_ADDRESS: + setTax_payers_address((Address)newValue); + return; + case TaxationPackage.TAX_CARD__JOBS_EMPLOYER_SS_NO: + setJobs_Employer_SSNo((String)newValue); + return; + case TaxationPackage.TAX_CARD__JOBS_EMPLOYERS_NAME: + setJobs_employers_name((String)newValue); + return; + case TaxationPackage.TAX_CARD__JOBS_ACTIVITY_TYPE: + setJobs_activity_type((Job_Activity)newValue); + return; + case TaxationPackage.TAX_CARD__JOBS_PLACE_OF_WORK: + setJobs_place_of_work((Town)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FD_DAILY: + setDeduction_FD_daily((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FD_MONTHLY: + setDeduction_FD_monthly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_AC_DAILY: + setDeduction_AC_daily((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_AC_MONTHLY: + setDeduction_AC_monthly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_AC_YEARLY: + setDeduction_AC_yearly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_CE_DAILY: + setDeduction_CE_daily((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_CE_MONTHLY: + setDeduction_CE_monthly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_CE_YEARLY: + setDeduction_CE_yearly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_DAILY: + setDeduction_DS_daily((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_MONTHLY: + setDeduction_DS_monthly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FO_DAILY: + setDeduction_FO_daily((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FO_MONTHLY: + setDeduction_FO_monthly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FO_YEARLY: + setDeduction_FO_yearly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__CREDIT_CIS_DAILY: + setCredit_CIS_daily((Double)newValue); + return; + case TaxationPackage.TAX_CARD__CREDIT_CIS_MONTHLY: + setCredit_CIS_monthly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__CREDIT_CIM_DAILY: + setCredit_CIM_daily((Double)newValue); + return; + case TaxationPackage.TAX_CARD__VALIDITY: + setValidity((Boolean)newValue); + return; + case TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT: + getIncome_Tax_Credit().clear(); + getIncome_Tax_Credit().addAll((Collection)newValue); + return; + case TaxationPackage.TAX_CARD__PREVIOUS: + setPrevious((Tax_Card)newValue); + return; + case TaxationPackage.TAX_CARD__CURRENT_TAX_CARD: + setCurrent_tax_card((Tax_Card)newValue); + return; + case TaxationPackage.TAX_CARD__CREDIT_CIM_YEARLY: + setCredit_CIM_yearly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY: + setDeduction_DS_Alimony_yearly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_DEBT_YEARLY: + setDeduction_DS_Debt_yearly((Double)newValue); + return; + case TaxationPackage.TAX_CARD__INCOME: + setIncome((Income)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.TAX_CARD__CARD_IDENTIFIER: + setCard_identifier(CARD_IDENTIFIER_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__TAX_OFFICE: + setTax_office(TAX_OFFICE_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__PERCENTAGE_OF_WITHOLDING: + setPercentage_of_witholding(PERCENTAGE_OF_WITHOLDING_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__TAX_PAYERS_NAME_SURNAME: + getTax_payers_name_surname().clear(); + return; + case TaxationPackage.TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME: + getTax_payers_partner_name_surname().clear(); + return; + case TaxationPackage.TAX_CARD__TAX_PAYERS_ADDRESS: + setTax_payers_address((Address)null); + return; + case TaxationPackage.TAX_CARD__JOBS_EMPLOYER_SS_NO: + setJobs_Employer_SSNo(JOBS_EMPLOYER_SS_NO_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__JOBS_EMPLOYERS_NAME: + setJobs_employers_name(JOBS_EMPLOYERS_NAME_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__JOBS_ACTIVITY_TYPE: + setJobs_activity_type(JOBS_ACTIVITY_TYPE_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__JOBS_PLACE_OF_WORK: + setJobs_place_of_work(JOBS_PLACE_OF_WORK_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FD_DAILY: + setDeduction_FD_daily(DEDUCTION_FD_DAILY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FD_MONTHLY: + setDeduction_FD_monthly(DEDUCTION_FD_MONTHLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_AC_DAILY: + setDeduction_AC_daily(DEDUCTION_AC_DAILY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_AC_MONTHLY: + setDeduction_AC_monthly(DEDUCTION_AC_MONTHLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_AC_YEARLY: + setDeduction_AC_yearly(DEDUCTION_AC_YEARLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_CE_DAILY: + setDeduction_CE_daily(DEDUCTION_CE_DAILY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_CE_MONTHLY: + setDeduction_CE_monthly(DEDUCTION_CE_MONTHLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_CE_YEARLY: + setDeduction_CE_yearly(DEDUCTION_CE_YEARLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_DAILY: + setDeduction_DS_daily(DEDUCTION_DS_DAILY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_MONTHLY: + setDeduction_DS_monthly(DEDUCTION_DS_MONTHLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FO_DAILY: + setDeduction_FO_daily(DEDUCTION_FO_DAILY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FO_MONTHLY: + setDeduction_FO_monthly(DEDUCTION_FO_MONTHLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_FO_YEARLY: + setDeduction_FO_yearly(DEDUCTION_FO_YEARLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__CREDIT_CIS_DAILY: + setCredit_CIS_daily(CREDIT_CIS_DAILY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__CREDIT_CIS_MONTHLY: + setCredit_CIS_monthly(CREDIT_CIS_MONTHLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__CREDIT_CIM_DAILY: + setCredit_CIM_daily(CREDIT_CIM_DAILY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__VALIDITY: + setValidity(VALIDITY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT: + getIncome_Tax_Credit().clear(); + return; + case TaxationPackage.TAX_CARD__PREVIOUS: + setPrevious((Tax_Card)null); + return; + case TaxationPackage.TAX_CARD__CURRENT_TAX_CARD: + setCurrent_tax_card((Tax_Card)null); + return; + case TaxationPackage.TAX_CARD__CREDIT_CIM_YEARLY: + setCredit_CIM_yearly(CREDIT_CIM_YEARLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY: + setDeduction_DS_Alimony_yearly(DEDUCTION_DS_ALIMONY_YEARLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_DEBT_YEARLY: + setDeduction_DS_Debt_yearly(DEDUCTION_DS_DEBT_YEARLY_EDEFAULT); + return; + case TaxationPackage.TAX_CARD__INCOME: + setIncome((Income)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.TAX_CARD__CARD_IDENTIFIER: + return CARD_IDENTIFIER_EDEFAULT == null ? card_identifier != null : !CARD_IDENTIFIER_EDEFAULT.equals(card_identifier); + case TaxationPackage.TAX_CARD__TAX_OFFICE: + return tax_office != TAX_OFFICE_EDEFAULT; + case TaxationPackage.TAX_CARD__PERCENTAGE_OF_WITHOLDING: + return percentage_of_witholding != PERCENTAGE_OF_WITHOLDING_EDEFAULT; + case TaxationPackage.TAX_CARD__TAX_PAYERS_NAME_SURNAME: + return tax_payers_name_surname != null && !tax_payers_name_surname.isEmpty(); + case TaxationPackage.TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME: + return tax_payers_partner_name_surname != null && !tax_payers_partner_name_surname.isEmpty(); + case TaxationPackage.TAX_CARD__TAX_PAYERS_ADDRESS: + return tax_payers_address != null; + case TaxationPackage.TAX_CARD__JOBS_EMPLOYER_SS_NO: + return JOBS_EMPLOYER_SS_NO_EDEFAULT == null ? jobs_Employer_SSNo != null : !JOBS_EMPLOYER_SS_NO_EDEFAULT.equals(jobs_Employer_SSNo); + case TaxationPackage.TAX_CARD__JOBS_EMPLOYERS_NAME: + return JOBS_EMPLOYERS_NAME_EDEFAULT == null ? jobs_employers_name != null : !JOBS_EMPLOYERS_NAME_EDEFAULT.equals(jobs_employers_name); + case TaxationPackage.TAX_CARD__JOBS_ACTIVITY_TYPE: + return jobs_activity_type != JOBS_ACTIVITY_TYPE_EDEFAULT; + case TaxationPackage.TAX_CARD__JOBS_PLACE_OF_WORK: + return jobs_place_of_work != JOBS_PLACE_OF_WORK_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_FD_DAILY: + return deduction_FD_daily != DEDUCTION_FD_DAILY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_FD_MONTHLY: + return deduction_FD_monthly != DEDUCTION_FD_MONTHLY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_AC_DAILY: + return deduction_AC_daily != DEDUCTION_AC_DAILY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_AC_MONTHLY: + return deduction_AC_monthly != DEDUCTION_AC_MONTHLY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_AC_YEARLY: + return deduction_AC_yearly != DEDUCTION_AC_YEARLY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_CE_DAILY: + return deduction_CE_daily != DEDUCTION_CE_DAILY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_CE_MONTHLY: + return deduction_CE_monthly != DEDUCTION_CE_MONTHLY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_CE_YEARLY: + return deduction_CE_yearly != DEDUCTION_CE_YEARLY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_DAILY: + return deduction_DS_daily != DEDUCTION_DS_DAILY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_MONTHLY: + return deduction_DS_monthly != DEDUCTION_DS_MONTHLY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_FO_DAILY: + return deduction_FO_daily != DEDUCTION_FO_DAILY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_FO_MONTHLY: + return deduction_FO_monthly != DEDUCTION_FO_MONTHLY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_FO_YEARLY: + return deduction_FO_yearly != DEDUCTION_FO_YEARLY_EDEFAULT; + case TaxationPackage.TAX_CARD__CREDIT_CIS_DAILY: + return credit_CIS_daily != CREDIT_CIS_DAILY_EDEFAULT; + case TaxationPackage.TAX_CARD__CREDIT_CIS_MONTHLY: + return credit_CIS_monthly != CREDIT_CIS_MONTHLY_EDEFAULT; + case TaxationPackage.TAX_CARD__CREDIT_CIM_DAILY: + return credit_CIM_daily != CREDIT_CIM_DAILY_EDEFAULT; + case TaxationPackage.TAX_CARD__VALIDITY: + return validity != VALIDITY_EDEFAULT; + case TaxationPackage.TAX_CARD__INCOME_TAX_CREDIT: + return income_Tax_Credit != null && !income_Tax_Credit.isEmpty(); + case TaxationPackage.TAX_CARD__PREVIOUS: + return previous != null; + case TaxationPackage.TAX_CARD__CURRENT_TAX_CARD: + return current_tax_card != null; + case TaxationPackage.TAX_CARD__CREDIT_CIM_YEARLY: + return credit_CIM_yearly != CREDIT_CIM_YEARLY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY: + return deduction_DS_Alimony_yearly != DEDUCTION_DS_ALIMONY_YEARLY_EDEFAULT; + case TaxationPackage.TAX_CARD__DEDUCTION_DS_DEBT_YEARLY: + return deduction_DS_Debt_yearly != DEDUCTION_DS_DEBT_YEARLY_EDEFAULT; + case TaxationPackage.TAX_CARD__INCOME: + return getIncome() != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (card_identifier: "); + result.append(card_identifier); + result.append(", tax_office: "); + result.append(tax_office); + result.append(", percentage_of_witholding: "); + result.append(percentage_of_witholding); + result.append(", tax_payers_name_surname: "); + result.append(tax_payers_name_surname); + result.append(", tax_payers_partner_name_surname: "); + result.append(tax_payers_partner_name_surname); + result.append(", jobs_Employer_SSNo: "); + result.append(jobs_Employer_SSNo); + result.append(", jobs_employers_name: "); + result.append(jobs_employers_name); + result.append(", jobs_activity_type: "); + result.append(jobs_activity_type); + result.append(", jobs_place_of_work: "); + result.append(jobs_place_of_work); + result.append(", deduction_FD_daily: "); + result.append(deduction_FD_daily); + result.append(", deduction_FD_monthly: "); + result.append(deduction_FD_monthly); + result.append(", deduction_AC_daily: "); + result.append(deduction_AC_daily); + result.append(", deduction_AC_monthly: "); + result.append(deduction_AC_monthly); + result.append(", deduction_AC_yearly: "); + result.append(deduction_AC_yearly); + result.append(", deduction_CE_daily: "); + result.append(deduction_CE_daily); + result.append(", deduction_CE_monthly: "); + result.append(deduction_CE_monthly); + result.append(", deduction_CE_yearly: "); + result.append(deduction_CE_yearly); + result.append(", deduction_DS_daily: "); + result.append(deduction_DS_daily); + result.append(", deduction_DS_monthly: "); + result.append(deduction_DS_monthly); + result.append(", deduction_FO_daily: "); + result.append(deduction_FO_daily); + result.append(", deduction_FO_monthly: "); + result.append(deduction_FO_monthly); + result.append(", deduction_FO_yearly: "); + result.append(deduction_FO_yearly); + result.append(", credit_CIS_daily: "); + result.append(credit_CIS_daily); + result.append(", credit_CIS_monthly: "); + result.append(credit_CIS_monthly); + result.append(", credit_CIM_daily: "); + result.append(credit_CIM_daily); + result.append(", validity: "); + result.append(validity); + result.append(", credit_CIM_yearly: "); + result.append(credit_CIM_yearly); + result.append(", deduction_DS_Alimony_yearly: "); + result.append(deduction_DS_Alimony_yearly); + result.append(", deduction_DS_Debt_yearly: "); + result.append(deduction_DS_Debt_yearly); + result.append(')'); + return result.toString(); + } + +} //Tax_CardImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Tax_PayerImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Tax_PayerImpl.java new file mode 100644 index 00000000..859b1f84 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Tax_PayerImpl.java @@ -0,0 +1,355 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Dependent; +import TaxationWithRoot.FromAgent; +import TaxationWithRoot.FromLaw; +import TaxationWithRoot.Income; +import TaxationWithRoot.Tax_Payer; +import TaxationWithRoot.TaxationPackage; + +import java.util.Collection; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.common.util.EList; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; + +import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; +import org.eclipse.emf.ecore.util.InternalEList; + +/** + * + * An implementation of the model object 'Tax Payer'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.Tax_PayerImpl#getDependents Dependents}
            • + *
            • {@link TaxationWithRoot.impl.Tax_PayerImpl#getFrom_agent From agent}
            • + *
            • {@link TaxationWithRoot.impl.Tax_PayerImpl#getIncomes Incomes}
            • + *
            • {@link TaxationWithRoot.impl.Tax_PayerImpl#getFrom_law From law}
            • + *
            + * + * @generated + */ +public abstract class Tax_PayerImpl extends Physical_PersonImpl implements Tax_Payer { + /** + * The cached value of the '{@link #getDependents() Dependents}' containment reference list. + * + * + * @see #getDependents() + * @generated + * @ordered + */ + protected EList dependents; + + /** + * The cached value of the '{@link #getFrom_agent() From agent}' containment reference. + * + * + * @see #getFrom_agent() + * @generated + * @ordered + */ + protected FromAgent from_agent; + + /** + * The cached value of the '{@link #getIncomes() Incomes}' containment reference list. + * + * + * @see #getIncomes() + * @generated + * @ordered + */ + protected EList incomes; + + /** + * The cached value of the '{@link #getFrom_law() From law}' containment reference. + * + * + * @see #getFrom_law() + * @generated + * @ordered + */ + protected FromLaw from_law; + + /** + * + * + * @generated + */ + protected Tax_PayerImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.TAX_PAYER; + } + + /** + * + * + * @generated + */ + @Override + public EList getDependents() { + if (dependents == null) { + dependents = new EObjectContainmentWithInverseEList(Dependent.class, this, TaxationPackage.TAX_PAYER__DEPENDENTS, TaxationPackage.DEPENDENT__RESPONSIBLE_PERSON); + } + return dependents; + } + + /** + * + * + * @generated + */ + @Override + public FromAgent getFrom_agent() { + return from_agent; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetFrom_agent(FromAgent newFrom_agent, NotificationChain msgs) { + FromAgent oldFrom_agent = from_agent; + from_agent = newFrom_agent; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_PAYER__FROM_AGENT, oldFrom_agent, newFrom_agent); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setFrom_agent(FromAgent newFrom_agent) { + if (newFrom_agent != from_agent) { + NotificationChain msgs = null; + if (from_agent != null) + msgs = ((InternalEObject)from_agent).eInverseRemove(this, TaxationPackage.FROM_AGENT__TAX_PAYER, FromAgent.class, msgs); + if (newFrom_agent != null) + msgs = ((InternalEObject)newFrom_agent).eInverseAdd(this, TaxationPackage.FROM_AGENT__TAX_PAYER, FromAgent.class, msgs); + msgs = basicSetFrom_agent(newFrom_agent, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_PAYER__FROM_AGENT, newFrom_agent, newFrom_agent)); + } + + /** + * + * + * @generated + */ + @Override + public EList getIncomes() { + if (incomes == null) { + incomes = new EObjectContainmentWithInverseEList(Income.class, this, TaxationPackage.TAX_PAYER__INCOMES, TaxationPackage.INCOME__TAX_PAYER); + } + return incomes; + } + + /** + * + * + * @generated + */ + @Override + public FromLaw getFrom_law() { + return from_law; + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetFrom_law(FromLaw newFrom_law, NotificationChain msgs) { + FromLaw oldFrom_law = from_law; + from_law = newFrom_law; + if (eNotificationRequired()) { + ENotificationImpl notification = new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_PAYER__FROM_LAW, oldFrom_law, newFrom_law); + if (msgs == null) msgs = notification; else msgs.add(notification); + } + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setFrom_law(FromLaw newFrom_law) { + if (newFrom_law != from_law) { + NotificationChain msgs = null; + if (from_law != null) + msgs = ((InternalEObject)from_law).eInverseRemove(this, TaxationPackage.FROM_LAW__TAX_PAYER, FromLaw.class, msgs); + if (newFrom_law != null) + msgs = ((InternalEObject)newFrom_law).eInverseAdd(this, TaxationPackage.FROM_LAW__TAX_PAYER, FromLaw.class, msgs); + msgs = basicSetFrom_law(newFrom_law, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_PAYER__FROM_LAW, newFrom_law, newFrom_law)); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.TAX_PAYER__DEPENDENTS: + return ((InternalEList)(InternalEList)getDependents()).basicAdd(otherEnd, msgs); + case TaxationPackage.TAX_PAYER__FROM_AGENT: + if (from_agent != null) + msgs = ((InternalEObject)from_agent).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - TaxationPackage.TAX_PAYER__FROM_AGENT, null, msgs); + return basicSetFrom_agent((FromAgent)otherEnd, msgs); + case TaxationPackage.TAX_PAYER__INCOMES: + return ((InternalEList)(InternalEList)getIncomes()).basicAdd(otherEnd, msgs); + case TaxationPackage.TAX_PAYER__FROM_LAW: + if (from_law != null) + msgs = ((InternalEObject)from_law).eInverseRemove(this, EOPPOSITE_FEATURE_BASE - TaxationPackage.TAX_PAYER__FROM_LAW, null, msgs); + return basicSetFrom_law((FromLaw)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.TAX_PAYER__DEPENDENTS: + return ((InternalEList)getDependents()).basicRemove(otherEnd, msgs); + case TaxationPackage.TAX_PAYER__FROM_AGENT: + return basicSetFrom_agent(null, msgs); + case TaxationPackage.TAX_PAYER__INCOMES: + return ((InternalEList)getIncomes()).basicRemove(otherEnd, msgs); + case TaxationPackage.TAX_PAYER__FROM_LAW: + return basicSetFrom_law(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.TAX_PAYER__DEPENDENTS: + return getDependents(); + case TaxationPackage.TAX_PAYER__FROM_AGENT: + return getFrom_agent(); + case TaxationPackage.TAX_PAYER__INCOMES: + return getIncomes(); + case TaxationPackage.TAX_PAYER__FROM_LAW: + return getFrom_law(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @SuppressWarnings("unchecked") + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.TAX_PAYER__DEPENDENTS: + getDependents().clear(); + getDependents().addAll((Collection)newValue); + return; + case TaxationPackage.TAX_PAYER__FROM_AGENT: + setFrom_agent((FromAgent)newValue); + return; + case TaxationPackage.TAX_PAYER__INCOMES: + getIncomes().clear(); + getIncomes().addAll((Collection)newValue); + return; + case TaxationPackage.TAX_PAYER__FROM_LAW: + setFrom_law((FromLaw)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.TAX_PAYER__DEPENDENTS: + getDependents().clear(); + return; + case TaxationPackage.TAX_PAYER__FROM_AGENT: + setFrom_agent((FromAgent)null); + return; + case TaxationPackage.TAX_PAYER__INCOMES: + getIncomes().clear(); + return; + case TaxationPackage.TAX_PAYER__FROM_LAW: + setFrom_law((FromLaw)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.TAX_PAYER__DEPENDENTS: + return dependents != null && !dependents.isEmpty(); + case TaxationPackage.TAX_PAYER__FROM_AGENT: + return from_agent != null; + case TaxationPackage.TAX_PAYER__INCOMES: + return incomes != null && !incomes.isEmpty(); + case TaxationPackage.TAX_PAYER__FROM_LAW: + return from_law != null; + } + return super.eIsSet(featureID); + } + +} //Tax_PayerImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Tax_PropertyImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Tax_PropertyImpl.java new file mode 100644 index 00000000..8da197f0 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Tax_PropertyImpl.java @@ -0,0 +1,324 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Legal_Union_Record; +import TaxationWithRoot.Tax_Property; +import TaxationWithRoot.TaxationPackage; + +import org.eclipse.emf.common.notify.Notification; +import org.eclipse.emf.common.notify.NotificationChain; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.InternalEObject; + +import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + +import org.eclipse.emf.ecore.util.EcoreUtil; + +/** + * + * An implementation of the model object 'Tax Property'. + * + *

            + * The following features are implemented: + *

            + *
              + *
            • {@link TaxationWithRoot.impl.Tax_PropertyImpl#getStarting_year Starting year}
            • + *
            • {@link TaxationWithRoot.impl.Tax_PropertyImpl#getId10 Id10}
            • + *
            • {@link TaxationWithRoot.impl.Tax_PropertyImpl#getUnion_record Union record}
            • + *
            + * + * @generated + */ +public class Tax_PropertyImpl extends MinimalEObjectImpl.Container implements Tax_Property { + /** + * The default value of the '{@link #getStarting_year() Starting year}' attribute. + * + * + * @see #getStarting_year() + * @generated + * @ordered + */ + protected static final int STARTING_YEAR_EDEFAULT = 0; + + /** + * The cached value of the '{@link #getStarting_year() Starting year}' attribute. + * + * + * @see #getStarting_year() + * @generated + * @ordered + */ + protected int starting_year = STARTING_YEAR_EDEFAULT; + + /** + * The default value of the '{@link #getId10() Id10}' attribute. + * + * + * @see #getId10() + * @generated + * @ordered + */ + protected static final String ID10_EDEFAULT = null; + + /** + * The cached value of the '{@link #getId10() Id10}' attribute. + * + * + * @see #getId10() + * @generated + * @ordered + */ + protected String id10 = ID10_EDEFAULT; + + /** + * + * + * @generated + */ + protected Tax_PropertyImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.TAX_PROPERTY; + } + + /** + * + * + * @generated + */ + @Override + public int getStarting_year() { + return starting_year; + } + + /** + * + * + * @generated + */ + @Override + public void setStarting_year(int newStarting_year) { + int oldStarting_year = starting_year; + starting_year = newStarting_year; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_PROPERTY__STARTING_YEAR, oldStarting_year, starting_year)); + } + + /** + * + * + * @generated + */ + @Override + public String getId10() { + return id10; + } + + /** + * + * + * @generated + */ + @Override + public void setId10(String newId10) { + String oldId10 = id10; + id10 = newId10; + if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_PROPERTY__ID10, oldId10, id10)); + } + + /** + * + * + * @generated + */ + @Override + public Legal_Union_Record getUnion_record() { + if (eContainerFeatureID() != TaxationPackage.TAX_PROPERTY__UNION_RECORD) return null; + return (Legal_Union_Record)eInternalContainer(); + } + + /** + * + * + * @generated + */ + public NotificationChain basicSetUnion_record(Legal_Union_Record newUnion_record, NotificationChain msgs) { + msgs = eBasicSetContainer((InternalEObject)newUnion_record, TaxationPackage.TAX_PROPERTY__UNION_RECORD, msgs); + return msgs; + } + + /** + * + * + * @generated + */ + @Override + public void setUnion_record(Legal_Union_Record newUnion_record) { + if (newUnion_record != eInternalContainer() || (eContainerFeatureID() != TaxationPackage.TAX_PROPERTY__UNION_RECORD && newUnion_record != null)) { + if (EcoreUtil.isAncestor(this, newUnion_record)) + throw new IllegalArgumentException("Recursive containment not allowed for " + toString()); + NotificationChain msgs = null; + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + if (newUnion_record != null) + msgs = ((InternalEObject)newUnion_record).eInverseAdd(this, TaxationPackage.LEGAL_UNION_RECORD__PROPERTIES, Legal_Union_Record.class, msgs); + msgs = basicSetUnion_record(newUnion_record, msgs); + if (msgs != null) msgs.dispatch(); + } + else if (eNotificationRequired()) + eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.TAX_PROPERTY__UNION_RECORD, newUnion_record, newUnion_record)); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.TAX_PROPERTY__UNION_RECORD: + if (eInternalContainer() != null) + msgs = eBasicRemoveFromContainer(msgs); + return basicSetUnion_record((Legal_Union_Record)otherEnd, msgs); + } + return super.eInverseAdd(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) { + switch (featureID) { + case TaxationPackage.TAX_PROPERTY__UNION_RECORD: + return basicSetUnion_record(null, msgs); + } + return super.eInverseRemove(otherEnd, featureID, msgs); + } + + /** + * + * + * @generated + */ + @Override + public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) { + switch (eContainerFeatureID()) { + case TaxationPackage.TAX_PROPERTY__UNION_RECORD: + return eInternalContainer().eInverseRemove(this, TaxationPackage.LEGAL_UNION_RECORD__PROPERTIES, Legal_Union_Record.class, msgs); + } + return super.eBasicRemoveFromContainerFeature(msgs); + } + + /** + * + * + * @generated + */ + @Override + public Object eGet(int featureID, boolean resolve, boolean coreType) { + switch (featureID) { + case TaxationPackage.TAX_PROPERTY__STARTING_YEAR: + return getStarting_year(); + case TaxationPackage.TAX_PROPERTY__ID10: + return getId10(); + case TaxationPackage.TAX_PROPERTY__UNION_RECORD: + return getUnion_record(); + } + return super.eGet(featureID, resolve, coreType); + } + + /** + * + * + * @generated + */ + @Override + public void eSet(int featureID, Object newValue) { + switch (featureID) { + case TaxationPackage.TAX_PROPERTY__STARTING_YEAR: + setStarting_year((Integer)newValue); + return; + case TaxationPackage.TAX_PROPERTY__ID10: + setId10((String)newValue); + return; + case TaxationPackage.TAX_PROPERTY__UNION_RECORD: + setUnion_record((Legal_Union_Record)newValue); + return; + } + super.eSet(featureID, newValue); + } + + /** + * + * + * @generated + */ + @Override + public void eUnset(int featureID) { + switch (featureID) { + case TaxationPackage.TAX_PROPERTY__STARTING_YEAR: + setStarting_year(STARTING_YEAR_EDEFAULT); + return; + case TaxationPackage.TAX_PROPERTY__ID10: + setId10(ID10_EDEFAULT); + return; + case TaxationPackage.TAX_PROPERTY__UNION_RECORD: + setUnion_record((Legal_Union_Record)null); + return; + } + super.eUnset(featureID); + } + + /** + * + * + * @generated + */ + @Override + public boolean eIsSet(int featureID) { + switch (featureID) { + case TaxationPackage.TAX_PROPERTY__STARTING_YEAR: + return starting_year != STARTING_YEAR_EDEFAULT; + case TaxationPackage.TAX_PROPERTY__ID10: + return ID10_EDEFAULT == null ? id10 != null : !ID10_EDEFAULT.equals(id10); + case TaxationPackage.TAX_PROPERTY__UNION_RECORD: + return getUnion_record() != null; + } + return super.eIsSet(featureID); + } + + /** + * + * + * @generated + */ + @Override + public String toString() { + if (eIsProxy()) return super.toString(); + + StringBuilder result = new StringBuilder(super.toString()); + result.append(" (starting_year: "); + result.append(starting_year); + result.append(", id10: "); + result.append(id10); + result.append(')'); + return result.toString(); + } + +} //Tax_PropertyImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/TaxationFactoryImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/TaxationFactoryImpl.java new file mode 100644 index 00000000..12caab7b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/TaxationFactoryImpl.java @@ -0,0 +1,1108 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.*; + +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EDataType; +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.impl.EFactoryImpl; + +import org.eclipse.emf.ecore.plugin.EcorePlugin; + +/** + * + * An implementation of the model Factory. + * + * @generated + */ +public class TaxationFactoryImpl extends EFactoryImpl implements TaxationFactory { + /** + * Creates the default factory implementation. + * + * + * @generated + */ + public static TaxationFactory init() { + try { + TaxationFactory theTaxationFactory = (TaxationFactory)EPackage.Registry.INSTANCE.getEFactory(TaxationPackage.eNS_URI); + if (theTaxationFactory != null) { + return theTaxationFactory; + } + } + catch (Exception exception) { + EcorePlugin.INSTANCE.log(exception); + } + return new TaxationFactoryImpl(); + } + + /** + * Creates an instance of the factory. + * + * + * @generated + */ + public TaxationFactoryImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + public EObject create(EClass eClass) { + switch (eClass.getClassifierID()) { + case TaxationPackage.INCOME_TAX: return createIncome_Tax(); + case TaxationPackage.PHYSICAL_PERSON: return createPhysical_Person(); + case TaxationPackage.ADDRESS: return createAddress(); + case TaxationPackage.EXPENSE: return createExpense(); + case TaxationPackage.DEPENDENT: return createDependent(); + case TaxationPackage.EXTERNAL_ALLOWANCE: return createExternal_Allowance(); + case TaxationPackage.HOUSEHOLD: return createHousehold(); + case TaxationPackage.TAX_PROPERTY: return createTax_Property(); + case TaxationPackage.FROM_AGENT: return createFromAgent(); + case TaxationPackage.TAX_CARD: return createTax_Card(); + case TaxationPackage.INCOME_TAX_CREDIT: return createIncome_Tax_Credit(); + case TaxationPackage.INCOME_DETAIL: return createIncome_Detail(); + case TaxationPackage.FROM_LAW: return createFromLaw(); + case TaxationPackage.FISCAL_ADDRESS: return createFiscal_Address(); + case TaxationPackage.HABITUAL_ADDRESS: return createHabitual_Address(); + case TaxationPackage.MARRIAGE_RECORD: return createMarriage_Record(); + case TaxationPackage.NON_RESIDENT_TAX_PAYER: return createNon_Resident_Tax_Payer(); + case TaxationPackage.PARTNERSHIP_RECORD: return createPartnership_Record(); + case TaxationPackage.RESIDENT_TAX_PAYER: return createResident_Tax_Payer(); + case TaxationPackage.TRADE_AND_BUSINESS_INCOME: return createTrade_and_Business_Income(); + case TaxationPackage.AGRICULTURE_AND_FORESTRY_INCOME: return createAgriculture_and_Forestry_Income(); + case TaxationPackage.PENSIONS_AND_ANNUITIES_INCOME: return createPensions_and_Annuities_Income(); + case TaxationPackage.CAPITAL_AND_INVESTMENTS_INCOME: return createCapital_and_Investments_Income(); + case TaxationPackage.EMPLOYMENT_INCOME: return createEmployment_Income(); + case TaxationPackage.RENTALS_AND_LEASES_INCOME: return createRentals_and_Leases_Income(); + case TaxationPackage.FOREIGN_INCOME: return createForeign_Income(); + case TaxationPackage.LOCAL_INCOME: return createLocal_Income(); + case TaxationPackage.CIM: return createCIM(); + case TaxationPackage.CIP: return createCIP(); + case TaxationPackage.CIS: return createCIS(); + case TaxationPackage.FD: return createFD(); + case TaxationPackage.PROFESSIONAL_EXPENSES_DEDUCTION: return createProfessional_Expenses_Deduction(); + case TaxationPackage.FO: return createFO(); + case TaxationPackage.DS_FOR_PERMANENT_EXPENSE: return createDS_for_Permanent_Expense(); + case TaxationPackage.DS: return createDS(); + case TaxationPackage.DS_FOR_INTEREST_EXPENSE: return createDS_for_Interest_Expense(); + case TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE: return createDS_for_Health_and_Pension_Insurance(); + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN: return createDS_for_Private_Insurance_and_Plan(); + case TaxationPackage.DS_FOR_LOSS_CARRYFORWARD: return createDS_for_Loss_Carryforward(); + case TaxationPackage.DS_FOR_DONATION: return createDS_for_Donation(); + case TaxationPackage.PERMANENT_EXPENSE: return createPermanent_Expense(); + case TaxationPackage.SPECIAL_EXPENSE_DS: return createSpecial_Expense_DS(); + case TaxationPackage.INTEREST_EXPENSE: return createInterest_Expense(); + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN: return createPrivate_Insurance_and_Plan(); + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE: return createHealth_and_Pension_Insurance(); + case TaxationPackage.DONATION: return createDonation(); + case TaxationPackage.LOSS_CARRYFORWARD: return createLoss_Carryforward(); + case TaxationPackage.SPOUSAL_EXPENSE_AC: return createSpousal_Expense_AC(); + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE: return createExtraordinary_Expense_CE(); + case TaxationPackage.TRAVEL_EXPENSE_FD: return createTravel_Expense_FD(); + case TaxationPackage.PROFESSIONAL_EXPENSE: return createProfessional_Expense(); + case TaxationPackage.MISCELLANEOUS_EXPENSE_FO: return createMiscellaneous_Expense_FO(); + case TaxationPackage.RESOURCE: return createResource(); + default: + throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); + } + } + + /** + * + * + * @generated + */ + @Override + public Object createFromString(EDataType eDataType, String initialValue) { + switch (eDataType.getClassifierID()) { + case TaxationPackage.GRANTOR: + return createGrantorFromString(eDataType, initialValue); + case TaxationPackage.DISABILITY_TYPES: + return createDisability_TypesFromString(eDataType, initialValue); + case TaxationPackage.COUNTRY: + return createCountryFromString(eDataType, initialValue); + case TaxationPackage.TAX_OFFICE: + return createTax_OfficeFromString(eDataType, initialValue); + case TaxationPackage.TAX_CLASS_CATEGORY: + return createTax_Class_CategoryFromString(eDataType, initialValue); + case TaxationPackage.JOB_ACTIVITY: + return createJob_ActivityFromString(eDataType, initialValue); + case TaxationPackage.TOWN: + return createTownFromString(eDataType, initialValue); + case TaxationPackage.CE_TYPE: + return createCE_TypeFromString(eDataType, initialValue); + case TaxationPackage.EXPENSE_PURPOSE: + return createExpense_PurposeFromString(eDataType, initialValue); + case TaxationPackage.DEPENDENT_TYPE: + return createDependent_TypeFromString(eDataType, initialValue); + case TaxationPackage.SEPARATION_CAUSES: + return createSeparation_CausesFromString(eDataType, initialValue); + case TaxationPackage.CATEGORY_OF_PERMANENT_EXPENSE: + return createCategory_of_Permanent_ExpenseFromString(eDataType, initialValue); + case TaxationPackage.CATEGORY_OF_HEALTH_AND_PENSION_INSURANCES: + return createCategory_of_Health_and_Pension_InsurancesFromString(eDataType, initialValue); + case TaxationPackage.CATEGORY_OF_PRIVATE_INSURANCE_AND_PLAN: + return createCategory_of_Private_Insurance_and_PlanFromString(eDataType, initialValue); + case TaxationPackage.LEGAL_UNION_TYPES: + return createLegal_Union_TypesFromString(eDataType, initialValue); + default: + throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); + } + } + + /** + * + * + * @generated + */ + @Override + public String convertToString(EDataType eDataType, Object instanceValue) { + switch (eDataType.getClassifierID()) { + case TaxationPackage.GRANTOR: + return convertGrantorToString(eDataType, instanceValue); + case TaxationPackage.DISABILITY_TYPES: + return convertDisability_TypesToString(eDataType, instanceValue); + case TaxationPackage.COUNTRY: + return convertCountryToString(eDataType, instanceValue); + case TaxationPackage.TAX_OFFICE: + return convertTax_OfficeToString(eDataType, instanceValue); + case TaxationPackage.TAX_CLASS_CATEGORY: + return convertTax_Class_CategoryToString(eDataType, instanceValue); + case TaxationPackage.JOB_ACTIVITY: + return convertJob_ActivityToString(eDataType, instanceValue); + case TaxationPackage.TOWN: + return convertTownToString(eDataType, instanceValue); + case TaxationPackage.CE_TYPE: + return convertCE_TypeToString(eDataType, instanceValue); + case TaxationPackage.EXPENSE_PURPOSE: + return convertExpense_PurposeToString(eDataType, instanceValue); + case TaxationPackage.DEPENDENT_TYPE: + return convertDependent_TypeToString(eDataType, instanceValue); + case TaxationPackage.SEPARATION_CAUSES: + return convertSeparation_CausesToString(eDataType, instanceValue); + case TaxationPackage.CATEGORY_OF_PERMANENT_EXPENSE: + return convertCategory_of_Permanent_ExpenseToString(eDataType, instanceValue); + case TaxationPackage.CATEGORY_OF_HEALTH_AND_PENSION_INSURANCES: + return convertCategory_of_Health_and_Pension_InsurancesToString(eDataType, instanceValue); + case TaxationPackage.CATEGORY_OF_PRIVATE_INSURANCE_AND_PLAN: + return convertCategory_of_Private_Insurance_and_PlanToString(eDataType, instanceValue); + case TaxationPackage.LEGAL_UNION_TYPES: + return convertLegal_Union_TypesToString(eDataType, instanceValue); + default: + throw new IllegalArgumentException("The datatype '" + eDataType.getName() + "' is not a valid classifier"); + } + } + + /** + * + * + * @generated + */ + @Override + public Income_Tax createIncome_Tax() { + Income_TaxImpl income_Tax = new Income_TaxImpl(); + return income_Tax; + } + + /** + * + * + * @generated + */ + @Override + public Physical_Person createPhysical_Person() { + Physical_PersonImpl physical_Person = new Physical_PersonImpl(); + return physical_Person; + } + + /** + * + * + * @generated + */ + @Override + public Address createAddress() { + AddressImpl address = new AddressImpl(); + return address; + } + + /** + * + * + * @generated + */ + @Override + public Expense createExpense() { + ExpenseImpl expense = new ExpenseImpl(); + return expense; + } + + /** + * + * + * @generated + */ + @Override + public Dependent createDependent() { + DependentImpl dependent = new DependentImpl(); + return dependent; + } + + /** + * + * + * @generated + */ + @Override + public External_Allowance createExternal_Allowance() { + External_AllowanceImpl external_Allowance = new External_AllowanceImpl(); + return external_Allowance; + } + + /** + * + * + * @generated + */ + @Override + public Household createHousehold() { + HouseholdImpl household = new HouseholdImpl(); + return household; + } + + /** + * + * + * @generated + */ + @Override + public Tax_Property createTax_Property() { + Tax_PropertyImpl tax_Property = new Tax_PropertyImpl(); + return tax_Property; + } + + /** + * + * + * @generated + */ + @Override + public FromAgent createFromAgent() { + FromAgentImpl fromAgent = new FromAgentImpl(); + return fromAgent; + } + + /** + * + * + * @generated + */ + @Override + public Tax_Card createTax_Card() { + Tax_CardImpl tax_Card = new Tax_CardImpl(); + return tax_Card; + } + + /** + * + * + * @generated + */ + @Override + public Income_Tax_Credit createIncome_Tax_Credit() { + Income_Tax_CreditImpl income_Tax_Credit = new Income_Tax_CreditImpl(); + return income_Tax_Credit; + } + + /** + * + * + * @generated + */ + @Override + public Income_Detail createIncome_Detail() { + Income_DetailImpl income_Detail = new Income_DetailImpl(); + return income_Detail; + } + + /** + * + * + * @generated + */ + @Override + public FromLaw createFromLaw() { + FromLawImpl fromLaw = new FromLawImpl(); + return fromLaw; + } + + /** + * + * + * @generated + */ + @Override + public Fiscal_Address createFiscal_Address() { + Fiscal_AddressImpl fiscal_Address = new Fiscal_AddressImpl(); + return fiscal_Address; + } + + /** + * + * + * @generated + */ + @Override + public Habitual_Address createHabitual_Address() { + Habitual_AddressImpl habitual_Address = new Habitual_AddressImpl(); + return habitual_Address; + } + + /** + * + * + * @generated + */ + @Override + public Marriage_Record createMarriage_Record() { + Marriage_RecordImpl marriage_Record = new Marriage_RecordImpl(); + return marriage_Record; + } + + /** + * + * + * @generated + */ + @Override + public Non_Resident_Tax_Payer createNon_Resident_Tax_Payer() { + Non_Resident_Tax_PayerImpl non_Resident_Tax_Payer = new Non_Resident_Tax_PayerImpl(); + return non_Resident_Tax_Payer; + } + + /** + * + * + * @generated + */ + @Override + public Partnership_Record createPartnership_Record() { + Partnership_RecordImpl partnership_Record = new Partnership_RecordImpl(); + return partnership_Record; + } + + /** + * + * + * @generated + */ + @Override + public Resident_Tax_Payer createResident_Tax_Payer() { + Resident_Tax_PayerImpl resident_Tax_Payer = new Resident_Tax_PayerImpl(); + return resident_Tax_Payer; + } + + /** + * + * + * @generated + */ + @Override + public Trade_and_Business_Income createTrade_and_Business_Income() { + Trade_and_Business_IncomeImpl trade_and_Business_Income = new Trade_and_Business_IncomeImpl(); + return trade_and_Business_Income; + } + + /** + * + * + * @generated + */ + @Override + public Agriculture_and_Forestry_Income createAgriculture_and_Forestry_Income() { + Agriculture_and_Forestry_IncomeImpl agriculture_and_Forestry_Income = new Agriculture_and_Forestry_IncomeImpl(); + return agriculture_and_Forestry_Income; + } + + /** + * + * + * @generated + */ + @Override + public Pensions_and_Annuities_Income createPensions_and_Annuities_Income() { + Pensions_and_Annuities_IncomeImpl pensions_and_Annuities_Income = new Pensions_and_Annuities_IncomeImpl(); + return pensions_and_Annuities_Income; + } + + /** + * + * + * @generated + */ + @Override + public Capital_and_Investments_Income createCapital_and_Investments_Income() { + Capital_and_Investments_IncomeImpl capital_and_Investments_Income = new Capital_and_Investments_IncomeImpl(); + return capital_and_Investments_Income; + } + + /** + * + * + * @generated + */ + @Override + public Employment_Income createEmployment_Income() { + Employment_IncomeImpl employment_Income = new Employment_IncomeImpl(); + return employment_Income; + } + + /** + * + * + * @generated + */ + @Override + public Rentals_and_Leases_Income createRentals_and_Leases_Income() { + Rentals_and_Leases_IncomeImpl rentals_and_Leases_Income = new Rentals_and_Leases_IncomeImpl(); + return rentals_and_Leases_Income; + } + + /** + * + * + * @generated + */ + @Override + public Foreign_Income createForeign_Income() { + Foreign_IncomeImpl foreign_Income = new Foreign_IncomeImpl(); + return foreign_Income; + } + + /** + * + * + * @generated + */ + @Override + public Local_Income createLocal_Income() { + Local_IncomeImpl local_Income = new Local_IncomeImpl(); + return local_Income; + } + + /** + * + * + * @generated + */ + @Override + public CIM createCIM() { + CIMImpl cim = new CIMImpl(); + return cim; + } + + /** + * + * + * @generated + */ + @Override + public CIP createCIP() { + CIPImpl cip = new CIPImpl(); + return cip; + } + + /** + * + * + * @generated + */ + @Override + public CIS createCIS() { + CISImpl cis = new CISImpl(); + return cis; + } + + /** + * + * + * @generated + */ + @Override + public FD createFD() { + FDImpl fd = new FDImpl(); + return fd; + } + + /** + * + * + * @generated + */ + @Override + public Professional_Expenses_Deduction createProfessional_Expenses_Deduction() { + Professional_Expenses_DeductionImpl professional_Expenses_Deduction = new Professional_Expenses_DeductionImpl(); + return professional_Expenses_Deduction; + } + + /** + * + * + * @generated + */ + @Override + public FO createFO() { + FOImpl fo = new FOImpl(); + return fo; + } + + /** + * + * + * @generated + */ + @Override + public DS_for_Permanent_Expense createDS_for_Permanent_Expense() { + DS_for_Permanent_ExpenseImpl dS_for_Permanent_Expense = new DS_for_Permanent_ExpenseImpl(); + return dS_for_Permanent_Expense; + } + + /** + * + * + * @generated + */ + @Override + public DS createDS() { + DSImpl ds = new DSImpl(); + return ds; + } + + /** + * + * + * @generated + */ + @Override + public DS_for_Interest_Expense createDS_for_Interest_Expense() { + DS_for_Interest_ExpenseImpl dS_for_Interest_Expense = new DS_for_Interest_ExpenseImpl(); + return dS_for_Interest_Expense; + } + + /** + * + * + * @generated + */ + @Override + public DS_for_Health_and_Pension_Insurance createDS_for_Health_and_Pension_Insurance() { + DS_for_Health_and_Pension_InsuranceImpl dS_for_Health_and_Pension_Insurance = new DS_for_Health_and_Pension_InsuranceImpl(); + return dS_for_Health_and_Pension_Insurance; + } + + /** + * + * + * @generated + */ + @Override + public DS_for_Private_Insurance_and_Plan createDS_for_Private_Insurance_and_Plan() { + DS_for_Private_Insurance_and_PlanImpl dS_for_Private_Insurance_and_Plan = new DS_for_Private_Insurance_and_PlanImpl(); + return dS_for_Private_Insurance_and_Plan; + } + + /** + * + * + * @generated + */ + @Override + public DS_for_Loss_Carryforward createDS_for_Loss_Carryforward() { + DS_for_Loss_CarryforwardImpl dS_for_Loss_Carryforward = new DS_for_Loss_CarryforwardImpl(); + return dS_for_Loss_Carryforward; + } + + /** + * + * + * @generated + */ + @Override + public DS_for_Donation createDS_for_Donation() { + DS_for_DonationImpl dS_for_Donation = new DS_for_DonationImpl(); + return dS_for_Donation; + } + + /** + * + * + * @generated + */ + @Override + public Permanent_Expense createPermanent_Expense() { + Permanent_ExpenseImpl permanent_Expense = new Permanent_ExpenseImpl(); + return permanent_Expense; + } + + /** + * + * + * @generated + */ + @Override + public Special_Expense_DS createSpecial_Expense_DS() { + Special_Expense_DSImpl special_Expense_DS = new Special_Expense_DSImpl(); + return special_Expense_DS; + } + + /** + * + * + * @generated + */ + @Override + public Interest_Expense createInterest_Expense() { + Interest_ExpenseImpl interest_Expense = new Interest_ExpenseImpl(); + return interest_Expense; + } + + /** + * + * + * @generated + */ + @Override + public Private_Insurance_and_Plan createPrivate_Insurance_and_Plan() { + Private_Insurance_and_PlanImpl private_Insurance_and_Plan = new Private_Insurance_and_PlanImpl(); + return private_Insurance_and_Plan; + } + + /** + * + * + * @generated + */ + @Override + public Health_and_Pension_Insurance createHealth_and_Pension_Insurance() { + Health_and_Pension_InsuranceImpl health_and_Pension_Insurance = new Health_and_Pension_InsuranceImpl(); + return health_and_Pension_Insurance; + } + + /** + * + * + * @generated + */ + @Override + public Donation createDonation() { + DonationImpl donation = new DonationImpl(); + return donation; + } + + /** + * + * + * @generated + */ + @Override + public Loss_Carryforward createLoss_Carryforward() { + Loss_CarryforwardImpl loss_Carryforward = new Loss_CarryforwardImpl(); + return loss_Carryforward; + } + + /** + * + * + * @generated + */ + @Override + public Spousal_Expense_AC createSpousal_Expense_AC() { + Spousal_Expense_ACImpl spousal_Expense_AC = new Spousal_Expense_ACImpl(); + return spousal_Expense_AC; + } + + /** + * + * + * @generated + */ + @Override + public Extraordinary_Expense_CE createExtraordinary_Expense_CE() { + Extraordinary_Expense_CEImpl extraordinary_Expense_CE = new Extraordinary_Expense_CEImpl(); + return extraordinary_Expense_CE; + } + + /** + * + * + * @generated + */ + @Override + public Travel_Expense_FD createTravel_Expense_FD() { + Travel_Expense_FDImpl travel_Expense_FD = new Travel_Expense_FDImpl(); + return travel_Expense_FD; + } + + /** + * + * + * @generated + */ + @Override + public Professional_Expense createProfessional_Expense() { + Professional_ExpenseImpl professional_Expense = new Professional_ExpenseImpl(); + return professional_Expense; + } + + /** + * + * + * @generated + */ + @Override + public Miscellaneous_Expense_FO createMiscellaneous_Expense_FO() { + Miscellaneous_Expense_FOImpl miscellaneous_Expense_FO = new Miscellaneous_Expense_FOImpl(); + return miscellaneous_Expense_FO; + } + + /** + * + * + * @generated + */ + @Override + public Resource createResource() { + ResourceImpl resource = new ResourceImpl(); + return resource; + } + + /** + * + * + * @generated + */ + public Grantor createGrantorFromString(EDataType eDataType, String initialValue) { + Grantor result = Grantor.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertGrantorToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Disability_Types createDisability_TypesFromString(EDataType eDataType, String initialValue) { + Disability_Types result = Disability_Types.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertDisability_TypesToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Country createCountryFromString(EDataType eDataType, String initialValue) { + Country result = Country.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertCountryToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Tax_Office createTax_OfficeFromString(EDataType eDataType, String initialValue) { + Tax_Office result = Tax_Office.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertTax_OfficeToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Tax_Class_Category createTax_Class_CategoryFromString(EDataType eDataType, String initialValue) { + Tax_Class_Category result = Tax_Class_Category.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertTax_Class_CategoryToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Job_Activity createJob_ActivityFromString(EDataType eDataType, String initialValue) { + Job_Activity result = Job_Activity.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertJob_ActivityToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Town createTownFromString(EDataType eDataType, String initialValue) { + Town result = Town.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertTownToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public CE_Type createCE_TypeFromString(EDataType eDataType, String initialValue) { + CE_Type result = CE_Type.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertCE_TypeToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Expense_Purpose createExpense_PurposeFromString(EDataType eDataType, String initialValue) { + Expense_Purpose result = Expense_Purpose.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertExpense_PurposeToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Dependent_Type createDependent_TypeFromString(EDataType eDataType, String initialValue) { + Dependent_Type result = Dependent_Type.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertDependent_TypeToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Separation_Causes createSeparation_CausesFromString(EDataType eDataType, String initialValue) { + Separation_Causes result = Separation_Causes.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertSeparation_CausesToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Category_of_Permanent_Expense createCategory_of_Permanent_ExpenseFromString(EDataType eDataType, String initialValue) { + Category_of_Permanent_Expense result = Category_of_Permanent_Expense.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertCategory_of_Permanent_ExpenseToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Category_of_Health_and_Pension_Insurances createCategory_of_Health_and_Pension_InsurancesFromString(EDataType eDataType, String initialValue) { + Category_of_Health_and_Pension_Insurances result = Category_of_Health_and_Pension_Insurances.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertCategory_of_Health_and_Pension_InsurancesToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Category_of_Private_Insurance_and_Plan createCategory_of_Private_Insurance_and_PlanFromString(EDataType eDataType, String initialValue) { + Category_of_Private_Insurance_and_Plan result = Category_of_Private_Insurance_and_Plan.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertCategory_of_Private_Insurance_and_PlanToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + public Legal_Union_Types createLegal_Union_TypesFromString(EDataType eDataType, String initialValue) { + Legal_Union_Types result = Legal_Union_Types.get(initialValue); + if (result == null) throw new IllegalArgumentException("The value '" + initialValue + "' is not a valid enumerator of '" + eDataType.getName() + "'"); + return result; + } + + /** + * + * + * @generated + */ + public String convertLegal_Union_TypesToString(EDataType eDataType, Object instanceValue) { + return instanceValue == null ? null : instanceValue.toString(); + } + + /** + * + * + * @generated + */ + @Override + public TaxationPackage getTaxationPackage() { + return (TaxationPackage)getEPackage(); + } + + /** + * + * + * @deprecated + * @generated + */ + @Deprecated + public static TaxationPackage getPackage() { + return TaxationPackage.eINSTANCE; + } + +} //TaxationFactoryImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/TaxationPackageImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/TaxationPackageImpl.java new file mode 100644 index 00000000..c8a1400d --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/TaxationPackageImpl.java @@ -0,0 +1,3988 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.Address; +import TaxationWithRoot.Agriculture_and_Forestry_Income; +import TaxationWithRoot.CE_Type; +import TaxationWithRoot.Capital_and_Investments_Income; +import TaxationWithRoot.Category_of_Health_and_Pension_Insurances; +import TaxationWithRoot.Category_of_Permanent_Expense; +import TaxationWithRoot.Category_of_Private_Insurance_and_Plan; +import TaxationWithRoot.Constants; +import TaxationWithRoot.Country; +import TaxationWithRoot.DS_for_Donation; +import TaxationWithRoot.DS_for_Health_and_Pension_Insurance; +import TaxationWithRoot.DS_for_Interest_Expense; +import TaxationWithRoot.DS_for_Loss_Carryforward; +import TaxationWithRoot.DS_for_Permanent_Expense; +import TaxationWithRoot.DS_for_Private_Insurance_and_Plan; +import TaxationWithRoot.Dependent; +import TaxationWithRoot.Dependent_Type; +import TaxationWithRoot.Disability_Types; +import TaxationWithRoot.Donation; +import TaxationWithRoot.Employment_Income; +import TaxationWithRoot.Expense; +import TaxationWithRoot.Expense_Purpose; +import TaxationWithRoot.External_Allowance; +import TaxationWithRoot.Extraordinary_Expense_CE; +import TaxationWithRoot.Fiscal_Address; +import TaxationWithRoot.Foreign_Income; +import TaxationWithRoot.FromAgent; +import TaxationWithRoot.FromLaw; +import TaxationWithRoot.Grantor; +import TaxationWithRoot.Habitual_Address; +import TaxationWithRoot.Health_and_Pension_Insurance; +import TaxationWithRoot.Household; +import TaxationWithRoot.Income; +import TaxationWithRoot.Income_Detail; +import TaxationWithRoot.Income_Tax; +import TaxationWithRoot.Income_Tax_Credit; +import TaxationWithRoot.Income_Type; +import TaxationWithRoot.Interest_Expense; +import TaxationWithRoot.Job_Activity; +import TaxationWithRoot.Legal_Union_Record; +import TaxationWithRoot.Legal_Union_Types; +import TaxationWithRoot.Local_Income; +import TaxationWithRoot.Loss_Carryforward; +import TaxationWithRoot.Marriage_Record; +import TaxationWithRoot.Miscellaneous_Expense_FO; +import TaxationWithRoot.Non_Resident_Tax_Payer; +import TaxationWithRoot.Partnership_Record; +import TaxationWithRoot.Pensions_and_Annuities_Income; +import TaxationWithRoot.Permanent_Expense; +import TaxationWithRoot.Physical_Person; +import TaxationWithRoot.Private_Insurance_and_Plan; +import TaxationWithRoot.Professional_Expense; +import TaxationWithRoot.Professional_Expenses_Deduction; +import TaxationWithRoot.Rentals_and_Leases_Income; +import TaxationWithRoot.Resident_Tax_Payer; +import TaxationWithRoot.Resource; +import TaxationWithRoot.Root; +import TaxationWithRoot.Separation_Causes; +import TaxationWithRoot.Special_Expense_DS; +import TaxationWithRoot.Spousal_Expense_AC; +import TaxationWithRoot.Tax_Card; +import TaxationWithRoot.Tax_Case; +import TaxationWithRoot.Tax_Class_Category; +import TaxationWithRoot.Tax_Office; +import TaxationWithRoot.Tax_Payer; +import TaxationWithRoot.Tax_Property; +import TaxationWithRoot.TaxationFactory; +import TaxationWithRoot.TaxationPackage; +import TaxationWithRoot.Town; +import TaxationWithRoot.Trade_and_Business_Income; +import TaxationWithRoot.Travel_Expense_FD; + +import org.eclipse.emf.ecore.EAttribute; +import org.eclipse.emf.ecore.EClass; +import org.eclipse.emf.ecore.EEnum; +import org.eclipse.emf.ecore.EPackage; +import org.eclipse.emf.ecore.EReference; + +import org.eclipse.emf.ecore.impl.EPackageImpl; + +/** + * + * An implementation of the model Package. + * + * @generated + */ +public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage { + /** + * + * + * @generated + */ + private EClass constantsEClass = null; + + /** + * + * + * @generated + */ + private EClass income_TaxEClass = null; + + /** + * + * + * @generated + */ + private EClass tax_PayerEClass = null; + + /** + * + * + * @generated + */ + private EClass physical_PersonEClass = null; + + /** + * + * + * @generated + */ + private EClass addressEClass = null; + + /** + * + * + * @generated + */ + private EClass expenseEClass = null; + + /** + * + * + * @generated + */ + private EClass dependentEClass = null; + + /** + * + * + * @generated + */ + private EClass external_AllowanceEClass = null; + + /** + * + * + * @generated + */ + private EClass householdEClass = null; + + /** + * + * + * @generated + */ + private EClass legal_Union_RecordEClass = null; + + /** + * + * + * @generated + */ + private EClass tax_PropertyEClass = null; + + /** + * + * + * @generated + */ + private EClass tax_CaseEClass = null; + + /** + * + * + * @generated + */ + private EClass fromAgentEClass = null; + + /** + * + * + * @generated + */ + private EClass incomeEClass = null; + + /** + * + * + * @generated + */ + private EClass income_TypeEClass = null; + + /** + * + * + * @generated + */ + private EClass tax_CardEClass = null; + + /** + * + * + * @generated + */ + private EClass income_Tax_CreditEClass = null; + + /** + * + * + * @generated + */ + private EClass income_DetailEClass = null; + + /** + * + * + * @generated + */ + private EClass fromLawEClass = null; + + /** + * + * + * @generated + */ + private EClass fiscal_AddressEClass = null; + + /** + * + * + * @generated + */ + private EClass habitual_AddressEClass = null; + + /** + * + * + * @generated + */ + private EClass marriage_RecordEClass = null; + + /** + * + * + * @generated + */ + private EClass non_Resident_Tax_PayerEClass = null; + + /** + * + * + * @generated + */ + private EClass partnership_RecordEClass = null; + + /** + * + * + * @generated + */ + private EClass resident_Tax_PayerEClass = null; + + /** + * + * + * @generated + */ + private EClass trade_and_Business_IncomeEClass = null; + + /** + * + * + * @generated + */ + private EClass agriculture_and_Forestry_IncomeEClass = null; + + /** + * + * + * @generated + */ + private EClass pensions_and_Annuities_IncomeEClass = null; + + /** + * + * + * @generated + */ + private EClass capital_and_Investments_IncomeEClass = null; + + /** + * + * + * @generated + */ + private EClass employment_IncomeEClass = null; + + /** + * + * + * @generated + */ + private EClass rentals_and_Leases_IncomeEClass = null; + + /** + * + * + * @generated + */ + private EClass foreign_IncomeEClass = null; + + /** + * + * + * @generated + */ + private EClass local_IncomeEClass = null; + + /** + * + * + * @generated + */ + private EClass cimEClass = null; + + /** + * + * + * @generated + */ + private EClass cipEClass = null; + + /** + * + * + * @generated + */ + private EClass cisEClass = null; + + /** + * + * + * @generated + */ + private EClass fdEClass = null; + + /** + * + * + * @generated + */ + private EClass professional_Expenses_DeductionEClass = null; + + /** + * + * + * @generated + */ + private EClass foEClass = null; + + /** + * + * + * @generated + */ + private EClass dS_for_Permanent_ExpenseEClass = null; + + /** + * + * + * @generated + */ + private EClass dsEClass = null; + + /** + * + * + * @generated + */ + private EClass dS_for_Interest_ExpenseEClass = null; + + /** + * + * + * @generated + */ + private EClass dS_for_Health_and_Pension_InsuranceEClass = null; + + /** + * + * + * @generated + */ + private EClass dS_for_Private_Insurance_and_PlanEClass = null; + + /** + * + * + * @generated + */ + private EClass dS_for_Loss_CarryforwardEClass = null; + + /** + * + * + * @generated + */ + private EClass dS_for_DonationEClass = null; + + /** + * + * + * @generated + */ + private EClass permanent_ExpenseEClass = null; + + /** + * + * + * @generated + */ + private EClass special_Expense_DSEClass = null; + + /** + * + * + * @generated + */ + private EClass interest_ExpenseEClass = null; + + /** + * + * + * @generated + */ + private EClass private_Insurance_and_PlanEClass = null; + + /** + * + * + * @generated + */ + private EClass health_and_Pension_InsuranceEClass = null; + + /** + * + * + * @generated + */ + private EClass donationEClass = null; + + /** + * + * + * @generated + */ + private EClass loss_CarryforwardEClass = null; + + /** + * + * + * @generated + */ + private EClass spousal_Expense_ACEClass = null; + + /** + * + * + * @generated + */ + private EClass extraordinary_Expense_CEEClass = null; + + /** + * + * + * @generated + */ + private EClass travel_Expense_FDEClass = null; + + /** + * + * + * @generated + */ + private EClass professional_ExpenseEClass = null; + + /** + * + * + * @generated + */ + private EClass miscellaneous_Expense_FOEClass = null; + + /** + * + * + * @generated + */ + private EClass resourceEClass = null; + + /** + * + * + * @generated + */ + private EClass rootEClass = null; + + /** + * + * + * @generated + */ + private EEnum grantorEEnum = null; + + /** + * + * + * @generated + */ + private EEnum disability_TypesEEnum = null; + + /** + * + * + * @generated + */ + private EEnum countryEEnum = null; + + /** + * + * + * @generated + */ + private EEnum tax_OfficeEEnum = null; + + /** + * + * + * @generated + */ + private EEnum tax_Class_CategoryEEnum = null; + + /** + * + * + * @generated + */ + private EEnum job_ActivityEEnum = null; + + /** + * + * + * @generated + */ + private EEnum townEEnum = null; + + /** + * + * + * @generated + */ + private EEnum cE_TypeEEnum = null; + + /** + * + * + * @generated + */ + private EEnum expense_PurposeEEnum = null; + + /** + * + * + * @generated + */ + private EEnum dependent_TypeEEnum = null; + + /** + * + * + * @generated + */ + private EEnum separation_CausesEEnum = null; + + /** + * + * + * @generated + */ + private EEnum category_of_Permanent_ExpenseEEnum = null; + + /** + * + * + * @generated + */ + private EEnum category_of_Health_and_Pension_InsurancesEEnum = null; + + /** + * + * + * @generated + */ + private EEnum category_of_Private_Insurance_and_PlanEEnum = null; + + /** + * + * + * @generated + */ + private EEnum legal_Union_TypesEEnum = null; + + /** + * Creates an instance of the model Package, registered with + * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package + * package URI value. + *

            Note: the correct way to create the package is via the static + * factory method {@link #init init()}, which also performs + * initialization of the package, or returns the registered package, + * if one already exists. + * + * + * @see org.eclipse.emf.ecore.EPackage.Registry + * @see TaxationWithRoot.TaxationPackage#eNS_URI + * @see #init() + * @generated + */ + private TaxationPackageImpl() { + super(eNS_URI, TaxationFactory.eINSTANCE); + } + + /** + * + * + * @generated + */ + private static boolean isInited = false; + + /** + * Creates, registers, and initializes the Package for this model, and for any others upon which it depends. + * + *

            This method is used to initialize {@link TaxationPackage#eINSTANCE} when that field is accessed. + * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. + * + * + * @see #eNS_URI + * @see #createPackageContents() + * @see #initializePackageContents() + * @generated + */ + public static TaxationPackage init() { + if (isInited) return (TaxationPackage)EPackage.Registry.INSTANCE.getEPackage(TaxationPackage.eNS_URI); + + // Obtain or create and register package + Object registeredTaxationPackage = EPackage.Registry.INSTANCE.get(eNS_URI); + TaxationPackageImpl theTaxationPackage = registeredTaxationPackage instanceof TaxationPackageImpl ? (TaxationPackageImpl)registeredTaxationPackage : new TaxationPackageImpl(); + + isInited = true; + + // Create package meta-data objects + theTaxationPackage.createPackageContents(); + + // Initialize created meta-data + theTaxationPackage.initializePackageContents(); + + // Mark meta-data to indicate it can't be changed + theTaxationPackage.freeze(); + + // Update the registry and return the package + EPackage.Registry.INSTANCE.put(TaxationPackage.eNS_URI, theTaxationPackage); + return theTaxationPackage; + } + + /** + * + * + * @generated + */ + @Override + public EClass getConstants() { + return constantsEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MINIMUM_SALARY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(7); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(8); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(9); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(10); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_CIM_DAILY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(11); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_CIM_MONTHLY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(12); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_CIM_YEARLY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(13); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_CIP_DAILY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(14); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_CIP_MONTHLY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(15); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_CIP_YEARLY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(16); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_CIS_DAILY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(17); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_CIS_MONTHLY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(18); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_CIS_YEARLY() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(19); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(20); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(21); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(22); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(23); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE() { + return (EAttribute)constantsEClass.getEStructuralFeatures().get(24); + } + + /** + * + * + * @generated + */ + @Override + public EClass getIncome_Tax() { + return income_TaxEClass; + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_Tax_TaxPayer() { + return (EReference)income_TaxEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_Tax_amount() { + return (EAttribute)income_TaxEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_Tax_year() { + return (EAttribute)income_TaxEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_Id6() { + return (EAttribute)income_TaxEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EClass getTax_Payer() { + return tax_PayerEClass; + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Payer_Dependents() { + return (EReference)tax_PayerEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Payer_From_agent() { + return (EReference)tax_PayerEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Payer_Incomes() { + return (EReference)tax_PayerEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Payer_From_law() { + return (EReference)tax_PayerEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EClass getPhysical_Person() { + return physical_PersonEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPhysical_Person_SSNo() { + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EReference getPhysical_Person_Addresses() { + return (EReference)physical_PersonEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPhysical_Person_Birth_year() { + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPhysical_Person_Disability_percentage() { + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPhysical_Person_Disability_type() { + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPhysical_Person_Birth_month() { + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPhysical_Person_Birth_day() { + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EReference getPhysical_Person_Expenses() { + return (EReference)physical_PersonEClass.getEStructuralFeatures().get(7); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPhysical_Person_Is_widower() { + return (EAttribute)physical_PersonEClass.getEStructuralFeatures().get(8); + } + + /** + * + * + * @generated + */ + @Override + public EClass getAddress() { + return addressEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getAddress_Country() { + return (EAttribute)addressEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getAddress_Street() { + return (EAttribute)addressEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getAddress_ZipCode() { + return (EAttribute)addressEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getAddress_City() { + return (EAttribute)addressEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getAddress_Id2() { + return (EAttribute)addressEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EReference getAddress_TaxPayer() { + return (EReference)addressEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EClass getExpense() { + return expenseEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExpense_Declared_amount() { + return (EAttribute)expenseEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExpense_Expense_purpose() { + return (EAttribute)expenseEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EReference getExpense_Dependent() { + return (EReference)expenseEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EReference getExpense_From_agent() { + return (EReference)expenseEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EReference getExpense_Income() { + return (EReference)expenseEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExpense_Id4() { + return (EAttribute)expenseEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EReference getExpense_Beneficiary() { + return (EReference)expenseEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EClass getDependent() { + return dependentEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDependent_Dependent_type() { + return (EAttribute)dependentEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EReference getDependent_Responsible_person() { + return (EReference)dependentEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDependent_Continued_studies() { + return (EAttribute)dependentEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EReference getDependent_Allowances() { + return (EReference)dependentEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EReference getDependent_Household() { + return (EReference)dependentEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EReference getDependent_From_agent() { + return (EReference)dependentEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EReference getDependent_Expense() { + return (EReference)dependentEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EClass getExternal_Allowance() { + return external_AllowanceEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExternal_Allowance_Grantor() { + return (EAttribute)external_AllowanceEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExternal_Allowance_Starting_year() { + return (EAttribute)external_AllowanceEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExternal_Allowance_Ending_year() { + return (EAttribute)external_AllowanceEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EReference getExternal_Allowance_Reciver() { + return (EReference)external_AllowanceEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExternal_Allowance_Id5() { + return (EAttribute)external_AllowanceEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EReference getExternal_Allowance_Person() { + return (EReference)external_AllowanceEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EClass getHousehold() { + return householdEClass; + } + + /** + * + * + * @generated + */ + @Override + public EReference getHousehold_Parents() { + return (EReference)householdEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getHousehold_Id1() { + return (EAttribute)householdEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EReference getHousehold_Children() { + return (EReference)householdEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EClass getLegal_Union_Record() { + return legal_Union_RecordEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getLegal_Union_Record_Start_year() { + return (EAttribute)legal_Union_RecordEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getLegal_Union_Record_End_year() { + return (EAttribute)legal_Union_RecordEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getLegal_Union_Record_Separation_cause() { + return (EAttribute)legal_Union_RecordEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EReference getLegal_Union_Record_Individual_A() { + return (EReference)legal_Union_RecordEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EReference getLegal_Union_Record_Individual_B() { + return (EReference)legal_Union_RecordEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EReference getLegal_Union_Record_Properties() { + return (EReference)legal_Union_RecordEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getLegal_Union_Record_Mutual_agreement() { + return (EAttribute)legal_Union_RecordEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getLegal_Union_Record_Id9() { + return (EAttribute)legal_Union_RecordEClass.getEStructuralFeatures().get(7); + } + + /** + * + * + * @generated + */ + @Override + public EReference getLegal_Union_Record_Household() { + return (EReference)legal_Union_RecordEClass.getEStructuralFeatures().get(8); + } + + /** + * + * + * @generated + */ + @Override + public EClass getTax_Property() { + return tax_PropertyEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Property_Starting_year() { + return (EAttribute)tax_PropertyEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Property_Id10() { + return (EAttribute)tax_PropertyEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Property_Union_record() { + return (EReference)tax_PropertyEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EClass getTax_Case() { + return tax_CaseEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getFromAgent() { + return fromAgentEClass; + } + + /** + * + * + * @generated + */ + @Override + public EReference getFromAgent_TaxPayer() { + return (EReference)fromAgentEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getFromAgent_Is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care() { + return (EAttribute)fromAgentEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EReference getFromAgent_Expense() { + return (EReference)fromAgentEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getFromAgent_Is_eligible_debt() { + return (EAttribute)fromAgentEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EReference getFromAgent_Dependent() { + return (EReference)fromAgentEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EClass getIncome() { + return incomeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Income_amount() { + return (EAttribute)incomeEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_Income_type() { + return (EReference)incomeEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_Tax_card() { + return (EReference)incomeEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_liability() { + return (EAttribute)incomeEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_TaxPayer() { + return (EReference)incomeEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_Details() { + return (EReference)incomeEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Num() { + return (EAttribute)incomeEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_Expenses() { + return (EReference)incomeEClass.getEStructuralFeatures().get(7); + } + + /** + * + * + * @generated + */ + @Override + public EClass getIncome_Type() { + return income_TypeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Type_Id8() { + return (EAttribute)income_TypeEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_Type_Income() { + return (EReference)income_TypeEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EClass getTax_Card() { + return tax_CardEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Card_identifier() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Tax_office() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Percentage_of_witholding() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Tax_payers_name_surname() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Tax_payers_partner_name_surname() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Card_Tax_payers_address() { + return (EReference)tax_CardEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Jobs_Employer_SSNo() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Jobs_employers_name() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(7); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Jobs_activity_type() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(8); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Jobs_place_of_work() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(9); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_FD_daily() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(10); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_FD_monthly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(11); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_AC_daily() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(12); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_AC_monthly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(13); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_AC_yearly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(14); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_CE_daily() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(15); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_CE_monthly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(16); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_CE_yearly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(17); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_DS_daily() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(18); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_DS_monthly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(19); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_FO_daily() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(20); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_FO_monthly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(21); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_FO_yearly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(22); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Credit_CIS_daily() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(23); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Credit_CIS_monthly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(24); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Credit_CIM_daily() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(25); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Validity() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(26); + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Card_Income_Tax_Credit() { + return (EReference)tax_CardEClass.getEStructuralFeatures().get(27); + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Card_Previous() { + return (EReference)tax_CardEClass.getEStructuralFeatures().get(28); + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Card_Current_tax_card() { + return (EReference)tax_CardEClass.getEStructuralFeatures().get(29); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Credit_CIM_yearly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(30); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_DS_Alimony_yearly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(31); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getTax_Card_Deduction_DS_Debt_yearly() { + return (EAttribute)tax_CardEClass.getEStructuralFeatures().get(32); + } + + /** + * + * + * @generated + */ + @Override + public EReference getTax_Card_Income() { + return (EReference)tax_CardEClass.getEStructuralFeatures().get(33); + } + + /** + * + * + * @generated + */ + @Override + public EClass getIncome_Tax_Credit() { + return income_Tax_CreditEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_Credit_GrantedBy() { + return (EAttribute)income_Tax_CreditEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_Tax_Credit_TaxPayer() { + return (EReference)income_Tax_CreditEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_Credit_Tax_year() { + return (EAttribute)income_Tax_CreditEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_Credit_Yearly() { + return (EAttribute)income_Tax_CreditEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_Credit_Monthly() { + return (EAttribute)income_Tax_CreditEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_Credit_Daily() { + return (EAttribute)income_Tax_CreditEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Tax_Credit_Id7() { + return (EAttribute)income_Tax_CreditEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_Tax_Credit_Taxation_Frame() { + return (EReference)income_Tax_CreditEClass.getEStructuralFeatures().get(7); + } + + /** + * + * + * @generated + */ + @Override + public EClass getIncome_Detail() { + return income_DetailEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Detail_Amount() { + return (EAttribute)income_DetailEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Detail_Is_worked() { + return (EAttribute)income_DetailEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Detail_Distance() { + return (EAttribute)income_DetailEClass.getEStructuralFeatures().get(2); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Detail_Worked_days() { + return (EAttribute)income_DetailEClass.getEStructuralFeatures().get(3); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Detail_Is_contributing_CNS() { + return (EAttribute)income_DetailEClass.getEStructuralFeatures().get(4); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getIncome_Detail_Id5() { + return (EAttribute)income_DetailEClass.getEStructuralFeatures().get(5); + } + + /** + * + * + * @generated + */ + @Override + public EReference getIncome_Detail_Income() { + return (EReference)income_DetailEClass.getEStructuralFeatures().get(6); + } + + /** + * + * + * @generated + */ + @Override + public EClass getFromLaw() { + return fromLawEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getFromLaw_Id() { + return (EAttribute)fromLawEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EReference getFromLaw_TaxPayer() { + return (EReference)fromLawEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EClass getFiscal_Address() { + return fiscal_AddressEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getHabitual_Address() { + return habitual_AddressEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getMarriage_Record() { + return marriage_RecordEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getNon_Resident_Tax_Payer() { + return non_Resident_Tax_PayerEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getNon_Resident_Tax_Payer_Is_assimilated_to_resident() { + return (EAttribute)non_Resident_Tax_PayerEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EClass getPartnership_Record() { + return partnership_RecordEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getResident_Tax_Payer() { + return resident_Tax_PayerEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getTrade_and_Business_Income() { + return trade_and_Business_IncomeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getAgriculture_and_Forestry_Income() { + return agriculture_and_Forestry_IncomeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getPensions_and_Annuities_Income() { + return pensions_and_Annuities_IncomeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPensions_and_Annuities_Income_Occasional_payement() { + return (EAttribute)pensions_and_Annuities_IncomeEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EClass getCapital_and_Investments_Income() { + return capital_and_Investments_IncomeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getEmployment_Income() { + return employment_IncomeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getRentals_and_Leases_Income() { + return rentals_and_Leases_IncomeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getRentals_and_Leases_Income_Is_periodic() { + return (EAttribute)rentals_and_Leases_IncomeEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EClass getForeign_Income() { + return foreign_IncomeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getLocal_Income() { + return local_IncomeEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getCIM() { + return cimEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getCIP() { + return cipEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getCIS() { + return cisEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getFD() { + return fdEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getFD_Distance_declared_in_january() { + return (EAttribute)fdEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EClass getProfessional_Expenses_Deduction() { + return professional_Expenses_DeductionEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getFO() { + return foEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getDS_for_Permanent_Expense() { + return dS_for_Permanent_ExpenseEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDS_for_Permanent_Expense_Permanent_expense_category() { + return (EAttribute)dS_for_Permanent_ExpenseEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EClass getDS() { + return dsEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDS_Maximum_deductible_amount() { + return (EAttribute)dsEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDS_Id3() { + return (EAttribute)dsEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EClass getDS_for_Interest_Expense() { + return dS_for_Interest_ExpenseEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getDS_for_Health_and_Pension_Insurance() { + return dS_for_Health_and_Pension_InsuranceEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDS_for_Health_and_Pension_Insurance_Insurance_category() { + return (EAttribute)dS_for_Health_and_Pension_InsuranceEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EClass getDS_for_Private_Insurance_and_Plan() { + return dS_for_Private_Insurance_and_PlanEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDS_for_Private_Insurance_and_Plan_Private_insurance_and_plan_category() { + return (EAttribute)dS_for_Private_Insurance_and_PlanEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EClass getDS_for_Loss_Carryforward() { + return dS_for_Loss_CarryforwardEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getDS_for_Donation() { + return dS_for_DonationEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getPermanent_Expense() { + return permanent_ExpenseEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPermanent_Expense_Category() { + return (EAttribute)permanent_ExpenseEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EClass getSpecial_Expense_DS() { + return special_Expense_DSEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getInterest_Expense() { + return interest_ExpenseEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getPrivate_Insurance_and_Plan() { + return private_Insurance_and_PlanEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPrivate_Insurance_and_Plan_Category() { + return (EAttribute)private_Insurance_and_PlanEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getPrivate_Insurance_and_Plan_Duration_of_contract() { + return (EAttribute)private_Insurance_and_PlanEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EClass getHealth_and_Pension_Insurance() { + return health_and_Pension_InsuranceEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getHealth_and_Pension_Insurance_Category() { + return (EAttribute)health_and_Pension_InsuranceEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getHealth_and_Pension_Insurance_Is_related_to_additional_salary() { + return (EAttribute)health_and_Pension_InsuranceEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EClass getDonation() { + return donationEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDonation_Beneficiary1() { + return (EAttribute)donationEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getDonation_Is_donation_reported() { + return (EAttribute)donationEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EClass getLoss_Carryforward() { + return loss_CarryforwardEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getSpousal_Expense_AC() { + return spousal_Expense_ACEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getExtraordinary_Expense_CE() { + return extraordinary_Expense_CEEClass; + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExtraordinary_Expense_CE_Thresholded_deduction_percentage() { + return (EAttribute)extraordinary_Expense_CEEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EAttribute getExtraordinary_Expense_CE_Ce_type() { + return (EAttribute)extraordinary_Expense_CEEClass.getEStructuralFeatures().get(1); + } + + /** + * + * + * @generated + */ + @Override + public EClass getTravel_Expense_FD() { + return travel_Expense_FDEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getProfessional_Expense() { + return professional_ExpenseEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getMiscellaneous_Expense_FO() { + return miscellaneous_Expense_FOEClass; + } + + /** + * + * + * @generated + */ + @Override + public EClass getResource() { + return resourceEClass; + } + + /** + * + * + * @generated + */ + @Override + public EReference getResource_Contains() { + return (EReference)resourceEClass.getEStructuralFeatures().get(0); + } + + /** + * + * + * @generated + */ + @Override + public EClass getRoot() { + return rootEClass; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getGrantor() { + return grantorEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getDisability_Types() { + return disability_TypesEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getCountry() { + return countryEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getTax_Office() { + return tax_OfficeEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getTax_Class_Category() { + return tax_Class_CategoryEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getJob_Activity() { + return job_ActivityEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getTown() { + return townEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getCE_Type() { + return cE_TypeEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getExpense_Purpose() { + return expense_PurposeEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getDependent_Type() { + return dependent_TypeEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getSeparation_Causes() { + return separation_CausesEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getCategory_of_Permanent_Expense() { + return category_of_Permanent_ExpenseEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getCategory_of_Health_and_Pension_Insurances() { + return category_of_Health_and_Pension_InsurancesEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getCategory_of_Private_Insurance_and_Plan() { + return category_of_Private_Insurance_and_PlanEEnum; + } + + /** + * + * + * @generated + */ + @Override + public EEnum getLegal_Union_Types() { + return legal_Union_TypesEEnum; + } + + /** + * + * + * @generated + */ + @Override + public TaxationFactory getTaxationFactory() { + return (TaxationFactory)getEFactoryInstance(); + } + + /** + * + * + * @generated + */ + private boolean isCreated = false; + + /** + * Creates the meta-model objects for the package. This method is + * guarded to have no affect on any invocation but its first. + * + * + * @generated + */ + public void createPackageContents() { + if (isCreated) return; + isCreated = true; + + // Create classes and their features + constantsEClass = createEClass(CONSTANTS); + createEAttribute(constantsEClass, CONSTANTS__MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD); + createEAttribute(constantsEClass, CONSTANTS__MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE); + createEAttribute(constantsEClass, CONSTANTS__MINIMUM_SALARY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION); + createEAttribute(constantsEClass, CONSTANTS__MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS); + createEAttribute(constantsEClass, CONSTANTS__MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS); + createEAttribute(constantsEClass, CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC); + createEAttribute(constantsEClass, CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE); + createEAttribute(constantsEClass, CONSTANTS__MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION); + createEAttribute(constantsEClass, CONSTANTS__MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION); + createEAttribute(constantsEClass, CONSTANTS__MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_CIM_DAILY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_CIM_MONTHLY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_CIM_YEARLY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_CIP_DAILY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_CIP_MONTHLY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_CIP_YEARLY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_CIS_DAILY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_CIS_MONTHLY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_CIS_YEARLY); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT); + createEAttribute(constantsEClass, CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS); + createEAttribute(constantsEClass, CONSTANTS__FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE); + createEAttribute(constantsEClass, CONSTANTS__DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE); + createEAttribute(constantsEClass, CONSTANTS__MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE); + + income_TaxEClass = createEClass(INCOME_TAX); + createEReference(income_TaxEClass, INCOME_TAX__TAX_PAYER); + createEAttribute(income_TaxEClass, INCOME_TAX__TAX_AMOUNT); + createEAttribute(income_TaxEClass, INCOME_TAX__TAX_YEAR); + createEAttribute(income_TaxEClass, INCOME_TAX__ID6); + + tax_PayerEClass = createEClass(TAX_PAYER); + createEReference(tax_PayerEClass, TAX_PAYER__DEPENDENTS); + createEReference(tax_PayerEClass, TAX_PAYER__FROM_AGENT); + createEReference(tax_PayerEClass, TAX_PAYER__INCOMES); + createEReference(tax_PayerEClass, TAX_PAYER__FROM_LAW); + + physical_PersonEClass = createEClass(PHYSICAL_PERSON); + createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__SS_NO); + createEReference(physical_PersonEClass, PHYSICAL_PERSON__ADDRESSES); + createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__BIRTH_YEAR); + createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__DISABILITY_PERCENTAGE); + createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__DISABILITY_TYPE); + createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__BIRTH_MONTH); + createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__BIRTH_DAY); + createEReference(physical_PersonEClass, PHYSICAL_PERSON__EXPENSES); + createEAttribute(physical_PersonEClass, PHYSICAL_PERSON__IS_WIDOWER); + + addressEClass = createEClass(ADDRESS); + createEAttribute(addressEClass, ADDRESS__COUNTRY); + createEAttribute(addressEClass, ADDRESS__STREET); + createEAttribute(addressEClass, ADDRESS__ZIP_CODE); + createEAttribute(addressEClass, ADDRESS__CITY); + createEAttribute(addressEClass, ADDRESS__ID2); + createEReference(addressEClass, ADDRESS__TAX_PAYER); + + expenseEClass = createEClass(EXPENSE); + createEAttribute(expenseEClass, EXPENSE__DECLARED_AMOUNT); + createEAttribute(expenseEClass, EXPENSE__EXPENSE_PURPOSE); + createEReference(expenseEClass, EXPENSE__DEPENDENT); + createEReference(expenseEClass, EXPENSE__FROM_AGENT); + createEReference(expenseEClass, EXPENSE__INCOME); + createEAttribute(expenseEClass, EXPENSE__ID4); + createEReference(expenseEClass, EXPENSE__BENEFICIARY); + + dependentEClass = createEClass(DEPENDENT); + createEAttribute(dependentEClass, DEPENDENT__DEPENDENT_TYPE); + createEReference(dependentEClass, DEPENDENT__RESPONSIBLE_PERSON); + createEAttribute(dependentEClass, DEPENDENT__CONTINUED_STUDIES); + createEReference(dependentEClass, DEPENDENT__ALLOWANCES); + createEReference(dependentEClass, DEPENDENT__HOUSEHOLD); + createEReference(dependentEClass, DEPENDENT__FROM_AGENT); + createEReference(dependentEClass, DEPENDENT__EXPENSE); + + external_AllowanceEClass = createEClass(EXTERNAL_ALLOWANCE); + createEAttribute(external_AllowanceEClass, EXTERNAL_ALLOWANCE__GRANTOR); + createEAttribute(external_AllowanceEClass, EXTERNAL_ALLOWANCE__STARTING_YEAR); + createEAttribute(external_AllowanceEClass, EXTERNAL_ALLOWANCE__ENDING_YEAR); + createEReference(external_AllowanceEClass, EXTERNAL_ALLOWANCE__RECIVER); + createEAttribute(external_AllowanceEClass, EXTERNAL_ALLOWANCE__ID5); + createEReference(external_AllowanceEClass, EXTERNAL_ALLOWANCE__PERSON); + + householdEClass = createEClass(HOUSEHOLD); + createEReference(householdEClass, HOUSEHOLD__PARENTS); + createEAttribute(householdEClass, HOUSEHOLD__ID1); + createEReference(householdEClass, HOUSEHOLD__CHILDREN); + + legal_Union_RecordEClass = createEClass(LEGAL_UNION_RECORD); + createEAttribute(legal_Union_RecordEClass, LEGAL_UNION_RECORD__START_YEAR); + createEAttribute(legal_Union_RecordEClass, LEGAL_UNION_RECORD__END_YEAR); + createEAttribute(legal_Union_RecordEClass, LEGAL_UNION_RECORD__SEPARATION_CAUSE); + createEReference(legal_Union_RecordEClass, LEGAL_UNION_RECORD__INDIVIDUAL_A); + createEReference(legal_Union_RecordEClass, LEGAL_UNION_RECORD__INDIVIDUAL_B); + createEReference(legal_Union_RecordEClass, LEGAL_UNION_RECORD__PROPERTIES); + createEAttribute(legal_Union_RecordEClass, LEGAL_UNION_RECORD__MUTUAL_AGREEMENT); + createEAttribute(legal_Union_RecordEClass, LEGAL_UNION_RECORD__ID9); + createEReference(legal_Union_RecordEClass, LEGAL_UNION_RECORD__HOUSEHOLD); + + tax_PropertyEClass = createEClass(TAX_PROPERTY); + createEAttribute(tax_PropertyEClass, TAX_PROPERTY__STARTING_YEAR); + createEAttribute(tax_PropertyEClass, TAX_PROPERTY__ID10); + createEReference(tax_PropertyEClass, TAX_PROPERTY__UNION_RECORD); + + tax_CaseEClass = createEClass(TAX_CASE); + + fromAgentEClass = createEClass(FROM_AGENT); + createEReference(fromAgentEClass, FROM_AGENT__TAX_PAYER); + createEAttribute(fromAgentEClass, FROM_AGENT__IS_DEPENDENT_ELIGIBLE_FOR_CE_NOT_IN_HOUSHOLD_CHILDREN_CARE); + createEReference(fromAgentEClass, FROM_AGENT__EXPENSE); + createEAttribute(fromAgentEClass, FROM_AGENT__IS_ELIGIBLE_DEBT); + createEReference(fromAgentEClass, FROM_AGENT__DEPENDENT); + + incomeEClass = createEClass(INCOME); + createEAttribute(incomeEClass, INCOME__INCOME_AMOUNT); + createEReference(incomeEClass, INCOME__INCOME_TYPE); + createEReference(incomeEClass, INCOME__TAX_CARD); + createEAttribute(incomeEClass, INCOME__TAX_LIABILITY); + createEReference(incomeEClass, INCOME__TAX_PAYER); + createEReference(incomeEClass, INCOME__DETAILS); + createEAttribute(incomeEClass, INCOME__NUM); + createEReference(incomeEClass, INCOME__EXPENSES); + + income_TypeEClass = createEClass(INCOME_TYPE); + createEAttribute(income_TypeEClass, INCOME_TYPE__ID8); + createEReference(income_TypeEClass, INCOME_TYPE__INCOME); + + tax_CardEClass = createEClass(TAX_CARD); + createEAttribute(tax_CardEClass, TAX_CARD__CARD_IDENTIFIER); + createEAttribute(tax_CardEClass, TAX_CARD__TAX_OFFICE); + createEAttribute(tax_CardEClass, TAX_CARD__PERCENTAGE_OF_WITHOLDING); + createEAttribute(tax_CardEClass, TAX_CARD__TAX_PAYERS_NAME_SURNAME); + createEAttribute(tax_CardEClass, TAX_CARD__TAX_PAYERS_PARTNER_NAME_SURNAME); + createEReference(tax_CardEClass, TAX_CARD__TAX_PAYERS_ADDRESS); + createEAttribute(tax_CardEClass, TAX_CARD__JOBS_EMPLOYER_SS_NO); + createEAttribute(tax_CardEClass, TAX_CARD__JOBS_EMPLOYERS_NAME); + createEAttribute(tax_CardEClass, TAX_CARD__JOBS_ACTIVITY_TYPE); + createEAttribute(tax_CardEClass, TAX_CARD__JOBS_PLACE_OF_WORK); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_FD_DAILY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_FD_MONTHLY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_AC_DAILY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_AC_MONTHLY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_AC_YEARLY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_CE_DAILY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_CE_MONTHLY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_CE_YEARLY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_DS_DAILY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_DS_MONTHLY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_FO_DAILY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_FO_MONTHLY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_FO_YEARLY); + createEAttribute(tax_CardEClass, TAX_CARD__CREDIT_CIS_DAILY); + createEAttribute(tax_CardEClass, TAX_CARD__CREDIT_CIS_MONTHLY); + createEAttribute(tax_CardEClass, TAX_CARD__CREDIT_CIM_DAILY); + createEAttribute(tax_CardEClass, TAX_CARD__VALIDITY); + createEReference(tax_CardEClass, TAX_CARD__INCOME_TAX_CREDIT); + createEReference(tax_CardEClass, TAX_CARD__PREVIOUS); + createEReference(tax_CardEClass, TAX_CARD__CURRENT_TAX_CARD); + createEAttribute(tax_CardEClass, TAX_CARD__CREDIT_CIM_YEARLY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_DS_ALIMONY_YEARLY); + createEAttribute(tax_CardEClass, TAX_CARD__DEDUCTION_DS_DEBT_YEARLY); + createEReference(tax_CardEClass, TAX_CARD__INCOME); + + income_Tax_CreditEClass = createEClass(INCOME_TAX_CREDIT); + createEAttribute(income_Tax_CreditEClass, INCOME_TAX_CREDIT__GRANTED_BY); + createEReference(income_Tax_CreditEClass, INCOME_TAX_CREDIT__TAX_PAYER); + createEAttribute(income_Tax_CreditEClass, INCOME_TAX_CREDIT__TAX_YEAR); + createEAttribute(income_Tax_CreditEClass, INCOME_TAX_CREDIT__YEARLY); + createEAttribute(income_Tax_CreditEClass, INCOME_TAX_CREDIT__MONTHLY); + createEAttribute(income_Tax_CreditEClass, INCOME_TAX_CREDIT__DAILY); + createEAttribute(income_Tax_CreditEClass, INCOME_TAX_CREDIT__ID7); + createEReference(income_Tax_CreditEClass, INCOME_TAX_CREDIT__TAXATION_FRAME); + + income_DetailEClass = createEClass(INCOME_DETAIL); + createEAttribute(income_DetailEClass, INCOME_DETAIL__AMOUNT); + createEAttribute(income_DetailEClass, INCOME_DETAIL__IS_WORKED); + createEAttribute(income_DetailEClass, INCOME_DETAIL__DISTANCE); + createEAttribute(income_DetailEClass, INCOME_DETAIL__WORKED_DAYS); + createEAttribute(income_DetailEClass, INCOME_DETAIL__IS_CONTRIBUTING_CNS); + createEAttribute(income_DetailEClass, INCOME_DETAIL__ID5); + createEReference(income_DetailEClass, INCOME_DETAIL__INCOME); + + fromLawEClass = createEClass(FROM_LAW); + createEAttribute(fromLawEClass, FROM_LAW__ID); + createEReference(fromLawEClass, FROM_LAW__TAX_PAYER); + + fiscal_AddressEClass = createEClass(FISCAL_ADDRESS); + + habitual_AddressEClass = createEClass(HABITUAL_ADDRESS); + + marriage_RecordEClass = createEClass(MARRIAGE_RECORD); + + non_Resident_Tax_PayerEClass = createEClass(NON_RESIDENT_TAX_PAYER); + createEAttribute(non_Resident_Tax_PayerEClass, NON_RESIDENT_TAX_PAYER__IS_ASSIMILATED_TO_RESIDENT); + + partnership_RecordEClass = createEClass(PARTNERSHIP_RECORD); + + resident_Tax_PayerEClass = createEClass(RESIDENT_TAX_PAYER); + + trade_and_Business_IncomeEClass = createEClass(TRADE_AND_BUSINESS_INCOME); + + agriculture_and_Forestry_IncomeEClass = createEClass(AGRICULTURE_AND_FORESTRY_INCOME); + + pensions_and_Annuities_IncomeEClass = createEClass(PENSIONS_AND_ANNUITIES_INCOME); + createEAttribute(pensions_and_Annuities_IncomeEClass, PENSIONS_AND_ANNUITIES_INCOME__OCCASIONAL_PAYEMENT); + + capital_and_Investments_IncomeEClass = createEClass(CAPITAL_AND_INVESTMENTS_INCOME); + + employment_IncomeEClass = createEClass(EMPLOYMENT_INCOME); + + rentals_and_Leases_IncomeEClass = createEClass(RENTALS_AND_LEASES_INCOME); + createEAttribute(rentals_and_Leases_IncomeEClass, RENTALS_AND_LEASES_INCOME__IS_PERIODIC); + + foreign_IncomeEClass = createEClass(FOREIGN_INCOME); + + local_IncomeEClass = createEClass(LOCAL_INCOME); + + cimEClass = createEClass(CIM); + + cipEClass = createEClass(CIP); + + cisEClass = createEClass(CIS); + + fdEClass = createEClass(FD); + createEAttribute(fdEClass, FD__DISTANCE_DECLARED_IN_JANUARY); + + professional_Expenses_DeductionEClass = createEClass(PROFESSIONAL_EXPENSES_DEDUCTION); + + foEClass = createEClass(FO); + + dS_for_Permanent_ExpenseEClass = createEClass(DS_FOR_PERMANENT_EXPENSE); + createEAttribute(dS_for_Permanent_ExpenseEClass, DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY); + + dsEClass = createEClass(DS); + createEAttribute(dsEClass, DS__MAXIMUM_DEDUCTIBLE_AMOUNT); + createEAttribute(dsEClass, DS__ID3); + + dS_for_Interest_ExpenseEClass = createEClass(DS_FOR_INTEREST_EXPENSE); + + dS_for_Health_and_Pension_InsuranceEClass = createEClass(DS_FOR_HEALTH_AND_PENSION_INSURANCE); + createEAttribute(dS_for_Health_and_Pension_InsuranceEClass, DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY); + + dS_for_Private_Insurance_and_PlanEClass = createEClass(DS_FOR_PRIVATE_INSURANCE_AND_PLAN); + createEAttribute(dS_for_Private_Insurance_and_PlanEClass, DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY); + + dS_for_Loss_CarryforwardEClass = createEClass(DS_FOR_LOSS_CARRYFORWARD); + + dS_for_DonationEClass = createEClass(DS_FOR_DONATION); + + permanent_ExpenseEClass = createEClass(PERMANENT_EXPENSE); + createEAttribute(permanent_ExpenseEClass, PERMANENT_EXPENSE__CATEGORY); + + special_Expense_DSEClass = createEClass(SPECIAL_EXPENSE_DS); + + interest_ExpenseEClass = createEClass(INTEREST_EXPENSE); + + private_Insurance_and_PlanEClass = createEClass(PRIVATE_INSURANCE_AND_PLAN); + createEAttribute(private_Insurance_and_PlanEClass, PRIVATE_INSURANCE_AND_PLAN__CATEGORY); + createEAttribute(private_Insurance_and_PlanEClass, PRIVATE_INSURANCE_AND_PLAN__DURATION_OF_CONTRACT); + + health_and_Pension_InsuranceEClass = createEClass(HEALTH_AND_PENSION_INSURANCE); + createEAttribute(health_and_Pension_InsuranceEClass, HEALTH_AND_PENSION_INSURANCE__CATEGORY); + createEAttribute(health_and_Pension_InsuranceEClass, HEALTH_AND_PENSION_INSURANCE__IS_RELATED_TO_ADDITIONAL_SALARY); + + donationEClass = createEClass(DONATION); + createEAttribute(donationEClass, DONATION__BENEFICIARY1); + createEAttribute(donationEClass, DONATION__IS_DONATION_REPORTED); + + loss_CarryforwardEClass = createEClass(LOSS_CARRYFORWARD); + + spousal_Expense_ACEClass = createEClass(SPOUSAL_EXPENSE_AC); + + extraordinary_Expense_CEEClass = createEClass(EXTRAORDINARY_EXPENSE_CE); + createEAttribute(extraordinary_Expense_CEEClass, EXTRAORDINARY_EXPENSE_CE__THRESHOLDED_DEDUCTION_PERCENTAGE); + createEAttribute(extraordinary_Expense_CEEClass, EXTRAORDINARY_EXPENSE_CE__CE_TYPE); + + travel_Expense_FDEClass = createEClass(TRAVEL_EXPENSE_FD); + + professional_ExpenseEClass = createEClass(PROFESSIONAL_EXPENSE); + + miscellaneous_Expense_FOEClass = createEClass(MISCELLANEOUS_EXPENSE_FO); + + resourceEClass = createEClass(RESOURCE); + createEReference(resourceEClass, RESOURCE__CONTAINS); + + rootEClass = createEClass(ROOT); + + // Create enums + grantorEEnum = createEEnum(GRANTOR); + disability_TypesEEnum = createEEnum(DISABILITY_TYPES); + countryEEnum = createEEnum(COUNTRY); + tax_OfficeEEnum = createEEnum(TAX_OFFICE); + tax_Class_CategoryEEnum = createEEnum(TAX_CLASS_CATEGORY); + job_ActivityEEnum = createEEnum(JOB_ACTIVITY); + townEEnum = createEEnum(TOWN); + cE_TypeEEnum = createEEnum(CE_TYPE); + expense_PurposeEEnum = createEEnum(EXPENSE_PURPOSE); + dependent_TypeEEnum = createEEnum(DEPENDENT_TYPE); + separation_CausesEEnum = createEEnum(SEPARATION_CAUSES); + category_of_Permanent_ExpenseEEnum = createEEnum(CATEGORY_OF_PERMANENT_EXPENSE); + category_of_Health_and_Pension_InsurancesEEnum = createEEnum(CATEGORY_OF_HEALTH_AND_PENSION_INSURANCES); + category_of_Private_Insurance_and_PlanEEnum = createEEnum(CATEGORY_OF_PRIVATE_INSURANCE_AND_PLAN); + legal_Union_TypesEEnum = createEEnum(LEGAL_UNION_TYPES); + } + + /** + * + * + * @generated + */ + private boolean isInitialized = false; + + /** + * Complete the initialization of the package and its meta-model. This + * method is guarded to have no affect on any invocation but its first. + * + * + * @generated + */ + public void initializePackageContents() { + if (isInitialized) return; + isInitialized = true; + + // Initialize package + setName(eNAME); + setNsPrefix(eNS_PREFIX); + setNsURI(eNS_URI); + + // Create type parameters + + // Set bounds for type parameters + + // Add supertypes to classes + tax_PayerEClass.getESuperTypes().add(this.getPhysical_Person()); + tax_PayerEClass.getESuperTypes().add(this.getTax_Case()); + tax_PayerEClass.getESuperTypes().add(this.getRoot()); + addressEClass.getESuperTypes().add(this.getRoot()); + dependentEClass.getESuperTypes().add(this.getPhysical_Person()); + householdEClass.getESuperTypes().add(this.getTax_Case()); + tax_CaseEClass.getESuperTypes().add(this.getRoot()); + income_Tax_CreditEClass.getESuperTypes().add(this.getRoot()); + fiscal_AddressEClass.getESuperTypes().add(this.getAddress()); + habitual_AddressEClass.getESuperTypes().add(this.getAddress()); + marriage_RecordEClass.getESuperTypes().add(this.getLegal_Union_Record()); + non_Resident_Tax_PayerEClass.getESuperTypes().add(this.getTax_Payer()); + partnership_RecordEClass.getESuperTypes().add(this.getLegal_Union_Record()); + resident_Tax_PayerEClass.getESuperTypes().add(this.getTax_Payer()); + trade_and_Business_IncomeEClass.getESuperTypes().add(this.getIncome_Type()); + agriculture_and_Forestry_IncomeEClass.getESuperTypes().add(this.getIncome_Type()); + pensions_and_Annuities_IncomeEClass.getESuperTypes().add(this.getIncome_Type()); + capital_and_Investments_IncomeEClass.getESuperTypes().add(this.getIncome_Type()); + employment_IncomeEClass.getESuperTypes().add(this.getIncome_Type()); + rentals_and_Leases_IncomeEClass.getESuperTypes().add(this.getIncome_Type()); + foreign_IncomeEClass.getESuperTypes().add(this.getIncome()); + local_IncomeEClass.getESuperTypes().add(this.getIncome()); + cimEClass.getESuperTypes().add(this.getIncome_Tax_Credit()); + cipEClass.getESuperTypes().add(this.getIncome_Tax_Credit()); + cisEClass.getESuperTypes().add(this.getIncome_Tax_Credit()); + fdEClass.getESuperTypes().add(this.getProfessional_Expenses_Deduction()); + professional_Expenses_DeductionEClass.getESuperTypes().add(this.getRoot()); + foEClass.getESuperTypes().add(this.getProfessional_Expenses_Deduction()); + dS_for_Permanent_ExpenseEClass.getESuperTypes().add(this.getDS()); + dsEClass.getESuperTypes().add(this.getRoot()); + dS_for_Interest_ExpenseEClass.getESuperTypes().add(this.getDS()); + dS_for_Health_and_Pension_InsuranceEClass.getESuperTypes().add(this.getDS()); + dS_for_Private_Insurance_and_PlanEClass.getESuperTypes().add(this.getDS()); + dS_for_Loss_CarryforwardEClass.getESuperTypes().add(this.getDS()); + dS_for_DonationEClass.getESuperTypes().add(this.getDS()); + permanent_ExpenseEClass.getESuperTypes().add(this.getSpecial_Expense_DS()); + special_Expense_DSEClass.getESuperTypes().add(this.getExpense()); + interest_ExpenseEClass.getESuperTypes().add(this.getSpecial_Expense_DS()); + private_Insurance_and_PlanEClass.getESuperTypes().add(this.getSpecial_Expense_DS()); + health_and_Pension_InsuranceEClass.getESuperTypes().add(this.getSpecial_Expense_DS()); + donationEClass.getESuperTypes().add(this.getSpecial_Expense_DS()); + loss_CarryforwardEClass.getESuperTypes().add(this.getSpecial_Expense_DS()); + spousal_Expense_ACEClass.getESuperTypes().add(this.getExpense()); + extraordinary_Expense_CEEClass.getESuperTypes().add(this.getExpense()); + travel_Expense_FDEClass.getESuperTypes().add(this.getProfessional_Expense()); + professional_ExpenseEClass.getESuperTypes().add(this.getExpense()); + miscellaneous_Expense_FOEClass.getESuperTypes().add(this.getProfessional_Expense()); + + // Initialize classes, features, and operations; add parameters + initEClass(constantsEClass, Constants.class, "Constants", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getConstants_MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD(), ecorePackage.getEDouble(), "MAXIMUM_CE_RATE_FOR_CHILD_NOT_BEING_PART_OF_HOUSEHOLD", "3480.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE(), ecorePackage.getEDouble(), "MAXIMUM_CE_RATE_FOR_HOUSE_CARE_AND_CHILD_PART_OF_THE_HOUSEHOLD_CARE", "3600.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MINIMUM_SALARY(), ecorePackage.getEDouble(), "MINIMUM_SALARY", "1500.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION(), ecorePackage.getEDouble(), "FLAT_RATE_FOR_EXTRA_PROFESSIONAL_DEDUCTION", "4500.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS(), ecorePackage.getEDouble(), "MAXIMUM_DEDUCTIBLE_PERCENTAGE_FOR_DONATIONS", "20.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS(), ecorePackage.getEDouble(), "MINIMUM_DEDUCTIBLE_AMOUNT_FOR_DONATIONS", "120.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC(), ecorePackage.getEDouble(), "MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANC", "0.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE(), ecorePackage.getEDouble(), "MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ALIMONY_EXPENSE", "24000.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(), ecorePackage.getEDouble(), "MAXIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION", "99.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(), ecorePackage.getEDouble(), "MAXIMAL_FLAT_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION", "30.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION(), ecorePackage.getEDouble(), "MINIMAL_DISTANCE_FOR_TRAVEL_EXPENSE_DEDUCTION", "4.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_CIM_DAILY(), ecorePackage.getEDouble(), "FLAT_RATE_CIM_DAILY", "2.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_CIM_MONTHLY(), ecorePackage.getEDouble(), "FLAT_RATE_CIM_MONTHLY", "62.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_CIM_YEARLY(), ecorePackage.getEDouble(), "FLAT_RATE_CIM_YEARLY", "750.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_CIP_DAILY(), ecorePackage.getEDouble(), "FLAT_RATE_CIP_DAILY", "1.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_CIP_MONTHLY(), ecorePackage.getEDouble(), "FLAT_RATE_CIP_MONTHLY", "25.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_CIP_YEARLY(), ecorePackage.getEDouble(), "FLAT_RATE_CIP_YEARLY", "30.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_CIS_DAILY(), ecorePackage.getEDouble(), "FLAT_RATE_CIS_DAILY", "1.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_CIS_MONTHLY(), ecorePackage.getEDouble(), "FLAT_RATE_CIS_MONTHLY", "25.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_CIS_YEARLY(), ecorePackage.getEDouble(), "FLAT_RATE_CIS_YEARLY", "300.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT(), ecorePackage.getEDouble(), "FLAT_RATE_FOR_TRAVEL_EXPENSE_PER_UNIT", "99.0", 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS(), ecorePackage.getEDouble(), "MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_DS", null, 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(), ecorePackage.getEDouble(), "FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE", null, 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE(), ecorePackage.getEDouble(), "DISABILITY_FLAT_RATE_FOR_MISCELLANEOUS_EXPENSE", null, 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getConstants_MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE(), ecorePackage.getEDouble(), "MAXIMUM_DEDUCTIBLE_AMOUNT_FOR_ADDITIONAL_PENSION_AND_INSURANCE", null, 1, 1, Constants.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(income_TaxEClass, Income_Tax.class, "Income_Tax", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getIncome_Tax_TaxPayer(), this.getTax_Payer(), null, "taxPayer", null, 1, 1, Income_Tax.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Tax_Tax_amount(), ecorePackage.getEDouble(), "tax_amount", null, 1, 1, Income_Tax.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Tax_Tax_year(), ecorePackage.getEInt(), "tax_year", null, 1, 1, Income_Tax.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Tax_Id6(), ecorePackage.getEString(), "id6", null, 1, 1, Income_Tax.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(tax_PayerEClass, Tax_Payer.class, "Tax_Payer", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getTax_Payer_Dependents(), this.getDependent(), this.getDependent_Responsible_person(), "dependents", null, 0, 6, Tax_Payer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getTax_Payer_From_agent(), this.getFromAgent(), this.getFromAgent_TaxPayer(), "from_agent", null, 1, 1, Tax_Payer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getTax_Payer_Incomes(), this.getIncome(), this.getIncome_TaxPayer(), "incomes", null, 1, -1, Tax_Payer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getTax_Payer_From_law(), this.getFromLaw(), this.getFromLaw_TaxPayer(), "from_law", null, 1, 1, Tax_Payer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(physical_PersonEClass, Physical_Person.class, "Physical_Person", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getPhysical_Person_SSNo(), ecorePackage.getEString(), "SSNo", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getPhysical_Person_Addresses(), this.getAddress(), this.getAddress_TaxPayer(), "addresses", null, 0, -1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getPhysical_Person_Birth_year(), ecorePackage.getEInt(), "birth_year", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getPhysical_Person_Disability_percentage(), ecorePackage.getEDouble(), "disability_percentage", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getPhysical_Person_Disability_type(), this.getDisability_Types(), "disability_type", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getPhysical_Person_Birth_month(), ecorePackage.getEInt(), "birth_month", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getPhysical_Person_Birth_day(), ecorePackage.getEInt(), "birth_day", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getPhysical_Person_Expenses(), this.getExpense(), this.getExpense_Beneficiary(), "expenses", null, 0, -1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getPhysical_Person_Is_widower(), ecorePackage.getEBoolean(), "is_widower", null, 1, 1, Physical_Person.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(addressEClass, Address.class, "Address", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getAddress_Country(), this.getCountry(), "country", "ZZ", 1, 1, Address.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAddress_Street(), ecorePackage.getEString(), "street", null, 1, 1, Address.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAddress_ZipCode(), ecorePackage.getEString(), "zipCode", null, 1, 1, Address.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAddress_City(), ecorePackage.getEString(), "city", null, 1, 1, Address.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getAddress_Id2(), ecorePackage.getEString(), "id2", null, 1, 1, Address.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getAddress_TaxPayer(), this.getPhysical_Person(), this.getPhysical_Person_Addresses(), "taxPayer", null, 0, -1, Address.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(expenseEClass, Expense.class, "Expense", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getExpense_Declared_amount(), ecorePackage.getEDouble(), "declared_amount", null, 1, 1, Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getExpense_Expense_purpose(), this.getExpense_Purpose(), "expense_purpose", "OTHER", 1, 1, Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getExpense_Dependent(), this.getDependent(), this.getDependent_Expense(), "dependent", null, 0, 1, Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getExpense_From_agent(), this.getFromAgent(), this.getFromAgent_Expense(), "from_agent", null, 0, 1, Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getExpense_Income(), this.getIncome(), this.getIncome_Expenses(), "income", null, 1, 1, Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getExpense_Id4(), ecorePackage.getEString(), "id4", null, 1, 1, Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getExpense_Beneficiary(), this.getPhysical_Person(), this.getPhysical_Person_Expenses(), "beneficiary", null, 0, 1, Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(dependentEClass, Dependent.class, "Dependent", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getDependent_Dependent_type(), this.getDependent_Type(), "dependent_type", null, 1, 1, Dependent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getDependent_Responsible_person(), this.getTax_Payer(), this.getTax_Payer_Dependents(), "responsible_person", null, 0, 1, Dependent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getDependent_Continued_studies(), ecorePackage.getEBoolean(), "continued_studies", "false", 1, 1, Dependent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getDependent_Allowances(), this.getExternal_Allowance(), this.getExternal_Allowance_Person(), "allowances", null, 0, 1, Dependent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getDependent_Household(), this.getHousehold(), this.getHousehold_Children(), "household", null, 0, 1, Dependent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getDependent_From_agent(), this.getFromAgent(), this.getFromAgent_Dependent(), "from_agent", null, 0, 1, Dependent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getDependent_Expense(), this.getExpense(), this.getExpense_Dependent(), "expense", null, 0, -1, Dependent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(external_AllowanceEClass, External_Allowance.class, "External_Allowance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getExternal_Allowance_Grantor(), this.getGrantor(), "grantor", null, 1, 1, External_Allowance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getExternal_Allowance_Starting_year(), ecorePackage.getEInt(), "starting_year", null, 1, 1, External_Allowance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getExternal_Allowance_Ending_year(), ecorePackage.getEInt(), "ending_year", null, 1, 1, External_Allowance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getExternal_Allowance_Reciver(), this.getPhysical_Person(), null, "reciver", null, 1, 1, External_Allowance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getExternal_Allowance_Id5(), ecorePackage.getEString(), "id5", null, 1, 1, External_Allowance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getExternal_Allowance_Person(), this.getDependent(), this.getDependent_Allowances(), "person", null, 1, 1, External_Allowance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(householdEClass, Household.class, "Household", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getHousehold_Parents(), this.getLegal_Union_Record(), this.getLegal_Union_Record_Household(), "parents", null, 1, 1, Household.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getHousehold_Id1(), ecorePackage.getEString(), "id1", null, 1, 1, Household.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getHousehold_Children(), this.getDependent(), this.getDependent_Household(), "children", null, 0, -1, Household.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(legal_Union_RecordEClass, Legal_Union_Record.class, "Legal_Union_Record", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getLegal_Union_Record_Start_year(), ecorePackage.getEInt(), "start_year", null, 1, 1, Legal_Union_Record.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getLegal_Union_Record_End_year(), ecorePackage.getEInt(), "end_year", null, 1, 1, Legal_Union_Record.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getLegal_Union_Record_Separation_cause(), this.getSeparation_Causes(), "separation_cause", null, 1, 1, Legal_Union_Record.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getLegal_Union_Record_Individual_A(), this.getPhysical_Person(), null, "individual_A", null, 1, 1, Legal_Union_Record.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getLegal_Union_Record_Individual_B(), this.getPhysical_Person(), null, "individual_B", null, 1, -1, Legal_Union_Record.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getLegal_Union_Record_Properties(), this.getTax_Property(), this.getTax_Property_Union_record(), "properties", null, 1, -1, Legal_Union_Record.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getLegal_Union_Record_Mutual_agreement(), ecorePackage.getEBoolean(), "mutual_agreement", null, 1, 1, Legal_Union_Record.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getLegal_Union_Record_Id9(), ecorePackage.getEString(), "id9", null, 1, 1, Legal_Union_Record.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getLegal_Union_Record_Household(), this.getHousehold(), this.getHousehold_Parents(), "household", null, 1, 1, Legal_Union_Record.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(tax_PropertyEClass, Tax_Property.class, "Tax_Property", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getTax_Property_Starting_year(), ecorePackage.getEInt(), "starting_year", null, 1, 1, Tax_Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getTax_Property_Id10(), ecorePackage.getEString(), "id10", null, 1, 1, Tax_Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getTax_Property_Union_record(), this.getLegal_Union_Record(), this.getLegal_Union_Record_Properties(), "union_record", null, 1, 1, Tax_Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(tax_CaseEClass, Tax_Case.class, "Tax_Case", IS_ABSTRACT, IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(fromAgentEClass, FromAgent.class, "FromAgent", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getFromAgent_TaxPayer(), this.getTax_Payer(), this.getTax_Payer_From_agent(), "taxPayer", null, 1, 1, FromAgent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getFromAgent_Is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care(), ecorePackage.getEBoolean(), "is_dependent_eligible_for_CE_Not_In_Houshold_Children_Care", null, 1, 1, FromAgent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getFromAgent_Expense(), this.getExpense(), this.getExpense_From_agent(), "expense", null, 0, 1, FromAgent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getFromAgent_Is_eligible_debt(), ecorePackage.getEBoolean(), "is_eligible_debt", null, 1, 1, FromAgent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getFromAgent_Dependent(), this.getDependent(), this.getDependent_From_agent(), "dependent", null, 0, 1, FromAgent.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(incomeEClass, Income.class, "Income", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getIncome_Income_amount(), ecorePackage.getEDouble(), "income_amount", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getIncome_Income_type(), this.getIncome_Type(), this.getIncome_Type_Income(), "income_type", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getIncome_Tax_card(), this.getTax_Card(), this.getTax_Card_Income(), "tax_card", null, 0, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Tax_liability(), ecorePackage.getEDouble(), "tax_liability", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getIncome_TaxPayer(), this.getTax_Payer(), this.getTax_Payer_Incomes(), "taxPayer", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getIncome_Details(), this.getIncome_Detail(), this.getIncome_Detail_Income(), "details", null, 12, 12, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Num(), ecorePackage.getEInt(), "num", null, 1, 1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getIncome_Expenses(), this.getExpense(), this.getExpense_Income(), "expenses", null, 0, -1, Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(income_TypeEClass, Income_Type.class, "Income_Type", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getIncome_Type_Id8(), ecorePackage.getEString(), "id8", null, 1, 1, Income_Type.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getIncome_Type_Income(), this.getIncome(), this.getIncome_Income_type(), "income", null, 1, 1, Income_Type.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(tax_CardEClass, Tax_Card.class, "Tax_Card", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getTax_Card_Card_identifier(), ecorePackage.getEString(), "card_identifier", null, 0, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Tax_office(), this.getTax_Office(), "tax_office", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Percentage_of_witholding(), ecorePackage.getEDouble(), "percentage_of_witholding", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Tax_payers_name_surname(), ecorePackage.getEString(), "tax_payers_name_surname", null, 0, -1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getTax_Card_Tax_payers_partner_name_surname(), ecorePackage.getEString(), "tax_payers_partner_name_surname", null, 0, -1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getTax_Card_Tax_payers_address(), this.getAddress(), null, "tax_payers_address", null, 0, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Jobs_Employer_SSNo(), ecorePackage.getEString(), "jobs_Employer_SSNo", null, 0, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getTax_Card_Jobs_employers_name(), ecorePackage.getEString(), "jobs_employers_name", null, 0, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getTax_Card_Jobs_activity_type(), this.getJob_Activity(), "jobs_activity_type", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Jobs_place_of_work(), this.getTown(), "jobs_place_of_work", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_FD_daily(), ecorePackage.getEDouble(), "deduction_FD_daily", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getTax_Card_Deduction_FD_monthly(), ecorePackage.getEDouble(), "deduction_FD_monthly", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getTax_Card_Deduction_AC_daily(), ecorePackage.getEDouble(), "deduction_AC_daily", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_AC_monthly(), ecorePackage.getEDouble(), "deduction_AC_monthly", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_AC_yearly(), ecorePackage.getEDouble(), "deduction_AC_yearly", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_CE_daily(), ecorePackage.getEDouble(), "deduction_CE_daily", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_CE_monthly(), ecorePackage.getEDouble(), "deduction_CE_monthly", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_CE_yearly(), ecorePackage.getEDouble(), "deduction_CE_yearly", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_DS_daily(), ecorePackage.getEDouble(), "deduction_DS_daily", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_DS_monthly(), ecorePackage.getEDouble(), "deduction_DS_monthly", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_FO_daily(), ecorePackage.getEDouble(), "deduction_FO_daily", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_FO_monthly(), ecorePackage.getEDouble(), "deduction_FO_monthly", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Deduction_FO_yearly(), ecorePackage.getEDouble(), "deduction_FO_yearly", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Credit_CIS_daily(), ecorePackage.getEDouble(), "credit_CIS_daily", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Credit_CIS_monthly(), ecorePackage.getEDouble(), "credit_CIS_monthly", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Credit_CIM_daily(), ecorePackage.getEDouble(), "credit_CIM_daily", "0.0", 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, !IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Validity(), ecorePackage.getEBoolean(), "validity", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getTax_Card_Income_Tax_Credit(), this.getIncome_Tax_Credit(), this.getIncome_Tax_Credit_Taxation_Frame(), "income_Tax_Credit", null, 0, -1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getTax_Card_Previous(), this.getTax_Card(), this.getTax_Card_Current_tax_card(), "previous", null, 0, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getTax_Card_Current_tax_card(), this.getTax_Card(), this.getTax_Card_Previous(), "current_tax_card", null, 0, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getTax_Card_Credit_CIM_yearly(), ecorePackage.getEDouble(), "credit_CIM_yearly", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getTax_Card_Deduction_DS_Alimony_yearly(), ecorePackage.getEDouble(), "deduction_DS_Alimony_yearly", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getTax_Card_Deduction_DS_Debt_yearly(), ecorePackage.getEDouble(), "deduction_DS_Debt_yearly", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getTax_Card_Income(), this.getIncome(), this.getIncome_Tax_card(), "income", null, 1, 1, Tax_Card.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(income_Tax_CreditEClass, Income_Tax_Credit.class, "Income_Tax_Credit", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getIncome_Tax_Credit_GrantedBy(), this.getGrantor(), "grantedBy", null, 1, 1, Income_Tax_Credit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEReference(getIncome_Tax_Credit_TaxPayer(), this.getTax_Payer(), null, "taxPayer", null, 0, 1, Income_Tax_Credit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Tax_Credit_Tax_year(), ecorePackage.getEInt(), "tax_year", null, 1, 1, Income_Tax_Credit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Tax_Credit_Yearly(), ecorePackage.getEDouble(), "yearly", "300.0", 1, 1, Income_Tax_Credit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Tax_Credit_Monthly(), ecorePackage.getEDouble(), "monthly", "25.0", 1, 1, Income_Tax_Credit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Tax_Credit_Daily(), ecorePackage.getEDouble(), "daily", "1.0", 1, 1, Income_Tax_Credit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Tax_Credit_Id7(), ecorePackage.getEString(), "id7", null, 1, 1, Income_Tax_Credit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getIncome_Tax_Credit_Taxation_Frame(), this.getTax_Card(), this.getTax_Card_Income_Tax_Credit(), "taxation_Frame", null, 0, 1, Income_Tax_Credit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(income_DetailEClass, Income_Detail.class, "Income_Detail", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getIncome_Detail_Amount(), ecorePackage.getEDouble(), "amount", null, 1, 1, Income_Detail.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Detail_Is_worked(), ecorePackage.getEBoolean(), "is_worked", null, 1, 1, Income_Detail.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Detail_Distance(), ecorePackage.getEDouble(), "distance", null, 1, 1, Income_Detail.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Detail_Worked_days(), ecorePackage.getEInt(), "worked_days", null, 1, 1, Income_Detail.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getIncome_Detail_Is_contributing_CNS(), ecorePackage.getEBoolean(), "is_contributing_CNS", null, 1, 1, Income_Detail.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEAttribute(getIncome_Detail_Id5(), ecorePackage.getEString(), "id5", null, 1, 1, Income_Detail.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getIncome_Detail_Income(), this.getIncome(), this.getIncome_Details(), "income", null, 1, 1, Income_Detail.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(fromLawEClass, FromLaw.class, "FromLaw", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getFromLaw_Id(), ecorePackage.getEString(), "id", null, 1, 1, FromLaw.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + initEReference(getFromLaw_TaxPayer(), this.getTax_Payer(), this.getTax_Payer_From_law(), "taxPayer", null, 1, 1, FromLaw.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(fiscal_AddressEClass, Fiscal_Address.class, "Fiscal_Address", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(habitual_AddressEClass, Habitual_Address.class, "Habitual_Address", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(marriage_RecordEClass, Marriage_Record.class, "Marriage_Record", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(non_Resident_Tax_PayerEClass, Non_Resident_Tax_Payer.class, "Non_Resident_Tax_Payer", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getNon_Resident_Tax_Payer_Is_assimilated_to_resident(), ecorePackage.getEBoolean(), "is_assimilated_to_resident", "false", 1, 1, Non_Resident_Tax_Payer.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(partnership_RecordEClass, Partnership_Record.class, "Partnership_Record", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(resident_Tax_PayerEClass, Resident_Tax_Payer.class, "Resident_Tax_Payer", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(trade_and_Business_IncomeEClass, Trade_and_Business_Income.class, "Trade_and_Business_Income", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(agriculture_and_Forestry_IncomeEClass, Agriculture_and_Forestry_Income.class, "Agriculture_and_Forestry_Income", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(pensions_and_Annuities_IncomeEClass, Pensions_and_Annuities_Income.class, "Pensions_and_Annuities_Income", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getPensions_and_Annuities_Income_Occasional_payement(), ecorePackage.getEBoolean(), "occasional_payement", "false", 0, 1, Pensions_and_Annuities_Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(capital_and_Investments_IncomeEClass, Capital_and_Investments_Income.class, "Capital_and_Investments_Income", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(employment_IncomeEClass, Employment_Income.class, "Employment_Income", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(rentals_and_Leases_IncomeEClass, Rentals_and_Leases_Income.class, "Rentals_and_Leases_Income", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getRentals_and_Leases_Income_Is_periodic(), ecorePackage.getEBoolean(), "is_periodic", "true", 1, 1, Rentals_and_Leases_Income.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(foreign_IncomeEClass, Foreign_Income.class, "Foreign_Income", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(local_IncomeEClass, Local_Income.class, "Local_Income", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(cimEClass, TaxationWithRoot.CIM.class, "CIM", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(cipEClass, TaxationWithRoot.CIP.class, "CIP", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(cisEClass, TaxationWithRoot.CIS.class, "CIS", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(fdEClass, TaxationWithRoot.FD.class, "FD", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getFD_Distance_declared_in_january(), ecorePackage.getEDouble(), "distance_declared_in_january", null, 1, 1, TaxationWithRoot.FD.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(professional_Expenses_DeductionEClass, Professional_Expenses_Deduction.class, "Professional_Expenses_Deduction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(foEClass, TaxationWithRoot.FO.class, "FO", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(dS_for_Permanent_ExpenseEClass, DS_for_Permanent_Expense.class, "DS_for_Permanent_Expense", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getDS_for_Permanent_Expense_Permanent_expense_category(), this.getCategory_of_Permanent_Expense(), "permanent_expense_category", null, 1, 1, DS_for_Permanent_Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(dsEClass, TaxationWithRoot.DS.class, "DS", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getDS_Maximum_deductible_amount(), ecorePackage.getEDouble(), "maximum_deductible_amount", null, 1, 1, TaxationWithRoot.DS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getDS_Id3(), ecorePackage.getEString(), "id3", null, 1, 1, TaxationWithRoot.DS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); + + initEClass(dS_for_Interest_ExpenseEClass, DS_for_Interest_Expense.class, "DS_for_Interest_Expense", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(dS_for_Health_and_Pension_InsuranceEClass, DS_for_Health_and_Pension_Insurance.class, "DS_for_Health_and_Pension_Insurance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getDS_for_Health_and_Pension_Insurance_Insurance_category(), this.getCategory_of_Health_and_Pension_Insurances(), "insurance_category", null, 1, 1, DS_for_Health_and_Pension_Insurance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(dS_for_Private_Insurance_and_PlanEClass, DS_for_Private_Insurance_and_Plan.class, "DS_for_Private_Insurance_and_Plan", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getDS_for_Private_Insurance_and_Plan_Private_insurance_and_plan_category(), this.getCategory_of_Private_Insurance_and_Plan(), "private_insurance_and_plan_category", null, 1, 1, DS_for_Private_Insurance_and_Plan.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(dS_for_Loss_CarryforwardEClass, DS_for_Loss_Carryforward.class, "DS_for_Loss_Carryforward", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(dS_for_DonationEClass, DS_for_Donation.class, "DS_for_Donation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(permanent_ExpenseEClass, Permanent_Expense.class, "Permanent_Expense", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getPermanent_Expense_Category(), this.getCategory_of_Permanent_Expense(), "category", null, 1, 1, Permanent_Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(special_Expense_DSEClass, Special_Expense_DS.class, "Special_Expense_DS", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(interest_ExpenseEClass, Interest_Expense.class, "Interest_Expense", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(private_Insurance_and_PlanEClass, Private_Insurance_and_Plan.class, "Private_Insurance_and_Plan", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getPrivate_Insurance_and_Plan_Category(), this.getCategory_of_Private_Insurance_and_Plan(), "category", null, 1, 1, Private_Insurance_and_Plan.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getPrivate_Insurance_and_Plan_Duration_of_contract(), ecorePackage.getEInt(), "duration_of_contract", null, 1, 1, Private_Insurance_and_Plan.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(health_and_Pension_InsuranceEClass, Health_and_Pension_Insurance.class, "Health_and_Pension_Insurance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getHealth_and_Pension_Insurance_Category(), this.getCategory_of_Health_and_Pension_Insurances(), "category", null, 1, 1, Health_and_Pension_Insurance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getHealth_and_Pension_Insurance_Is_related_to_additional_salary(), ecorePackage.getEBoolean(), "is_related_to_additional_salary", "false", 1, 1, Health_and_Pension_Insurance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(donationEClass, Donation.class, "Donation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getDonation_Beneficiary1(), ecorePackage.getEString(), "beneficiary1", null, 1, 1, Donation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getDonation_Is_donation_reported(), ecorePackage.getEBoolean(), "is_donation_reported", null, 1, 1, Donation.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(loss_CarryforwardEClass, Loss_Carryforward.class, "Loss_Carryforward", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(spousal_Expense_ACEClass, Spousal_Expense_AC.class, "Spousal_Expense_AC", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(extraordinary_Expense_CEEClass, Extraordinary_Expense_CE.class, "Extraordinary_Expense_CE", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEAttribute(getExtraordinary_Expense_CE_Thresholded_deduction_percentage(), ecorePackage.getEDouble(), "thresholded_deduction_percentage", null, 1, 1, Extraordinary_Expense_CE.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + initEAttribute(getExtraordinary_Expense_CE_Ce_type(), this.getCE_Type(), "ce_type", null, 1, 1, Extraordinary_Expense_CE.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(travel_Expense_FDEClass, Travel_Expense_FD.class, "Travel_Expense_FD", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(professional_ExpenseEClass, Professional_Expense.class, "Professional_Expense", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(miscellaneous_Expense_FOEClass, Miscellaneous_Expense_FO.class, "Miscellaneous_Expense_FO", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + initEClass(resourceEClass, Resource.class, "Resource", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getResource_Contains(), this.getRoot(), null, "contains", null, 0, -1, Resource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); + + initEClass(rootEClass, Root.class, "Root", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + + // Initialize enums and add enum literals + initEEnum(grantorEEnum, Grantor.class, "Grantor"); + addEEnumLiteral(grantorEEnum, Grantor.WWW); + addEEnumLiteral(grantorEEnum, Grantor.EMPLOYER); + addEEnumLiteral(grantorEEnum, Grantor.MMM); + addEEnumLiteral(grantorEEnum, Grantor.UUU); + addEEnumLiteral(grantorEEnum, Grantor.YYY); + addEEnumLiteral(grantorEEnum, Grantor.OOO); + + initEEnum(disability_TypesEEnum, Disability_Types.class, "Disability_Types"); + addEEnumLiteral(disability_TypesEEnum, Disability_Types.BEUG); + addEEnumLiteral(disability_TypesEEnum, Disability_Types.NONE); + addEEnumLiteral(disability_TypesEEnum, Disability_Types.A); + addEEnumLiteral(disability_TypesEEnum, Disability_Types.B); + addEEnumLiteral(disability_TypesEEnum, Disability_Types.C); + addEEnumLiteral(disability_TypesEEnum, Disability_Types.D); + addEEnumLiteral(disability_TypesEEnum, Disability_Types.E); + addEEnumLiteral(disability_TypesEEnum, Disability_Types.OTHER); + + initEEnum(countryEEnum, Country.class, "Country"); + addEEnumLiteral(countryEEnum, Country.ZZ); + addEEnumLiteral(countryEEnum, Country.FF); + addEEnumLiteral(countryEEnum, Country.BB); + addEEnumLiteral(countryEEnum, Country.DD); + addEEnumLiteral(countryEEnum, Country.NN); + addEEnumLiteral(countryEEnum, Country.OTHER); + + initEEnum(tax_OfficeEEnum, Tax_Office.class, "Tax_Office"); + addEEnumLiteral(tax_OfficeEEnum, Tax_Office.RTS_2); + addEEnumLiteral(tax_OfficeEEnum, Tax_Office.RTS_3); + addEEnumLiteral(tax_OfficeEEnum, Tax_Office.RTS_4); + addEEnumLiteral(tax_OfficeEEnum, Tax_Office.RTS_5); + + initEEnum(tax_Class_CategoryEEnum, Tax_Class_Category.class, "Tax_Class_Category"); + addEEnumLiteral(tax_Class_CategoryEEnum, Tax_Class_Category.ONE); + addEEnumLiteral(tax_Class_CategoryEEnum, Tax_Class_Category.ONE_A); + addEEnumLiteral(tax_Class_CategoryEEnum, Tax_Class_Category.TWO); + + initEEnum(job_ActivityEEnum, Job_Activity.class, "Job_Activity"); + addEEnumLiteral(job_ActivityEEnum, Job_Activity.SALARY); + addEEnumLiteral(job_ActivityEEnum, Job_Activity.PENSION); + addEEnumLiteral(job_ActivityEEnum, Job_Activity.ANNUITY); + + initEEnum(townEEnum, Town.class, "Town"); + addEEnumLiteral(townEEnum, Town.LL); + addEEnumLiteral(townEEnum, Town.BB); + addEEnumLiteral(townEEnum, Town.SS); + addEEnumLiteral(townEEnum, Town.TT); + addEEnumLiteral(townEEnum, Town.OTHER); + + initEEnum(cE_TypeEEnum, CE_Type.class, "CE_Type"); + addEEnumLiteral(cE_TypeEEnum, CE_Type.INALIDITY_AND_INFIRMITY); + addEEnumLiteral(cE_TypeEEnum, CE_Type.DEPENDENCE_AND_CARE_EXCLUDING_CHLIDREN_NOT_PART_OF_HOUSEHOLD); + addEEnumLiteral(cE_TypeEEnum, CE_Type.CARE_FOR_CHILDREN_NOT_BEING_PART_OF_HOUSEHOLD); + + initEEnum(expense_PurposeEEnum, Expense_Purpose.class, "Expense_Purpose"); + addEEnumLiteral(expense_PurposeEEnum, Expense_Purpose.HOUSE_CARE); + addEEnumLiteral(expense_PurposeEEnum, Expense_Purpose.CHILD_CARE); + addEEnumLiteral(expense_PurposeEEnum, Expense_Purpose.DEPENDENCE_CARE); + addEEnumLiteral(expense_PurposeEEnum, Expense_Purpose.OTHER); + addEEnumLiteral(expense_PurposeEEnum, Expense_Purpose.ALIMONY); + addEEnumLiteral(expense_PurposeEEnum, Expense_Purpose.RECURRENT_DEPT); + + initEEnum(dependent_TypeEEnum, Dependent_Type.class, "Dependent_Type"); + addEEnumLiteral(dependent_TypeEEnum, Dependent_Type.CHILD); + addEEnumLiteral(dependent_TypeEEnum, Dependent_Type.SPOUSE); + addEEnumLiteral(dependent_TypeEEnum, Dependent_Type.RELATIVE); + addEEnumLiteral(dependent_TypeEEnum, Dependent_Type.OTHER_FAMILY_MEMBER); + addEEnumLiteral(dependent_TypeEEnum, Dependent_Type.NOT_OWN_CHILD); + + initEEnum(separation_CausesEEnum, Separation_Causes.class, "Separation_Causes"); + addEEnumLiteral(separation_CausesEEnum, Separation_Causes.NONE); + addEEnumLiteral(separation_CausesEEnum, Separation_Causes.DIVORCE); + addEEnumLiteral(separation_CausesEEnum, Separation_Causes.SEPARATION_DE_FAIT); + addEEnumLiteral(separation_CausesEEnum, Separation_Causes.SEPARATION_BY_COURT); + + initEEnum(category_of_Permanent_ExpenseEEnum, Category_of_Permanent_Expense.class, "Category_of_Permanent_Expense"); + addEEnumLiteral(category_of_Permanent_ExpenseEEnum, Category_of_Permanent_Expense.MISCELLANEOUS_DEBT); + addEEnumLiteral(category_of_Permanent_ExpenseEEnum, Category_of_Permanent_Expense.ALIMONY); + + initEEnum(category_of_Health_and_Pension_InsurancesEEnum, Category_of_Health_and_Pension_Insurances.class, "Category_of_Health_and_Pension_Insurances"); + addEEnumLiteral(category_of_Health_and_Pension_InsurancesEEnum, Category_of_Health_and_Pension_Insurances.MANDATORY_HEALTH_AND_PENSION_INSURANCE); + addEEnumLiteral(category_of_Health_and_Pension_InsurancesEEnum, Category_of_Health_and_Pension_Insurances.ADDITIONAL_EMPLOYERS_PENSION_INSURANCE); + addEEnumLiteral(category_of_Health_and_Pension_InsurancesEEnum, Category_of_Health_and_Pension_Insurances.CONTINUED_HEALTH_AND_PENSION_INSURANCE); + + initEEnum(category_of_Private_Insurance_and_PlanEEnum, Category_of_Private_Insurance_and_Plan.class, "Category_of_Private_Insurance_and_Plan"); + addEEnumLiteral(category_of_Private_Insurance_and_PlanEEnum, Category_of_Private_Insurance_and_Plan.PRIVATE_INSURANCE); + addEEnumLiteral(category_of_Private_Insurance_and_PlanEEnum, Category_of_Private_Insurance_and_Plan.PRIVATE_LIFE_INSURANCE); + addEEnumLiteral(category_of_Private_Insurance_and_PlanEEnum, Category_of_Private_Insurance_and_Plan.COMPANY_MEMBERS_PRIVATE_INSURANCE); + addEEnumLiteral(category_of_Private_Insurance_and_PlanEEnum, Category_of_Private_Insurance_and_Plan.HOUSING_SAVING_PLAN); + addEEnumLiteral(category_of_Private_Insurance_and_PlanEEnum, Category_of_Private_Insurance_and_Plan.OLD_AGE_PENSION_PLAN); + + initEEnum(legal_Union_TypesEEnum, Legal_Union_Types.class, "Legal_Union_Types"); + addEEnumLiteral(legal_Union_TypesEEnum, Legal_Union_Types.MARIAGE); + addEEnumLiteral(legal_Union_TypesEEnum, Legal_Union_Types.PARTNERSHIP); + addEEnumLiteral(legal_Union_TypesEEnum, Legal_Union_Types.OTHER); + + // Create resource + createResource(eNS_URI); + + // Create annotations + // http://www.eclipse.org/OCL/Import + createImportAnnotations(); + // duplicates + createDuplicatesAnnotations(); + // http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName + createEmofAnnotations(); + // http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot + createPivotAnnotations(); + } + + /** + * Initializes the annotations for http://www.eclipse.org/OCL/Import. + * + * + * @generated + */ + protected void createImportAnnotations() { + String source = "http://www.eclipse.org/OCL/Import"; + addAnnotation + (this, + source, + new String[] { + "ecore", "http://www.eclipse.org/emf/2002/Ecore" + }); + } + + /** + * Initializes the annotations for duplicates. + * + * + * @generated + */ + protected void createDuplicatesAnnotations() { + String source = "duplicates"; + addAnnotation + (tax_PayerEClass, + source, + new String[] { + }); + } + + /** + * Initializes the annotations for http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName. + * + * + * @generated + */ + protected void createEmofAnnotations() { + String source = "http://schema.omg.org/spec/MOF/2.0/emof.xml#Property.oppositeRoleName"; + addAnnotation + (getLegal_Union_Record_Individual_A(), + source, + new String[] { + "body", "legal_union_A" + }); + addAnnotation + (getLegal_Union_Record_Individual_B(), + source, + new String[] { + "body", "legal_union_B" + }); + } + + /** + * Initializes the annotations for http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot. + * + * + * @generated + */ + protected void createPivotAnnotations() { + String source = "http://www.eclipse.org/emf/2002/Ecore/OCL/Pivot"; + addAnnotation + (getIncome_Income_amount(), + source, + new String[] { + "derivation", "let non_null_amounts:OrderedSet(Income_Detail)=self.details->select(det:Income_Detail|det.amount>0)->asOrderedSet() in\nnon_null_amounts->collect(amount)->min()" + }); + } + +} //TaxationPackageImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Trade_and_Business_IncomeImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Trade_and_Business_IncomeImpl.java new file mode 100644 index 00000000..965b884b --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Trade_and_Business_IncomeImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.TaxationPackage; +import TaxationWithRoot.Trade_and_Business_Income; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Trade and Business Income'. + * + * + * @generated + */ +public class Trade_and_Business_IncomeImpl extends Income_TypeImpl implements Trade_and_Business_Income { + /** + * + * + * @generated + */ + protected Trade_and_Business_IncomeImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.TRADE_AND_BUSINESS_INCOME; + } + +} //Trade_and_Business_IncomeImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Travel_Expense_FDImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Travel_Expense_FDImpl.java new file mode 100644 index 00000000..53384098 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Travel_Expense_FDImpl.java @@ -0,0 +1,37 @@ +/** + */ +package TaxationWithRoot.impl; + +import TaxationWithRoot.TaxationPackage; +import TaxationWithRoot.Travel_Expense_FD; + +import org.eclipse.emf.ecore.EClass; + +/** + * + * An implementation of the model object 'Travel Expense FD'. + * + * + * @generated + */ +public class Travel_Expense_FDImpl extends Professional_ExpenseImpl implements Travel_Expense_FD { + /** + * + * + * @generated + */ + protected Travel_Expense_FDImpl() { + super(); + } + + /** + * + * + * @generated + */ + @Override + protected EClass eStaticClass() { + return TaxationPackage.Literals.TRAVEL_EXPENSE_FD; + } + +} //Travel_Expense_FDImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/util/TaxationAdapterFactory.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/util/TaxationAdapterFactory.java new file mode 100644 index 00000000..639750ed --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/util/TaxationAdapterFactory.java @@ -0,0 +1,1182 @@ +/** + */ +package TaxationWithRoot.util; + +import TaxationWithRoot.*; + +import org.eclipse.emf.common.notify.Adapter; +import org.eclipse.emf.common.notify.Notifier; + +import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; + +import org.eclipse.emf.ecore.EObject; + +/** + * + * The Adapter Factory for the model. + * It provides an adapter createXXX method for each class of the model. + * + * @see TaxationWithRoot.TaxationPackage + * @generated + */ +public class TaxationAdapterFactory extends AdapterFactoryImpl { + /** + * The cached model package. + * + * + * @generated + */ + protected static TaxationPackage modelPackage; + + /** + * Creates an instance of the adapter factory. + * + * + * @generated + */ + public TaxationAdapterFactory() { + if (modelPackage == null) { + modelPackage = TaxationPackage.eINSTANCE; + } + } + + /** + * Returns whether this factory is applicable for the type of the object. + * + * This implementation returns true if the object is either the model's package or is an instance object of the model. + * + * @return whether this factory is applicable for the type of the object. + * @generated + */ + @Override + public boolean isFactoryForType(Object object) { + if (object == modelPackage) { + return true; + } + if (object instanceof EObject) { + return ((EObject)object).eClass().getEPackage() == modelPackage; + } + return false; + } + + /** + * The switch that delegates to the createXXX methods. + * + * + * @generated + */ + protected TaxationSwitch modelSwitch = + new TaxationSwitch() { + @Override + public Adapter caseConstants(Constants object) { + return createConstantsAdapter(); + } + @Override + public Adapter caseIncome_Tax(Income_Tax object) { + return createIncome_TaxAdapter(); + } + @Override + public Adapter caseTax_Payer(Tax_Payer object) { + return createTax_PayerAdapter(); + } + @Override + public Adapter casePhysical_Person(Physical_Person object) { + return createPhysical_PersonAdapter(); + } + @Override + public Adapter caseAddress(Address object) { + return createAddressAdapter(); + } + @Override + public Adapter caseExpense(Expense object) { + return createExpenseAdapter(); + } + @Override + public Adapter caseDependent(Dependent object) { + return createDependentAdapter(); + } + @Override + public Adapter caseExternal_Allowance(External_Allowance object) { + return createExternal_AllowanceAdapter(); + } + @Override + public Adapter caseHousehold(Household object) { + return createHouseholdAdapter(); + } + @Override + public Adapter caseLegal_Union_Record(Legal_Union_Record object) { + return createLegal_Union_RecordAdapter(); + } + @Override + public Adapter caseTax_Property(Tax_Property object) { + return createTax_PropertyAdapter(); + } + @Override + public Adapter caseTax_Case(Tax_Case object) { + return createTax_CaseAdapter(); + } + @Override + public Adapter caseFromAgent(FromAgent object) { + return createFromAgentAdapter(); + } + @Override + public Adapter caseIncome(Income object) { + return createIncomeAdapter(); + } + @Override + public Adapter caseIncome_Type(Income_Type object) { + return createIncome_TypeAdapter(); + } + @Override + public Adapter caseTax_Card(Tax_Card object) { + return createTax_CardAdapter(); + } + @Override + public Adapter caseIncome_Tax_Credit(Income_Tax_Credit object) { + return createIncome_Tax_CreditAdapter(); + } + @Override + public Adapter caseIncome_Detail(Income_Detail object) { + return createIncome_DetailAdapter(); + } + @Override + public Adapter caseFromLaw(FromLaw object) { + return createFromLawAdapter(); + } + @Override + public Adapter caseFiscal_Address(Fiscal_Address object) { + return createFiscal_AddressAdapter(); + } + @Override + public Adapter caseHabitual_Address(Habitual_Address object) { + return createHabitual_AddressAdapter(); + } + @Override + public Adapter caseMarriage_Record(Marriage_Record object) { + return createMarriage_RecordAdapter(); + } + @Override + public Adapter caseNon_Resident_Tax_Payer(Non_Resident_Tax_Payer object) { + return createNon_Resident_Tax_PayerAdapter(); + } + @Override + public Adapter casePartnership_Record(Partnership_Record object) { + return createPartnership_RecordAdapter(); + } + @Override + public Adapter caseResident_Tax_Payer(Resident_Tax_Payer object) { + return createResident_Tax_PayerAdapter(); + } + @Override + public Adapter caseTrade_and_Business_Income(Trade_and_Business_Income object) { + return createTrade_and_Business_IncomeAdapter(); + } + @Override + public Adapter caseAgriculture_and_Forestry_Income(Agriculture_and_Forestry_Income object) { + return createAgriculture_and_Forestry_IncomeAdapter(); + } + @Override + public Adapter casePensions_and_Annuities_Income(Pensions_and_Annuities_Income object) { + return createPensions_and_Annuities_IncomeAdapter(); + } + @Override + public Adapter caseCapital_and_Investments_Income(Capital_and_Investments_Income object) { + return createCapital_and_Investments_IncomeAdapter(); + } + @Override + public Adapter caseEmployment_Income(Employment_Income object) { + return createEmployment_IncomeAdapter(); + } + @Override + public Adapter caseRentals_and_Leases_Income(Rentals_and_Leases_Income object) { + return createRentals_and_Leases_IncomeAdapter(); + } + @Override + public Adapter caseForeign_Income(Foreign_Income object) { + return createForeign_IncomeAdapter(); + } + @Override + public Adapter caseLocal_Income(Local_Income object) { + return createLocal_IncomeAdapter(); + } + @Override + public Adapter caseCIM(CIM object) { + return createCIMAdapter(); + } + @Override + public Adapter caseCIP(CIP object) { + return createCIPAdapter(); + } + @Override + public Adapter caseCIS(CIS object) { + return createCISAdapter(); + } + @Override + public Adapter caseFD(FD object) { + return createFDAdapter(); + } + @Override + public Adapter caseProfessional_Expenses_Deduction(Professional_Expenses_Deduction object) { + return createProfessional_Expenses_DeductionAdapter(); + } + @Override + public Adapter caseFO(FO object) { + return createFOAdapter(); + } + @Override + public Adapter caseDS_for_Permanent_Expense(DS_for_Permanent_Expense object) { + return createDS_for_Permanent_ExpenseAdapter(); + } + @Override + public Adapter caseDS(DS object) { + return createDSAdapter(); + } + @Override + public Adapter caseDS_for_Interest_Expense(DS_for_Interest_Expense object) { + return createDS_for_Interest_ExpenseAdapter(); + } + @Override + public Adapter caseDS_for_Health_and_Pension_Insurance(DS_for_Health_and_Pension_Insurance object) { + return createDS_for_Health_and_Pension_InsuranceAdapter(); + } + @Override + public Adapter caseDS_for_Private_Insurance_and_Plan(DS_for_Private_Insurance_and_Plan object) { + return createDS_for_Private_Insurance_and_PlanAdapter(); + } + @Override + public Adapter caseDS_for_Loss_Carryforward(DS_for_Loss_Carryforward object) { + return createDS_for_Loss_CarryforwardAdapter(); + } + @Override + public Adapter caseDS_for_Donation(DS_for_Donation object) { + return createDS_for_DonationAdapter(); + } + @Override + public Adapter casePermanent_Expense(Permanent_Expense object) { + return createPermanent_ExpenseAdapter(); + } + @Override + public Adapter caseSpecial_Expense_DS(Special_Expense_DS object) { + return createSpecial_Expense_DSAdapter(); + } + @Override + public Adapter caseInterest_Expense(Interest_Expense object) { + return createInterest_ExpenseAdapter(); + } + @Override + public Adapter casePrivate_Insurance_and_Plan(Private_Insurance_and_Plan object) { + return createPrivate_Insurance_and_PlanAdapter(); + } + @Override + public Adapter caseHealth_and_Pension_Insurance(Health_and_Pension_Insurance object) { + return createHealth_and_Pension_InsuranceAdapter(); + } + @Override + public Adapter caseDonation(Donation object) { + return createDonationAdapter(); + } + @Override + public Adapter caseLoss_Carryforward(Loss_Carryforward object) { + return createLoss_CarryforwardAdapter(); + } + @Override + public Adapter caseSpousal_Expense_AC(Spousal_Expense_AC object) { + return createSpousal_Expense_ACAdapter(); + } + @Override + public Adapter caseExtraordinary_Expense_CE(Extraordinary_Expense_CE object) { + return createExtraordinary_Expense_CEAdapter(); + } + @Override + public Adapter caseTravel_Expense_FD(Travel_Expense_FD object) { + return createTravel_Expense_FDAdapter(); + } + @Override + public Adapter caseProfessional_Expense(Professional_Expense object) { + return createProfessional_ExpenseAdapter(); + } + @Override + public Adapter caseMiscellaneous_Expense_FO(Miscellaneous_Expense_FO object) { + return createMiscellaneous_Expense_FOAdapter(); + } + @Override + public Adapter caseResource(Resource object) { + return createResourceAdapter(); + } + @Override + public Adapter caseRoot(Root object) { + return createRootAdapter(); + } + @Override + public Adapter defaultCase(EObject object) { + return createEObjectAdapter(); + } + }; + + /** + * Creates an adapter for the target. + * + * + * @param target the object to adapt. + * @return the adapter for the target. + * @generated + */ + @Override + public Adapter createAdapter(Notifier target) { + return modelSwitch.doSwitch((EObject)target); + } + + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Constants Constants}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Constants + * @generated + */ + public Adapter createConstantsAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Income_Tax Income Tax}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Income_Tax + * @generated + */ + public Adapter createIncome_TaxAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Tax_Payer Tax Payer}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Tax_Payer + * @generated + */ + public Adapter createTax_PayerAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Physical_Person Physical Person}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Physical_Person + * @generated + */ + public Adapter createPhysical_PersonAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Address Address}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Address + * @generated + */ + public Adapter createAddressAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Expense Expense}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Expense + * @generated + */ + public Adapter createExpenseAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Dependent Dependent}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Dependent + * @generated + */ + public Adapter createDependentAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.External_Allowance External Allowance}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.External_Allowance + * @generated + */ + public Adapter createExternal_AllowanceAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Household Household}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Household + * @generated + */ + public Adapter createHouseholdAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Legal_Union_Record Legal Union Record}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Legal_Union_Record + * @generated + */ + public Adapter createLegal_Union_RecordAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Tax_Property Tax Property}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Tax_Property + * @generated + */ + public Adapter createTax_PropertyAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Tax_Case Tax Case}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Tax_Case + * @generated + */ + public Adapter createTax_CaseAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.FromAgent From Agent}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.FromAgent + * @generated + */ + public Adapter createFromAgentAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Income Income}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Income + * @generated + */ + public Adapter createIncomeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Income_Type Income Type}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Income_Type + * @generated + */ + public Adapter createIncome_TypeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Tax_Card Tax Card}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Tax_Card + * @generated + */ + public Adapter createTax_CardAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Income_Tax_Credit Income Tax Credit}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Income_Tax_Credit + * @generated + */ + public Adapter createIncome_Tax_CreditAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Income_Detail Income Detail}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Income_Detail + * @generated + */ + public Adapter createIncome_DetailAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.FromLaw From Law}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.FromLaw + * @generated + */ + public Adapter createFromLawAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Fiscal_Address Fiscal Address}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Fiscal_Address + * @generated + */ + public Adapter createFiscal_AddressAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Habitual_Address Habitual Address}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Habitual_Address + * @generated + */ + public Adapter createHabitual_AddressAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Marriage_Record Marriage Record}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Marriage_Record + * @generated + */ + public Adapter createMarriage_RecordAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Non_Resident_Tax_Payer Non Resident Tax Payer}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Non_Resident_Tax_Payer + * @generated + */ + public Adapter createNon_Resident_Tax_PayerAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Partnership_Record Partnership Record}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Partnership_Record + * @generated + */ + public Adapter createPartnership_RecordAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Resident_Tax_Payer Resident Tax Payer}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Resident_Tax_Payer + * @generated + */ + public Adapter createResident_Tax_PayerAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Trade_and_Business_Income Trade and Business Income}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Trade_and_Business_Income + * @generated + */ + public Adapter createTrade_and_Business_IncomeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Agriculture_and_Forestry_Income Agriculture and Forestry Income}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Agriculture_and_Forestry_Income + * @generated + */ + public Adapter createAgriculture_and_Forestry_IncomeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Pensions_and_Annuities_Income Pensions and Annuities Income}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Pensions_and_Annuities_Income + * @generated + */ + public Adapter createPensions_and_Annuities_IncomeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Capital_and_Investments_Income Capital and Investments Income}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Capital_and_Investments_Income + * @generated + */ + public Adapter createCapital_and_Investments_IncomeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Employment_Income Employment Income}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Employment_Income + * @generated + */ + public Adapter createEmployment_IncomeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Rentals_and_Leases_Income Rentals and Leases Income}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Rentals_and_Leases_Income + * @generated + */ + public Adapter createRentals_and_Leases_IncomeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Foreign_Income Foreign Income}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Foreign_Income + * @generated + */ + public Adapter createForeign_IncomeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Local_Income Local Income}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Local_Income + * @generated + */ + public Adapter createLocal_IncomeAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.CIM CIM}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.CIM + * @generated + */ + public Adapter createCIMAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.CIP CIP}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.CIP + * @generated + */ + public Adapter createCIPAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.CIS CIS}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.CIS + * @generated + */ + public Adapter createCISAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.FD FD}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.FD + * @generated + */ + public Adapter createFDAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Professional_Expenses_Deduction Professional Expenses Deduction}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Professional_Expenses_Deduction + * @generated + */ + public Adapter createProfessional_Expenses_DeductionAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.FO FO}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.FO + * @generated + */ + public Adapter createFOAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.DS_for_Permanent_Expense DS for Permanent Expense}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.DS_for_Permanent_Expense + * @generated + */ + public Adapter createDS_for_Permanent_ExpenseAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.DS DS}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.DS + * @generated + */ + public Adapter createDSAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.DS_for_Interest_Expense DS for Interest Expense}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.DS_for_Interest_Expense + * @generated + */ + public Adapter createDS_for_Interest_ExpenseAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.DS_for_Health_and_Pension_Insurance DS for Health and Pension Insurance}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.DS_for_Health_and_Pension_Insurance + * @generated + */ + public Adapter createDS_for_Health_and_Pension_InsuranceAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.DS_for_Private_Insurance_and_Plan DS for Private Insurance and Plan}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.DS_for_Private_Insurance_and_Plan + * @generated + */ + public Adapter createDS_for_Private_Insurance_and_PlanAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.DS_for_Loss_Carryforward DS for Loss Carryforward}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.DS_for_Loss_Carryforward + * @generated + */ + public Adapter createDS_for_Loss_CarryforwardAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.DS_for_Donation DS for Donation}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.DS_for_Donation + * @generated + */ + public Adapter createDS_for_DonationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Permanent_Expense Permanent Expense}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Permanent_Expense + * @generated + */ + public Adapter createPermanent_ExpenseAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Special_Expense_DS Special Expense DS}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Special_Expense_DS + * @generated + */ + public Adapter createSpecial_Expense_DSAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Interest_Expense Interest Expense}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Interest_Expense + * @generated + */ + public Adapter createInterest_ExpenseAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Private_Insurance_and_Plan Private Insurance and Plan}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Private_Insurance_and_Plan + * @generated + */ + public Adapter createPrivate_Insurance_and_PlanAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Health_and_Pension_Insurance Health and Pension Insurance}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Health_and_Pension_Insurance + * @generated + */ + public Adapter createHealth_and_Pension_InsuranceAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Donation Donation}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Donation + * @generated + */ + public Adapter createDonationAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Loss_Carryforward Loss Carryforward}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Loss_Carryforward + * @generated + */ + public Adapter createLoss_CarryforwardAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Spousal_Expense_AC Spousal Expense AC}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Spousal_Expense_AC + * @generated + */ + public Adapter createSpousal_Expense_ACAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Extraordinary_Expense_CE Extraordinary Expense CE}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Extraordinary_Expense_CE + * @generated + */ + public Adapter createExtraordinary_Expense_CEAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Travel_Expense_FD Travel Expense FD}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Travel_Expense_FD + * @generated + */ + public Adapter createTravel_Expense_FDAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Professional_Expense Professional Expense}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Professional_Expense + * @generated + */ + public Adapter createProfessional_ExpenseAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Miscellaneous_Expense_FO Miscellaneous Expense FO}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Miscellaneous_Expense_FO + * @generated + */ + public Adapter createMiscellaneous_Expense_FOAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Resource Resource}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Resource + * @generated + */ + public Adapter createResourceAdapter() { + return null; + } + + /** + * Creates a new adapter for an object of class '{@link TaxationWithRoot.Root Root}'. + * + * This default implementation returns null so that we can easily ignore cases; + * it's useful to ignore a case when inheritance will catch all the cases anyway. + * + * @return the new adapter. + * @see TaxationWithRoot.Root + * @generated + */ + public Adapter createRootAdapter() { + return null; + } + + /** + * Creates a new adapter for the default case. + * + * This default implementation returns null. + * + * @return the new adapter. + * @generated + */ + public Adapter createEObjectAdapter() { + return null; + } + +} //TaxationAdapterFactory diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/util/TaxationSwitch.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/util/TaxationSwitch.java new file mode 100644 index 00000000..f5b4b681 --- /dev/null +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/util/TaxationSwitch.java @@ -0,0 +1,1424 @@ +/** + */ +package TaxationWithRoot.util; + +import TaxationWithRoot.*; + +import org.eclipse.emf.ecore.EObject; +import org.eclipse.emf.ecore.EPackage; + +import org.eclipse.emf.ecore.util.Switch; + +/** + * + * The Switch for the model's inheritance hierarchy. + * It supports the call {@link #doSwitch(EObject) doSwitch(object)} + * to invoke the caseXXX method for each class of the model, + * starting with the actual class of the object + * and proceeding up the inheritance hierarchy + * until a non-null result is returned, + * which is the result of the switch. + * + * @see TaxationWithRoot.TaxationPackage + * @generated + */ +public class TaxationSwitch extends Switch { + /** + * The cached model package + * + * + * @generated + */ + protected static TaxationPackage modelPackage; + + /** + * Creates an instance of the switch. + * + * + * @generated + */ + public TaxationSwitch() { + if (modelPackage == null) { + modelPackage = TaxationPackage.eINSTANCE; + } + } + + /** + * Checks whether this is a switch for the given package. + * + * + * @param ePackage the package in question. + * @return whether this is a switch for the given package. + * @generated + */ + @Override + protected boolean isSwitchFor(EPackage ePackage) { + return ePackage == modelPackage; + } + + /** + * Calls caseXXX for each class of the model until one returns a non null result; it yields that result. + * + * + * @return the first non-null result returned by a caseXXX call. + * @generated + */ + @Override + protected T doSwitch(int classifierID, EObject theEObject) { + switch (classifierID) { + case TaxationPackage.CONSTANTS: { + Constants constants = (Constants)theEObject; + T result = caseConstants(constants); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.INCOME_TAX: { + Income_Tax income_Tax = (Income_Tax)theEObject; + T result = caseIncome_Tax(income_Tax); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.TAX_PAYER: { + Tax_Payer tax_Payer = (Tax_Payer)theEObject; + T result = caseTax_Payer(tax_Payer); + if (result == null) result = casePhysical_Person(tax_Payer); + if (result == null) result = caseTax_Case(tax_Payer); + if (result == null) result = caseRoot(tax_Payer); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.PHYSICAL_PERSON: { + Physical_Person physical_Person = (Physical_Person)theEObject; + T result = casePhysical_Person(physical_Person); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.ADDRESS: { + Address address = (Address)theEObject; + T result = caseAddress(address); + if (result == null) result = caseRoot(address); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.EXPENSE: { + Expense expense = (Expense)theEObject; + T result = caseExpense(expense); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.DEPENDENT: { + Dependent dependent = (Dependent)theEObject; + T result = caseDependent(dependent); + if (result == null) result = casePhysical_Person(dependent); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.EXTERNAL_ALLOWANCE: { + External_Allowance external_Allowance = (External_Allowance)theEObject; + T result = caseExternal_Allowance(external_Allowance); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.HOUSEHOLD: { + Household household = (Household)theEObject; + T result = caseHousehold(household); + if (result == null) result = caseTax_Case(household); + if (result == null) result = caseRoot(household); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.LEGAL_UNION_RECORD: { + Legal_Union_Record legal_Union_Record = (Legal_Union_Record)theEObject; + T result = caseLegal_Union_Record(legal_Union_Record); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.TAX_PROPERTY: { + Tax_Property tax_Property = (Tax_Property)theEObject; + T result = caseTax_Property(tax_Property); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.TAX_CASE: { + Tax_Case tax_Case = (Tax_Case)theEObject; + T result = caseTax_Case(tax_Case); + if (result == null) result = caseRoot(tax_Case); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.FROM_AGENT: { + FromAgent fromAgent = (FromAgent)theEObject; + T result = caseFromAgent(fromAgent); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.INCOME: { + Income income = (Income)theEObject; + T result = caseIncome(income); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.INCOME_TYPE: { + Income_Type income_Type = (Income_Type)theEObject; + T result = caseIncome_Type(income_Type); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.TAX_CARD: { + Tax_Card tax_Card = (Tax_Card)theEObject; + T result = caseTax_Card(tax_Card); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.INCOME_TAX_CREDIT: { + Income_Tax_Credit income_Tax_Credit = (Income_Tax_Credit)theEObject; + T result = caseIncome_Tax_Credit(income_Tax_Credit); + if (result == null) result = caseRoot(income_Tax_Credit); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.INCOME_DETAIL: { + Income_Detail income_Detail = (Income_Detail)theEObject; + T result = caseIncome_Detail(income_Detail); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.FROM_LAW: { + FromLaw fromLaw = (FromLaw)theEObject; + T result = caseFromLaw(fromLaw); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.FISCAL_ADDRESS: { + Fiscal_Address fiscal_Address = (Fiscal_Address)theEObject; + T result = caseFiscal_Address(fiscal_Address); + if (result == null) result = caseAddress(fiscal_Address); + if (result == null) result = caseRoot(fiscal_Address); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.HABITUAL_ADDRESS: { + Habitual_Address habitual_Address = (Habitual_Address)theEObject; + T result = caseHabitual_Address(habitual_Address); + if (result == null) result = caseAddress(habitual_Address); + if (result == null) result = caseRoot(habitual_Address); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.MARRIAGE_RECORD: { + Marriage_Record marriage_Record = (Marriage_Record)theEObject; + T result = caseMarriage_Record(marriage_Record); + if (result == null) result = caseLegal_Union_Record(marriage_Record); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.NON_RESIDENT_TAX_PAYER: { + Non_Resident_Tax_Payer non_Resident_Tax_Payer = (Non_Resident_Tax_Payer)theEObject; + T result = caseNon_Resident_Tax_Payer(non_Resident_Tax_Payer); + if (result == null) result = caseTax_Payer(non_Resident_Tax_Payer); + if (result == null) result = casePhysical_Person(non_Resident_Tax_Payer); + if (result == null) result = caseTax_Case(non_Resident_Tax_Payer); + if (result == null) result = caseRoot(non_Resident_Tax_Payer); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.PARTNERSHIP_RECORD: { + Partnership_Record partnership_Record = (Partnership_Record)theEObject; + T result = casePartnership_Record(partnership_Record); + if (result == null) result = caseLegal_Union_Record(partnership_Record); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.RESIDENT_TAX_PAYER: { + Resident_Tax_Payer resident_Tax_Payer = (Resident_Tax_Payer)theEObject; + T result = caseResident_Tax_Payer(resident_Tax_Payer); + if (result == null) result = caseTax_Payer(resident_Tax_Payer); + if (result == null) result = casePhysical_Person(resident_Tax_Payer); + if (result == null) result = caseTax_Case(resident_Tax_Payer); + if (result == null) result = caseRoot(resident_Tax_Payer); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.TRADE_AND_BUSINESS_INCOME: { + Trade_and_Business_Income trade_and_Business_Income = (Trade_and_Business_Income)theEObject; + T result = caseTrade_and_Business_Income(trade_and_Business_Income); + if (result == null) result = caseIncome_Type(trade_and_Business_Income); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.AGRICULTURE_AND_FORESTRY_INCOME: { + Agriculture_and_Forestry_Income agriculture_and_Forestry_Income = (Agriculture_and_Forestry_Income)theEObject; + T result = caseAgriculture_and_Forestry_Income(agriculture_and_Forestry_Income); + if (result == null) result = caseIncome_Type(agriculture_and_Forestry_Income); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.PENSIONS_AND_ANNUITIES_INCOME: { + Pensions_and_Annuities_Income pensions_and_Annuities_Income = (Pensions_and_Annuities_Income)theEObject; + T result = casePensions_and_Annuities_Income(pensions_and_Annuities_Income); + if (result == null) result = caseIncome_Type(pensions_and_Annuities_Income); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.CAPITAL_AND_INVESTMENTS_INCOME: { + Capital_and_Investments_Income capital_and_Investments_Income = (Capital_and_Investments_Income)theEObject; + T result = caseCapital_and_Investments_Income(capital_and_Investments_Income); + if (result == null) result = caseIncome_Type(capital_and_Investments_Income); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.EMPLOYMENT_INCOME: { + Employment_Income employment_Income = (Employment_Income)theEObject; + T result = caseEmployment_Income(employment_Income); + if (result == null) result = caseIncome_Type(employment_Income); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.RENTALS_AND_LEASES_INCOME: { + Rentals_and_Leases_Income rentals_and_Leases_Income = (Rentals_and_Leases_Income)theEObject; + T result = caseRentals_and_Leases_Income(rentals_and_Leases_Income); + if (result == null) result = caseIncome_Type(rentals_and_Leases_Income); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.FOREIGN_INCOME: { + Foreign_Income foreign_Income = (Foreign_Income)theEObject; + T result = caseForeign_Income(foreign_Income); + if (result == null) result = caseIncome(foreign_Income); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.LOCAL_INCOME: { + Local_Income local_Income = (Local_Income)theEObject; + T result = caseLocal_Income(local_Income); + if (result == null) result = caseIncome(local_Income); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.CIM: { + CIM cim = (CIM)theEObject; + T result = caseCIM(cim); + if (result == null) result = caseIncome_Tax_Credit(cim); + if (result == null) result = caseRoot(cim); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.CIP: { + CIP cip = (CIP)theEObject; + T result = caseCIP(cip); + if (result == null) result = caseIncome_Tax_Credit(cip); + if (result == null) result = caseRoot(cip); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.CIS: { + CIS cis = (CIS)theEObject; + T result = caseCIS(cis); + if (result == null) result = caseIncome_Tax_Credit(cis); + if (result == null) result = caseRoot(cis); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.FD: { + FD fd = (FD)theEObject; + T result = caseFD(fd); + if (result == null) result = caseProfessional_Expenses_Deduction(fd); + if (result == null) result = caseRoot(fd); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.PROFESSIONAL_EXPENSES_DEDUCTION: { + Professional_Expenses_Deduction professional_Expenses_Deduction = (Professional_Expenses_Deduction)theEObject; + T result = caseProfessional_Expenses_Deduction(professional_Expenses_Deduction); + if (result == null) result = caseRoot(professional_Expenses_Deduction); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.FO: { + FO fo = (FO)theEObject; + T result = caseFO(fo); + if (result == null) result = caseProfessional_Expenses_Deduction(fo); + if (result == null) result = caseRoot(fo); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.DS_FOR_PERMANENT_EXPENSE: { + DS_for_Permanent_Expense dS_for_Permanent_Expense = (DS_for_Permanent_Expense)theEObject; + T result = caseDS_for_Permanent_Expense(dS_for_Permanent_Expense); + if (result == null) result = caseDS(dS_for_Permanent_Expense); + if (result == null) result = caseRoot(dS_for_Permanent_Expense); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.DS: { + DS ds = (DS)theEObject; + T result = caseDS(ds); + if (result == null) result = caseRoot(ds); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.DS_FOR_INTEREST_EXPENSE: { + DS_for_Interest_Expense dS_for_Interest_Expense = (DS_for_Interest_Expense)theEObject; + T result = caseDS_for_Interest_Expense(dS_for_Interest_Expense); + if (result == null) result = caseDS(dS_for_Interest_Expense); + if (result == null) result = caseRoot(dS_for_Interest_Expense); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE: { + DS_for_Health_and_Pension_Insurance dS_for_Health_and_Pension_Insurance = (DS_for_Health_and_Pension_Insurance)theEObject; + T result = caseDS_for_Health_and_Pension_Insurance(dS_for_Health_and_Pension_Insurance); + if (result == null) result = caseDS(dS_for_Health_and_Pension_Insurance); + if (result == null) result = caseRoot(dS_for_Health_and_Pension_Insurance); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN: { + DS_for_Private_Insurance_and_Plan dS_for_Private_Insurance_and_Plan = (DS_for_Private_Insurance_and_Plan)theEObject; + T result = caseDS_for_Private_Insurance_and_Plan(dS_for_Private_Insurance_and_Plan); + if (result == null) result = caseDS(dS_for_Private_Insurance_and_Plan); + if (result == null) result = caseRoot(dS_for_Private_Insurance_and_Plan); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.DS_FOR_LOSS_CARRYFORWARD: { + DS_for_Loss_Carryforward dS_for_Loss_Carryforward = (DS_for_Loss_Carryforward)theEObject; + T result = caseDS_for_Loss_Carryforward(dS_for_Loss_Carryforward); + if (result == null) result = caseDS(dS_for_Loss_Carryforward); + if (result == null) result = caseRoot(dS_for_Loss_Carryforward); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.DS_FOR_DONATION: { + DS_for_Donation dS_for_Donation = (DS_for_Donation)theEObject; + T result = caseDS_for_Donation(dS_for_Donation); + if (result == null) result = caseDS(dS_for_Donation); + if (result == null) result = caseRoot(dS_for_Donation); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.PERMANENT_EXPENSE: { + Permanent_Expense permanent_Expense = (Permanent_Expense)theEObject; + T result = casePermanent_Expense(permanent_Expense); + if (result == null) result = caseSpecial_Expense_DS(permanent_Expense); + if (result == null) result = caseExpense(permanent_Expense); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.SPECIAL_EXPENSE_DS: { + Special_Expense_DS special_Expense_DS = (Special_Expense_DS)theEObject; + T result = caseSpecial_Expense_DS(special_Expense_DS); + if (result == null) result = caseExpense(special_Expense_DS); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.INTEREST_EXPENSE: { + Interest_Expense interest_Expense = (Interest_Expense)theEObject; + T result = caseInterest_Expense(interest_Expense); + if (result == null) result = caseSpecial_Expense_DS(interest_Expense); + if (result == null) result = caseExpense(interest_Expense); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.PRIVATE_INSURANCE_AND_PLAN: { + Private_Insurance_and_Plan private_Insurance_and_Plan = (Private_Insurance_and_Plan)theEObject; + T result = casePrivate_Insurance_and_Plan(private_Insurance_and_Plan); + if (result == null) result = caseSpecial_Expense_DS(private_Insurance_and_Plan); + if (result == null) result = caseExpense(private_Insurance_and_Plan); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.HEALTH_AND_PENSION_INSURANCE: { + Health_and_Pension_Insurance health_and_Pension_Insurance = (Health_and_Pension_Insurance)theEObject; + T result = caseHealth_and_Pension_Insurance(health_and_Pension_Insurance); + if (result == null) result = caseSpecial_Expense_DS(health_and_Pension_Insurance); + if (result == null) result = caseExpense(health_and_Pension_Insurance); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.DONATION: { + Donation donation = (Donation)theEObject; + T result = caseDonation(donation); + if (result == null) result = caseSpecial_Expense_DS(donation); + if (result == null) result = caseExpense(donation); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.LOSS_CARRYFORWARD: { + Loss_Carryforward loss_Carryforward = (Loss_Carryforward)theEObject; + T result = caseLoss_Carryforward(loss_Carryforward); + if (result == null) result = caseSpecial_Expense_DS(loss_Carryforward); + if (result == null) result = caseExpense(loss_Carryforward); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.SPOUSAL_EXPENSE_AC: { + Spousal_Expense_AC spousal_Expense_AC = (Spousal_Expense_AC)theEObject; + T result = caseSpousal_Expense_AC(spousal_Expense_AC); + if (result == null) result = caseExpense(spousal_Expense_AC); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.EXTRAORDINARY_EXPENSE_CE: { + Extraordinary_Expense_CE extraordinary_Expense_CE = (Extraordinary_Expense_CE)theEObject; + T result = caseExtraordinary_Expense_CE(extraordinary_Expense_CE); + if (result == null) result = caseExpense(extraordinary_Expense_CE); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.TRAVEL_EXPENSE_FD: { + Travel_Expense_FD travel_Expense_FD = (Travel_Expense_FD)theEObject; + T result = caseTravel_Expense_FD(travel_Expense_FD); + if (result == null) result = caseProfessional_Expense(travel_Expense_FD); + if (result == null) result = caseExpense(travel_Expense_FD); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.PROFESSIONAL_EXPENSE: { + Professional_Expense professional_Expense = (Professional_Expense)theEObject; + T result = caseProfessional_Expense(professional_Expense); + if (result == null) result = caseExpense(professional_Expense); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.MISCELLANEOUS_EXPENSE_FO: { + Miscellaneous_Expense_FO miscellaneous_Expense_FO = (Miscellaneous_Expense_FO)theEObject; + T result = caseMiscellaneous_Expense_FO(miscellaneous_Expense_FO); + if (result == null) result = caseProfessional_Expense(miscellaneous_Expense_FO); + if (result == null) result = caseExpense(miscellaneous_Expense_FO); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.RESOURCE: { + Resource resource = (Resource)theEObject; + T result = caseResource(resource); + if (result == null) result = defaultCase(theEObject); + return result; + } + case TaxationPackage.ROOT: { + Root root = (Root)theEObject; + T result = caseRoot(root); + if (result == null) result = defaultCase(theEObject); + return result; + } + default: return defaultCase(theEObject); + } + } + + /** + * Returns the result of interpreting the object as an instance of 'Constants'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Constants'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseConstants(Constants object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Income Tax'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Income Tax'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIncome_Tax(Income_Tax object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Tax Payer'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Tax Payer'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTax_Payer(Tax_Payer object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Physical Person'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Physical Person'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T casePhysical_Person(Physical_Person object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Address'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Address'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAddress(Address object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Expense'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Expense'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseExpense(Expense object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Dependent'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Dependent'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDependent(Dependent object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'External Allowance'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'External Allowance'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseExternal_Allowance(External_Allowance object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Household'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Household'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseHousehold(Household object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Legal Union Record'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Legal Union Record'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseLegal_Union_Record(Legal_Union_Record object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Tax Property'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Tax Property'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTax_Property(Tax_Property object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Tax Case'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Tax Case'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTax_Case(Tax_Case object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'From Agent'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'From Agent'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFromAgent(FromAgent object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Income'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Income'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIncome(Income object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Income Type'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Income Type'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIncome_Type(Income_Type object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Tax Card'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Tax Card'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTax_Card(Tax_Card object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Income Tax Credit'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Income Tax Credit'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIncome_Tax_Credit(Income_Tax_Credit object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Income Detail'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Income Detail'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseIncome_Detail(Income_Detail object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'From Law'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'From Law'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFromLaw(FromLaw object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Fiscal Address'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Fiscal Address'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFiscal_Address(Fiscal_Address object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Habitual Address'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Habitual Address'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseHabitual_Address(Habitual_Address object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Marriage Record'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Marriage Record'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseMarriage_Record(Marriage_Record object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Non Resident Tax Payer'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Non Resident Tax Payer'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseNon_Resident_Tax_Payer(Non_Resident_Tax_Payer object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Partnership Record'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Partnership Record'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T casePartnership_Record(Partnership_Record object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Resident Tax Payer'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Resident Tax Payer'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseResident_Tax_Payer(Resident_Tax_Payer object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Trade and Business Income'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Trade and Business Income'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTrade_and_Business_Income(Trade_and_Business_Income object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Agriculture and Forestry Income'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Agriculture and Forestry Income'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseAgriculture_and_Forestry_Income(Agriculture_and_Forestry_Income object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Pensions and Annuities Income'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Pensions and Annuities Income'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T casePensions_and_Annuities_Income(Pensions_and_Annuities_Income object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Capital and Investments Income'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Capital and Investments Income'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseCapital_and_Investments_Income(Capital_and_Investments_Income object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Employment Income'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Employment Income'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseEmployment_Income(Employment_Income object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Rentals and Leases Income'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Rentals and Leases Income'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseRentals_and_Leases_Income(Rentals_and_Leases_Income object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Foreign Income'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Foreign Income'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseForeign_Income(Foreign_Income object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Local Income'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Local Income'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseLocal_Income(Local_Income object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'CIM'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'CIM'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseCIM(CIM object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'CIP'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'CIP'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseCIP(CIP object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'CIS'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'CIS'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseCIS(CIS object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'FD'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'FD'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFD(FD object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Professional Expenses Deduction'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Professional Expenses Deduction'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseProfessional_Expenses_Deduction(Professional_Expenses_Deduction object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'FO'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'FO'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseFO(FO object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'DS for Permanent Expense'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'DS for Permanent Expense'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDS_for_Permanent_Expense(DS_for_Permanent_Expense object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'DS'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'DS'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDS(DS object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'DS for Interest Expense'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'DS for Interest Expense'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDS_for_Interest_Expense(DS_for_Interest_Expense object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'DS for Health and Pension Insurance'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'DS for Health and Pension Insurance'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDS_for_Health_and_Pension_Insurance(DS_for_Health_and_Pension_Insurance object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'DS for Private Insurance and Plan'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'DS for Private Insurance and Plan'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDS_for_Private_Insurance_and_Plan(DS_for_Private_Insurance_and_Plan object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'DS for Loss Carryforward'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'DS for Loss Carryforward'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDS_for_Loss_Carryforward(DS_for_Loss_Carryforward object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'DS for Donation'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'DS for Donation'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDS_for_Donation(DS_for_Donation object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Permanent Expense'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Permanent Expense'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T casePermanent_Expense(Permanent_Expense object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Special Expense DS'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Special Expense DS'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseSpecial_Expense_DS(Special_Expense_DS object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Interest Expense'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Interest Expense'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseInterest_Expense(Interest_Expense object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Private Insurance and Plan'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Private Insurance and Plan'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T casePrivate_Insurance_and_Plan(Private_Insurance_and_Plan object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Health and Pension Insurance'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Health and Pension Insurance'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseHealth_and_Pension_Insurance(Health_and_Pension_Insurance object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Donation'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Donation'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseDonation(Donation object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Loss Carryforward'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Loss Carryforward'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseLoss_Carryforward(Loss_Carryforward object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Spousal Expense AC'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Spousal Expense AC'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseSpousal_Expense_AC(Spousal_Expense_AC object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Extraordinary Expense CE'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Extraordinary Expense CE'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseExtraordinary_Expense_CE(Extraordinary_Expense_CE object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Travel Expense FD'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Travel Expense FD'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseTravel_Expense_FD(Travel_Expense_FD object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Professional Expense'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Professional Expense'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseProfessional_Expense(Professional_Expense object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Miscellaneous Expense FO'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Miscellaneous Expense FO'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseMiscellaneous_Expense_FO(Miscellaneous_Expense_FO object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Resource'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Resource'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseResource(Resource object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'Root'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'Root'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) + * @generated + */ + public T caseRoot(Root object) { + return null; + } + + /** + * Returns the result of interpreting the object as an instance of 'EObject'. + * + * This implementation returns null; + * returning a non-null result will terminate the switch, but this is the last case anyway. + * + * @param object the target of the switch. + * @return the result of interpreting the object as an instance of 'EObject'. + * @see #doSwitch(org.eclipse.emf.ecore.EObject) + * @generated + */ + @Override + public T defaultCase(EObject object) { + return null; + } + +} //TaxationSwitch -- cgit v1.2.3-70-g09d2 From 95293e1e822d3df6d64540721ba386912c2733b4 Mon Sep 17 00:00:00 2001 From: ArenBabikian Date: Sun, 17 May 2020 01:55:56 -0400 Subject: Adjust Taxation model. --- .../model/TaxationWithRoot class diagram.png | Bin 0 -> 2033890 bytes .../model/TaxationWithRoot.aird | 806 ++-------------- .../model/TaxationWithRoot.ecore | 40 +- .../model/TaxationWithRoot.genmodel | 22 - .../src/TaxationWithRoot/Address.java | 4 +- .../src/TaxationWithRoot/DS.java | 67 -- .../src/TaxationWithRoot/DS_for_Donation.java | 17 - .../DS_for_Health_and_Pension_Insurance.java | 48 - .../TaxationWithRoot/DS_for_Interest_Expense.java | 17 - .../TaxationWithRoot/DS_for_Loss_Carryforward.java | 17 - .../TaxationWithRoot/DS_for_Permanent_Expense.java | 48 - .../DS_for_Private_Insurance_and_Plan.java | 48 - .../src/TaxationWithRoot/FD.java | 45 - .../src/TaxationWithRoot/FO.java | 17 - .../src/TaxationWithRoot/Income_Tax_Credit.java | 4 +- .../Professional_Expenses_Deduction.java | 16 - .../src/TaxationWithRoot/Resource.java | 4 +- .../src/TaxationWithRoot/Root.java | 18 - .../src/TaxationWithRoot/Tax_Case.java | 4 +- .../src/TaxationWithRoot/Tax_Payer.java | 2 +- .../src/TaxationWithRoot/TaxationFactory.java | 90 -- .../src/TaxationWithRoot/TaxationPackage.java | 1002 ++------------------ .../src/TaxationWithRoot/impl/AddressImpl.java | 4 +- .../src/TaxationWithRoot/impl/DSImpl.java | 220 ----- .../TaxationWithRoot/impl/DS_for_DonationImpl.java | 37 - .../DS_for_Health_and_Pension_InsuranceImpl.java | 165 ---- .../impl/DS_for_Interest_ExpenseImpl.java | 37 - .../impl/DS_for_Loss_CarryforwardImpl.java | 37 - .../impl/DS_for_Permanent_ExpenseImpl.java | 165 ---- .../DS_for_Private_Insurance_and_PlanImpl.java | 165 ---- .../src/TaxationWithRoot/impl/FDImpl.java | 164 ---- .../src/TaxationWithRoot/impl/FOImpl.java | 37 - .../src/TaxationWithRoot/impl/HouseholdImpl.java | 4 +- .../impl/Income_Tax_CreditImpl.java | 3 +- .../impl/Professional_Expenses_DeductionImpl.java | 37 - .../src/TaxationWithRoot/impl/ResourceImpl.java | 10 +- .../src/TaxationWithRoot/impl/RootImpl.java | 39 - .../TaxationWithRoot/impl/TaxationFactoryImpl.java | 120 --- .../TaxationWithRoot/impl/TaxationPackageImpl.java | 327 +------ .../util/TaxationAdapterFactory.java | 198 ---- .../src/TaxationWithRoot/util/TaxationSwitch.java | 261 ----- 41 files changed, 192 insertions(+), 4174 deletions(-) create mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot class diagram.png delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Donation.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Health_and_Pension_Insurance.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Interest_Expense.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Loss_Carryforward.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Permanent_Expense.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Private_Insurance_and_Plan.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FD.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FO.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Professional_Expenses_Deduction.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Root.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DSImpl.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_DonationImpl.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Health_and_Pension_InsuranceImpl.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Interest_ExpenseImpl.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Loss_CarryforwardImpl.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Permanent_ExpenseImpl.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Private_Insurance_and_PlanImpl.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FDImpl.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FOImpl.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Professional_Expenses_DeductionImpl.java delete mode 100644 Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/RootImpl.java (limited to 'Tests/MODELS2020-CaseStudies/case.study.pledge.model/src') diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot class diagram.png b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot class diagram.png new file mode 100644 index 00000000..b23d2d7a Binary files /dev/null and b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot class diagram.png differ diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.aird b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.aird index f97c2f56..e5bce79e 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.aird +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.aird @@ -6,7 +6,7 @@ platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore - + @@ -90,12 +90,12 @@ - + - + - + @@ -668,7 +668,7 @@ - + @@ -1170,67 +1170,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -1248,28 +1187,6 @@ - - - - - - - - - - - - - - - - - - - - - - @@ -1291,19 +1208,6 @@ - - - - - - - - - - - - - @@ -1333,24 +1237,6 @@ - - - - - - - - - - - - - - - - - - @@ -1523,16 +1409,7 @@ - - - - - - - - - - + @@ -1569,17 +1446,17 @@ - + - + - + - + @@ -1713,17 +1590,17 @@ - + - + - + - + @@ -1761,17 +1638,17 @@ - + - + - + - + @@ -1967,134 +1844,6 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - @@ -2337,17 +2086,17 @@ - + - + - + - + @@ -2420,7 +2169,7 @@ - + @@ -2433,17 +2182,17 @@ - + - + - + - + @@ -2481,33 +2230,33 @@ - + - + - + - + - + - + - + @@ -2561,17 +2310,17 @@ - + - + - + @@ -2591,117 +2340,21 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - + + + - - + + - - + + - - - - - + + + + + @@ -3386,7 +3039,7 @@ - + KEEP_LOCATION @@ -3494,7 +3147,7 @@ - + KEEP_LOCATION @@ -3644,9 +3297,12 @@ - + + KEEP_LOCATION + KEEP_SIZE + KEEP_RATIO @@ -3776,7 +3432,7 @@ - + KEEP_LOCATION @@ -4102,7 +3758,7 @@ - + @@ -4411,93 +4067,6 @@ - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - bold - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - bold - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - bold - - - - - - - - bold - - - - @@ -4522,36 +4091,6 @@ - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - bold - - - - @@ -4584,25 +4123,6 @@ - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - bold - - - - @@ -4651,28 +4171,6 @@ - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - - - - @@ -4909,7 +4407,7 @@ - + KEEP_LOCATION @@ -5256,102 +4754,6 @@ - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - @@ -5725,103 +5127,19 @@ - - - - KEEP_LOCATION - KEEP_SIZE - KEEP_RATIO - - italic - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - - - - - - - italic - - - - - - + - - + + labelSize - + labelSize - - - - - - - italic - - - - - diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.ecore b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.ecore index 079cde76..4c418a20 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.ecore +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.ecore @@ -140,7 +140,7 @@ - + - + - + @@ -422,7 +421,7 @@ - + @@ -488,41 +487,15 @@ - - - - - - - - - - - - - - - - - - - @@ -530,8 +503,6 @@ - - @@ -575,7 +546,6 @@ + eType="#//Household" containment="true"/> - diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.genmodel b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.genmodel index 0dadd2d2..716b8378 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.genmodel +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/model/TaxationWithRoot.genmodel @@ -311,27 +311,6 @@ - - - - - - - - - - - - - - - - - - - - - @@ -361,6 +340,5 @@ - diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Address.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Address.java index 9df3f653..00fcc706 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Address.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Address.java @@ -4,6 +4,8 @@ package TaxationWithRoot; import org.eclipse.emf.common.util.EList; +import org.eclipse.emf.ecore.EObject; + /** * * A representation of the model object 'Address'. @@ -25,7 +27,7 @@ import org.eclipse.emf.common.util.EList; * @model * @generated */ -public interface Address extends Root { +public interface Address extends EObject { /** * Returns the value of the 'Country' attribute. * The default value is "ZZ". diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS.java deleted file mode 100644 index 9a6eac3f..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS.java +++ /dev/null @@ -1,67 +0,0 @@ -/** - */ -package TaxationWithRoot; - -/** - * - * A representation of the model object 'DS'. - * - * - *

            - * The following features are supported: - *

            - *
              - *
            • {@link TaxationWithRoot.DS#getMaximum_deductible_amount Maximum deductible amount}
            • - *
            • {@link TaxationWithRoot.DS#getId3 Id3}
            • - *
            - * - * @see TaxationWithRoot.TaxationPackage#getDS() - * @model - * @generated - */ -public interface DS extends Root { - /** - * Returns the value of the 'Maximum deductible amount' attribute. - * - * - * @return the value of the 'Maximum deductible amount' attribute. - * @see #setMaximum_deductible_amount(double) - * @see TaxationWithRoot.TaxationPackage#getDS_Maximum_deductible_amount() - * @model required="true" - * @generated - */ - double getMaximum_deductible_amount(); - - /** - * Sets the value of the '{@link TaxationWithRoot.DS#getMaximum_deductible_amount Maximum deductible amount}' attribute. - * - * - * @param value the new value of the 'Maximum deductible amount' attribute. - * @see #getMaximum_deductible_amount() - * @generated - */ - void setMaximum_deductible_amount(double value); - - /** - * Returns the value of the 'Id3' attribute. - * - * - * @return the value of the 'Id3' attribute. - * @see #setId3(String) - * @see TaxationWithRoot.TaxationPackage#getDS_Id3() - * @model id="true" required="true" ordered="false" - * @generated - */ - String getId3(); - - /** - * Sets the value of the '{@link TaxationWithRoot.DS#getId3 Id3}' attribute. - * - * - * @param value the new value of the 'Id3' attribute. - * @see #getId3() - * @generated - */ - void setId3(String value); - -} // DS diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Donation.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Donation.java deleted file mode 100644 index 90e86e14..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Donation.java +++ /dev/null @@ -1,17 +0,0 @@ -/** - */ -package TaxationWithRoot; - - -/** - * - * A representation of the model object 'DS for Donation'. - * - * - * - * @see TaxationWithRoot.TaxationPackage#getDS_for_Donation() - * @model - * @generated - */ -public interface DS_for_Donation extends DS { -} // DS_for_Donation diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Health_and_Pension_Insurance.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Health_and_Pension_Insurance.java deleted file mode 100644 index 35c7e423..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Health_and_Pension_Insurance.java +++ /dev/null @@ -1,48 +0,0 @@ -/** - */ -package TaxationWithRoot; - - -/** - * - * A representation of the model object 'DS for Health and Pension Insurance'. - * - * - *

            - * The following features are supported: - *

            - *
              - *
            • {@link TaxationWithRoot.DS_for_Health_and_Pension_Insurance#getInsurance_category Insurance category}
            • - *
            - * - * @see TaxationWithRoot.TaxationPackage#getDS_for_Health_and_Pension_Insurance() - * @model - * @generated - */ -public interface DS_for_Health_and_Pension_Insurance extends DS { - /** - * Returns the value of the 'Insurance category' attribute. - * The literals are from the enumeration {@link TaxationWithRoot.Category_of_Health_and_Pension_Insurances}. - * - * - * @return the value of the 'Insurance category' attribute. - * @see TaxationWithRoot.Category_of_Health_and_Pension_Insurances - * @see #setInsurance_category(Category_of_Health_and_Pension_Insurances) - * @see TaxationWithRoot.TaxationPackage#getDS_for_Health_and_Pension_Insurance_Insurance_category() - * @model required="true" - * @generated - */ - Category_of_Health_and_Pension_Insurances getInsurance_category(); - - /** - * Sets the value of the '{@link TaxationWithRoot.DS_for_Health_and_Pension_Insurance#getInsurance_category Insurance category}' attribute. - * - * - * @param value the new value of the 'Insurance category' attribute. - * @see TaxationWithRoot.Category_of_Health_and_Pension_Insurances - * @see #getInsurance_category() - * @generated - */ - void setInsurance_category(Category_of_Health_and_Pension_Insurances value); - -} // DS_for_Health_and_Pension_Insurance diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Interest_Expense.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Interest_Expense.java deleted file mode 100644 index 77c53b32..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Interest_Expense.java +++ /dev/null @@ -1,17 +0,0 @@ -/** - */ -package TaxationWithRoot; - - -/** - * - * A representation of the model object 'DS for Interest Expense'. - * - * - * - * @see TaxationWithRoot.TaxationPackage#getDS_for_Interest_Expense() - * @model - * @generated - */ -public interface DS_for_Interest_Expense extends DS { -} // DS_for_Interest_Expense diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Loss_Carryforward.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Loss_Carryforward.java deleted file mode 100644 index 02a2b5ff..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Loss_Carryforward.java +++ /dev/null @@ -1,17 +0,0 @@ -/** - */ -package TaxationWithRoot; - - -/** - * - * A representation of the model object 'DS for Loss Carryforward'. - * - * - * - * @see TaxationWithRoot.TaxationPackage#getDS_for_Loss_Carryforward() - * @model - * @generated - */ -public interface DS_for_Loss_Carryforward extends DS { -} // DS_for_Loss_Carryforward diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Permanent_Expense.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Permanent_Expense.java deleted file mode 100644 index 51e0581f..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Permanent_Expense.java +++ /dev/null @@ -1,48 +0,0 @@ -/** - */ -package TaxationWithRoot; - - -/** - * - * A representation of the model object 'DS for Permanent Expense'. - * - * - *

            - * The following features are supported: - *

            - *
              - *
            • {@link TaxationWithRoot.DS_for_Permanent_Expense#getPermanent_expense_category Permanent expense category}
            • - *
            - * - * @see TaxationWithRoot.TaxationPackage#getDS_for_Permanent_Expense() - * @model - * @generated - */ -public interface DS_for_Permanent_Expense extends DS { - /** - * Returns the value of the 'Permanent expense category' attribute. - * The literals are from the enumeration {@link TaxationWithRoot.Category_of_Permanent_Expense}. - * - * - * @return the value of the 'Permanent expense category' attribute. - * @see TaxationWithRoot.Category_of_Permanent_Expense - * @see #setPermanent_expense_category(Category_of_Permanent_Expense) - * @see TaxationWithRoot.TaxationPackage#getDS_for_Permanent_Expense_Permanent_expense_category() - * @model required="true" - * @generated - */ - Category_of_Permanent_Expense getPermanent_expense_category(); - - /** - * Sets the value of the '{@link TaxationWithRoot.DS_for_Permanent_Expense#getPermanent_expense_category Permanent expense category}' attribute. - * - * - * @param value the new value of the 'Permanent expense category' attribute. - * @see TaxationWithRoot.Category_of_Permanent_Expense - * @see #getPermanent_expense_category() - * @generated - */ - void setPermanent_expense_category(Category_of_Permanent_Expense value); - -} // DS_for_Permanent_Expense diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Private_Insurance_and_Plan.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Private_Insurance_and_Plan.java deleted file mode 100644 index 73258f14..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/DS_for_Private_Insurance_and_Plan.java +++ /dev/null @@ -1,48 +0,0 @@ -/** - */ -package TaxationWithRoot; - - -/** - * - * A representation of the model object 'DS for Private Insurance and Plan'. - * - * - *

            - * The following features are supported: - *

            - *
              - *
            • {@link TaxationWithRoot.DS_for_Private_Insurance_and_Plan#getPrivate_insurance_and_plan_category Private insurance and plan category}
            • - *
            - * - * @see TaxationWithRoot.TaxationPackage#getDS_for_Private_Insurance_and_Plan() - * @model - * @generated - */ -public interface DS_for_Private_Insurance_and_Plan extends DS { - /** - * Returns the value of the 'Private insurance and plan category' attribute. - * The literals are from the enumeration {@link TaxationWithRoot.Category_of_Private_Insurance_and_Plan}. - * - * - * @return the value of the 'Private insurance and plan category' attribute. - * @see TaxationWithRoot.Category_of_Private_Insurance_and_Plan - * @see #setPrivate_insurance_and_plan_category(Category_of_Private_Insurance_and_Plan) - * @see TaxationWithRoot.TaxationPackage#getDS_for_Private_Insurance_and_Plan_Private_insurance_and_plan_category() - * @model required="true" - * @generated - */ - Category_of_Private_Insurance_and_Plan getPrivate_insurance_and_plan_category(); - - /** - * Sets the value of the '{@link TaxationWithRoot.DS_for_Private_Insurance_and_Plan#getPrivate_insurance_and_plan_category Private insurance and plan category}' attribute. - * - * - * @param value the new value of the 'Private insurance and plan category' attribute. - * @see TaxationWithRoot.Category_of_Private_Insurance_and_Plan - * @see #getPrivate_insurance_and_plan_category() - * @generated - */ - void setPrivate_insurance_and_plan_category(Category_of_Private_Insurance_and_Plan value); - -} // DS_for_Private_Insurance_and_Plan diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FD.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FD.java deleted file mode 100644 index c5ba0f28..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FD.java +++ /dev/null @@ -1,45 +0,0 @@ -/** - */ -package TaxationWithRoot; - - -/** - * - * A representation of the model object 'FD'. - * - * - *

            - * The following features are supported: - *

            - *
              - *
            • {@link TaxationWithRoot.FD#getDistance_declared_in_january Distance declared in january}
            • - *
            - * - * @see TaxationWithRoot.TaxationPackage#getFD() - * @model - * @generated - */ -public interface FD extends Professional_Expenses_Deduction { - /** - * Returns the value of the 'Distance declared in january' attribute. - * - * - * @return the value of the 'Distance declared in january' attribute. - * @see #setDistance_declared_in_january(double) - * @see TaxationWithRoot.TaxationPackage#getFD_Distance_declared_in_january() - * @model required="true" - * @generated - */ - double getDistance_declared_in_january(); - - /** - * Sets the value of the '{@link TaxationWithRoot.FD#getDistance_declared_in_january Distance declared in january}' attribute. - * - * - * @param value the new value of the 'Distance declared in january' attribute. - * @see #getDistance_declared_in_january() - * @generated - */ - void setDistance_declared_in_january(double value); - -} // FD diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FO.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FO.java deleted file mode 100644 index 5c7af450..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/FO.java +++ /dev/null @@ -1,17 +0,0 @@ -/** - */ -package TaxationWithRoot; - - -/** - * - * A representation of the model object 'FO'. - * - * - * - * @see TaxationWithRoot.TaxationPackage#getFO() - * @model - * @generated - */ -public interface FO extends Professional_Expenses_Deduction { -} // FO diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Tax_Credit.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Tax_Credit.java index 48365794..4e171015 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Tax_Credit.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Income_Tax_Credit.java @@ -2,6 +2,8 @@ */ package TaxationWithRoot; +import org.eclipse.emf.ecore.EObject; + /** * * A representation of the model object 'Income Tax Credit'. @@ -25,7 +27,7 @@ package TaxationWithRoot; * @model * @generated */ -public interface Income_Tax_Credit extends Root { +public interface Income_Tax_Credit extends EObject { /** * Returns the value of the 'Granted By' attribute. * The literals are from the enumeration {@link TaxationWithRoot.Grantor}. diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Professional_Expenses_Deduction.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Professional_Expenses_Deduction.java deleted file mode 100644 index b6edd2a7..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Professional_Expenses_Deduction.java +++ /dev/null @@ -1,16 +0,0 @@ -/** - */ -package TaxationWithRoot; - -/** - * - * A representation of the model object 'Professional Expenses Deduction'. - * - * - * - * @see TaxationWithRoot.TaxationPackage#getProfessional_Expenses_Deduction() - * @model - * @generated - */ -public interface Professional_Expenses_Deduction extends Root { -} // Professional_Expenses_Deduction diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Resource.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Resource.java index 6ea850b3..dbcedb8f 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Resource.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Resource.java @@ -25,7 +25,7 @@ import org.eclipse.emf.ecore.EObject; public interface Resource extends EObject { /** * Returns the value of the 'Contains' containment reference list. - * The list contents are of type {@link TaxationWithRoot.Root}. + * The list contents are of type {@link TaxationWithRoot.Household}. * * * @return the value of the 'Contains' containment reference list. @@ -33,6 +33,6 @@ public interface Resource extends EObject { * @model containment="true" * @generated */ - EList getContains(); + EList getContains(); } // Resource diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Root.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Root.java deleted file mode 100644 index df799863..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Root.java +++ /dev/null @@ -1,18 +0,0 @@ -/** - */ -package TaxationWithRoot; - -import org.eclipse.emf.ecore.EObject; - -/** - * - * A representation of the model object 'Root'. - * - * - * - * @see TaxationWithRoot.TaxationPackage#getRoot() - * @model abstract="true" - * @generated - */ -public interface Root extends EObject { -} // Root diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Case.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Case.java index cee7c173..372eebcc 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Case.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Case.java @@ -2,6 +2,8 @@ */ package TaxationWithRoot; +import org.eclipse.emf.ecore.EObject; + /** * * A representation of the model object 'Tax Case'. @@ -12,5 +14,5 @@ package TaxationWithRoot; * @model interface="true" abstract="true" * @generated */ -public interface Tax_Case extends Root { +public interface Tax_Case extends EObject { } // Tax_Case diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Payer.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Payer.java index a58a0560..e93eb06f 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Payer.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/Tax_Payer.java @@ -24,7 +24,7 @@ import org.eclipse.emf.common.util.EList; * annotation="duplicates" * @generated */ -public interface Tax_Payer extends Physical_Person, Tax_Case, Root { +public interface Tax_Payer extends Physical_Person, Tax_Case { /** * Returns the value of the 'Dependents' containment reference list. * The list contents are of type {@link TaxationWithRoot.Dependent}. diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/TaxationFactory.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/TaxationFactory.java index 1a4dd78f..9a91d109 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/TaxationFactory.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/TaxationFactory.java @@ -291,96 +291,6 @@ public interface TaxationFactory extends EFactory { */ CIS createCIS(); - /** - * Returns a new object of class 'FD'. - * - * - * @return a new object of class 'FD'. - * @generated - */ - FD createFD(); - - /** - * Returns a new object of class 'Professional Expenses Deduction'. - * - * - * @return a new object of class 'Professional Expenses Deduction'. - * @generated - */ - Professional_Expenses_Deduction createProfessional_Expenses_Deduction(); - - /** - * Returns a new object of class 'FO'. - * - * - * @return a new object of class 'FO'. - * @generated - */ - FO createFO(); - - /** - * Returns a new object of class 'DS for Permanent Expense'. - * - * - * @return a new object of class 'DS for Permanent Expense'. - * @generated - */ - DS_for_Permanent_Expense createDS_for_Permanent_Expense(); - - /** - * Returns a new object of class 'DS'. - * - * - * @return a new object of class 'DS'. - * @generated - */ - DS createDS(); - - /** - * Returns a new object of class 'DS for Interest Expense'. - * - * - * @return a new object of class 'DS for Interest Expense'. - * @generated - */ - DS_for_Interest_Expense createDS_for_Interest_Expense(); - - /** - * Returns a new object of class 'DS for Health and Pension Insurance'. - * - * - * @return a new object of class 'DS for Health and Pension Insurance'. - * @generated - */ - DS_for_Health_and_Pension_Insurance createDS_for_Health_and_Pension_Insurance(); - - /** - * Returns a new object of class 'DS for Private Insurance and Plan'. - * - * - * @return a new object of class 'DS for Private Insurance and Plan'. - * @generated - */ - DS_for_Private_Insurance_and_Plan createDS_for_Private_Insurance_and_Plan(); - - /** - * Returns a new object of class 'DS for Loss Carryforward'. - * - * - * @return a new object of class 'DS for Loss Carryforward'. - * @generated - */ - DS_for_Loss_Carryforward createDS_for_Loss_Carryforward(); - - /** - * Returns a new object of class 'DS for Donation'. - * - * - * @return a new object of class 'DS for Donation'. - * @generated - */ - DS_for_Donation createDS_for_Donation(); - /** * Returns a new object of class 'Permanent Expense'. * diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/TaxationPackage.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/TaxationPackage.java index 2b14b619..7a1bac56 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/TaxationPackage.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/TaxationPackage.java @@ -629,34 +629,6 @@ public interface TaxationPackage extends EPackage { */ int TAX_PAYER_OPERATION_COUNT = PHYSICAL_PERSON_OPERATION_COUNT + 0; - /** - * The meta object id for the '{@link TaxationWithRoot.impl.RootImpl Root}' class. - * - * - * @see TaxationWithRoot.impl.RootImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getRoot() - * @generated - */ - int ROOT = 59; - - /** - * The number of structural features of the 'Root' class. - * - * - * @generated - * @ordered - */ - int ROOT_FEATURE_COUNT = 0; - - /** - * The number of operations of the 'Root' class. - * - * - * @generated - * @ordered - */ - int ROOT_OPERATION_COUNT = 0; - /** * The meta object id for the '{@link TaxationWithRoot.impl.AddressImpl Address}' class. * @@ -674,7 +646,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int ADDRESS__COUNTRY = ROOT_FEATURE_COUNT + 0; + int ADDRESS__COUNTRY = 0; /** * The feature id for the 'Street' attribute. @@ -683,7 +655,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int ADDRESS__STREET = ROOT_FEATURE_COUNT + 1; + int ADDRESS__STREET = 1; /** * The feature id for the 'Zip Code' attribute. @@ -692,7 +664,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int ADDRESS__ZIP_CODE = ROOT_FEATURE_COUNT + 2; + int ADDRESS__ZIP_CODE = 2; /** * The feature id for the 'City' attribute. @@ -701,7 +673,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int ADDRESS__CITY = ROOT_FEATURE_COUNT + 3; + int ADDRESS__CITY = 3; /** * The feature id for the 'Id2' attribute. @@ -710,7 +682,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int ADDRESS__ID2 = ROOT_FEATURE_COUNT + 4; + int ADDRESS__ID2 = 4; /** * The feature id for the 'Tax Payer' reference list. @@ -719,7 +691,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int ADDRESS__TAX_PAYER = ROOT_FEATURE_COUNT + 5; + int ADDRESS__TAX_PAYER = 5; /** * The number of structural features of the 'Address' class. @@ -728,7 +700,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int ADDRESS_FEATURE_COUNT = ROOT_FEATURE_COUNT + 6; + int ADDRESS_FEATURE_COUNT = 6; /** * The number of operations of the 'Address' class. @@ -737,7 +709,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int ADDRESS_OPERATION_COUNT = ROOT_OPERATION_COUNT + 0; + int ADDRESS_OPERATION_COUNT = 0; /** * The meta object id for the '{@link TaxationWithRoot.impl.ExpenseImpl Expense}' class. @@ -1101,7 +1073,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CASE_FEATURE_COUNT = ROOT_FEATURE_COUNT + 0; + int TAX_CASE_FEATURE_COUNT = 0; /** * The number of operations of the 'Tax Case' class. @@ -1110,7 +1082,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int TAX_CASE_OPERATION_COUNT = ROOT_OPERATION_COUNT + 0; + int TAX_CASE_OPERATION_COUNT = 0; /** * The meta object id for the '{@link TaxationWithRoot.impl.HouseholdImpl Household}' class. @@ -1901,7 +1873,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME_TAX_CREDIT__GRANTED_BY = ROOT_FEATURE_COUNT + 0; + int INCOME_TAX_CREDIT__GRANTED_BY = 0; /** * The feature id for the 'Tax Payer' reference. @@ -1910,7 +1882,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME_TAX_CREDIT__TAX_PAYER = ROOT_FEATURE_COUNT + 1; + int INCOME_TAX_CREDIT__TAX_PAYER = 1; /** * The feature id for the 'Tax year' attribute. @@ -1919,7 +1891,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME_TAX_CREDIT__TAX_YEAR = ROOT_FEATURE_COUNT + 2; + int INCOME_TAX_CREDIT__TAX_YEAR = 2; /** * The feature id for the 'Yearly' attribute. @@ -1928,7 +1900,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME_TAX_CREDIT__YEARLY = ROOT_FEATURE_COUNT + 3; + int INCOME_TAX_CREDIT__YEARLY = 3; /** * The feature id for the 'Monthly' attribute. @@ -1937,7 +1909,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME_TAX_CREDIT__MONTHLY = ROOT_FEATURE_COUNT + 4; + int INCOME_TAX_CREDIT__MONTHLY = 4; /** * The feature id for the 'Daily' attribute. @@ -1946,7 +1918,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME_TAX_CREDIT__DAILY = ROOT_FEATURE_COUNT + 5; + int INCOME_TAX_CREDIT__DAILY = 5; /** * The feature id for the 'Id7' attribute. @@ -1955,7 +1927,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME_TAX_CREDIT__ID7 = ROOT_FEATURE_COUNT + 6; + int INCOME_TAX_CREDIT__ID7 = 6; /** * The feature id for the 'Taxation Frame' reference. @@ -1964,7 +1936,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME_TAX_CREDIT__TAXATION_FRAME = ROOT_FEATURE_COUNT + 7; + int INCOME_TAX_CREDIT__TAXATION_FRAME = 7; /** * The number of structural features of the 'Income Tax Credit' class. @@ -1973,7 +1945,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME_TAX_CREDIT_FEATURE_COUNT = ROOT_FEATURE_COUNT + 8; + int INCOME_TAX_CREDIT_FEATURE_COUNT = 8; /** * The number of operations of the 'Income Tax Credit' class. @@ -1982,7 +1954,7 @@ public interface TaxationPackage extends EPackage { * @generated * @ordered */ - int INCOME_TAX_CREDIT_OPERATION_COUNT = ROOT_OPERATION_COUNT + 0; + int INCOME_TAX_CREDIT_OPERATION_COUNT = 0; /** * The meta object id for the '{@link TaxationWithRoot.impl.Income_DetailImpl Income Detail}' class. @@ -3397,646 +3369,204 @@ public interface TaxationPackage extends EPackage { int CIM_OPERATION_COUNT = INCOME_TAX_CREDIT_OPERATION_COUNT + 0; /** - * The meta object id for the '{@link TaxationWithRoot.impl.CIPImpl CIP}' class. - * - * - * @see TaxationWithRoot.impl.CIPImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getCIP() - * @generated - */ - int CIP = 34; - - /** - * The feature id for the 'Granted By' attribute. - * - * - * @generated - * @ordered - */ - int CIP__GRANTED_BY = INCOME_TAX_CREDIT__GRANTED_BY; - - /** - * The feature id for the 'Tax Payer' reference. - * - * - * @generated - * @ordered - */ - int CIP__TAX_PAYER = INCOME_TAX_CREDIT__TAX_PAYER; - - /** - * The feature id for the 'Tax year' attribute. - * - * - * @generated - * @ordered - */ - int CIP__TAX_YEAR = INCOME_TAX_CREDIT__TAX_YEAR; - - /** - * The feature id for the 'Yearly' attribute. - * - * - * @generated - * @ordered - */ - int CIP__YEARLY = INCOME_TAX_CREDIT__YEARLY; - - /** - * The feature id for the 'Monthly' attribute. - * - * - * @generated - * @ordered - */ - int CIP__MONTHLY = INCOME_TAX_CREDIT__MONTHLY; - - /** - * The feature id for the 'Daily' attribute. - * - * - * @generated - * @ordered - */ - int CIP__DAILY = INCOME_TAX_CREDIT__DAILY; - - /** - * The feature id for the 'Id7' attribute. - * - * - * @generated - * @ordered - */ - int CIP__ID7 = INCOME_TAX_CREDIT__ID7; - - /** - * The feature id for the 'Taxation Frame' reference. - * - * - * @generated - * @ordered - */ - int CIP__TAXATION_FRAME = INCOME_TAX_CREDIT__TAXATION_FRAME; - - /** - * The number of structural features of the 'CIP' class. - * - * - * @generated - * @ordered - */ - int CIP_FEATURE_COUNT = INCOME_TAX_CREDIT_FEATURE_COUNT + 0; - - /** - * The number of operations of the 'CIP' class. - * - * - * @generated - * @ordered - */ - int CIP_OPERATION_COUNT = INCOME_TAX_CREDIT_OPERATION_COUNT + 0; - - /** - * The meta object id for the '{@link TaxationWithRoot.impl.CISImpl CIS}' class. - * - * - * @see TaxationWithRoot.impl.CISImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getCIS() - * @generated - */ - int CIS = 35; - - /** - * The feature id for the 'Granted By' attribute. - * - * - * @generated - * @ordered - */ - int CIS__GRANTED_BY = INCOME_TAX_CREDIT__GRANTED_BY; - - /** - * The feature id for the 'Tax Payer' reference. - * - * - * @generated - * @ordered - */ - int CIS__TAX_PAYER = INCOME_TAX_CREDIT__TAX_PAYER; - - /** - * The feature id for the 'Tax year' attribute. - * - * - * @generated - * @ordered - */ - int CIS__TAX_YEAR = INCOME_TAX_CREDIT__TAX_YEAR; - - /** - * The feature id for the 'Yearly' attribute. - * - * - * @generated - * @ordered - */ - int CIS__YEARLY = INCOME_TAX_CREDIT__YEARLY; - - /** - * The feature id for the 'Monthly' attribute. - * - * - * @generated - * @ordered - */ - int CIS__MONTHLY = INCOME_TAX_CREDIT__MONTHLY; - - /** - * The feature id for the 'Daily' attribute. - * - * - * @generated - * @ordered - */ - int CIS__DAILY = INCOME_TAX_CREDIT__DAILY; - - /** - * The feature id for the 'Id7' attribute. - * - * - * @generated - * @ordered - */ - int CIS__ID7 = INCOME_TAX_CREDIT__ID7; - - /** - * The feature id for the 'Taxation Frame' reference. - * - * - * @generated - * @ordered - */ - int CIS__TAXATION_FRAME = INCOME_TAX_CREDIT__TAXATION_FRAME; - - /** - * The number of structural features of the 'CIS' class. - * - * - * @generated - * @ordered - */ - int CIS_FEATURE_COUNT = INCOME_TAX_CREDIT_FEATURE_COUNT + 0; - - /** - * The number of operations of the 'CIS' class. - * - * - * @generated - * @ordered - */ - int CIS_OPERATION_COUNT = INCOME_TAX_CREDIT_OPERATION_COUNT + 0; - - /** - * The meta object id for the '{@link TaxationWithRoot.impl.Professional_Expenses_DeductionImpl Professional Expenses Deduction}' class. - * - * - * @see TaxationWithRoot.impl.Professional_Expenses_DeductionImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getProfessional_Expenses_Deduction() - * @generated - */ - int PROFESSIONAL_EXPENSES_DEDUCTION = 37; - - /** - * The number of structural features of the 'Professional Expenses Deduction' class. - * - * - * @generated - * @ordered - */ - int PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT = ROOT_FEATURE_COUNT + 0; - - /** - * The number of operations of the 'Professional Expenses Deduction' class. - * - * - * @generated - * @ordered - */ - int PROFESSIONAL_EXPENSES_DEDUCTION_OPERATION_COUNT = ROOT_OPERATION_COUNT + 0; - - /** - * The meta object id for the '{@link TaxationWithRoot.impl.FDImpl FD}' class. - * - * - * @see TaxationWithRoot.impl.FDImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getFD() - * @generated - */ - int FD = 36; - - /** - * The feature id for the 'Distance declared in january' attribute. - * - * - * @generated - * @ordered - */ - int FD__DISTANCE_DECLARED_IN_JANUARY = PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'FD' class. - * - * - * @generated - * @ordered - */ - int FD_FEATURE_COUNT = PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT + 1; - - /** - * The number of operations of the 'FD' class. - * - * - * @generated - * @ordered - */ - int FD_OPERATION_COUNT = PROFESSIONAL_EXPENSES_DEDUCTION_OPERATION_COUNT + 0; - - /** - * The meta object id for the '{@link TaxationWithRoot.impl.FOImpl FO}' class. - * - * - * @see TaxationWithRoot.impl.FOImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getFO() - * @generated - */ - int FO = 38; - - /** - * The number of structural features of the 'FO' class. - * - * - * @generated - * @ordered - */ - int FO_FEATURE_COUNT = PROFESSIONAL_EXPENSES_DEDUCTION_FEATURE_COUNT + 0; - - /** - * The number of operations of the 'FO' class. - * - * - * @generated - * @ordered - */ - int FO_OPERATION_COUNT = PROFESSIONAL_EXPENSES_DEDUCTION_OPERATION_COUNT + 0; - - /** - * The meta object id for the '{@link TaxationWithRoot.impl.DSImpl DS}' class. - * - * - * @see TaxationWithRoot.impl.DSImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS() - * @generated - */ - int DS = 40; - - /** - * The feature id for the 'Maximum deductible amount' attribute. - * - * - * @generated - * @ordered - */ - int DS__MAXIMUM_DEDUCTIBLE_AMOUNT = ROOT_FEATURE_COUNT + 0; - - /** - * The feature id for the 'Id3' attribute. - * - * - * @generated - * @ordered - */ - int DS__ID3 = ROOT_FEATURE_COUNT + 1; - - /** - * The number of structural features of the 'DS' class. - * - * - * @generated - * @ordered - */ - int DS_FEATURE_COUNT = ROOT_FEATURE_COUNT + 2; - - /** - * The number of operations of the 'DS' class. - * - * - * @generated - * @ordered - */ - int DS_OPERATION_COUNT = ROOT_OPERATION_COUNT + 0; - - /** - * The meta object id for the '{@link TaxationWithRoot.impl.DS_for_Permanent_ExpenseImpl DS for Permanent Expense}' class. - * - * - * @see TaxationWithRoot.impl.DS_for_Permanent_ExpenseImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Permanent_Expense() - * @generated - */ - int DS_FOR_PERMANENT_EXPENSE = 39; - - /** - * The feature id for the 'Maximum deductible amount' attribute. - * - * - * @generated - * @ordered - */ - int DS_FOR_PERMANENT_EXPENSE__MAXIMUM_DEDUCTIBLE_AMOUNT = DS__MAXIMUM_DEDUCTIBLE_AMOUNT; - - /** - * The feature id for the 'Id3' attribute. - * - * - * @generated - * @ordered - */ - int DS_FOR_PERMANENT_EXPENSE__ID3 = DS__ID3; - - /** - * The feature id for the 'Permanent expense category' attribute. - * - * - * @generated - * @ordered - */ - int DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY = DS_FEATURE_COUNT + 0; - - /** - * The number of structural features of the 'DS for Permanent Expense' class. - * - * - * @generated - * @ordered - */ - int DS_FOR_PERMANENT_EXPENSE_FEATURE_COUNT = DS_FEATURE_COUNT + 1; - - /** - * The number of operations of the 'DS for Permanent Expense' class. - * - * - * @generated - * @ordered - */ - int DS_FOR_PERMANENT_EXPENSE_OPERATION_COUNT = DS_OPERATION_COUNT + 0; - - /** - * The meta object id for the '{@link TaxationWithRoot.impl.DS_for_Interest_ExpenseImpl DS for Interest Expense}' class. - * - * - * @see TaxationWithRoot.impl.DS_for_Interest_ExpenseImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Interest_Expense() - * @generated - */ - int DS_FOR_INTEREST_EXPENSE = 41; - - /** - * The feature id for the 'Maximum deductible amount' attribute. - * - * - * @generated - * @ordered - */ - int DS_FOR_INTEREST_EXPENSE__MAXIMUM_DEDUCTIBLE_AMOUNT = DS__MAXIMUM_DEDUCTIBLE_AMOUNT; - - /** - * The feature id for the 'Id3' attribute. - * - * - * @generated - * @ordered - */ - int DS_FOR_INTEREST_EXPENSE__ID3 = DS__ID3; - - /** - * The number of structural features of the 'DS for Interest Expense' class. - * - * - * @generated - * @ordered - */ - int DS_FOR_INTEREST_EXPENSE_FEATURE_COUNT = DS_FEATURE_COUNT + 0; - - /** - * The number of operations of the 'DS for Interest Expense' class. - * - * - * @generated - * @ordered - */ - int DS_FOR_INTEREST_EXPENSE_OPERATION_COUNT = DS_OPERATION_COUNT + 0; - - /** - * The meta object id for the '{@link TaxationWithRoot.impl.DS_for_Health_and_Pension_InsuranceImpl DS for Health and Pension Insurance}' class. + * The meta object id for the '{@link TaxationWithRoot.impl.CIPImpl CIP}' class. * * - * @see TaxationWithRoot.impl.DS_for_Health_and_Pension_InsuranceImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Health_and_Pension_Insurance() + * @see TaxationWithRoot.impl.CIPImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCIP() * @generated */ - int DS_FOR_HEALTH_AND_PENSION_INSURANCE = 42; + int CIP = 34; /** - * The feature id for the 'Maximum deductible amount' attribute. + * The feature id for the 'Granted By' attribute. * * * @generated * @ordered */ - int DS_FOR_HEALTH_AND_PENSION_INSURANCE__MAXIMUM_DEDUCTIBLE_AMOUNT = DS__MAXIMUM_DEDUCTIBLE_AMOUNT; + int CIP__GRANTED_BY = INCOME_TAX_CREDIT__GRANTED_BY; /** - * The feature id for the 'Id3' attribute. + * The feature id for the 'Tax Payer' reference. * * * @generated * @ordered */ - int DS_FOR_HEALTH_AND_PENSION_INSURANCE__ID3 = DS__ID3; + int CIP__TAX_PAYER = INCOME_TAX_CREDIT__TAX_PAYER; /** - * The feature id for the 'Insurance category' attribute. + * The feature id for the 'Tax year' attribute. * * * @generated * @ordered */ - int DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY = DS_FEATURE_COUNT + 0; + int CIP__TAX_YEAR = INCOME_TAX_CREDIT__TAX_YEAR; /** - * The number of structural features of the 'DS for Health and Pension Insurance' class. + * The feature id for the 'Yearly' attribute. * * * @generated * @ordered */ - int DS_FOR_HEALTH_AND_PENSION_INSURANCE_FEATURE_COUNT = DS_FEATURE_COUNT + 1; + int CIP__YEARLY = INCOME_TAX_CREDIT__YEARLY; /** - * The number of operations of the 'DS for Health and Pension Insurance' class. + * The feature id for the 'Monthly' attribute. * * * @generated * @ordered */ - int DS_FOR_HEALTH_AND_PENSION_INSURANCE_OPERATION_COUNT = DS_OPERATION_COUNT + 0; + int CIP__MONTHLY = INCOME_TAX_CREDIT__MONTHLY; /** - * The meta object id for the '{@link TaxationWithRoot.impl.DS_for_Private_Insurance_and_PlanImpl DS for Private Insurance and Plan}' class. + * The feature id for the 'Daily' attribute. * * - * @see TaxationWithRoot.impl.DS_for_Private_Insurance_and_PlanImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Private_Insurance_and_Plan() * @generated + * @ordered */ - int DS_FOR_PRIVATE_INSURANCE_AND_PLAN = 43; + int CIP__DAILY = INCOME_TAX_CREDIT__DAILY; /** - * The feature id for the 'Maximum deductible amount' attribute. + * The feature id for the 'Id7' attribute. * * * @generated * @ordered */ - int DS_FOR_PRIVATE_INSURANCE_AND_PLAN__MAXIMUM_DEDUCTIBLE_AMOUNT = DS__MAXIMUM_DEDUCTIBLE_AMOUNT; + int CIP__ID7 = INCOME_TAX_CREDIT__ID7; /** - * The feature id for the 'Id3' attribute. + * The feature id for the 'Taxation Frame' reference. * * * @generated * @ordered */ - int DS_FOR_PRIVATE_INSURANCE_AND_PLAN__ID3 = DS__ID3; + int CIP__TAXATION_FRAME = INCOME_TAX_CREDIT__TAXATION_FRAME; /** - * The feature id for the 'Private insurance and plan category' attribute. + * The number of structural features of the 'CIP' class. * * * @generated * @ordered */ - int DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY = DS_FEATURE_COUNT + 0; + int CIP_FEATURE_COUNT = INCOME_TAX_CREDIT_FEATURE_COUNT + 0; /** - * The number of structural features of the 'DS for Private Insurance and Plan' class. + * The number of operations of the 'CIP' class. * * * @generated * @ordered */ - int DS_FOR_PRIVATE_INSURANCE_AND_PLAN_FEATURE_COUNT = DS_FEATURE_COUNT + 1; + int CIP_OPERATION_COUNT = INCOME_TAX_CREDIT_OPERATION_COUNT + 0; /** - * The number of operations of the 'DS for Private Insurance and Plan' class. + * The meta object id for the '{@link TaxationWithRoot.impl.CISImpl CIS}' class. * * + * @see TaxationWithRoot.impl.CISImpl + * @see TaxationWithRoot.impl.TaxationPackageImpl#getCIS() * @generated - * @ordered */ - int DS_FOR_PRIVATE_INSURANCE_AND_PLAN_OPERATION_COUNT = DS_OPERATION_COUNT + 0; + int CIS = 35; /** - * The meta object id for the '{@link TaxationWithRoot.impl.DS_for_Loss_CarryforwardImpl DS for Loss Carryforward}' class. + * The feature id for the 'Granted By' attribute. * * - * @see TaxationWithRoot.impl.DS_for_Loss_CarryforwardImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Loss_Carryforward() * @generated + * @ordered */ - int DS_FOR_LOSS_CARRYFORWARD = 44; + int CIS__GRANTED_BY = INCOME_TAX_CREDIT__GRANTED_BY; /** - * The feature id for the 'Maximum deductible amount' attribute. + * The feature id for the 'Tax Payer' reference. * * * @generated * @ordered */ - int DS_FOR_LOSS_CARRYFORWARD__MAXIMUM_DEDUCTIBLE_AMOUNT = DS__MAXIMUM_DEDUCTIBLE_AMOUNT; + int CIS__TAX_PAYER = INCOME_TAX_CREDIT__TAX_PAYER; /** - * The feature id for the 'Id3' attribute. + * The feature id for the 'Tax year' attribute. * * * @generated * @ordered */ - int DS_FOR_LOSS_CARRYFORWARD__ID3 = DS__ID3; + int CIS__TAX_YEAR = INCOME_TAX_CREDIT__TAX_YEAR; /** - * The number of structural features of the 'DS for Loss Carryforward' class. + * The feature id for the 'Yearly' attribute. * * * @generated * @ordered */ - int DS_FOR_LOSS_CARRYFORWARD_FEATURE_COUNT = DS_FEATURE_COUNT + 0; + int CIS__YEARLY = INCOME_TAX_CREDIT__YEARLY; /** - * The number of operations of the 'DS for Loss Carryforward' class. + * The feature id for the 'Monthly' attribute. * * * @generated * @ordered */ - int DS_FOR_LOSS_CARRYFORWARD_OPERATION_COUNT = DS_OPERATION_COUNT + 0; + int CIS__MONTHLY = INCOME_TAX_CREDIT__MONTHLY; /** - * The meta object id for the '{@link TaxationWithRoot.impl.DS_for_DonationImpl DS for Donation}' class. + * The feature id for the 'Daily' attribute. * * - * @see TaxationWithRoot.impl.DS_for_DonationImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Donation() * @generated + * @ordered */ - int DS_FOR_DONATION = 45; + int CIS__DAILY = INCOME_TAX_CREDIT__DAILY; /** - * The feature id for the 'Maximum deductible amount' attribute. + * The feature id for the 'Id7' attribute. * * * @generated * @ordered */ - int DS_FOR_DONATION__MAXIMUM_DEDUCTIBLE_AMOUNT = DS__MAXIMUM_DEDUCTIBLE_AMOUNT; + int CIS__ID7 = INCOME_TAX_CREDIT__ID7; /** - * The feature id for the 'Id3' attribute. + * The feature id for the 'Taxation Frame' reference. * * * @generated * @ordered */ - int DS_FOR_DONATION__ID3 = DS__ID3; + int CIS__TAXATION_FRAME = INCOME_TAX_CREDIT__TAXATION_FRAME; /** - * The number of structural features of the 'DS for Donation' class. + * The number of structural features of the 'CIS' class. * * * @generated * @ordered */ - int DS_FOR_DONATION_FEATURE_COUNT = DS_FEATURE_COUNT + 0; + int CIS_FEATURE_COUNT = INCOME_TAX_CREDIT_FEATURE_COUNT + 0; /** - * The number of operations of the 'DS for Donation' class. + * The number of operations of the 'CIS' class. * * * @generated * @ordered */ - int DS_FOR_DONATION_OPERATION_COUNT = DS_OPERATION_COUNT + 0; + int CIS_OPERATION_COUNT = INCOME_TAX_CREDIT_OPERATION_COUNT + 0; /** * The meta object id for the '{@link TaxationWithRoot.impl.Special_Expense_DSImpl Special Expense DS}' class. @@ -4046,7 +3576,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getSpecial_Expense_DS() * @generated */ - int SPECIAL_EXPENSE_DS = 47; + int SPECIAL_EXPENSE_DS = 37; /** * The feature id for the 'Declared amount' attribute. @@ -4137,7 +3667,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getPermanent_Expense() * @generated */ - int PERMANENT_EXPENSE = 46; + int PERMANENT_EXPENSE = 36; /** * The feature id for the 'Declared amount' attribute. @@ -4237,7 +3767,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getInterest_Expense() * @generated */ - int INTEREST_EXPENSE = 48; + int INTEREST_EXPENSE = 38; /** * The feature id for the 'Declared amount' attribute. @@ -4328,7 +3858,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getPrivate_Insurance_and_Plan() * @generated */ - int PRIVATE_INSURANCE_AND_PLAN = 49; + int PRIVATE_INSURANCE_AND_PLAN = 39; /** * The feature id for the 'Declared amount' attribute. @@ -4437,7 +3967,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getHealth_and_Pension_Insurance() * @generated */ - int HEALTH_AND_PENSION_INSURANCE = 50; + int HEALTH_AND_PENSION_INSURANCE = 40; /** * The feature id for the 'Declared amount' attribute. @@ -4546,7 +4076,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getDonation() * @generated */ - int DONATION = 51; + int DONATION = 41; /** * The feature id for the 'Declared amount' attribute. @@ -4655,7 +4185,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getLoss_Carryforward() * @generated */ - int LOSS_CARRYFORWARD = 52; + int LOSS_CARRYFORWARD = 42; /** * The feature id for the 'Declared amount' attribute. @@ -4746,7 +4276,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getSpousal_Expense_AC() * @generated */ - int SPOUSAL_EXPENSE_AC = 53; + int SPOUSAL_EXPENSE_AC = 43; /** * The feature id for the 'Declared amount' attribute. @@ -4837,7 +4367,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getExtraordinary_Expense_CE() * @generated */ - int EXTRAORDINARY_EXPENSE_CE = 54; + int EXTRAORDINARY_EXPENSE_CE = 44; /** * The feature id for the 'Declared amount' attribute. @@ -4946,7 +4476,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getProfessional_Expense() * @generated */ - int PROFESSIONAL_EXPENSE = 56; + int PROFESSIONAL_EXPENSE = 46; /** * The feature id for the 'Declared amount' attribute. @@ -5037,7 +4567,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getTravel_Expense_FD() * @generated */ - int TRAVEL_EXPENSE_FD = 55; + int TRAVEL_EXPENSE_FD = 45; /** * The feature id for the 'Declared amount' attribute. @@ -5128,7 +4658,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getMiscellaneous_Expense_FO() * @generated */ - int MISCELLANEOUS_EXPENSE_FO = 57; + int MISCELLANEOUS_EXPENSE_FO = 47; /** * The feature id for the 'Declared amount' attribute. @@ -5219,7 +4749,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getResource() * @generated */ - int RESOURCE = 58; + int RESOURCE = 48; /** * The feature id for the 'Contains' containment reference list. @@ -5256,7 +4786,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getGrantor() * @generated */ - int GRANTOR = 60; + int GRANTOR = 49; /** * The meta object id for the '{@link TaxationWithRoot.Disability_Types Disability Types}' enum. @@ -5266,7 +4796,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getDisability_Types() * @generated */ - int DISABILITY_TYPES = 61; + int DISABILITY_TYPES = 50; /** * The meta object id for the '{@link TaxationWithRoot.Country Country}' enum. @@ -5276,7 +4806,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getCountry() * @generated */ - int COUNTRY = 62; + int COUNTRY = 51; /** * The meta object id for the '{@link TaxationWithRoot.Tax_Office Tax Office}' enum. @@ -5286,7 +4816,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getTax_Office() * @generated */ - int TAX_OFFICE = 63; + int TAX_OFFICE = 52; /** * The meta object id for the '{@link TaxationWithRoot.Tax_Class_Category Tax Class Category}' enum. @@ -5296,7 +4826,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getTax_Class_Category() * @generated */ - int TAX_CLASS_CATEGORY = 64; + int TAX_CLASS_CATEGORY = 53; /** * The meta object id for the '{@link TaxationWithRoot.Job_Activity Job Activity}' enum. @@ -5306,7 +4836,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getJob_Activity() * @generated */ - int JOB_ACTIVITY = 65; + int JOB_ACTIVITY = 54; /** * The meta object id for the '{@link TaxationWithRoot.Town Town}' enum. @@ -5316,7 +4846,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getTown() * @generated */ - int TOWN = 66; + int TOWN = 55; /** * The meta object id for the '{@link TaxationWithRoot.CE_Type CE Type}' enum. @@ -5326,7 +4856,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getCE_Type() * @generated */ - int CE_TYPE = 67; + int CE_TYPE = 56; /** * The meta object id for the '{@link TaxationWithRoot.Expense_Purpose Expense Purpose}' enum. @@ -5336,7 +4866,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getExpense_Purpose() * @generated */ - int EXPENSE_PURPOSE = 68; + int EXPENSE_PURPOSE = 57; /** * The meta object id for the '{@link TaxationWithRoot.Dependent_Type Dependent Type}' enum. @@ -5346,7 +4876,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getDependent_Type() * @generated */ - int DEPENDENT_TYPE = 69; + int DEPENDENT_TYPE = 58; /** * The meta object id for the '{@link TaxationWithRoot.Separation_Causes Separation Causes}' enum. @@ -5356,7 +4886,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getSeparation_Causes() * @generated */ - int SEPARATION_CAUSES = 70; + int SEPARATION_CAUSES = 59; /** * The meta object id for the '{@link TaxationWithRoot.Category_of_Permanent_Expense Category of Permanent Expense}' enum. @@ -5366,7 +4896,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getCategory_of_Permanent_Expense() * @generated */ - int CATEGORY_OF_PERMANENT_EXPENSE = 71; + int CATEGORY_OF_PERMANENT_EXPENSE = 60; /** * The meta object id for the '{@link TaxationWithRoot.Category_of_Health_and_Pension_Insurances Category of Health and Pension Insurances}' enum. @@ -5376,7 +4906,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getCategory_of_Health_and_Pension_Insurances() * @generated */ - int CATEGORY_OF_HEALTH_AND_PENSION_INSURANCES = 72; + int CATEGORY_OF_HEALTH_AND_PENSION_INSURANCES = 61; /** * The meta object id for the '{@link TaxationWithRoot.Category_of_Private_Insurance_and_Plan Category of Private Insurance and Plan}' enum. @@ -5386,7 +4916,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getCategory_of_Private_Insurance_and_Plan() * @generated */ - int CATEGORY_OF_PRIVATE_INSURANCE_AND_PLAN = 73; + int CATEGORY_OF_PRIVATE_INSURANCE_AND_PLAN = 62; /** * The meta object id for the '{@link TaxationWithRoot.Legal_Union_Types Legal Union Types}' enum. @@ -5396,7 +4926,7 @@ public interface TaxationPackage extends EPackage { * @see TaxationWithRoot.impl.TaxationPackageImpl#getLegal_Union_Types() * @generated */ - int LEGAL_UNION_TYPES = 74; + int LEGAL_UNION_TYPES = 63; /** @@ -7431,172 +6961,6 @@ public interface TaxationPackage extends EPackage { */ EClass getCIS(); - /** - * Returns the meta object for class '{@link TaxationWithRoot.FD FD}'. - * - * - * @return the meta object for class 'FD'. - * @see TaxationWithRoot.FD - * @generated - */ - EClass getFD(); - - /** - * Returns the meta object for the attribute '{@link TaxationWithRoot.FD#getDistance_declared_in_january Distance declared in january}'. - * - * - * @return the meta object for the attribute 'Distance declared in january'. - * @see TaxationWithRoot.FD#getDistance_declared_in_january() - * @see #getFD() - * @generated - */ - EAttribute getFD_Distance_declared_in_january(); - - /** - * Returns the meta object for class '{@link TaxationWithRoot.Professional_Expenses_Deduction Professional Expenses Deduction}'. - * - * - * @return the meta object for class 'Professional Expenses Deduction'. - * @see TaxationWithRoot.Professional_Expenses_Deduction - * @generated - */ - EClass getProfessional_Expenses_Deduction(); - - /** - * Returns the meta object for class '{@link TaxationWithRoot.FO FO}'. - * - * - * @return the meta object for class 'FO'. - * @see TaxationWithRoot.FO - * @generated - */ - EClass getFO(); - - /** - * Returns the meta object for class '{@link TaxationWithRoot.DS_for_Permanent_Expense DS for Permanent Expense}'. - * - * - * @return the meta object for class 'DS for Permanent Expense'. - * @see TaxationWithRoot.DS_for_Permanent_Expense - * @generated - */ - EClass getDS_for_Permanent_Expense(); - - /** - * Returns the meta object for the attribute '{@link TaxationWithRoot.DS_for_Permanent_Expense#getPermanent_expense_category Permanent expense category}'. - * - * - * @return the meta object for the attribute 'Permanent expense category'. - * @see TaxationWithRoot.DS_for_Permanent_Expense#getPermanent_expense_category() - * @see #getDS_for_Permanent_Expense() - * @generated - */ - EAttribute getDS_for_Permanent_Expense_Permanent_expense_category(); - - /** - * Returns the meta object for class '{@link TaxationWithRoot.DS DS}'. - * - * - * @return the meta object for class 'DS'. - * @see TaxationWithRoot.DS - * @generated - */ - EClass getDS(); - - /** - * Returns the meta object for the attribute '{@link TaxationWithRoot.DS#getMaximum_deductible_amount Maximum deductible amount}'. - * - * - * @return the meta object for the attribute 'Maximum deductible amount'. - * @see TaxationWithRoot.DS#getMaximum_deductible_amount() - * @see #getDS() - * @generated - */ - EAttribute getDS_Maximum_deductible_amount(); - - /** - * Returns the meta object for the attribute '{@link TaxationWithRoot.DS#getId3 Id3}'. - * - * - * @return the meta object for the attribute 'Id3'. - * @see TaxationWithRoot.DS#getId3() - * @see #getDS() - * @generated - */ - EAttribute getDS_Id3(); - - /** - * Returns the meta object for class '{@link TaxationWithRoot.DS_for_Interest_Expense DS for Interest Expense}'. - * - * - * @return the meta object for class 'DS for Interest Expense'. - * @see TaxationWithRoot.DS_for_Interest_Expense - * @generated - */ - EClass getDS_for_Interest_Expense(); - - /** - * Returns the meta object for class '{@link TaxationWithRoot.DS_for_Health_and_Pension_Insurance DS for Health and Pension Insurance}'. - * - * - * @return the meta object for class 'DS for Health and Pension Insurance'. - * @see TaxationWithRoot.DS_for_Health_and_Pension_Insurance - * @generated - */ - EClass getDS_for_Health_and_Pension_Insurance(); - - /** - * Returns the meta object for the attribute '{@link TaxationWithRoot.DS_for_Health_and_Pension_Insurance#getInsurance_category Insurance category}'. - * - * - * @return the meta object for the attribute 'Insurance category'. - * @see TaxationWithRoot.DS_for_Health_and_Pension_Insurance#getInsurance_category() - * @see #getDS_for_Health_and_Pension_Insurance() - * @generated - */ - EAttribute getDS_for_Health_and_Pension_Insurance_Insurance_category(); - - /** - * Returns the meta object for class '{@link TaxationWithRoot.DS_for_Private_Insurance_and_Plan DS for Private Insurance and Plan}'. - * - * - * @return the meta object for class 'DS for Private Insurance and Plan'. - * @see TaxationWithRoot.DS_for_Private_Insurance_and_Plan - * @generated - */ - EClass getDS_for_Private_Insurance_and_Plan(); - - /** - * Returns the meta object for the attribute '{@link TaxationWithRoot.DS_for_Private_Insurance_and_Plan#getPrivate_insurance_and_plan_category Private insurance and plan category}'. - * - * - * @return the meta object for the attribute 'Private insurance and plan category'. - * @see TaxationWithRoot.DS_for_Private_Insurance_and_Plan#getPrivate_insurance_and_plan_category() - * @see #getDS_for_Private_Insurance_and_Plan() - * @generated - */ - EAttribute getDS_for_Private_Insurance_and_Plan_Private_insurance_and_plan_category(); - - /** - * Returns the meta object for class '{@link TaxationWithRoot.DS_for_Loss_Carryforward DS for Loss Carryforward}'. - * - * - * @return the meta object for class 'DS for Loss Carryforward'. - * @see TaxationWithRoot.DS_for_Loss_Carryforward - * @generated - */ - EClass getDS_for_Loss_Carryforward(); - - /** - * Returns the meta object for class '{@link TaxationWithRoot.DS_for_Donation DS for Donation}'. - * - * - * @return the meta object for class 'DS for Donation'. - * @see TaxationWithRoot.DS_for_Donation - * @generated - */ - EClass getDS_for_Donation(); - /** * Returns the meta object for class '{@link TaxationWithRoot.Permanent_Expense Permanent Expense}'. * @@ -7837,16 +7201,6 @@ public interface TaxationPackage extends EPackage { */ EReference getResource_Contains(); - /** - * Returns the meta object for class '{@link TaxationWithRoot.Root Root}'. - * - * - * @return the meta object for class 'Root'. - * @see TaxationWithRoot.Root - * @generated - */ - EClass getRoot(); - /** * Returns the meta object for enum '{@link TaxationWithRoot.Grantor Grantor}'. * @@ -9596,154 +8950,6 @@ public interface TaxationPackage extends EPackage { */ EClass CIS = eINSTANCE.getCIS(); - /** - * The meta object literal for the '{@link TaxationWithRoot.impl.FDImpl FD}' class. - * - * - * @see TaxationWithRoot.impl.FDImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getFD() - * @generated - */ - EClass FD = eINSTANCE.getFD(); - - /** - * The meta object literal for the 'Distance declared in january' attribute feature. - * - * - * @generated - */ - EAttribute FD__DISTANCE_DECLARED_IN_JANUARY = eINSTANCE.getFD_Distance_declared_in_january(); - - /** - * The meta object literal for the '{@link TaxationWithRoot.impl.Professional_Expenses_DeductionImpl Professional Expenses Deduction}' class. - * - * - * @see TaxationWithRoot.impl.Professional_Expenses_DeductionImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getProfessional_Expenses_Deduction() - * @generated - */ - EClass PROFESSIONAL_EXPENSES_DEDUCTION = eINSTANCE.getProfessional_Expenses_Deduction(); - - /** - * The meta object literal for the '{@link TaxationWithRoot.impl.FOImpl FO}' class. - * - * - * @see TaxationWithRoot.impl.FOImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getFO() - * @generated - */ - EClass FO = eINSTANCE.getFO(); - - /** - * The meta object literal for the '{@link TaxationWithRoot.impl.DS_for_Permanent_ExpenseImpl DS for Permanent Expense}' class. - * - * - * @see TaxationWithRoot.impl.DS_for_Permanent_ExpenseImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Permanent_Expense() - * @generated - */ - EClass DS_FOR_PERMANENT_EXPENSE = eINSTANCE.getDS_for_Permanent_Expense(); - - /** - * The meta object literal for the 'Permanent expense category' attribute feature. - * - * - * @generated - */ - EAttribute DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY = eINSTANCE.getDS_for_Permanent_Expense_Permanent_expense_category(); - - /** - * The meta object literal for the '{@link TaxationWithRoot.impl.DSImpl DS}' class. - * - * - * @see TaxationWithRoot.impl.DSImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS() - * @generated - */ - EClass DS = eINSTANCE.getDS(); - - /** - * The meta object literal for the 'Maximum deductible amount' attribute feature. - * - * - * @generated - */ - EAttribute DS__MAXIMUM_DEDUCTIBLE_AMOUNT = eINSTANCE.getDS_Maximum_deductible_amount(); - - /** - * The meta object literal for the 'Id3' attribute feature. - * - * - * @generated - */ - EAttribute DS__ID3 = eINSTANCE.getDS_Id3(); - - /** - * The meta object literal for the '{@link TaxationWithRoot.impl.DS_for_Interest_ExpenseImpl DS for Interest Expense}' class. - * - * - * @see TaxationWithRoot.impl.DS_for_Interest_ExpenseImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Interest_Expense() - * @generated - */ - EClass DS_FOR_INTEREST_EXPENSE = eINSTANCE.getDS_for_Interest_Expense(); - - /** - * The meta object literal for the '{@link TaxationWithRoot.impl.DS_for_Health_and_Pension_InsuranceImpl DS for Health and Pension Insurance}' class. - * - * - * @see TaxationWithRoot.impl.DS_for_Health_and_Pension_InsuranceImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Health_and_Pension_Insurance() - * @generated - */ - EClass DS_FOR_HEALTH_AND_PENSION_INSURANCE = eINSTANCE.getDS_for_Health_and_Pension_Insurance(); - - /** - * The meta object literal for the 'Insurance category' attribute feature. - * - * - * @generated - */ - EAttribute DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY = eINSTANCE.getDS_for_Health_and_Pension_Insurance_Insurance_category(); - - /** - * The meta object literal for the '{@link TaxationWithRoot.impl.DS_for_Private_Insurance_and_PlanImpl DS for Private Insurance and Plan}' class. - * - * - * @see TaxationWithRoot.impl.DS_for_Private_Insurance_and_PlanImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Private_Insurance_and_Plan() - * @generated - */ - EClass DS_FOR_PRIVATE_INSURANCE_AND_PLAN = eINSTANCE.getDS_for_Private_Insurance_and_Plan(); - - /** - * The meta object literal for the 'Private insurance and plan category' attribute feature. - * - * - * @generated - */ - EAttribute DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY = eINSTANCE.getDS_for_Private_Insurance_and_Plan_Private_insurance_and_plan_category(); - - /** - * The meta object literal for the '{@link TaxationWithRoot.impl.DS_for_Loss_CarryforwardImpl DS for Loss Carryforward}' class. - * - * - * @see TaxationWithRoot.impl.DS_for_Loss_CarryforwardImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Loss_Carryforward() - * @generated - */ - EClass DS_FOR_LOSS_CARRYFORWARD = eINSTANCE.getDS_for_Loss_Carryforward(); - - /** - * The meta object literal for the '{@link TaxationWithRoot.impl.DS_for_DonationImpl DS for Donation}' class. - * - * - * @see TaxationWithRoot.impl.DS_for_DonationImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getDS_for_Donation() - * @generated - */ - EClass DS_FOR_DONATION = eINSTANCE.getDS_for_Donation(); - /** * The meta object literal for the '{@link TaxationWithRoot.impl.Permanent_ExpenseImpl Permanent Expense}' class. * @@ -9954,16 +9160,6 @@ public interface TaxationPackage extends EPackage { */ EReference RESOURCE__CONTAINS = eINSTANCE.getResource_Contains(); - /** - * The meta object literal for the '{@link TaxationWithRoot.impl.RootImpl Root}' class. - * - * - * @see TaxationWithRoot.impl.RootImpl - * @see TaxationWithRoot.impl.TaxationPackageImpl#getRoot() - * @generated - */ - EClass ROOT = eINSTANCE.getRoot(); - /** * The meta object literal for the '{@link TaxationWithRoot.Grantor Grantor}' enum. * diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/AddressImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/AddressImpl.java index c6062848..fcd0a7fc 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/AddressImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/AddressImpl.java @@ -18,6 +18,8 @@ import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.InternalEObject; import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + import org.eclipse.emf.ecore.util.EObjectWithInverseResolvingEList; import org.eclipse.emf.ecore.util.InternalEList; @@ -39,7 +41,7 @@ import org.eclipse.emf.ecore.util.InternalEList; * * @generated */ -public class AddressImpl extends RootImpl implements Address { +public class AddressImpl extends MinimalEObjectImpl.Container implements Address { /** * The default value of the '{@link #getCountry() Country}' attribute. * diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DSImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DSImpl.java deleted file mode 100644 index dabc6b3c..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DSImpl.java +++ /dev/null @@ -1,220 +0,0 @@ -/** - */ -package TaxationWithRoot.impl; - -import TaxationWithRoot.DS; -import TaxationWithRoot.TaxationPackage; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -/** - * - * An implementation of the model object 'DS'. - * - *

            - * The following features are implemented: - *

            - *
              - *
            • {@link TaxationWithRoot.impl.DSImpl#getMaximum_deductible_amount Maximum deductible amount}
            • - *
            • {@link TaxationWithRoot.impl.DSImpl#getId3 Id3}
            • - *
            - * - * @generated - */ -public class DSImpl extends RootImpl implements DS { - /** - * The default value of the '{@link #getMaximum_deductible_amount() Maximum deductible amount}' attribute. - * - * - * @see #getMaximum_deductible_amount() - * @generated - * @ordered - */ - protected static final double MAXIMUM_DEDUCTIBLE_AMOUNT_EDEFAULT = 0.0; - - /** - * The cached value of the '{@link #getMaximum_deductible_amount() Maximum deductible amount}' attribute. - * - * - * @see #getMaximum_deductible_amount() - * @generated - * @ordered - */ - protected double maximum_deductible_amount = MAXIMUM_DEDUCTIBLE_AMOUNT_EDEFAULT; - - /** - * The default value of the '{@link #getId3() Id3}' attribute. - * - * - * @see #getId3() - * @generated - * @ordered - */ - protected static final String ID3_EDEFAULT = null; - - /** - * The cached value of the '{@link #getId3() Id3}' attribute. - * - * - * @see #getId3() - * @generated - * @ordered - */ - protected String id3 = ID3_EDEFAULT; - - /** - * - * - * @generated - */ - protected DSImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return TaxationPackage.Literals.DS; - } - - /** - * - * - * @generated - */ - @Override - public double getMaximum_deductible_amount() { - return maximum_deductible_amount; - } - - /** - * - * - * @generated - */ - @Override - public void setMaximum_deductible_amount(double newMaximum_deductible_amount) { - double oldMaximum_deductible_amount = maximum_deductible_amount; - maximum_deductible_amount = newMaximum_deductible_amount; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS__MAXIMUM_DEDUCTIBLE_AMOUNT, oldMaximum_deductible_amount, maximum_deductible_amount)); - } - - /** - * - * - * @generated - */ - @Override - public String getId3() { - return id3; - } - - /** - * - * - * @generated - */ - @Override - public void setId3(String newId3) { - String oldId3 = id3; - id3 = newId3; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS__ID3, oldId3, id3)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case TaxationPackage.DS__MAXIMUM_DEDUCTIBLE_AMOUNT: - return getMaximum_deductible_amount(); - case TaxationPackage.DS__ID3: - return getId3(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case TaxationPackage.DS__MAXIMUM_DEDUCTIBLE_AMOUNT: - setMaximum_deductible_amount((Double)newValue); - return; - case TaxationPackage.DS__ID3: - setId3((String)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case TaxationPackage.DS__MAXIMUM_DEDUCTIBLE_AMOUNT: - setMaximum_deductible_amount(MAXIMUM_DEDUCTIBLE_AMOUNT_EDEFAULT); - return; - case TaxationPackage.DS__ID3: - setId3(ID3_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case TaxationPackage.DS__MAXIMUM_DEDUCTIBLE_AMOUNT: - return maximum_deductible_amount != MAXIMUM_DEDUCTIBLE_AMOUNT_EDEFAULT; - case TaxationPackage.DS__ID3: - return ID3_EDEFAULT == null ? id3 != null : !ID3_EDEFAULT.equals(id3); - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (maximum_deductible_amount: "); - result.append(maximum_deductible_amount); - result.append(", id3: "); - result.append(id3); - result.append(')'); - return result.toString(); - } - -} //DSImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_DonationImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_DonationImpl.java deleted file mode 100644 index 2340f538..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_DonationImpl.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - */ -package TaxationWithRoot.impl; - -import TaxationWithRoot.DS_for_Donation; -import TaxationWithRoot.TaxationPackage; - -import org.eclipse.emf.ecore.EClass; - -/** - * - * An implementation of the model object 'DS for Donation'. - * - * - * @generated - */ -public class DS_for_DonationImpl extends DSImpl implements DS_for_Donation { - /** - * - * - * @generated - */ - protected DS_for_DonationImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return TaxationPackage.Literals.DS_FOR_DONATION; - } - -} //DS_for_DonationImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Health_and_Pension_InsuranceImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Health_and_Pension_InsuranceImpl.java deleted file mode 100644 index 98886913..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Health_and_Pension_InsuranceImpl.java +++ /dev/null @@ -1,165 +0,0 @@ -/** - */ -package TaxationWithRoot.impl; - -import TaxationWithRoot.Category_of_Health_and_Pension_Insurances; -import TaxationWithRoot.DS_for_Health_and_Pension_Insurance; -import TaxationWithRoot.TaxationPackage; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -/** - * - * An implementation of the model object 'DS for Health and Pension Insurance'. - * - *

            - * The following features are implemented: - *

            - *
              - *
            • {@link TaxationWithRoot.impl.DS_for_Health_and_Pension_InsuranceImpl#getInsurance_category Insurance category}
            • - *
            - * - * @generated - */ -public class DS_for_Health_and_Pension_InsuranceImpl extends DSImpl implements DS_for_Health_and_Pension_Insurance { - /** - * The default value of the '{@link #getInsurance_category() Insurance category}' attribute. - * - * - * @see #getInsurance_category() - * @generated - * @ordered - */ - protected static final Category_of_Health_and_Pension_Insurances INSURANCE_CATEGORY_EDEFAULT = Category_of_Health_and_Pension_Insurances.MANDATORY_HEALTH_AND_PENSION_INSURANCE; - - /** - * The cached value of the '{@link #getInsurance_category() Insurance category}' attribute. - * - * - * @see #getInsurance_category() - * @generated - * @ordered - */ - protected Category_of_Health_and_Pension_Insurances insurance_category = INSURANCE_CATEGORY_EDEFAULT; - - /** - * - * - * @generated - */ - protected DS_for_Health_and_Pension_InsuranceImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return TaxationPackage.Literals.DS_FOR_HEALTH_AND_PENSION_INSURANCE; - } - - /** - * - * - * @generated - */ - @Override - public Category_of_Health_and_Pension_Insurances getInsurance_category() { - return insurance_category; - } - - /** - * - * - * @generated - */ - @Override - public void setInsurance_category(Category_of_Health_and_Pension_Insurances newInsurance_category) { - Category_of_Health_and_Pension_Insurances oldInsurance_category = insurance_category; - insurance_category = newInsurance_category == null ? INSURANCE_CATEGORY_EDEFAULT : newInsurance_category; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY, oldInsurance_category, insurance_category)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY: - return getInsurance_category(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY: - setInsurance_category((Category_of_Health_and_Pension_Insurances)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY: - setInsurance_category(INSURANCE_CATEGORY_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY: - return insurance_category != INSURANCE_CATEGORY_EDEFAULT; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (insurance_category: "); - result.append(insurance_category); - result.append(')'); - return result.toString(); - } - -} //DS_for_Health_and_Pension_InsuranceImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Interest_ExpenseImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Interest_ExpenseImpl.java deleted file mode 100644 index c7472a4e..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Interest_ExpenseImpl.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - */ -package TaxationWithRoot.impl; - -import TaxationWithRoot.DS_for_Interest_Expense; -import TaxationWithRoot.TaxationPackage; - -import org.eclipse.emf.ecore.EClass; - -/** - * - * An implementation of the model object 'DS for Interest Expense'. - * - * - * @generated - */ -public class DS_for_Interest_ExpenseImpl extends DSImpl implements DS_for_Interest_Expense { - /** - * - * - * @generated - */ - protected DS_for_Interest_ExpenseImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return TaxationPackage.Literals.DS_FOR_INTEREST_EXPENSE; - } - -} //DS_for_Interest_ExpenseImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Loss_CarryforwardImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Loss_CarryforwardImpl.java deleted file mode 100644 index f08a6c28..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Loss_CarryforwardImpl.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - */ -package TaxationWithRoot.impl; - -import TaxationWithRoot.DS_for_Loss_Carryforward; -import TaxationWithRoot.TaxationPackage; - -import org.eclipse.emf.ecore.EClass; - -/** - * - * An implementation of the model object 'DS for Loss Carryforward'. - * - * - * @generated - */ -public class DS_for_Loss_CarryforwardImpl extends DSImpl implements DS_for_Loss_Carryforward { - /** - * - * - * @generated - */ - protected DS_for_Loss_CarryforwardImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return TaxationPackage.Literals.DS_FOR_LOSS_CARRYFORWARD; - } - -} //DS_for_Loss_CarryforwardImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Permanent_ExpenseImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Permanent_ExpenseImpl.java deleted file mode 100644 index 09859cfc..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Permanent_ExpenseImpl.java +++ /dev/null @@ -1,165 +0,0 @@ -/** - */ -package TaxationWithRoot.impl; - -import TaxationWithRoot.Category_of_Permanent_Expense; -import TaxationWithRoot.DS_for_Permanent_Expense; -import TaxationWithRoot.TaxationPackage; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -/** - * - * An implementation of the model object 'DS for Permanent Expense'. - * - *

            - * The following features are implemented: - *

            - *
              - *
            • {@link TaxationWithRoot.impl.DS_for_Permanent_ExpenseImpl#getPermanent_expense_category Permanent expense category}
            • - *
            - * - * @generated - */ -public class DS_for_Permanent_ExpenseImpl extends DSImpl implements DS_for_Permanent_Expense { - /** - * The default value of the '{@link #getPermanent_expense_category() Permanent expense category}' attribute. - * - * - * @see #getPermanent_expense_category() - * @generated - * @ordered - */ - protected static final Category_of_Permanent_Expense PERMANENT_EXPENSE_CATEGORY_EDEFAULT = Category_of_Permanent_Expense.MISCELLANEOUS_DEBT; - - /** - * The cached value of the '{@link #getPermanent_expense_category() Permanent expense category}' attribute. - * - * - * @see #getPermanent_expense_category() - * @generated - * @ordered - */ - protected Category_of_Permanent_Expense permanent_expense_category = PERMANENT_EXPENSE_CATEGORY_EDEFAULT; - - /** - * - * - * @generated - */ - protected DS_for_Permanent_ExpenseImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return TaxationPackage.Literals.DS_FOR_PERMANENT_EXPENSE; - } - - /** - * - * - * @generated - */ - @Override - public Category_of_Permanent_Expense getPermanent_expense_category() { - return permanent_expense_category; - } - - /** - * - * - * @generated - */ - @Override - public void setPermanent_expense_category(Category_of_Permanent_Expense newPermanent_expense_category) { - Category_of_Permanent_Expense oldPermanent_expense_category = permanent_expense_category; - permanent_expense_category = newPermanent_expense_category == null ? PERMANENT_EXPENSE_CATEGORY_EDEFAULT : newPermanent_expense_category; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY, oldPermanent_expense_category, permanent_expense_category)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case TaxationPackage.DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY: - return getPermanent_expense_category(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case TaxationPackage.DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY: - setPermanent_expense_category((Category_of_Permanent_Expense)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case TaxationPackage.DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY: - setPermanent_expense_category(PERMANENT_EXPENSE_CATEGORY_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case TaxationPackage.DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY: - return permanent_expense_category != PERMANENT_EXPENSE_CATEGORY_EDEFAULT; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (permanent_expense_category: "); - result.append(permanent_expense_category); - result.append(')'); - return result.toString(); - } - -} //DS_for_Permanent_ExpenseImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Private_Insurance_and_PlanImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Private_Insurance_and_PlanImpl.java deleted file mode 100644 index 479477c9..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/DS_for_Private_Insurance_and_PlanImpl.java +++ /dev/null @@ -1,165 +0,0 @@ -/** - */ -package TaxationWithRoot.impl; - -import TaxationWithRoot.Category_of_Private_Insurance_and_Plan; -import TaxationWithRoot.DS_for_Private_Insurance_and_Plan; -import TaxationWithRoot.TaxationPackage; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -/** - * - * An implementation of the model object 'DS for Private Insurance and Plan'. - * - *

            - * The following features are implemented: - *

            - *
              - *
            • {@link TaxationWithRoot.impl.DS_for_Private_Insurance_and_PlanImpl#getPrivate_insurance_and_plan_category Private insurance and plan category}
            • - *
            - * - * @generated - */ -public class DS_for_Private_Insurance_and_PlanImpl extends DSImpl implements DS_for_Private_Insurance_and_Plan { - /** - * The default value of the '{@link #getPrivate_insurance_and_plan_category() Private insurance and plan category}' attribute. - * - * - * @see #getPrivate_insurance_and_plan_category() - * @generated - * @ordered - */ - protected static final Category_of_Private_Insurance_and_Plan PRIVATE_INSURANCE_AND_PLAN_CATEGORY_EDEFAULT = Category_of_Private_Insurance_and_Plan.PRIVATE_INSURANCE; - - /** - * The cached value of the '{@link #getPrivate_insurance_and_plan_category() Private insurance and plan category}' attribute. - * - * - * @see #getPrivate_insurance_and_plan_category() - * @generated - * @ordered - */ - protected Category_of_Private_Insurance_and_Plan private_insurance_and_plan_category = PRIVATE_INSURANCE_AND_PLAN_CATEGORY_EDEFAULT; - - /** - * - * - * @generated - */ - protected DS_for_Private_Insurance_and_PlanImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return TaxationPackage.Literals.DS_FOR_PRIVATE_INSURANCE_AND_PLAN; - } - - /** - * - * - * @generated - */ - @Override - public Category_of_Private_Insurance_and_Plan getPrivate_insurance_and_plan_category() { - return private_insurance_and_plan_category; - } - - /** - * - * - * @generated - */ - @Override - public void setPrivate_insurance_and_plan_category(Category_of_Private_Insurance_and_Plan newPrivate_insurance_and_plan_category) { - Category_of_Private_Insurance_and_Plan oldPrivate_insurance_and_plan_category = private_insurance_and_plan_category; - private_insurance_and_plan_category = newPrivate_insurance_and_plan_category == null ? PRIVATE_INSURANCE_AND_PLAN_CATEGORY_EDEFAULT : newPrivate_insurance_and_plan_category; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY, oldPrivate_insurance_and_plan_category, private_insurance_and_plan_category)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY: - return getPrivate_insurance_and_plan_category(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY: - setPrivate_insurance_and_plan_category((Category_of_Private_Insurance_and_Plan)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY: - setPrivate_insurance_and_plan_category(PRIVATE_INSURANCE_AND_PLAN_CATEGORY_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY: - return private_insurance_and_plan_category != PRIVATE_INSURANCE_AND_PLAN_CATEGORY_EDEFAULT; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (private_insurance_and_plan_category: "); - result.append(private_insurance_and_plan_category); - result.append(')'); - return result.toString(); - } - -} //DS_for_Private_Insurance_and_PlanImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FDImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FDImpl.java deleted file mode 100644 index 270e8f39..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FDImpl.java +++ /dev/null @@ -1,164 +0,0 @@ -/** - */ -package TaxationWithRoot.impl; - -import TaxationWithRoot.FD; -import TaxationWithRoot.TaxationPackage; - -import org.eclipse.emf.common.notify.Notification; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.ENotificationImpl; - -/** - * - * An implementation of the model object 'FD'. - * - *

            - * The following features are implemented: - *

            - *
              - *
            • {@link TaxationWithRoot.impl.FDImpl#getDistance_declared_in_january Distance declared in january}
            • - *
            - * - * @generated - */ -public class FDImpl extends Professional_Expenses_DeductionImpl implements FD { - /** - * The default value of the '{@link #getDistance_declared_in_january() Distance declared in january}' attribute. - * - * - * @see #getDistance_declared_in_january() - * @generated - * @ordered - */ - protected static final double DISTANCE_DECLARED_IN_JANUARY_EDEFAULT = 0.0; - - /** - * The cached value of the '{@link #getDistance_declared_in_january() Distance declared in january}' attribute. - * - * - * @see #getDistance_declared_in_january() - * @generated - * @ordered - */ - protected double distance_declared_in_january = DISTANCE_DECLARED_IN_JANUARY_EDEFAULT; - - /** - * - * - * @generated - */ - protected FDImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return TaxationPackage.Literals.FD; - } - - /** - * - * - * @generated - */ - @Override - public double getDistance_declared_in_january() { - return distance_declared_in_january; - } - - /** - * - * - * @generated - */ - @Override - public void setDistance_declared_in_january(double newDistance_declared_in_january) { - double oldDistance_declared_in_january = distance_declared_in_january; - distance_declared_in_january = newDistance_declared_in_january; - if (eNotificationRequired()) - eNotify(new ENotificationImpl(this, Notification.SET, TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY, oldDistance_declared_in_january, distance_declared_in_january)); - } - - /** - * - * - * @generated - */ - @Override - public Object eGet(int featureID, boolean resolve, boolean coreType) { - switch (featureID) { - case TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY: - return getDistance_declared_in_january(); - } - return super.eGet(featureID, resolve, coreType); - } - - /** - * - * - * @generated - */ - @Override - public void eSet(int featureID, Object newValue) { - switch (featureID) { - case TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY: - setDistance_declared_in_january((Double)newValue); - return; - } - super.eSet(featureID, newValue); - } - - /** - * - * - * @generated - */ - @Override - public void eUnset(int featureID) { - switch (featureID) { - case TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY: - setDistance_declared_in_january(DISTANCE_DECLARED_IN_JANUARY_EDEFAULT); - return; - } - super.eUnset(featureID); - } - - /** - * - * - * @generated - */ - @Override - public boolean eIsSet(int featureID) { - switch (featureID) { - case TaxationPackage.FD__DISTANCE_DECLARED_IN_JANUARY: - return distance_declared_in_january != DISTANCE_DECLARED_IN_JANUARY_EDEFAULT; - } - return super.eIsSet(featureID); - } - - /** - * - * - * @generated - */ - @Override - public String toString() { - if (eIsProxy()) return super.toString(); - - StringBuilder result = new StringBuilder(super.toString()); - result.append(" (distance_declared_in_january: "); - result.append(distance_declared_in_january); - result.append(')'); - return result.toString(); - } - -} //FDImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FOImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FOImpl.java deleted file mode 100644 index 18919a65..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/FOImpl.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - */ -package TaxationWithRoot.impl; - -import TaxationWithRoot.FO; -import TaxationWithRoot.TaxationPackage; - -import org.eclipse.emf.ecore.EClass; - -/** - * - * An implementation of the model object 'FO'. - * - * - * @generated - */ -public class FOImpl extends Professional_Expenses_DeductionImpl implements FO { - /** - * - * - * @generated - */ - protected FOImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return TaxationPackage.Literals.FO; - } - -} //FOImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/HouseholdImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/HouseholdImpl.java index 770bb5e0..896eddd1 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/HouseholdImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/HouseholdImpl.java @@ -18,6 +18,8 @@ import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.InternalEObject; import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; + import org.eclipse.emf.ecore.util.EObjectContainmentWithInverseEList; import org.eclipse.emf.ecore.util.InternalEList; @@ -36,7 +38,7 @@ import org.eclipse.emf.ecore.util.InternalEList; * * @generated */ -public class HouseholdImpl extends RootImpl implements Household { +public class HouseholdImpl extends MinimalEObjectImpl.Container implements Household { /** * The cached value of the '{@link #getParents() Parents}' containment reference. * diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_Tax_CreditImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_Tax_CreditImpl.java index 308a8f01..90d87de4 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_Tax_CreditImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Income_Tax_CreditImpl.java @@ -15,6 +15,7 @@ import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.InternalEObject; import org.eclipse.emf.ecore.impl.ENotificationImpl; +import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; /** * @@ -36,7 +37,7 @@ import org.eclipse.emf.ecore.impl.ENotificationImpl; * * @generated */ -public class Income_Tax_CreditImpl extends RootImpl implements Income_Tax_Credit { +public class Income_Tax_CreditImpl extends MinimalEObjectImpl.Container implements Income_Tax_Credit { /** * The default value of the '{@link #getGrantedBy() Granted By}' attribute. * diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Professional_Expenses_DeductionImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Professional_Expenses_DeductionImpl.java deleted file mode 100644 index a4a903e8..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/Professional_Expenses_DeductionImpl.java +++ /dev/null @@ -1,37 +0,0 @@ -/** - */ -package TaxationWithRoot.impl; - -import TaxationWithRoot.Professional_Expenses_Deduction; -import TaxationWithRoot.TaxationPackage; - -import org.eclipse.emf.ecore.EClass; - -/** - * - * An implementation of the model object 'Professional Expenses Deduction'. - * - * - * @generated - */ -public class Professional_Expenses_DeductionImpl extends RootImpl implements Professional_Expenses_Deduction { - /** - * - * - * @generated - */ - protected Professional_Expenses_DeductionImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return TaxationPackage.Literals.PROFESSIONAL_EXPENSES_DEDUCTION; - } - -} //Professional_Expenses_DeductionImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/ResourceImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/ResourceImpl.java index 2104cce8..6476e121 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/ResourceImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/ResourceImpl.java @@ -2,8 +2,8 @@ */ package TaxationWithRoot.impl; +import TaxationWithRoot.Household; import TaxationWithRoot.Resource; -import TaxationWithRoot.Root; import TaxationWithRoot.TaxationPackage; import java.util.Collection; @@ -42,7 +42,7 @@ public class ResourceImpl extends MinimalEObjectImpl.Container implements Resour * @generated * @ordered */ - protected EList contains; + protected EList contains; /** * @@ -69,9 +69,9 @@ public class ResourceImpl extends MinimalEObjectImpl.Container implements Resour * @generated */ @Override - public EList getContains() { + public EList getContains() { if (contains == null) { - contains = new EObjectContainmentEList(Root.class, this, TaxationPackage.RESOURCE__CONTAINS); + contains = new EObjectContainmentEList(Household.class, this, TaxationPackage.RESOURCE__CONTAINS); } return contains; } @@ -115,7 +115,7 @@ public class ResourceImpl extends MinimalEObjectImpl.Container implements Resour switch (featureID) { case TaxationPackage.RESOURCE__CONTAINS: getContains().clear(); - getContains().addAll((Collection)newValue); + getContains().addAll((Collection)newValue); return; } super.eSet(featureID, newValue); diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/RootImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/RootImpl.java deleted file mode 100644 index 65a8d68c..00000000 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/RootImpl.java +++ /dev/null @@ -1,39 +0,0 @@ -/** - */ -package TaxationWithRoot.impl; - -import TaxationWithRoot.Root; -import TaxationWithRoot.TaxationPackage; - -import org.eclipse.emf.ecore.EClass; - -import org.eclipse.emf.ecore.impl.MinimalEObjectImpl; - -/** - * - * An implementation of the model object 'Root'. - * - * - * @generated - */ -public abstract class RootImpl extends MinimalEObjectImpl.Container implements Root { - /** - * - * - * @generated - */ - protected RootImpl() { - super(); - } - - /** - * - * - * @generated - */ - @Override - protected EClass eStaticClass() { - return TaxationPackage.Literals.ROOT; - } - -} //RootImpl diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/TaxationFactoryImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/TaxationFactoryImpl.java index 12caab7b..1f527881 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/TaxationFactoryImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/TaxationFactoryImpl.java @@ -87,16 +87,6 @@ public class TaxationFactoryImpl extends EFactoryImpl implements TaxationFactory case TaxationPackage.CIM: return createCIM(); case TaxationPackage.CIP: return createCIP(); case TaxationPackage.CIS: return createCIS(); - case TaxationPackage.FD: return createFD(); - case TaxationPackage.PROFESSIONAL_EXPENSES_DEDUCTION: return createProfessional_Expenses_Deduction(); - case TaxationPackage.FO: return createFO(); - case TaxationPackage.DS_FOR_PERMANENT_EXPENSE: return createDS_for_Permanent_Expense(); - case TaxationPackage.DS: return createDS(); - case TaxationPackage.DS_FOR_INTEREST_EXPENSE: return createDS_for_Interest_Expense(); - case TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE: return createDS_for_Health_and_Pension_Insurance(); - case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN: return createDS_for_Private_Insurance_and_Plan(); - case TaxationPackage.DS_FOR_LOSS_CARRYFORWARD: return createDS_for_Loss_Carryforward(); - case TaxationPackage.DS_FOR_DONATION: return createDS_for_Donation(); case TaxationPackage.PERMANENT_EXPENSE: return createPermanent_Expense(); case TaxationPackage.SPECIAL_EXPENSE_DS: return createSpecial_Expense_DS(); case TaxationPackage.INTEREST_EXPENSE: return createInterest_Expense(); @@ -531,116 +521,6 @@ public class TaxationFactoryImpl extends EFactoryImpl implements TaxationFactory return cis; } - /** - * - * - * @generated - */ - @Override - public FD createFD() { - FDImpl fd = new FDImpl(); - return fd; - } - - /** - * - * - * @generated - */ - @Override - public Professional_Expenses_Deduction createProfessional_Expenses_Deduction() { - Professional_Expenses_DeductionImpl professional_Expenses_Deduction = new Professional_Expenses_DeductionImpl(); - return professional_Expenses_Deduction; - } - - /** - * - * - * @generated - */ - @Override - public FO createFO() { - FOImpl fo = new FOImpl(); - return fo; - } - - /** - * - * - * @generated - */ - @Override - public DS_for_Permanent_Expense createDS_for_Permanent_Expense() { - DS_for_Permanent_ExpenseImpl dS_for_Permanent_Expense = new DS_for_Permanent_ExpenseImpl(); - return dS_for_Permanent_Expense; - } - - /** - * - * - * @generated - */ - @Override - public DS createDS() { - DSImpl ds = new DSImpl(); - return ds; - } - - /** - * - * - * @generated - */ - @Override - public DS_for_Interest_Expense createDS_for_Interest_Expense() { - DS_for_Interest_ExpenseImpl dS_for_Interest_Expense = new DS_for_Interest_ExpenseImpl(); - return dS_for_Interest_Expense; - } - - /** - * - * - * @generated - */ - @Override - public DS_for_Health_and_Pension_Insurance createDS_for_Health_and_Pension_Insurance() { - DS_for_Health_and_Pension_InsuranceImpl dS_for_Health_and_Pension_Insurance = new DS_for_Health_and_Pension_InsuranceImpl(); - return dS_for_Health_and_Pension_Insurance; - } - - /** - * - * - * @generated - */ - @Override - public DS_for_Private_Insurance_and_Plan createDS_for_Private_Insurance_and_Plan() { - DS_for_Private_Insurance_and_PlanImpl dS_for_Private_Insurance_and_Plan = new DS_for_Private_Insurance_and_PlanImpl(); - return dS_for_Private_Insurance_and_Plan; - } - - /** - * - * - * @generated - */ - @Override - public DS_for_Loss_Carryforward createDS_for_Loss_Carryforward() { - DS_for_Loss_CarryforwardImpl dS_for_Loss_Carryforward = new DS_for_Loss_CarryforwardImpl(); - return dS_for_Loss_Carryforward; - } - - /** - * - * - * @generated - */ - @Override - public DS_for_Donation createDS_for_Donation() { - DS_for_DonationImpl dS_for_Donation = new DS_for_DonationImpl(); - return dS_for_Donation; - } - /** * * diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/TaxationPackageImpl.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/TaxationPackageImpl.java index c8a1400d..65a7541a 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/TaxationPackageImpl.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/impl/TaxationPackageImpl.java @@ -11,12 +11,6 @@ import TaxationWithRoot.Category_of_Permanent_Expense; import TaxationWithRoot.Category_of_Private_Insurance_and_Plan; import TaxationWithRoot.Constants; import TaxationWithRoot.Country; -import TaxationWithRoot.DS_for_Donation; -import TaxationWithRoot.DS_for_Health_and_Pension_Insurance; -import TaxationWithRoot.DS_for_Interest_Expense; -import TaxationWithRoot.DS_for_Loss_Carryforward; -import TaxationWithRoot.DS_for_Permanent_Expense; -import TaxationWithRoot.DS_for_Private_Insurance_and_Plan; import TaxationWithRoot.Dependent; import TaxationWithRoot.Dependent_Type; import TaxationWithRoot.Disability_Types; @@ -54,11 +48,9 @@ import TaxationWithRoot.Permanent_Expense; import TaxationWithRoot.Physical_Person; import TaxationWithRoot.Private_Insurance_and_Plan; import TaxationWithRoot.Professional_Expense; -import TaxationWithRoot.Professional_Expenses_Deduction; import TaxationWithRoot.Rentals_and_Leases_Income; import TaxationWithRoot.Resident_Tax_Payer; import TaxationWithRoot.Resource; -import TaxationWithRoot.Root; import TaxationWithRoot.Separation_Causes; import TaxationWithRoot.Special_Expense_DS; import TaxationWithRoot.Spousal_Expense_AC; @@ -341,76 +333,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ private EClass cisEClass = null; - /** - * - * - * @generated - */ - private EClass fdEClass = null; - - /** - * - * - * @generated - */ - private EClass professional_Expenses_DeductionEClass = null; - - /** - * - * - * @generated - */ - private EClass foEClass = null; - - /** - * - * - * @generated - */ - private EClass dS_for_Permanent_ExpenseEClass = null; - - /** - * - * - * @generated - */ - private EClass dsEClass = null; - - /** - * - * - * @generated - */ - private EClass dS_for_Interest_ExpenseEClass = null; - - /** - * - * - * @generated - */ - private EClass dS_for_Health_and_Pension_InsuranceEClass = null; - - /** - * - * - * @generated - */ - private EClass dS_for_Private_Insurance_and_PlanEClass = null; - - /** - * - * - * @generated - */ - private EClass dS_for_Loss_CarryforwardEClass = null; - - /** - * - * - * @generated - */ - private EClass dS_for_DonationEClass = null; - /** * * @@ -502,13 +424,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage */ private EClass resourceEClass = null; - /** - * - * - * @generated - */ - private EClass rootEClass = null; - /** * * @@ -2555,166 +2470,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return cisEClass; } - /** - * - * - * @generated - */ - @Override - public EClass getFD() { - return fdEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getFD_Distance_declared_in_january() { - return (EAttribute)fdEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getProfessional_Expenses_Deduction() { - return professional_Expenses_DeductionEClass; - } - - /** - * - * - * @generated - */ - @Override - public EClass getFO() { - return foEClass; - } - - /** - * - * - * @generated - */ - @Override - public EClass getDS_for_Permanent_Expense() { - return dS_for_Permanent_ExpenseEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getDS_for_Permanent_Expense_Permanent_expense_category() { - return (EAttribute)dS_for_Permanent_ExpenseEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getDS() { - return dsEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getDS_Maximum_deductible_amount() { - return (EAttribute)dsEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getDS_Id3() { - return (EAttribute)dsEClass.getEStructuralFeatures().get(1); - } - - /** - * - * - * @generated - */ - @Override - public EClass getDS_for_Interest_Expense() { - return dS_for_Interest_ExpenseEClass; - } - - /** - * - * - * @generated - */ - @Override - public EClass getDS_for_Health_and_Pension_Insurance() { - return dS_for_Health_and_Pension_InsuranceEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getDS_for_Health_and_Pension_Insurance_Insurance_category() { - return (EAttribute)dS_for_Health_and_Pension_InsuranceEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getDS_for_Private_Insurance_and_Plan() { - return dS_for_Private_Insurance_and_PlanEClass; - } - - /** - * - * - * @generated - */ - @Override - public EAttribute getDS_for_Private_Insurance_and_Plan_Private_insurance_and_plan_category() { - return (EAttribute)dS_for_Private_Insurance_and_PlanEClass.getEStructuralFeatures().get(0); - } - - /** - * - * - * @generated - */ - @Override - public EClass getDS_for_Loss_Carryforward() { - return dS_for_Loss_CarryforwardEClass; - } - - /** - * - * - * @generated - */ - @Override - public EClass getDS_for_Donation() { - return dS_for_DonationEClass; - } - /** * * @@ -2945,16 +2700,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage return (EReference)resourceEClass.getEStructuralFeatures().get(0); } - /** - * - * - * @generated - */ - @Override - public EClass getRoot() { - return rootEClass; - } - /** * * @@ -3358,32 +3103,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage cisEClass = createEClass(CIS); - fdEClass = createEClass(FD); - createEAttribute(fdEClass, FD__DISTANCE_DECLARED_IN_JANUARY); - - professional_Expenses_DeductionEClass = createEClass(PROFESSIONAL_EXPENSES_DEDUCTION); - - foEClass = createEClass(FO); - - dS_for_Permanent_ExpenseEClass = createEClass(DS_FOR_PERMANENT_EXPENSE); - createEAttribute(dS_for_Permanent_ExpenseEClass, DS_FOR_PERMANENT_EXPENSE__PERMANENT_EXPENSE_CATEGORY); - - dsEClass = createEClass(DS); - createEAttribute(dsEClass, DS__MAXIMUM_DEDUCTIBLE_AMOUNT); - createEAttribute(dsEClass, DS__ID3); - - dS_for_Interest_ExpenseEClass = createEClass(DS_FOR_INTEREST_EXPENSE); - - dS_for_Health_and_Pension_InsuranceEClass = createEClass(DS_FOR_HEALTH_AND_PENSION_INSURANCE); - createEAttribute(dS_for_Health_and_Pension_InsuranceEClass, DS_FOR_HEALTH_AND_PENSION_INSURANCE__INSURANCE_CATEGORY); - - dS_for_Private_Insurance_and_PlanEClass = createEClass(DS_FOR_PRIVATE_INSURANCE_AND_PLAN); - createEAttribute(dS_for_Private_Insurance_and_PlanEClass, DS_FOR_PRIVATE_INSURANCE_AND_PLAN__PRIVATE_INSURANCE_AND_PLAN_CATEGORY); - - dS_for_Loss_CarryforwardEClass = createEClass(DS_FOR_LOSS_CARRYFORWARD); - - dS_for_DonationEClass = createEClass(DS_FOR_DONATION); - permanent_ExpenseEClass = createEClass(PERMANENT_EXPENSE); createEAttribute(permanent_ExpenseEClass, PERMANENT_EXPENSE__CATEGORY); @@ -3420,8 +3139,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage resourceEClass = createEClass(RESOURCE); createEReference(resourceEClass, RESOURCE__CONTAINS); - rootEClass = createEClass(ROOT); - // Create enums grantorEEnum = createEEnum(GRANTOR); disability_TypesEEnum = createEEnum(DISABILITY_TYPES); @@ -3470,12 +3187,8 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage // Add supertypes to classes tax_PayerEClass.getESuperTypes().add(this.getPhysical_Person()); tax_PayerEClass.getESuperTypes().add(this.getTax_Case()); - tax_PayerEClass.getESuperTypes().add(this.getRoot()); - addressEClass.getESuperTypes().add(this.getRoot()); dependentEClass.getESuperTypes().add(this.getPhysical_Person()); householdEClass.getESuperTypes().add(this.getTax_Case()); - tax_CaseEClass.getESuperTypes().add(this.getRoot()); - income_Tax_CreditEClass.getESuperTypes().add(this.getRoot()); fiscal_AddressEClass.getESuperTypes().add(this.getAddress()); habitual_AddressEClass.getESuperTypes().add(this.getAddress()); marriage_RecordEClass.getESuperTypes().add(this.getLegal_Union_Record()); @@ -3493,16 +3206,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage cimEClass.getESuperTypes().add(this.getIncome_Tax_Credit()); cipEClass.getESuperTypes().add(this.getIncome_Tax_Credit()); cisEClass.getESuperTypes().add(this.getIncome_Tax_Credit()); - fdEClass.getESuperTypes().add(this.getProfessional_Expenses_Deduction()); - professional_Expenses_DeductionEClass.getESuperTypes().add(this.getRoot()); - foEClass.getESuperTypes().add(this.getProfessional_Expenses_Deduction()); - dS_for_Permanent_ExpenseEClass.getESuperTypes().add(this.getDS()); - dsEClass.getESuperTypes().add(this.getRoot()); - dS_for_Interest_ExpenseEClass.getESuperTypes().add(this.getDS()); - dS_for_Health_and_Pension_InsuranceEClass.getESuperTypes().add(this.getDS()); - dS_for_Private_Insurance_and_PlanEClass.getESuperTypes().add(this.getDS()); - dS_for_Loss_CarryforwardEClass.getESuperTypes().add(this.getDS()); - dS_for_DonationEClass.getESuperTypes().add(this.getDS()); permanent_ExpenseEClass.getESuperTypes().add(this.getSpecial_Expense_DS()); special_Expense_DSEClass.getESuperTypes().add(this.getExpense()); interest_ExpenseEClass.getESuperTypes().add(this.getSpecial_Expense_DS()); @@ -3741,32 +3444,6 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage initEClass(cisEClass, TaxationWithRoot.CIS.class, "CIS", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEClass(fdEClass, TaxationWithRoot.FD.class, "FD", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getFD_Distance_declared_in_january(), ecorePackage.getEDouble(), "distance_declared_in_january", null, 1, 1, TaxationWithRoot.FD.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(professional_Expenses_DeductionEClass, Professional_Expenses_Deduction.class, "Professional_Expenses_Deduction", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - - initEClass(foEClass, TaxationWithRoot.FO.class, "FO", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - - initEClass(dS_for_Permanent_ExpenseEClass, DS_for_Permanent_Expense.class, "DS_for_Permanent_Expense", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getDS_for_Permanent_Expense_Permanent_expense_category(), this.getCategory_of_Permanent_Expense(), "permanent_expense_category", null, 1, 1, DS_for_Permanent_Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(dsEClass, TaxationWithRoot.DS.class, "DS", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getDS_Maximum_deductible_amount(), ecorePackage.getEDouble(), "maximum_deductible_amount", null, 1, 1, TaxationWithRoot.DS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - initEAttribute(getDS_Id3(), ecorePackage.getEString(), "id3", null, 1, 1, TaxationWithRoot.DS.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, IS_ID, IS_UNIQUE, !IS_DERIVED, !IS_ORDERED); - - initEClass(dS_for_Interest_ExpenseEClass, DS_for_Interest_Expense.class, "DS_for_Interest_Expense", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - - initEClass(dS_for_Health_and_Pension_InsuranceEClass, DS_for_Health_and_Pension_Insurance.class, "DS_for_Health_and_Pension_Insurance", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getDS_for_Health_and_Pension_Insurance_Insurance_category(), this.getCategory_of_Health_and_Pension_Insurances(), "insurance_category", null, 1, 1, DS_for_Health_and_Pension_Insurance.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(dS_for_Private_Insurance_and_PlanEClass, DS_for_Private_Insurance_and_Plan.class, "DS_for_Private_Insurance_and_Plan", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEAttribute(getDS_for_Private_Insurance_and_Plan_Private_insurance_and_plan_category(), this.getCategory_of_Private_Insurance_and_Plan(), "private_insurance_and_plan_category", null, 1, 1, DS_for_Private_Insurance_and_Plan.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(dS_for_Loss_CarryforwardEClass, DS_for_Loss_Carryforward.class, "DS_for_Loss_Carryforward", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - - initEClass(dS_for_DonationEClass, DS_for_Donation.class, "DS_for_Donation", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEClass(permanent_ExpenseEClass, Permanent_Expense.class, "Permanent_Expense", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getPermanent_Expense_Category(), this.getCategory_of_Permanent_Expense(), "category", null, 1, 1, Permanent_Expense.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); @@ -3801,9 +3478,7 @@ public class TaxationPackageImpl extends EPackageImpl implements TaxationPackage initEClass(miscellaneous_Expense_FOEClass, Miscellaneous_Expense_FO.class, "Miscellaneous_Expense_FO", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(resourceEClass, Resource.class, "Resource", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); - initEReference(getResource_Contains(), this.getRoot(), null, "contains", null, 0, -1, Resource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); - - initEClass(rootEClass, Root.class, "Root", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); + initEReference(getResource_Contains(), this.getHousehold(), null, "contains", null, 0, -1, Resource.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); // Initialize enums and add enum literals initEEnum(grantorEEnum, Grantor.class, "Grantor"); diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/util/TaxationAdapterFactory.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/util/TaxationAdapterFactory.java index 639750ed..ed4a11ff 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/util/TaxationAdapterFactory.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/util/TaxationAdapterFactory.java @@ -212,46 +212,6 @@ public class TaxationAdapterFactory extends AdapterFactoryImpl { return createCISAdapter(); } @Override - public Adapter caseFD(FD object) { - return createFDAdapter(); - } - @Override - public Adapter caseProfessional_Expenses_Deduction(Professional_Expenses_Deduction object) { - return createProfessional_Expenses_DeductionAdapter(); - } - @Override - public Adapter caseFO(FO object) { - return createFOAdapter(); - } - @Override - public Adapter caseDS_for_Permanent_Expense(DS_for_Permanent_Expense object) { - return createDS_for_Permanent_ExpenseAdapter(); - } - @Override - public Adapter caseDS(DS object) { - return createDSAdapter(); - } - @Override - public Adapter caseDS_for_Interest_Expense(DS_for_Interest_Expense object) { - return createDS_for_Interest_ExpenseAdapter(); - } - @Override - public Adapter caseDS_for_Health_and_Pension_Insurance(DS_for_Health_and_Pension_Insurance object) { - return createDS_for_Health_and_Pension_InsuranceAdapter(); - } - @Override - public Adapter caseDS_for_Private_Insurance_and_Plan(DS_for_Private_Insurance_and_Plan object) { - return createDS_for_Private_Insurance_and_PlanAdapter(); - } - @Override - public Adapter caseDS_for_Loss_Carryforward(DS_for_Loss_Carryforward object) { - return createDS_for_Loss_CarryforwardAdapter(); - } - @Override - public Adapter caseDS_for_Donation(DS_for_Donation object) { - return createDS_for_DonationAdapter(); - } - @Override public Adapter casePermanent_Expense(Permanent_Expense object) { return createPermanent_ExpenseAdapter(); } @@ -304,10 +264,6 @@ public class TaxationAdapterFactory extends AdapterFactoryImpl { return createResourceAdapter(); } @Override - public Adapter caseRoot(Root object) { - return createRootAdapter(); - } - @Override public Adapter defaultCase(EObject object) { return createEObjectAdapter(); } @@ -831,146 +787,6 @@ public class TaxationAdapterFactory extends AdapterFactoryImpl { return null; } - /** - * Creates a new adapter for an object of class '{@link TaxationWithRoot.FD FD}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see TaxationWithRoot.FD - * @generated - */ - public Adapter createFDAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link TaxationWithRoot.Professional_Expenses_Deduction Professional Expenses Deduction}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see TaxationWithRoot.Professional_Expenses_Deduction - * @generated - */ - public Adapter createProfessional_Expenses_DeductionAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link TaxationWithRoot.FO FO}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see TaxationWithRoot.FO - * @generated - */ - public Adapter createFOAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link TaxationWithRoot.DS_for_Permanent_Expense DS for Permanent Expense}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see TaxationWithRoot.DS_for_Permanent_Expense - * @generated - */ - public Adapter createDS_for_Permanent_ExpenseAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link TaxationWithRoot.DS DS}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see TaxationWithRoot.DS - * @generated - */ - public Adapter createDSAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link TaxationWithRoot.DS_for_Interest_Expense DS for Interest Expense}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see TaxationWithRoot.DS_for_Interest_Expense - * @generated - */ - public Adapter createDS_for_Interest_ExpenseAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link TaxationWithRoot.DS_for_Health_and_Pension_Insurance DS for Health and Pension Insurance}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see TaxationWithRoot.DS_for_Health_and_Pension_Insurance - * @generated - */ - public Adapter createDS_for_Health_and_Pension_InsuranceAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link TaxationWithRoot.DS_for_Private_Insurance_and_Plan DS for Private Insurance and Plan}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see TaxationWithRoot.DS_for_Private_Insurance_and_Plan - * @generated - */ - public Adapter createDS_for_Private_Insurance_and_PlanAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link TaxationWithRoot.DS_for_Loss_Carryforward DS for Loss Carryforward}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see TaxationWithRoot.DS_for_Loss_Carryforward - * @generated - */ - public Adapter createDS_for_Loss_CarryforwardAdapter() { - return null; - } - - /** - * Creates a new adapter for an object of class '{@link TaxationWithRoot.DS_for_Donation DS for Donation}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see TaxationWithRoot.DS_for_Donation - * @generated - */ - public Adapter createDS_for_DonationAdapter() { - return null; - } - /** * Creates a new adapter for an object of class '{@link TaxationWithRoot.Permanent_Expense Permanent Expense}'. * @@ -1153,20 +969,6 @@ public class TaxationAdapterFactory extends AdapterFactoryImpl { return null; } - /** - * Creates a new adapter for an object of class '{@link TaxationWithRoot.Root Root}'. - * - * This default implementation returns null so that we can easily ignore cases; - * it's useful to ignore a case when inheritance will catch all the cases anyway. - * - * @return the new adapter. - * @see TaxationWithRoot.Root - * @generated - */ - public Adapter createRootAdapter() { - return null; - } - /** * Creates a new adapter for the default case. * diff --git a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/util/TaxationSwitch.java b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/util/TaxationSwitch.java index f5b4b681..cf021107 100644 --- a/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/util/TaxationSwitch.java +++ b/Tests/MODELS2020-CaseStudies/case.study.pledge.model/src/TaxationWithRoot/util/TaxationSwitch.java @@ -83,7 +83,6 @@ public class TaxationSwitch extends Switch { T result = caseTax_Payer(tax_Payer); if (result == null) result = casePhysical_Person(tax_Payer); if (result == null) result = caseTax_Case(tax_Payer); - if (result == null) result = caseRoot(tax_Payer); if (result == null) result = defaultCase(theEObject); return result; } @@ -96,7 +95,6 @@ public class TaxationSwitch extends Switch { case TaxationPackage.ADDRESS: { Address address = (Address)theEObject; T result = caseAddress(address); - if (result == null) result = caseRoot(address); if (result == null) result = defaultCase(theEObject); return result; } @@ -123,7 +121,6 @@ public class TaxationSwitch extends Switch { Household household = (Household)theEObject; T result = caseHousehold(household); if (result == null) result = caseTax_Case(household); - if (result == null) result = caseRoot(household); if (result == null) result = defaultCase(theEObject); return result; } @@ -142,7 +139,6 @@ public class TaxationSwitch extends Switch { case TaxationPackage.TAX_CASE: { Tax_Case tax_Case = (Tax_Case)theEObject; T result = caseTax_Case(tax_Case); - if (result == null) result = caseRoot(tax_Case); if (result == null) result = defaultCase(theEObject); return result; } @@ -173,7 +169,6 @@ public class TaxationSwitch extends Switch { case TaxationPackage.INCOME_TAX_CREDIT: { Income_Tax_Credit income_Tax_Credit = (Income_Tax_Credit)theEObject; T result = caseIncome_Tax_Credit(income_Tax_Credit); - if (result == null) result = caseRoot(income_Tax_Credit); if (result == null) result = defaultCase(theEObject); return result; } @@ -193,7 +188,6 @@ public class TaxationSwitch extends Switch { Fiscal_Address fiscal_Address = (Fiscal_Address)theEObject; T result = caseFiscal_Address(fiscal_Address); if (result == null) result = caseAddress(fiscal_Address); - if (result == null) result = caseRoot(fiscal_Address); if (result == null) result = defaultCase(theEObject); return result; } @@ -201,7 +195,6 @@ public class TaxationSwitch extends Switch { Habitual_Address habitual_Address = (Habitual_Address)theEObject; T result = caseHabitual_Address(habitual_Address); if (result == null) result = caseAddress(habitual_Address); - if (result == null) result = caseRoot(habitual_Address); if (result == null) result = defaultCase(theEObject); return result; } @@ -218,7 +211,6 @@ public class TaxationSwitch extends Switch { if (result == null) result = caseTax_Payer(non_Resident_Tax_Payer); if (result == null) result = casePhysical_Person(non_Resident_Tax_Payer); if (result == null) result = caseTax_Case(non_Resident_Tax_Payer); - if (result == null) result = caseRoot(non_Resident_Tax_Payer); if (result == null) result = defaultCase(theEObject); return result; } @@ -235,7 +227,6 @@ public class TaxationSwitch extends Switch { if (result == null) result = caseTax_Payer(resident_Tax_Payer); if (result == null) result = casePhysical_Person(resident_Tax_Payer); if (result == null) result = caseTax_Case(resident_Tax_Payer); - if (result == null) result = caseRoot(resident_Tax_Payer); if (result == null) result = defaultCase(theEObject); return result; } @@ -299,7 +290,6 @@ public class TaxationSwitch extends Switch { CIM cim = (CIM)theEObject; T result = caseCIM(cim); if (result == null) result = caseIncome_Tax_Credit(cim); - if (result == null) result = caseRoot(cim); if (result == null) result = defaultCase(theEObject); return result; } @@ -307,7 +297,6 @@ public class TaxationSwitch extends Switch { CIP cip = (CIP)theEObject; T result = caseCIP(cip); if (result == null) result = caseIncome_Tax_Credit(cip); - if (result == null) result = caseRoot(cip); if (result == null) result = defaultCase(theEObject); return result; } @@ -315,85 +304,6 @@ public class TaxationSwitch extends Switch { CIS cis = (CIS)theEObject; T result = caseCIS(cis); if (result == null) result = caseIncome_Tax_Credit(cis); - if (result == null) result = caseRoot(cis); - if (result == null) result = defaultCase(theEObject); - return result; - } - case TaxationPackage.FD: { - FD fd = (FD)theEObject; - T result = caseFD(fd); - if (result == null) result = caseProfessional_Expenses_Deduction(fd); - if (result == null) result = caseRoot(fd); - if (result == null) result = defaultCase(theEObject); - return result; - } - case TaxationPackage.PROFESSIONAL_EXPENSES_DEDUCTION: { - Professional_Expenses_Deduction professional_Expenses_Deduction = (Professional_Expenses_Deduction)theEObject; - T result = caseProfessional_Expenses_Deduction(professional_Expenses_Deduction); - if (result == null) result = caseRoot(professional_Expenses_Deduction); - if (result == null) result = defaultCase(theEObject); - return result; - } - case TaxationPackage.FO: { - FO fo = (FO)theEObject; - T result = caseFO(fo); - if (result == null) result = caseProfessional_Expenses_Deduction(fo); - if (result == null) result = caseRoot(fo); - if (result == null) result = defaultCase(theEObject); - return result; - } - case TaxationPackage.DS_FOR_PERMANENT_EXPENSE: { - DS_for_Permanent_Expense dS_for_Permanent_Expense = (DS_for_Permanent_Expense)theEObject; - T result = caseDS_for_Permanent_Expense(dS_for_Permanent_Expense); - if (result == null) result = caseDS(dS_for_Permanent_Expense); - if (result == null) result = caseRoot(dS_for_Permanent_Expense); - if (result == null) result = defaultCase(theEObject); - return result; - } - case TaxationPackage.DS: { - DS ds = (DS)theEObject; - T result = caseDS(ds); - if (result == null) result = caseRoot(ds); - if (result == null) result = defaultCase(theEObject); - return result; - } - case TaxationPackage.DS_FOR_INTEREST_EXPENSE: { - DS_for_Interest_Expense dS_for_Interest_Expense = (DS_for_Interest_Expense)theEObject; - T result = caseDS_for_Interest_Expense(dS_for_Interest_Expense); - if (result == null) result = caseDS(dS_for_Interest_Expense); - if (result == null) result = caseRoot(dS_for_Interest_Expense); - if (result == null) result = defaultCase(theEObject); - return result; - } - case TaxationPackage.DS_FOR_HEALTH_AND_PENSION_INSURANCE: { - DS_for_Health_and_Pension_Insurance dS_for_Health_and_Pension_Insurance = (DS_for_Health_and_Pension_Insurance)theEObject; - T result = caseDS_for_Health_and_Pension_Insurance(dS_for_Health_and_Pension_Insurance); - if (result == null) result = caseDS(dS_for_Health_and_Pension_Insurance); - if (result == null) result = caseRoot(dS_for_Health_and_Pension_Insurance); - if (result == null) result = defaultCase(theEObject); - return result; - } - case TaxationPackage.DS_FOR_PRIVATE_INSURANCE_AND_PLAN: { - DS_for_Private_Insurance_and_Plan dS_for_Private_Insurance_and_Plan = (DS_for_Private_Insurance_and_Plan)theEObject; - T result = caseDS_for_Private_Insurance_and_Plan(dS_for_Private_Insurance_and_Plan); - if (result == null) result = caseDS(dS_for_Private_Insurance_and_Plan); - if (result == null) result = caseRoot(dS_for_Private_Insurance_and_Plan); - if (result == null) result = defaultCase(theEObject); - return result; - } - case TaxationPackage.DS_FOR_LOSS_CARRYFORWARD: { - DS_for_Loss_Carryforward dS_for_Loss_Carryforward = (DS_for_Loss_Carryforward)theEObject; - T result = caseDS_for_Loss_Carryforward(dS_for_Loss_Carryforward); - if (result == null) result = caseDS(dS_for_Loss_Carryforward); - if (result == null) result = caseRoot(dS_for_Loss_Carryforward); - if (result == null) result = defaultCase(theEObject); - return result; - } - case TaxationPackage.DS_FOR_DONATION: { - DS_for_Donation dS_for_Donation = (DS_for_Donation)theEObject; - T result = caseDS_for_Donation(dS_for_Donation); - if (result == null) result = caseDS(dS_for_Donation); - if (result == null) result = caseRoot(dS_for_Donation); if (result == null) result = defaultCase(theEObject); return result; } @@ -495,12 +405,6 @@ public class TaxationSwitch extends Switch { if (result == null) result = defaultCase(theEObject); return result; } - case TaxationPackage.ROOT: { - Root root = (Root)theEObject; - T result = caseRoot(root); - if (result == null) result = defaultCase(theEObject); - return result; - } default: return defaultCase(theEObject); } } @@ -1045,156 +949,6 @@ public class TaxationSwitch extends Switch { return null; } - /** - * Returns the result of interpreting the object as an instance of 'FD'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'FD'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseFD(FD object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'Professional Expenses Deduction'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Professional Expenses Deduction'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseProfessional_Expenses_Deduction(Professional_Expenses_Deduction object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'FO'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'FO'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseFO(FO object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'DS for Permanent Expense'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'DS for Permanent Expense'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseDS_for_Permanent_Expense(DS_for_Permanent_Expense object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'DS'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'DS'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseDS(DS object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'DS for Interest Expense'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'DS for Interest Expense'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseDS_for_Interest_Expense(DS_for_Interest_Expense object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'DS for Health and Pension Insurance'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'DS for Health and Pension Insurance'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseDS_for_Health_and_Pension_Insurance(DS_for_Health_and_Pension_Insurance object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'DS for Private Insurance and Plan'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'DS for Private Insurance and Plan'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseDS_for_Private_Insurance_and_Plan(DS_for_Private_Insurance_and_Plan object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'DS for Loss Carryforward'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'DS for Loss Carryforward'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseDS_for_Loss_Carryforward(DS_for_Loss_Carryforward object) { - return null; - } - - /** - * Returns the result of interpreting the object as an instance of 'DS for Donation'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'DS for Donation'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseDS_for_Donation(DS_for_Donation object) { - return null; - } - /** * Returns the result of interpreting the object as an instance of 'Permanent Expense'. * @@ -1390,21 +1144,6 @@ public class TaxationSwitch extends Switch { return null; } - /** - * Returns the result of interpreting the object as an instance of 'Root'. - * - * This implementation returns null; - * returning a non-null result will terminate the switch. - * - * @param object the target of the switch. - * @return the result of interpreting the object as an instance of 'Root'. - * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) - * @generated - */ - public T caseRoot(Root object) { - return null; - } - /** * Returns the result of interpreting the object as an instance of 'EObject'. * -- cgit v1.2.3-70-g09d2