/** */ package net.certware.argument.language.l.impl; import net.certware.argument.language.l.Addition; import net.certware.argument.language.l.AndSentence; import net.certware.argument.language.l.ArithmeticLiteral; import net.certware.argument.language.l.ArithmeticTerm; import net.certware.argument.language.l.Atom; import net.certware.argument.language.l.BasicAtom; import net.certware.argument.language.l.BasicPredicateAtom; import net.certware.argument.language.l.BasicTerm; import net.certware.argument.language.l.BasicTerms; import net.certware.argument.language.l.Bound; import net.certware.argument.language.l.BuiltInAtom; import net.certware.argument.language.l.CardinalityConstraint; import net.certware.argument.language.l.ConstantDeclaration; import net.certware.argument.language.l.ExistentialQuantifiedTerm; import net.certware.argument.language.l.FunctionalTerm; import net.certware.argument.language.l.GroundAddition; import net.certware.argument.language.l.GroundArithmeticLiteral; import net.certware.argument.language.l.GroundArithmeticTerm; import net.certware.argument.language.l.GroundFunctionalTerm; import net.certware.argument.language.l.GroundMultiplication; import net.certware.argument.language.l.GroundTerm; import net.certware.argument.language.l.GroundTerms; import net.certware.argument.language.l.Head; import net.certware.argument.language.l.LFactory; import net.certware.argument.language.l.LPackage; import net.certware.argument.language.l.Limit; import net.certware.argument.language.l.MaybeLiteral; import net.certware.argument.language.l.Multiplication; import net.certware.argument.language.l.OrSentence; import net.certware.argument.language.l.PredicateAtom; import net.certware.argument.language.l.Program; import net.certware.argument.language.l.QuantifiedTerm; import net.certware.argument.language.l.Range; import net.certware.argument.language.l.Rule; import net.certware.argument.language.l.Sentence; import net.certware.argument.language.l.SentenceExpr; import net.certware.argument.language.l.SentenceLiteral; import net.certware.argument.language.l.Set; import net.certware.argument.language.l.SetAddition; import net.certware.argument.language.l.SetConstruct; import net.certware.argument.language.l.SetExpression; import net.certware.argument.language.l.SetMultiplication; import net.certware.argument.language.l.Statement; import net.certware.argument.language.l.TVar; import net.certware.argument.language.l.TVars; import net.certware.argument.language.l.Term; import net.certware.argument.language.l.Terms; import net.certware.argument.language.l.TypeDeclaration; import net.certware.argument.language.l.TypeId; import net.certware.argument.language.l.TypedVariable; import net.certware.argument.language.l.UniversalQuantifiedTerm; import net.certware.argument.language.l.Variable; import net.certware.argument.language.l.pAndSentence; import net.certware.argument.language.l.pOrSentence; import net.certware.argument.language.l.pSentence; import net.certware.argument.language.l.pSentenceLiteral; import org.eclipse.emf.ecore.EAttribute; import org.eclipse.emf.ecore.EClass; import org.eclipse.emf.ecore.EPackage; import org.eclipse.emf.ecore.EReference; import org.eclipse.emf.ecore.impl.EPackageImpl; /** * <!-- begin-user-doc --> * An implementation of the model <b>Package</b>. * <!-- end-user-doc --> * @generated */ public class LPackageImpl extends EPackageImpl implements LPackage { /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass programEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass basicTermEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass variableEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass typedVariableEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass arithmeticTermEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass arithmeticLiteralEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass groundArithmeticTermEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass groundArithmeticLiteralEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass functionalTermEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass groundFunctionalTermEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass basicTermsEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass groundTermsEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass groundTermEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass quantifiedTermEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass universalQuantifiedTermEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass existentialQuantifiedTermEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass termEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass termsEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass constantDeclarationEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass typeIdEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass typeDeclarationEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass limitEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass setEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass rangeEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass setExpressionEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass setConstructEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass tVarsEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass tVarEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass atomEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass predicateAtomEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass basicPredicateAtomEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass builtInAtomEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass basicAtomEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass sentenceEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass sentenceExprEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass sentenceLiteralEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass pSentenceEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass pSentenceLiteralEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass maybeLiteralEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass cardinalityConstraintEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass boundEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass ruleEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass headEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass statementEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass additionEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass multiplicationEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass groundAdditionEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass groundMultiplicationEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass setAdditionEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass setMultiplicationEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass orSentenceEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass andSentenceEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass pOrSentenceEClass = null; /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private EClass pAndSentenceEClass = null; /** * Creates an instance of the model <b>Package</b>, registered with * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package * package URI value. * <p>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. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see org.eclipse.emf.ecore.EPackage.Registry * @see net.certware.argument.language.l.LPackage#eNS_URI * @see #init() * @generated */ private LPackageImpl() { super(eNS_URI, LFactory.eINSTANCE); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ private static boolean isInited = false; /** * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. * * <p>This method is used to initialize {@link LPackage#eINSTANCE} when that field is accessed. * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @see #eNS_URI * @see #createPackageContents() * @see #initializePackageContents() * @generated */ public static LPackage init() { if (isInited) return (LPackage)EPackage.Registry.INSTANCE.getEPackage(LPackage.eNS_URI); // Obtain or create and register package LPackageImpl theLPackage = (LPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof LPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new LPackageImpl()); isInited = true; // Create package meta-data objects theLPackage.createPackageContents(); // Initialize created meta-data theLPackage.initializePackageContents(); // Mark meta-data to indicate it can't be changed theLPackage.freeze(); // Update the registry and return the package EPackage.Registry.INSTANCE.put(LPackage.eNS_URI, theLPackage); return theLPackage; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getProgram() { return programEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getProgram_Statements() { return (EReference)programEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getBasicTerm() { return basicTermEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getVariable() { return variableEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getVariable_Identifier() { return (EAttribute)variableEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getTypedVariable() { return typedVariableEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getTypedVariable_Name() { return (EAttribute)typedVariableEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getTypedVariable_Var() { return (EReference)typedVariableEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getArithmeticTerm() { return arithmeticTermEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getArithmeticTerm_Term() { return (EReference)arithmeticTermEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getArithmeticTerm_Lhs() { return (EReference)arithmeticTermEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getArithmeticTerm_Rhs() { return (EReference)arithmeticTermEClass.getEStructuralFeatures().get(2); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getArithmeticLiteral() { return arithmeticLiteralEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getArithmeticLiteral_V() { return (EReference)arithmeticLiteralEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getArithmeticLiteral_Tv() { return (EReference)arithmeticLiteralEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getArithmeticLiteral_Const() { return (EAttribute)arithmeticLiteralEClass.getEStructuralFeatures().get(2); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getArithmeticLiteral_Value() { return (EAttribute)arithmeticLiteralEClass.getEStructuralFeatures().get(3); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getGroundArithmeticTerm() { return groundArithmeticTermEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getGroundArithmeticLiteral() { return groundArithmeticLiteralEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getGroundArithmeticLiteral_Identifier() { return (EAttribute)groundArithmeticLiteralEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getGroundArithmeticLiteral_Value() { return (EAttribute)groundArithmeticLiteralEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getFunctionalTerm() { return functionalTermEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getGroundFunctionalTerm() { return groundFunctionalTermEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getBasicTerms() { return basicTermsEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getBasicTerms_Car() { return (EReference)basicTermsEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getBasicTerms_Cdr() { return (EReference)basicTermsEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getGroundTerms() { return groundTermsEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getGroundTerms_Car() { return (EReference)groundTermsEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getGroundTerms_Cdr() { return (EReference)groundTermsEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getGroundTerm() { return groundTermEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getQuantifiedTerm() { return quantifiedTermEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getQuantifiedTerm_Name() { return (EReference)quantifiedTermEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getUniversalQuantifiedTerm() { return universalQuantifiedTermEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getExistentialQuantifiedTerm() { return existentialQuantifiedTermEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getTerm() { return termEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getTerms() { return termsEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getTerms_Car() { return (EReference)termsEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getTerms_Cdr() { return (EReference)termsEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getConstantDeclaration() { return constantDeclarationEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getConstantDeclaration_Name() { return (EAttribute)constantDeclarationEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getConstantDeclaration_Cv() { return (EReference)constantDeclarationEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getTypeId() { return typeIdEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getTypeId_Name() { return (EAttribute)typeIdEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getTypeDeclaration() { return typeDeclarationEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getTypeDeclaration_Name() { return (EReference)typeDeclarationEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getTypeDeclaration_Exp() { return (EReference)typeDeclarationEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getLimit() { return limitEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getLimit_Cv() { return (EReference)limitEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getSet() { return setEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getSet_Lhs() { return (EAttribute)setEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getSet_Terms() { return (EReference)setEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getRange() { return rangeEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getRange_Lhs() { return (EReference)rangeEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getRange_Rhs() { return (EReference)rangeEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getSetExpression() { return setExpressionEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getSetConstruct() { return setConstructEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getSetConstruct_Lhs() { return (EReference)setConstructEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getSetConstruct_Rhs() { return (EReference)setConstructEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getTVars() { return tVarsEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getTVars_Car() { return (EReference)tVarsEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getTVars_Cdr() { return (EReference)tVarsEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getTVar() { return tVarEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getTVar_Var() { return (EReference)tVarEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getTVar_Id() { return (EReference)tVarEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getAtom() { return atomEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getPredicateAtom() { return predicateAtomEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getPredicateAtom_Fid() { return (EAttribute)predicateAtomEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getPredicateAtom_Terms() { return (EReference)predicateAtomEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getBasicPredicateAtom() { return basicPredicateAtomEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getBasicPredicateAtom_Fid() { return (EAttribute)basicPredicateAtomEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getBasicPredicateAtom_Terms() { return (EReference)basicPredicateAtomEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getBuiltInAtom() { return builtInAtomEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getBuiltInAtom_Lhs() { return (EReference)builtInAtomEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getBuiltInAtom_Op() { return (EAttribute)builtInAtomEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getBuiltInAtom_Rhs() { return (EReference)builtInAtomEClass.getEStructuralFeatures().get(2); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getBasicAtom() { return basicAtomEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getSentence() { return sentenceEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getSentenceExpr() { return sentenceExprEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getSentenceLiteral() { return sentenceLiteralEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getpSentence() { return pSentenceEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getpSentenceLiteral() { return pSentenceLiteralEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getMaybeLiteral() { return maybeLiteralEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getCardinalityConstraint() { return cardinalityConstraintEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getCardinalityConstraint_Lhs() { return (EReference)cardinalityConstraintEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getCardinalityConstraint_Atom() { return (EReference)cardinalityConstraintEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getCardinalityConstraint_Rhs() { return (EReference)cardinalityConstraintEClass.getEStructuralFeatures().get(2); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getBound() { return boundEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getBound_Av() { return (EReference)boundEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getRule() { return ruleEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getRule_Head() { return (EReference)ruleEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EAttribute getRule_Condition() { return (EAttribute)ruleEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getRule_Body() { return (EReference)ruleEClass.getEStructuralFeatures().get(2); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getHead() { return headEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getStatement() { return statementEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getAddition() { return additionEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getMultiplication() { return multiplicationEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getGroundAddition() { return groundAdditionEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getGroundMultiplication() { return groundMultiplicationEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getSetAddition() { return setAdditionEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getSetAddition_Left() { return (EReference)setAdditionEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getSetAddition_Right() { return (EReference)setAdditionEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getSetMultiplication() { return setMultiplicationEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getSetMultiplication_Left() { return (EReference)setMultiplicationEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getSetMultiplication_Right() { return (EReference)setMultiplicationEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getOrSentence() { return orSentenceEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getOrSentence_Left() { return (EReference)orSentenceEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getOrSentence_Right() { return (EReference)orSentenceEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getAndSentence() { return andSentenceEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getAndSentence_Left() { return (EReference)andSentenceEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getAndSentence_Right() { return (EReference)andSentenceEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getpOrSentence() { return pOrSentenceEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getpOrSentence_Left() { return (EReference)pOrSentenceEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getpOrSentence_Right() { return (EReference)pOrSentenceEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EClass getpAndSentence() { return pAndSentenceEClass; } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getpAndSentence_Left() { return (EReference)pAndSentenceEClass.getEStructuralFeatures().get(0); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public EReference getpAndSentence_Right() { return (EReference)pAndSentenceEClass.getEStructuralFeatures().get(1); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public LFactory getLFactory() { return (LFactory)getEFactoryInstance(); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @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. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @generated */ public void createPackageContents() { if (isCreated) return; isCreated = true; // Create classes and their features programEClass = createEClass(PROGRAM); createEReference(programEClass, PROGRAM__STATEMENTS); basicTermEClass = createEClass(BASIC_TERM); variableEClass = createEClass(VARIABLE); createEAttribute(variableEClass, VARIABLE__IDENTIFIER); typedVariableEClass = createEClass(TYPED_VARIABLE); createEAttribute(typedVariableEClass, TYPED_VARIABLE__NAME); createEReference(typedVariableEClass, TYPED_VARIABLE__VAR); arithmeticTermEClass = createEClass(ARITHMETIC_TERM); createEReference(arithmeticTermEClass, ARITHMETIC_TERM__TERM); createEReference(arithmeticTermEClass, ARITHMETIC_TERM__LHS); createEReference(arithmeticTermEClass, ARITHMETIC_TERM__RHS); arithmeticLiteralEClass = createEClass(ARITHMETIC_LITERAL); createEReference(arithmeticLiteralEClass, ARITHMETIC_LITERAL__V); createEReference(arithmeticLiteralEClass, ARITHMETIC_LITERAL__TV); createEAttribute(arithmeticLiteralEClass, ARITHMETIC_LITERAL__CONST); createEAttribute(arithmeticLiteralEClass, ARITHMETIC_LITERAL__VALUE); groundArithmeticTermEClass = createEClass(GROUND_ARITHMETIC_TERM); groundArithmeticLiteralEClass = createEClass(GROUND_ARITHMETIC_LITERAL); createEAttribute(groundArithmeticLiteralEClass, GROUND_ARITHMETIC_LITERAL__IDENTIFIER); createEAttribute(groundArithmeticLiteralEClass, GROUND_ARITHMETIC_LITERAL__VALUE); functionalTermEClass = createEClass(FUNCTIONAL_TERM); groundFunctionalTermEClass = createEClass(GROUND_FUNCTIONAL_TERM); basicTermsEClass = createEClass(BASIC_TERMS); createEReference(basicTermsEClass, BASIC_TERMS__CAR); createEReference(basicTermsEClass, BASIC_TERMS__CDR); groundTermsEClass = createEClass(GROUND_TERMS); createEReference(groundTermsEClass, GROUND_TERMS__CAR); createEReference(groundTermsEClass, GROUND_TERMS__CDR); groundTermEClass = createEClass(GROUND_TERM); quantifiedTermEClass = createEClass(QUANTIFIED_TERM); createEReference(quantifiedTermEClass, QUANTIFIED_TERM__NAME); universalQuantifiedTermEClass = createEClass(UNIVERSAL_QUANTIFIED_TERM); existentialQuantifiedTermEClass = createEClass(EXISTENTIAL_QUANTIFIED_TERM); termEClass = createEClass(TERM); termsEClass = createEClass(TERMS); createEReference(termsEClass, TERMS__CAR); createEReference(termsEClass, TERMS__CDR); constantDeclarationEClass = createEClass(CONSTANT_DECLARATION); createEAttribute(constantDeclarationEClass, CONSTANT_DECLARATION__NAME); createEReference(constantDeclarationEClass, CONSTANT_DECLARATION__CV); typeIdEClass = createEClass(TYPE_ID); createEAttribute(typeIdEClass, TYPE_ID__NAME); typeDeclarationEClass = createEClass(TYPE_DECLARATION); createEReference(typeDeclarationEClass, TYPE_DECLARATION__NAME); createEReference(typeDeclarationEClass, TYPE_DECLARATION__EXP); limitEClass = createEClass(LIMIT); createEReference(limitEClass, LIMIT__CV); setEClass = createEClass(SET); createEAttribute(setEClass, SET__LHS); createEReference(setEClass, SET__TERMS); rangeEClass = createEClass(RANGE); createEReference(rangeEClass, RANGE__LHS); createEReference(rangeEClass, RANGE__RHS); setExpressionEClass = createEClass(SET_EXPRESSION); setConstructEClass = createEClass(SET_CONSTRUCT); createEReference(setConstructEClass, SET_CONSTRUCT__LHS); createEReference(setConstructEClass, SET_CONSTRUCT__RHS); tVarsEClass = createEClass(TVARS); createEReference(tVarsEClass, TVARS__CAR); createEReference(tVarsEClass, TVARS__CDR); tVarEClass = createEClass(TVAR); createEReference(tVarEClass, TVAR__VAR); createEReference(tVarEClass, TVAR__ID); atomEClass = createEClass(ATOM); predicateAtomEClass = createEClass(PREDICATE_ATOM); createEAttribute(predicateAtomEClass, PREDICATE_ATOM__FID); createEReference(predicateAtomEClass, PREDICATE_ATOM__TERMS); basicPredicateAtomEClass = createEClass(BASIC_PREDICATE_ATOM); createEAttribute(basicPredicateAtomEClass, BASIC_PREDICATE_ATOM__FID); createEReference(basicPredicateAtomEClass, BASIC_PREDICATE_ATOM__TERMS); builtInAtomEClass = createEClass(BUILT_IN_ATOM); createEReference(builtInAtomEClass, BUILT_IN_ATOM__LHS); createEAttribute(builtInAtomEClass, BUILT_IN_ATOM__OP); createEReference(builtInAtomEClass, BUILT_IN_ATOM__RHS); basicAtomEClass = createEClass(BASIC_ATOM); sentenceEClass = createEClass(SENTENCE); sentenceExprEClass = createEClass(SENTENCE_EXPR); sentenceLiteralEClass = createEClass(SENTENCE_LITERAL); pSentenceEClass = createEClass(PSENTENCE); pSentenceLiteralEClass = createEClass(PSENTENCE_LITERAL); maybeLiteralEClass = createEClass(MAYBE_LITERAL); cardinalityConstraintEClass = createEClass(CARDINALITY_CONSTRAINT); createEReference(cardinalityConstraintEClass, CARDINALITY_CONSTRAINT__LHS); createEReference(cardinalityConstraintEClass, CARDINALITY_CONSTRAINT__ATOM); createEReference(cardinalityConstraintEClass, CARDINALITY_CONSTRAINT__RHS); boundEClass = createEClass(BOUND); createEReference(boundEClass, BOUND__AV); ruleEClass = createEClass(RULE); createEReference(ruleEClass, RULE__HEAD); createEAttribute(ruleEClass, RULE__CONDITION); createEReference(ruleEClass, RULE__BODY); headEClass = createEClass(HEAD); statementEClass = createEClass(STATEMENT); additionEClass = createEClass(ADDITION); multiplicationEClass = createEClass(MULTIPLICATION); groundAdditionEClass = createEClass(GROUND_ADDITION); groundMultiplicationEClass = createEClass(GROUND_MULTIPLICATION); setAdditionEClass = createEClass(SET_ADDITION); createEReference(setAdditionEClass, SET_ADDITION__LEFT); createEReference(setAdditionEClass, SET_ADDITION__RIGHT); setMultiplicationEClass = createEClass(SET_MULTIPLICATION); createEReference(setMultiplicationEClass, SET_MULTIPLICATION__LEFT); createEReference(setMultiplicationEClass, SET_MULTIPLICATION__RIGHT); orSentenceEClass = createEClass(OR_SENTENCE); createEReference(orSentenceEClass, OR_SENTENCE__LEFT); createEReference(orSentenceEClass, OR_SENTENCE__RIGHT); andSentenceEClass = createEClass(AND_SENTENCE); createEReference(andSentenceEClass, AND_SENTENCE__LEFT); createEReference(andSentenceEClass, AND_SENTENCE__RIGHT); pOrSentenceEClass = createEClass(POR_SENTENCE); createEReference(pOrSentenceEClass, POR_SENTENCE__LEFT); createEReference(pOrSentenceEClass, POR_SENTENCE__RIGHT); pAndSentenceEClass = createEClass(PAND_SENTENCE); createEReference(pAndSentenceEClass, PAND_SENTENCE__LEFT); createEReference(pAndSentenceEClass, PAND_SENTENCE__RIGHT); } /** * <!-- begin-user-doc --> * <!-- end-user-doc --> * @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. * <!-- begin-user-doc --> * <!-- end-user-doc --> * @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 basicTermEClass.getESuperTypes().add(this.getTerm()); typedVariableEClass.getESuperTypes().add(this.getBasicTerm()); arithmeticTermEClass.getESuperTypes().add(this.getBasicTerm()); arithmeticTermEClass.getESuperTypes().add(this.getGroundArithmeticTerm()); groundArithmeticTermEClass.getESuperTypes().add(this.getGroundTerm()); functionalTermEClass.getESuperTypes().add(this.getBasicTerm()); groundFunctionalTermEClass.getESuperTypes().add(this.getGroundTerm()); groundTermsEClass.getESuperTypes().add(this.getGroundFunctionalTerm()); quantifiedTermEClass.getESuperTypes().add(this.getTerm()); universalQuantifiedTermEClass.getESuperTypes().add(this.getQuantifiedTerm()); existentialQuantifiedTermEClass.getESuperTypes().add(this.getQuantifiedTerm()); termsEClass.getESuperTypes().add(this.getFunctionalTerm()); constantDeclarationEClass.getESuperTypes().add(this.getStatement()); typeDeclarationEClass.getESuperTypes().add(this.getStatement()); setEClass.getESuperTypes().add(this.getSetExpression()); rangeEClass.getESuperTypes().add(this.getSetExpression()); setConstructEClass.getESuperTypes().add(this.getSetExpression()); atomEClass.getESuperTypes().add(this.getSentenceLiteral()); predicateAtomEClass.getESuperTypes().add(this.getAtom()); predicateAtomEClass.getESuperTypes().add(this.getpSentenceLiteral()); basicPredicateAtomEClass.getESuperTypes().add(this.getBasicAtom()); basicPredicateAtomEClass.getESuperTypes().add(this.getpSentenceLiteral()); basicPredicateAtomEClass.getESuperTypes().add(this.getMaybeLiteral()); builtInAtomEClass.getESuperTypes().add(this.getAtom()); builtInAtomEClass.getESuperTypes().add(this.getBasicAtom()); basicAtomEClass.getESuperTypes().add(this.getSentenceLiteral()); sentenceExprEClass.getESuperTypes().add(this.getSentence()); sentenceExprEClass.getESuperTypes().add(this.getpSentence()); sentenceLiteralEClass.getESuperTypes().add(this.getSentenceExpr()); pSentenceEClass.getESuperTypes().add(this.getHead()); pSentenceLiteralEClass.getESuperTypes().add(this.getSentenceExpr()); maybeLiteralEClass.getESuperTypes().add(this.getHead()); cardinalityConstraintEClass.getESuperTypes().add(this.getHead()); ruleEClass.getESuperTypes().add(this.getStatement()); additionEClass.getESuperTypes().add(this.getArithmeticTerm()); multiplicationEClass.getESuperTypes().add(this.getArithmeticTerm()); groundAdditionEClass.getESuperTypes().add(this.getArithmeticTerm()); groundMultiplicationEClass.getESuperTypes().add(this.getArithmeticTerm()); setAdditionEClass.getESuperTypes().add(this.getSetExpression()); setMultiplicationEClass.getESuperTypes().add(this.getSetExpression()); orSentenceEClass.getESuperTypes().add(this.getSentenceExpr()); andSentenceEClass.getESuperTypes().add(this.getSentenceExpr()); pOrSentenceEClass.getESuperTypes().add(this.getSentenceExpr()); pAndSentenceEClass.getESuperTypes().add(this.getSentenceExpr()); // Initialize classes and features; add operations and parameters initEClass(programEClass, Program.class, "Program", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getProgram_Statements(), this.getStatement(), null, "statements", null, 0, -1, Program.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(basicTermEClass, BasicTerm.class, "BasicTerm", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(variableEClass, Variable.class, "Variable", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getVariable_Identifier(), ecorePackage.getEString(), "identifier", null, 0, 1, Variable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(typedVariableEClass, TypedVariable.class, "TypedVariable", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getTypedVariable_Name(), ecorePackage.getEString(), "name", null, 0, 1, TypedVariable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getTypedVariable_Var(), this.getVariable(), null, "var", null, 0, 1, TypedVariable.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(arithmeticTermEClass, ArithmeticTerm.class, "ArithmeticTerm", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getArithmeticTerm_Term(), ecorePackage.getEObject(), null, "term", null, 0, 1, ArithmeticTerm.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getArithmeticTerm_Lhs(), this.getArithmeticTerm(), null, "lhs", null, 0, 1, ArithmeticTerm.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getArithmeticTerm_Rhs(), this.getArithmeticTerm(), null, "rhs", null, 0, 1, ArithmeticTerm.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(arithmeticLiteralEClass, ArithmeticLiteral.class, "ArithmeticLiteral", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getArithmeticLiteral_V(), this.getVariable(), null, "v", null, 0, 1, ArithmeticLiteral.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getArithmeticLiteral_Tv(), this.getTypedVariable(), null, "tv", null, 0, 1, ArithmeticLiteral.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getArithmeticLiteral_Const(), ecorePackage.getEString(), "const", null, 0, 1, ArithmeticLiteral.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getArithmeticLiteral_Value(), ecorePackage.getEString(), "value", null, 0, 1, ArithmeticLiteral.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(groundArithmeticTermEClass, GroundArithmeticTerm.class, "GroundArithmeticTerm", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(groundArithmeticLiteralEClass, GroundArithmeticLiteral.class, "GroundArithmeticLiteral", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getGroundArithmeticLiteral_Identifier(), ecorePackage.getEString(), "identifier", null, 0, 1, GroundArithmeticLiteral.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getGroundArithmeticLiteral_Value(), ecorePackage.getEString(), "value", null, 0, 1, GroundArithmeticLiteral.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(functionalTermEClass, FunctionalTerm.class, "FunctionalTerm", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(groundFunctionalTermEClass, GroundFunctionalTerm.class, "GroundFunctionalTerm", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(basicTermsEClass, BasicTerms.class, "BasicTerms", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getBasicTerms_Car(), this.getBasicTerm(), null, "car", null, 0, 1, BasicTerms.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getBasicTerms_Cdr(), this.getBasicTerm(), null, "cdr", null, 0, -1, BasicTerms.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(groundTermsEClass, GroundTerms.class, "GroundTerms", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getGroundTerms_Car(), this.getGroundTerm(), null, "car", null, 0, 1, GroundTerms.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getGroundTerms_Cdr(), this.getGroundTerm(), null, "cdr", null, 0, -1, GroundTerms.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(groundTermEClass, GroundTerm.class, "GroundTerm", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(quantifiedTermEClass, QuantifiedTerm.class, "QuantifiedTerm", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getQuantifiedTerm_Name(), this.getTypeId(), null, "name", null, 0, 1, QuantifiedTerm.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(universalQuantifiedTermEClass, UniversalQuantifiedTerm.class, "UniversalQuantifiedTerm", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(existentialQuantifiedTermEClass, ExistentialQuantifiedTerm.class, "ExistentialQuantifiedTerm", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(termEClass, Term.class, "Term", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(termsEClass, Terms.class, "Terms", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getTerms_Car(), this.getTerm(), null, "car", null, 0, 1, Terms.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getTerms_Cdr(), this.getTerm(), null, "cdr", null, 0, -1, Terms.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(constantDeclarationEClass, ConstantDeclaration.class, "ConstantDeclaration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getConstantDeclaration_Name(), ecorePackage.getEString(), "name", null, 0, 1, ConstantDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getConstantDeclaration_Cv(), this.getGroundArithmeticTerm(), null, "cv", null, 0, 1, ConstantDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(typeIdEClass, TypeId.class, "TypeId", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getTypeId_Name(), ecorePackage.getEString(), "name", null, 0, 1, TypeId.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(typeDeclarationEClass, TypeDeclaration.class, "TypeDeclaration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getTypeDeclaration_Name(), this.getTypeId(), null, "name", null, 0, 1, TypeDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getTypeDeclaration_Exp(), this.getSetExpression(), null, "exp", null, 0, 1, TypeDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(limitEClass, Limit.class, "Limit", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getLimit_Cv(), this.getGroundArithmeticTerm(), null, "cv", null, 0, 1, Limit.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(setEClass, Set.class, "Set", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getSet_Lhs(), ecorePackage.getEString(), "lhs", null, 0, 1, Set.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getSet_Terms(), this.getGroundTerms(), null, "terms", null, 0, 1, Set.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(rangeEClass, Range.class, "Range", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getRange_Lhs(), this.getLimit(), null, "lhs", null, 0, 1, Range.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getRange_Rhs(), this.getLimit(), null, "rhs", null, 0, 1, Range.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(setExpressionEClass, SetExpression.class, "SetExpression", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(setConstructEClass, SetConstruct.class, "SetConstruct", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getSetConstruct_Lhs(), this.getBasicTerm(), null, "lhs", null, 0, 1, SetConstruct.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getSetConstruct_Rhs(), this.getTVars(), null, "rhs", null, 0, 1, SetConstruct.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(tVarsEClass, TVars.class, "TVars", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getTVars_Car(), this.getTVar(), null, "car", null, 0, 1, TVars.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getTVars_Cdr(), this.getTVar(), null, "cdr", null, 0, -1, TVars.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(tVarEClass, TVar.class, "TVar", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getTVar_Var(), this.getVariable(), null, "var", null, 0, 1, TVar.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getTVar_Id(), this.getTypeId(), null, "id", null, 0, 1, TVar.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(atomEClass, Atom.class, "Atom", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(predicateAtomEClass, PredicateAtom.class, "PredicateAtom", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getPredicateAtom_Fid(), ecorePackage.getEString(), "fid", null, 0, 1, PredicateAtom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getPredicateAtom_Terms(), this.getTerms(), null, "terms", null, 0, 1, PredicateAtom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(basicPredicateAtomEClass, BasicPredicateAtom.class, "BasicPredicateAtom", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEAttribute(getBasicPredicateAtom_Fid(), ecorePackage.getEString(), "fid", null, 0, 1, BasicPredicateAtom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getBasicPredicateAtom_Terms(), this.getBasicTerms(), null, "terms", null, 0, 1, BasicPredicateAtom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(builtInAtomEClass, BuiltInAtom.class, "BuiltInAtom", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getBuiltInAtom_Lhs(), this.getBasicTerm(), null, "lhs", null, 0, 1, BuiltInAtom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getBuiltInAtom_Op(), ecorePackage.getEString(), "op", null, 0, 1, BuiltInAtom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getBuiltInAtom_Rhs(), this.getBasicTerm(), null, "rhs", null, 0, 1, BuiltInAtom.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(basicAtomEClass, BasicAtom.class, "BasicAtom", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(sentenceEClass, Sentence.class, "Sentence", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(sentenceExprEClass, SentenceExpr.class, "SentenceExpr", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(sentenceLiteralEClass, SentenceLiteral.class, "SentenceLiteral", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(pSentenceEClass, pSentence.class, "pSentence", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(pSentenceLiteralEClass, pSentenceLiteral.class, "pSentenceLiteral", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(maybeLiteralEClass, MaybeLiteral.class, "MaybeLiteral", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(cardinalityConstraintEClass, CardinalityConstraint.class, "CardinalityConstraint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getCardinalityConstraint_Lhs(), this.getBound(), null, "lhs", null, 0, 1, CardinalityConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getCardinalityConstraint_Atom(), this.getBasicPredicateAtom(), null, "atom", null, 0, 1, CardinalityConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getCardinalityConstraint_Rhs(), this.getBound(), null, "rhs", null, 0, 1, CardinalityConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(boundEClass, Bound.class, "Bound", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getBound_Av(), this.getArithmeticTerm(), null, "av", null, 0, 1, Bound.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(ruleEClass, Rule.class, "Rule", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getRule_Head(), this.getHead(), null, "head", null, 0, 1, Rule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEAttribute(getRule_Condition(), ecorePackage.getEString(), "condition", null, 0, 1, Rule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getRule_Body(), this.getSentence(), null, "body", null, 0, 1, Rule.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(headEClass, Head.class, "Head", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(statementEClass, Statement.class, "Statement", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(additionEClass, Addition.class, "Addition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(multiplicationEClass, Multiplication.class, "Multiplication", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(groundAdditionEClass, GroundAddition.class, "GroundAddition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(groundMultiplicationEClass, GroundMultiplication.class, "GroundMultiplication", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEClass(setAdditionEClass, SetAddition.class, "SetAddition", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getSetAddition_Left(), this.getSetExpression(), null, "left", null, 0, 1, SetAddition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getSetAddition_Right(), this.getSetExpression(), null, "right", null, 0, 1, SetAddition.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(setMultiplicationEClass, SetMultiplication.class, "SetMultiplication", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getSetMultiplication_Left(), this.getSetExpression(), null, "left", null, 0, 1, SetMultiplication.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getSetMultiplication_Right(), this.getSetExpression(), null, "right", null, 0, 1, SetMultiplication.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(orSentenceEClass, OrSentence.class, "OrSentence", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getOrSentence_Left(), this.getSentenceExpr(), null, "left", null, 0, 1, OrSentence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getOrSentence_Right(), this.getSentenceExpr(), null, "right", null, 0, 1, OrSentence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(andSentenceEClass, AndSentence.class, "AndSentence", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getAndSentence_Left(), this.getSentenceExpr(), null, "left", null, 0, 1, AndSentence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getAndSentence_Right(), this.getSentenceExpr(), null, "right", null, 0, 1, AndSentence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(pOrSentenceEClass, pOrSentence.class, "pOrSentence", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getpOrSentence_Left(), this.getSentenceExpr(), null, "left", null, 0, 1, pOrSentence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getpOrSentence_Right(), this.getSentenceExpr(), null, "right", null, 0, 1, pOrSentence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEClass(pAndSentenceEClass, pAndSentence.class, "pAndSentence", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); initEReference(getpAndSentence_Left(), this.getSentenceExpr(), null, "left", null, 0, 1, pAndSentence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); initEReference(getpAndSentence_Right(), this.getSentenceExpr(), null, "right", null, 0, 1, pAndSentence.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); // Create resource createResource(eNS_URI); } } //LPackageImpl