diff options
Diffstat (limited to 'Framework/hu.bme.mit.inf.dslreasoner.viatra2logic')
25 files changed, 2894 insertions, 0 deletions
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/.classpath b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/.classpath new file mode 100644 index 00000000..75ccaa90 --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/.classpath | |||
@@ -0,0 +1,9 @@ | |||
1 | <?xml version="1.0" encoding="UTF-8"?> | ||
2 | <classpath> | ||
3 | <classpathentry kind="src" path="ecore-gen"/> | ||
4 | <classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.8"/> | ||
5 | <classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/> | ||
6 | <classpathentry kind="src" path="src"/> | ||
7 | <classpathentry kind="src" path="xtend-gen"/> | ||
8 | <classpathentry kind="output" path="bin"/> | ||
9 | </classpath> | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/.gitignore b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/.gitignore new file mode 100644 index 00000000..8ae4e44d --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/.gitignore | |||
@@ -0,0 +1,4 @@ | |||
1 | /bin/ | ||
2 | /src-gen/ | ||
3 | /vql-gen/ | ||
4 | /xtend-gen/ | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/.project b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/.project new file mode 100644 index 00000000..f97c5d0b --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/.project | |||
@@ -0,0 +1,34 @@ | |||
1 | <?xml version="1.0" encoding="UTF-8"?> | ||
2 | <projectDescription> | ||
3 | <name>hu.bme.mit.inf.dslreasoner.viatra2logic</name> | ||
4 | <comment></comment> | ||
5 | <projects> | ||
6 | </projects> | ||
7 | <buildSpec> | ||
8 | <buildCommand> | ||
9 | <name>org.eclipse.xtext.ui.shared.xtextBuilder</name> | ||
10 | <arguments> | ||
11 | </arguments> | ||
12 | </buildCommand> | ||
13 | <buildCommand> | ||
14 | <name>org.eclipse.jdt.core.javabuilder</name> | ||
15 | <arguments> | ||
16 | </arguments> | ||
17 | </buildCommand> | ||
18 | <buildCommand> | ||
19 | <name>org.eclipse.pde.ManifestBuilder</name> | ||
20 | <arguments> | ||
21 | </arguments> | ||
22 | </buildCommand> | ||
23 | <buildCommand> | ||
24 | <name>org.eclipse.pde.SchemaBuilder</name> | ||
25 | <arguments> | ||
26 | </arguments> | ||
27 | </buildCommand> | ||
28 | </buildSpec> | ||
29 | <natures> | ||
30 | <nature>org.eclipse.pde.PluginNature</nature> | ||
31 | <nature>org.eclipse.jdt.core.javanature</nature> | ||
32 | <nature>org.eclipse.xtext.ui.shared.xtextNature</nature> | ||
33 | </natures> | ||
34 | </projectDescription> | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/.settings/org.eclipse.jdt.core.prefs b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/.settings/org.eclipse.jdt.core.prefs new file mode 100644 index 00000000..295926d9 --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/.settings/org.eclipse.jdt.core.prefs | |||
@@ -0,0 +1,7 @@ | |||
1 | eclipse.preferences.version=1 | ||
2 | org.eclipse.jdt.core.compiler.codegen.inlineJsrBytecode=enabled | ||
3 | org.eclipse.jdt.core.compiler.codegen.targetPlatform=1.8 | ||
4 | org.eclipse.jdt.core.compiler.compliance=1.8 | ||
5 | org.eclipse.jdt.core.compiler.problem.assertIdentifier=error | ||
6 | org.eclipse.jdt.core.compiler.problem.enumIdentifier=error | ||
7 | org.eclipse.jdt.core.compiler.source=1.8 | ||
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 new file mode 100644 index 00000000..1872207f --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/META-INF/MANIFEST.MF | |||
@@ -0,0 +1,25 @@ | |||
1 | Manifest-Version: 1.0 | ||
2 | Bundle-ManifestVersion: 2 | ||
3 | Bundle-Name: %pluginName | ||
4 | Bundle-SymbolicName: hu.bme.mit.inf.dslreasoner.viatra2logic;singleton:=true | ||
5 | Bundle-Version: 1.0.0.qualifier | ||
6 | Bundle-ClassPath: . | ||
7 | Bundle-Vendor: %providerName | ||
8 | Bundle-Localization: plugin | ||
9 | Bundle-RequiredExecutionEnvironment: JavaSE-1.8 | ||
10 | Require-Bundle: com.google.guava, | ||
11 | org.eclipse.xtext.xbase.lib, | ||
12 | org.eclipse.xtend.lib, | ||
13 | org.eclipse.xtend.lib.macro, | ||
14 | org.eclipse.viatra.query.runtime;bundle-version="1.5.0", | ||
15 | hu.bme.mit.inf.dslreasoner.ecore2logic;bundle-version="1.0.0", | ||
16 | org.eclipse.core.runtime, | ||
17 | org.eclipse.emf.ecore;visibility:=reexport, | ||
18 | hu.bme.mit.inf.dslreasoner.logic.model;bundle-version="1.0.0";visibility:=reexport, | ||
19 | org.eclipse.viatra.query.runtime.base.itc;bundle-version="1.5.0" | ||
20 | Bundle-ActivationPolicy: lazy | ||
21 | Export-Package: hu.bme.mit.inf.dslreasoner.viatra2logic, | ||
22 | hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations, | ||
23 | hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl, | ||
24 | hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.util | ||
25 | |||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/build.properties b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/build.properties new file mode 100644 index 00000000..72399047 --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/build.properties | |||
@@ -0,0 +1,10 @@ | |||
1 | # | ||
2 | |||
3 | bin.includes = .,\ | ||
4 | model/,\ | ||
5 | META-INF/,\ | ||
6 | plugin.xml,\ | ||
7 | plugin.properties | ||
8 | jars.compile.order = . | ||
9 | source.. = ecore-gen/ | ||
10 | output.. = bin/ | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/DefinedByDerivedFeature.java b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/DefinedByDerivedFeature.java new file mode 100644 index 00000000..ab468027 --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/DefinedByDerivedFeature.java | |||
@@ -0,0 +1,50 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations; | ||
4 | |||
5 | import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.RelationAnnotation; | ||
6 | |||
7 | /** | ||
8 | * <!-- begin-user-doc --> | ||
9 | * A representation of the model object '<em><b>Defined By Derived Feature</b></em>'. | ||
10 | * <!-- end-user-doc --> | ||
11 | * | ||
12 | * <p> | ||
13 | * The following features are supported: | ||
14 | * </p> | ||
15 | * <ul> | ||
16 | * <li>{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.DefinedByDerivedFeature#getQuery <em>Query</em>}</li> | ||
17 | * </ul> | ||
18 | * | ||
19 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsPackage#getDefinedByDerivedFeature() | ||
20 | * @model | ||
21 | * @generated | ||
22 | */ | ||
23 | public interface DefinedByDerivedFeature extends RelationAnnotation { | ||
24 | /** | ||
25 | * Returns the value of the '<em><b>Query</b></em>' reference. | ||
26 | * <!-- begin-user-doc --> | ||
27 | * <p> | ||
28 | * If the meaning of the '<em>Query</em>' reference isn't clear, | ||
29 | * there really should be more of a description here... | ||
30 | * </p> | ||
31 | * <!-- end-user-doc --> | ||
32 | * @return the value of the '<em>Query</em>' reference. | ||
33 | * @see #setQuery(TransfomedViatraQuery) | ||
34 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsPackage#getDefinedByDerivedFeature_Query() | ||
35 | * @model required="true" | ||
36 | * @generated | ||
37 | */ | ||
38 | TransfomedViatraQuery getQuery(); | ||
39 | |||
40 | /** | ||
41 | * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.DefinedByDerivedFeature#getQuery <em>Query</em>}' reference. | ||
42 | * <!-- begin-user-doc --> | ||
43 | * <!-- end-user-doc --> | ||
44 | * @param value the new value of the '<em>Query</em>' reference. | ||
45 | * @see #getQuery() | ||
46 | * @generated | ||
47 | */ | ||
48 | void setQuery(TransfomedViatraQuery value); | ||
49 | |||
50 | } // DefinedByDerivedFeature | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/TransfomedViatraQuery.java b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/TransfomedViatraQuery.java new file mode 100644 index 00000000..9eb911d5 --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/TransfomedViatraQuery.java | |||
@@ -0,0 +1,50 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations; | ||
4 | |||
5 | import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.RelationAnnotation; | ||
6 | |||
7 | /** | ||
8 | * <!-- begin-user-doc --> | ||
9 | * A representation of the model object '<em><b>Transfomed Viatra Query</b></em>'. | ||
10 | * <!-- end-user-doc --> | ||
11 | * | ||
12 | * <p> | ||
13 | * The following features are supported: | ||
14 | * </p> | ||
15 | * <ul> | ||
16 | * <li>{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransfomedViatraQuery#getPatternFullyQualifiedName <em>Pattern Fully Qualified Name</em>}</li> | ||
17 | * </ul> | ||
18 | * | ||
19 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsPackage#getTransfomedViatraQuery() | ||
20 | * @model | ||
21 | * @generated | ||
22 | */ | ||
23 | public interface TransfomedViatraQuery extends RelationAnnotation { | ||
24 | |||
25 | /** | ||
26 | * Returns the value of the '<em><b>Pattern Fully Qualified Name</b></em>' attribute. | ||
27 | * <!-- begin-user-doc --> | ||
28 | * <p> | ||
29 | * If the meaning of the '<em>Pattern Fully Qualified Name</em>' attribute isn't clear, | ||
30 | * there really should be more of a description here... | ||
31 | * </p> | ||
32 | * <!-- end-user-doc --> | ||
33 | * @return the value of the '<em>Pattern Fully Qualified Name</em>' attribute. | ||
34 | * @see #setPatternFullyQualifiedName(String) | ||
35 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsPackage#getTransfomedViatraQuery_PatternFullyQualifiedName() | ||
36 | * @model required="true" | ||
37 | * @generated | ||
38 | */ | ||
39 | String getPatternFullyQualifiedName(); | ||
40 | |||
41 | /** | ||
42 | * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransfomedViatraQuery#getPatternFullyQualifiedName <em>Pattern Fully Qualified Name</em>}' attribute. | ||
43 | * <!-- begin-user-doc --> | ||
44 | * <!-- end-user-doc --> | ||
45 | * @param value the new value of the '<em>Pattern Fully Qualified Name</em>' attribute. | ||
46 | * @see #getPatternFullyQualifiedName() | ||
47 | * @generated | ||
48 | */ | ||
49 | void setPatternFullyQualifiedName(String value); | ||
50 | } // TransfomedViatraQuery | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/TransformedViatraWellformednessConstraint.java b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/TransformedViatraWellformednessConstraint.java new file mode 100644 index 00000000..04c5480f --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/TransformedViatraWellformednessConstraint.java | |||
@@ -0,0 +1,50 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations; | ||
4 | |||
5 | import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.AssertionAnnotation; | ||
6 | |||
7 | /** | ||
8 | * <!-- begin-user-doc --> | ||
9 | * A representation of the model object '<em><b>Transformed Viatra Wellformedness Constraint</b></em>'. | ||
10 | * <!-- end-user-doc --> | ||
11 | * | ||
12 | * <p> | ||
13 | * The following features are supported: | ||
14 | * </p> | ||
15 | * <ul> | ||
16 | * <li>{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransformedViatraWellformednessConstraint#getQuery <em>Query</em>}</li> | ||
17 | * </ul> | ||
18 | * | ||
19 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsPackage#getTransformedViatraWellformednessConstraint() | ||
20 | * @model | ||
21 | * @generated | ||
22 | */ | ||
23 | public interface TransformedViatraWellformednessConstraint extends AssertionAnnotation { | ||
24 | /** | ||
25 | * Returns the value of the '<em><b>Query</b></em>' reference. | ||
26 | * <!-- begin-user-doc --> | ||
27 | * <p> | ||
28 | * If the meaning of the '<em>Query</em>' reference isn't clear, | ||
29 | * there really should be more of a description here... | ||
30 | * </p> | ||
31 | * <!-- end-user-doc --> | ||
32 | * @return the value of the '<em>Query</em>' reference. | ||
33 | * @see #setQuery(TransfomedViatraQuery) | ||
34 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsPackage#getTransformedViatraWellformednessConstraint_Query() | ||
35 | * @model required="true" | ||
36 | * @generated | ||
37 | */ | ||
38 | TransfomedViatraQuery getQuery(); | ||
39 | |||
40 | /** | ||
41 | * Sets the value of the '{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransformedViatraWellformednessConstraint#getQuery <em>Query</em>}' reference. | ||
42 | * <!-- begin-user-doc --> | ||
43 | * <!-- end-user-doc --> | ||
44 | * @param value the new value of the '<em>Query</em>' reference. | ||
45 | * @see #getQuery() | ||
46 | * @generated | ||
47 | */ | ||
48 | void setQuery(TransfomedViatraQuery value); | ||
49 | |||
50 | } // TransformedViatraWellformednessConstraint | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/Viatra2LogicAnnotationsFactory.java b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/Viatra2LogicAnnotationsFactory.java new file mode 100644 index 00000000..1343bee3 --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/Viatra2LogicAnnotationsFactory.java | |||
@@ -0,0 +1,60 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations; | ||
4 | |||
5 | import org.eclipse.emf.ecore.EFactory; | ||
6 | |||
7 | /** | ||
8 | * <!-- begin-user-doc --> | ||
9 | * The <b>Factory</b> for the model. | ||
10 | * It provides a create method for each non-abstract class of the model. | ||
11 | * <!-- end-user-doc --> | ||
12 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsPackage | ||
13 | * @generated | ||
14 | */ | ||
15 | public interface Viatra2LogicAnnotationsFactory extends EFactory { | ||
16 | /** | ||
17 | * The singleton instance of the factory. | ||
18 | * <!-- begin-user-doc --> | ||
19 | * <!-- end-user-doc --> | ||
20 | * @generated | ||
21 | */ | ||
22 | Viatra2LogicAnnotationsFactory eINSTANCE = hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.Viatra2LogicAnnotationsFactoryImpl.init(); | ||
23 | |||
24 | /** | ||
25 | * Returns a new object of class '<em>Transfomed Viatra Query</em>'. | ||
26 | * <!-- begin-user-doc --> | ||
27 | * <!-- end-user-doc --> | ||
28 | * @return a new object of class '<em>Transfomed Viatra Query</em>'. | ||
29 | * @generated | ||
30 | */ | ||
31 | TransfomedViatraQuery createTransfomedViatraQuery(); | ||
32 | |||
33 | /** | ||
34 | * Returns a new object of class '<em>Transformed Viatra Wellformedness Constraint</em>'. | ||
35 | * <!-- begin-user-doc --> | ||
36 | * <!-- end-user-doc --> | ||
37 | * @return a new object of class '<em>Transformed Viatra Wellformedness Constraint</em>'. | ||
38 | * @generated | ||
39 | */ | ||
40 | TransformedViatraWellformednessConstraint createTransformedViatraWellformednessConstraint(); | ||
41 | |||
42 | /** | ||
43 | * Returns a new object of class '<em>Defined By Derived Feature</em>'. | ||
44 | * <!-- begin-user-doc --> | ||
45 | * <!-- end-user-doc --> | ||
46 | * @return a new object of class '<em>Defined By Derived Feature</em>'. | ||
47 | * @generated | ||
48 | */ | ||
49 | DefinedByDerivedFeature createDefinedByDerivedFeature(); | ||
50 | |||
51 | /** | ||
52 | * Returns the package supported by this factory. | ||
53 | * <!-- begin-user-doc --> | ||
54 | * <!-- end-user-doc --> | ||
55 | * @return the package supported by this factory. | ||
56 | * @generated | ||
57 | */ | ||
58 | Viatra2LogicAnnotationsPackage getViatra2LogicAnnotationsPackage(); | ||
59 | |||
60 | } //Viatra2LogicAnnotationsFactory | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/Viatra2LogicAnnotationsPackage.java b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/Viatra2LogicAnnotationsPackage.java new file mode 100644 index 00000000..0c3de242 --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/Viatra2LogicAnnotationsPackage.java | |||
@@ -0,0 +1,343 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations; | ||
4 | |||
5 | import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.LogicproblemPackage; | ||
6 | |||
7 | import org.eclipse.emf.ecore.EAttribute; | ||
8 | import org.eclipse.emf.ecore.EClass; | ||
9 | import org.eclipse.emf.ecore.EPackage; | ||
10 | import org.eclipse.emf.ecore.EReference; | ||
11 | |||
12 | /** | ||
13 | * <!-- begin-user-doc --> | ||
14 | * The <b>Package</b> for the model. | ||
15 | * It contains accessors for the meta objects to represent | ||
16 | * <ul> | ||
17 | * <li>each class,</li> | ||
18 | * <li>each feature of each class,</li> | ||
19 | * <li>each operation of each class,</li> | ||
20 | * <li>each enum,</li> | ||
21 | * <li>and each data type</li> | ||
22 | * </ul> | ||
23 | * <!-- end-user-doc --> | ||
24 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsFactory | ||
25 | * @model kind="package" | ||
26 | * @generated | ||
27 | */ | ||
28 | public interface Viatra2LogicAnnotationsPackage extends EPackage { | ||
29 | /** | ||
30 | * The package name. | ||
31 | * <!-- begin-user-doc --> | ||
32 | * <!-- end-user-doc --> | ||
33 | * @generated | ||
34 | */ | ||
35 | String eNAME = "viatra2logicannotations"; | ||
36 | |||
37 | /** | ||
38 | * The package namespace URI. | ||
39 | * <!-- begin-user-doc --> | ||
40 | * <!-- end-user-doc --> | ||
41 | * @generated | ||
42 | */ | ||
43 | String eNS_URI = "http://www.bme.hu/mit/inf/dslreasoner/logic/model/language/viatra2logicannotation"; | ||
44 | |||
45 | /** | ||
46 | * The package namespace name. | ||
47 | * <!-- begin-user-doc --> | ||
48 | * <!-- end-user-doc --> | ||
49 | * @generated | ||
50 | */ | ||
51 | String eNS_PREFIX = "viatra2logicannotations"; | ||
52 | |||
53 | /** | ||
54 | * The singleton instance of the package. | ||
55 | * <!-- begin-user-doc --> | ||
56 | * <!-- end-user-doc --> | ||
57 | * @generated | ||
58 | */ | ||
59 | Viatra2LogicAnnotationsPackage eINSTANCE = hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.Viatra2LogicAnnotationsPackageImpl.init(); | ||
60 | |||
61 | /** | ||
62 | * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.TransfomedViatraQueryImpl <em>Transfomed Viatra Query</em>}' class. | ||
63 | * <!-- begin-user-doc --> | ||
64 | * <!-- end-user-doc --> | ||
65 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.TransfomedViatraQueryImpl | ||
66 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.Viatra2LogicAnnotationsPackageImpl#getTransfomedViatraQuery() | ||
67 | * @generated | ||
68 | */ | ||
69 | int TRANSFOMED_VIATRA_QUERY = 0; | ||
70 | |||
71 | /** | ||
72 | * The feature id for the '<em><b>Target</b></em>' reference. | ||
73 | * <!-- begin-user-doc --> | ||
74 | * <!-- end-user-doc --> | ||
75 | * @generated | ||
76 | * @ordered | ||
77 | */ | ||
78 | int TRANSFOMED_VIATRA_QUERY__TARGET = LogicproblemPackage.RELATION_ANNOTATION__TARGET; | ||
79 | |||
80 | /** | ||
81 | * The feature id for the '<em><b>Pattern Fully Qualified Name</b></em>' attribute. | ||
82 | * <!-- begin-user-doc --> | ||
83 | * <!-- end-user-doc --> | ||
84 | * @generated | ||
85 | * @ordered | ||
86 | */ | ||
87 | int TRANSFOMED_VIATRA_QUERY__PATTERN_FULLY_QUALIFIED_NAME = LogicproblemPackage.RELATION_ANNOTATION_FEATURE_COUNT + 0; | ||
88 | |||
89 | /** | ||
90 | * The number of structural features of the '<em>Transfomed Viatra Query</em>' class. | ||
91 | * <!-- begin-user-doc --> | ||
92 | * <!-- end-user-doc --> | ||
93 | * @generated | ||
94 | * @ordered | ||
95 | */ | ||
96 | int TRANSFOMED_VIATRA_QUERY_FEATURE_COUNT = LogicproblemPackage.RELATION_ANNOTATION_FEATURE_COUNT + 1; | ||
97 | |||
98 | /** | ||
99 | * The number of operations of the '<em>Transfomed Viatra Query</em>' class. | ||
100 | * <!-- begin-user-doc --> | ||
101 | * <!-- end-user-doc --> | ||
102 | * @generated | ||
103 | * @ordered | ||
104 | */ | ||
105 | int TRANSFOMED_VIATRA_QUERY_OPERATION_COUNT = LogicproblemPackage.RELATION_ANNOTATION_OPERATION_COUNT + 0; | ||
106 | |||
107 | /** | ||
108 | * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.TransformedViatraWellformednessConstraintImpl <em>Transformed Viatra Wellformedness Constraint</em>}' class. | ||
109 | * <!-- begin-user-doc --> | ||
110 | * <!-- end-user-doc --> | ||
111 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.TransformedViatraWellformednessConstraintImpl | ||
112 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.Viatra2LogicAnnotationsPackageImpl#getTransformedViatraWellformednessConstraint() | ||
113 | * @generated | ||
114 | */ | ||
115 | int TRANSFORMED_VIATRA_WELLFORMEDNESS_CONSTRAINT = 1; | ||
116 | |||
117 | /** | ||
118 | * The feature id for the '<em><b>Target</b></em>' reference. | ||
119 | * <!-- begin-user-doc --> | ||
120 | * <!-- end-user-doc --> | ||
121 | * @generated | ||
122 | * @ordered | ||
123 | */ | ||
124 | int TRANSFORMED_VIATRA_WELLFORMEDNESS_CONSTRAINT__TARGET = LogicproblemPackage.ASSERTION_ANNOTATION__TARGET; | ||
125 | |||
126 | /** | ||
127 | * The feature id for the '<em><b>Query</b></em>' reference. | ||
128 | * <!-- begin-user-doc --> | ||
129 | * <!-- end-user-doc --> | ||
130 | * @generated | ||
131 | * @ordered | ||
132 | */ | ||
133 | int TRANSFORMED_VIATRA_WELLFORMEDNESS_CONSTRAINT__QUERY = LogicproblemPackage.ASSERTION_ANNOTATION_FEATURE_COUNT + 0; | ||
134 | |||
135 | /** | ||
136 | * The number of structural features of the '<em>Transformed Viatra Wellformedness Constraint</em>' class. | ||
137 | * <!-- begin-user-doc --> | ||
138 | * <!-- end-user-doc --> | ||
139 | * @generated | ||
140 | * @ordered | ||
141 | */ | ||
142 | int TRANSFORMED_VIATRA_WELLFORMEDNESS_CONSTRAINT_FEATURE_COUNT = LogicproblemPackage.ASSERTION_ANNOTATION_FEATURE_COUNT + 1; | ||
143 | |||
144 | /** | ||
145 | * The number of operations of the '<em>Transformed Viatra Wellformedness Constraint</em>' class. | ||
146 | * <!-- begin-user-doc --> | ||
147 | * <!-- end-user-doc --> | ||
148 | * @generated | ||
149 | * @ordered | ||
150 | */ | ||
151 | int TRANSFORMED_VIATRA_WELLFORMEDNESS_CONSTRAINT_OPERATION_COUNT = LogicproblemPackage.ASSERTION_ANNOTATION_OPERATION_COUNT + 0; | ||
152 | |||
153 | |||
154 | /** | ||
155 | * The meta object id for the '{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.DefinedByDerivedFeatureImpl <em>Defined By Derived Feature</em>}' class. | ||
156 | * <!-- begin-user-doc --> | ||
157 | * <!-- end-user-doc --> | ||
158 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.DefinedByDerivedFeatureImpl | ||
159 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.Viatra2LogicAnnotationsPackageImpl#getDefinedByDerivedFeature() | ||
160 | * @generated | ||
161 | */ | ||
162 | int DEFINED_BY_DERIVED_FEATURE = 2; | ||
163 | |||
164 | /** | ||
165 | * The feature id for the '<em><b>Target</b></em>' reference. | ||
166 | * <!-- begin-user-doc --> | ||
167 | * <!-- end-user-doc --> | ||
168 | * @generated | ||
169 | * @ordered | ||
170 | */ | ||
171 | int DEFINED_BY_DERIVED_FEATURE__TARGET = LogicproblemPackage.RELATION_ANNOTATION__TARGET; | ||
172 | |||
173 | /** | ||
174 | * The feature id for the '<em><b>Query</b></em>' reference. | ||
175 | * <!-- begin-user-doc --> | ||
176 | * <!-- end-user-doc --> | ||
177 | * @generated | ||
178 | * @ordered | ||
179 | */ | ||
180 | int DEFINED_BY_DERIVED_FEATURE__QUERY = LogicproblemPackage.RELATION_ANNOTATION_FEATURE_COUNT + 0; | ||
181 | |||
182 | /** | ||
183 | * The number of structural features of the '<em>Defined By Derived Feature</em>' class. | ||
184 | * <!-- begin-user-doc --> | ||
185 | * <!-- end-user-doc --> | ||
186 | * @generated | ||
187 | * @ordered | ||
188 | */ | ||
189 | int DEFINED_BY_DERIVED_FEATURE_FEATURE_COUNT = LogicproblemPackage.RELATION_ANNOTATION_FEATURE_COUNT + 1; | ||
190 | |||
191 | /** | ||
192 | * The number of operations of the '<em>Defined By Derived Feature</em>' class. | ||
193 | * <!-- begin-user-doc --> | ||
194 | * <!-- end-user-doc --> | ||
195 | * @generated | ||
196 | * @ordered | ||
197 | */ | ||
198 | int DEFINED_BY_DERIVED_FEATURE_OPERATION_COUNT = LogicproblemPackage.RELATION_ANNOTATION_OPERATION_COUNT + 0; | ||
199 | |||
200 | |||
201 | /** | ||
202 | * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransfomedViatraQuery <em>Transfomed Viatra Query</em>}'. | ||
203 | * <!-- begin-user-doc --> | ||
204 | * <!-- end-user-doc --> | ||
205 | * @return the meta object for class '<em>Transfomed Viatra Query</em>'. | ||
206 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransfomedViatraQuery | ||
207 | * @generated | ||
208 | */ | ||
209 | EClass getTransfomedViatraQuery(); | ||
210 | |||
211 | /** | ||
212 | * Returns the meta object for the attribute '{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransfomedViatraQuery#getPatternFullyQualifiedName <em>Pattern Fully Qualified Name</em>}'. | ||
213 | * <!-- begin-user-doc --> | ||
214 | * <!-- end-user-doc --> | ||
215 | * @return the meta object for the attribute '<em>Pattern Fully Qualified Name</em>'. | ||
216 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransfomedViatraQuery#getPatternFullyQualifiedName() | ||
217 | * @see #getTransfomedViatraQuery() | ||
218 | * @generated | ||
219 | */ | ||
220 | EAttribute getTransfomedViatraQuery_PatternFullyQualifiedName(); | ||
221 | |||
222 | /** | ||
223 | * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransformedViatraWellformednessConstraint <em>Transformed Viatra Wellformedness Constraint</em>}'. | ||
224 | * <!-- begin-user-doc --> | ||
225 | * <!-- end-user-doc --> | ||
226 | * @return the meta object for class '<em>Transformed Viatra Wellformedness Constraint</em>'. | ||
227 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransformedViatraWellformednessConstraint | ||
228 | * @generated | ||
229 | */ | ||
230 | EClass getTransformedViatraWellformednessConstraint(); | ||
231 | |||
232 | /** | ||
233 | * Returns the meta object for the reference '{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransformedViatraWellformednessConstraint#getQuery <em>Query</em>}'. | ||
234 | * <!-- begin-user-doc --> | ||
235 | * <!-- end-user-doc --> | ||
236 | * @return the meta object for the reference '<em>Query</em>'. | ||
237 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransformedViatraWellformednessConstraint#getQuery() | ||
238 | * @see #getTransformedViatraWellformednessConstraint() | ||
239 | * @generated | ||
240 | */ | ||
241 | EReference getTransformedViatraWellformednessConstraint_Query(); | ||
242 | |||
243 | /** | ||
244 | * Returns the meta object for class '{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.DefinedByDerivedFeature <em>Defined By Derived Feature</em>}'. | ||
245 | * <!-- begin-user-doc --> | ||
246 | * <!-- end-user-doc --> | ||
247 | * @return the meta object for class '<em>Defined By Derived Feature</em>'. | ||
248 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.DefinedByDerivedFeature | ||
249 | * @generated | ||
250 | */ | ||
251 | EClass getDefinedByDerivedFeature(); | ||
252 | |||
253 | /** | ||
254 | * Returns the meta object for the reference '{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.DefinedByDerivedFeature#getQuery <em>Query</em>}'. | ||
255 | * <!-- begin-user-doc --> | ||
256 | * <!-- end-user-doc --> | ||
257 | * @return the meta object for the reference '<em>Query</em>'. | ||
258 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.DefinedByDerivedFeature#getQuery() | ||
259 | * @see #getDefinedByDerivedFeature() | ||
260 | * @generated | ||
261 | */ | ||
262 | EReference getDefinedByDerivedFeature_Query(); | ||
263 | |||
264 | /** | ||
265 | * Returns the factory that creates the instances of the model. | ||
266 | * <!-- begin-user-doc --> | ||
267 | * <!-- end-user-doc --> | ||
268 | * @return the factory that creates the instances of the model. | ||
269 | * @generated | ||
270 | */ | ||
271 | Viatra2LogicAnnotationsFactory getViatra2LogicAnnotationsFactory(); | ||
272 | |||
273 | /** | ||
274 | * <!-- begin-user-doc --> | ||
275 | * Defines literals for the meta objects that represent | ||
276 | * <ul> | ||
277 | * <li>each class,</li> | ||
278 | * <li>each feature of each class,</li> | ||
279 | * <li>each operation of each class,</li> | ||
280 | * <li>each enum,</li> | ||
281 | * <li>and each data type</li> | ||
282 | * </ul> | ||
283 | * <!-- end-user-doc --> | ||
284 | * @generated | ||
285 | */ | ||
286 | interface Literals { | ||
287 | /** | ||
288 | * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.TransfomedViatraQueryImpl <em>Transfomed Viatra Query</em>}' class. | ||
289 | * <!-- begin-user-doc --> | ||
290 | * <!-- end-user-doc --> | ||
291 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.TransfomedViatraQueryImpl | ||
292 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.Viatra2LogicAnnotationsPackageImpl#getTransfomedViatraQuery() | ||
293 | * @generated | ||
294 | */ | ||
295 | EClass TRANSFOMED_VIATRA_QUERY = eINSTANCE.getTransfomedViatraQuery(); | ||
296 | |||
297 | /** | ||
298 | * The meta object literal for the '<em><b>Pattern Fully Qualified Name</b></em>' attribute feature. | ||
299 | * <!-- begin-user-doc --> | ||
300 | * <!-- end-user-doc --> | ||
301 | * @generated | ||
302 | */ | ||
303 | EAttribute TRANSFOMED_VIATRA_QUERY__PATTERN_FULLY_QUALIFIED_NAME = eINSTANCE.getTransfomedViatraQuery_PatternFullyQualifiedName(); | ||
304 | |||
305 | /** | ||
306 | * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.TransformedViatraWellformednessConstraintImpl <em>Transformed Viatra Wellformedness Constraint</em>}' class. | ||
307 | * <!-- begin-user-doc --> | ||
308 | * <!-- end-user-doc --> | ||
309 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.TransformedViatraWellformednessConstraintImpl | ||
310 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.Viatra2LogicAnnotationsPackageImpl#getTransformedViatraWellformednessConstraint() | ||
311 | * @generated | ||
312 | */ | ||
313 | EClass TRANSFORMED_VIATRA_WELLFORMEDNESS_CONSTRAINT = eINSTANCE.getTransformedViatraWellformednessConstraint(); | ||
314 | |||
315 | /** | ||
316 | * The meta object literal for the '<em><b>Query</b></em>' reference feature. | ||
317 | * <!-- begin-user-doc --> | ||
318 | * <!-- end-user-doc --> | ||
319 | * @generated | ||
320 | */ | ||
321 | EReference TRANSFORMED_VIATRA_WELLFORMEDNESS_CONSTRAINT__QUERY = eINSTANCE.getTransformedViatraWellformednessConstraint_Query(); | ||
322 | |||
323 | /** | ||
324 | * The meta object literal for the '{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.DefinedByDerivedFeatureImpl <em>Defined By Derived Feature</em>}' class. | ||
325 | * <!-- begin-user-doc --> | ||
326 | * <!-- end-user-doc --> | ||
327 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.DefinedByDerivedFeatureImpl | ||
328 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.Viatra2LogicAnnotationsPackageImpl#getDefinedByDerivedFeature() | ||
329 | * @generated | ||
330 | */ | ||
331 | EClass DEFINED_BY_DERIVED_FEATURE = eINSTANCE.getDefinedByDerivedFeature(); | ||
332 | |||
333 | /** | ||
334 | * The meta object literal for the '<em><b>Query</b></em>' reference feature. | ||
335 | * <!-- begin-user-doc --> | ||
336 | * <!-- end-user-doc --> | ||
337 | * @generated | ||
338 | */ | ||
339 | EReference DEFINED_BY_DERIVED_FEATURE__QUERY = eINSTANCE.getDefinedByDerivedFeature_Query(); | ||
340 | |||
341 | } | ||
342 | |||
343 | } //Viatra2LogicAnnotationsPackage | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/impl/DefinedByDerivedFeatureImpl.java b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/impl/DefinedByDerivedFeatureImpl.java new file mode 100644 index 00000000..c2098ed0 --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/impl/DefinedByDerivedFeatureImpl.java | |||
@@ -0,0 +1,158 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl; | ||
4 | |||
5 | import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.impl.RelationAnnotationImpl; | ||
6 | |||
7 | import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.DefinedByDerivedFeature; | ||
8 | import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransfomedViatraQuery; | ||
9 | import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsPackage; | ||
10 | |||
11 | import org.eclipse.emf.common.notify.Notification; | ||
12 | |||
13 | import org.eclipse.emf.ecore.EClass; | ||
14 | import org.eclipse.emf.ecore.InternalEObject; | ||
15 | |||
16 | import org.eclipse.emf.ecore.impl.ENotificationImpl; | ||
17 | |||
18 | /** | ||
19 | * <!-- begin-user-doc --> | ||
20 | * An implementation of the model object '<em><b>Defined By Derived Feature</b></em>'. | ||
21 | * <!-- end-user-doc --> | ||
22 | * <p> | ||
23 | * The following features are implemented: | ||
24 | * </p> | ||
25 | * <ul> | ||
26 | * <li>{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.DefinedByDerivedFeatureImpl#getQuery <em>Query</em>}</li> | ||
27 | * </ul> | ||
28 | * | ||
29 | * @generated | ||
30 | */ | ||
31 | public class DefinedByDerivedFeatureImpl extends RelationAnnotationImpl implements DefinedByDerivedFeature { | ||
32 | /** | ||
33 | * The cached value of the '{@link #getQuery() <em>Query</em>}' reference. | ||
34 | * <!-- begin-user-doc --> | ||
35 | * <!-- end-user-doc --> | ||
36 | * @see #getQuery() | ||
37 | * @generated | ||
38 | * @ordered | ||
39 | */ | ||
40 | protected TransfomedViatraQuery query; | ||
41 | |||
42 | /** | ||
43 | * <!-- begin-user-doc --> | ||
44 | * <!-- end-user-doc --> | ||
45 | * @generated | ||
46 | */ | ||
47 | protected DefinedByDerivedFeatureImpl() { | ||
48 | super(); | ||
49 | } | ||
50 | |||
51 | /** | ||
52 | * <!-- begin-user-doc --> | ||
53 | * <!-- end-user-doc --> | ||
54 | * @generated | ||
55 | */ | ||
56 | @Override | ||
57 | protected EClass eStaticClass() { | ||
58 | return Viatra2LogicAnnotationsPackage.Literals.DEFINED_BY_DERIVED_FEATURE; | ||
59 | } | ||
60 | |||
61 | /** | ||
62 | * <!-- begin-user-doc --> | ||
63 | * <!-- end-user-doc --> | ||
64 | * @generated | ||
65 | */ | ||
66 | public TransfomedViatraQuery getQuery() { | ||
67 | if (query != null && query.eIsProxy()) { | ||
68 | InternalEObject oldQuery = (InternalEObject)query; | ||
69 | query = (TransfomedViatraQuery)eResolveProxy(oldQuery); | ||
70 | if (query != oldQuery) { | ||
71 | if (eNotificationRequired()) | ||
72 | eNotify(new ENotificationImpl(this, Notification.RESOLVE, Viatra2LogicAnnotationsPackage.DEFINED_BY_DERIVED_FEATURE__QUERY, oldQuery, query)); | ||
73 | } | ||
74 | } | ||
75 | return query; | ||
76 | } | ||
77 | |||
78 | /** | ||
79 | * <!-- begin-user-doc --> | ||
80 | * <!-- end-user-doc --> | ||
81 | * @generated | ||
82 | */ | ||
83 | public TransfomedViatraQuery basicGetQuery() { | ||
84 | return query; | ||
85 | } | ||
86 | |||
87 | /** | ||
88 | * <!-- begin-user-doc --> | ||
89 | * <!-- end-user-doc --> | ||
90 | * @generated | ||
91 | */ | ||
92 | public void setQuery(TransfomedViatraQuery newQuery) { | ||
93 | TransfomedViatraQuery oldQuery = query; | ||
94 | query = newQuery; | ||
95 | if (eNotificationRequired()) | ||
96 | eNotify(new ENotificationImpl(this, Notification.SET, Viatra2LogicAnnotationsPackage.DEFINED_BY_DERIVED_FEATURE__QUERY, oldQuery, query)); | ||
97 | } | ||
98 | |||
99 | /** | ||
100 | * <!-- begin-user-doc --> | ||
101 | * <!-- end-user-doc --> | ||
102 | * @generated | ||
103 | */ | ||
104 | @Override | ||
105 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
106 | switch (featureID) { | ||
107 | case Viatra2LogicAnnotationsPackage.DEFINED_BY_DERIVED_FEATURE__QUERY: | ||
108 | if (resolve) return getQuery(); | ||
109 | return basicGetQuery(); | ||
110 | } | ||
111 | return super.eGet(featureID, resolve, coreType); | ||
112 | } | ||
113 | |||
114 | /** | ||
115 | * <!-- begin-user-doc --> | ||
116 | * <!-- end-user-doc --> | ||
117 | * @generated | ||
118 | */ | ||
119 | @Override | ||
120 | public void eSet(int featureID, Object newValue) { | ||
121 | switch (featureID) { | ||
122 | case Viatra2LogicAnnotationsPackage.DEFINED_BY_DERIVED_FEATURE__QUERY: | ||
123 | setQuery((TransfomedViatraQuery)newValue); | ||
124 | return; | ||
125 | } | ||
126 | super.eSet(featureID, newValue); | ||
127 | } | ||
128 | |||
129 | /** | ||
130 | * <!-- begin-user-doc --> | ||
131 | * <!-- end-user-doc --> | ||
132 | * @generated | ||
133 | */ | ||
134 | @Override | ||
135 | public void eUnset(int featureID) { | ||
136 | switch (featureID) { | ||
137 | case Viatra2LogicAnnotationsPackage.DEFINED_BY_DERIVED_FEATURE__QUERY: | ||
138 | setQuery((TransfomedViatraQuery)null); | ||
139 | return; | ||
140 | } | ||
141 | super.eUnset(featureID); | ||
142 | } | ||
143 | |||
144 | /** | ||
145 | * <!-- begin-user-doc --> | ||
146 | * <!-- end-user-doc --> | ||
147 | * @generated | ||
148 | */ | ||
149 | @Override | ||
150 | public boolean eIsSet(int featureID) { | ||
151 | switch (featureID) { | ||
152 | case Viatra2LogicAnnotationsPackage.DEFINED_BY_DERIVED_FEATURE__QUERY: | ||
153 | return query != null; | ||
154 | } | ||
155 | return super.eIsSet(featureID); | ||
156 | } | ||
157 | |||
158 | } //DefinedByDerivedFeatureImpl | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/impl/TransfomedViatraQueryImpl.java b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/impl/TransfomedViatraQueryImpl.java new file mode 100644 index 00000000..f0d18ee9 --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/impl/TransfomedViatraQueryImpl.java | |||
@@ -0,0 +1,161 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl; | ||
4 | |||
5 | import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.impl.RelationAnnotationImpl; | ||
6 | |||
7 | import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransfomedViatraQuery; | ||
8 | import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsPackage; | ||
9 | |||
10 | import org.eclipse.emf.common.notify.Notification; | ||
11 | import org.eclipse.emf.ecore.EClass; | ||
12 | import org.eclipse.emf.ecore.impl.ENotificationImpl; | ||
13 | |||
14 | /** | ||
15 | * <!-- begin-user-doc --> | ||
16 | * An implementation of the model object '<em><b>Transfomed Viatra Query</b></em>'. | ||
17 | * <!-- end-user-doc --> | ||
18 | * <p> | ||
19 | * The following features are implemented: | ||
20 | * </p> | ||
21 | * <ul> | ||
22 | * <li>{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.TransfomedViatraQueryImpl#getPatternFullyQualifiedName <em>Pattern Fully Qualified Name</em>}</li> | ||
23 | * </ul> | ||
24 | * | ||
25 | * @generated | ||
26 | */ | ||
27 | public class TransfomedViatraQueryImpl extends RelationAnnotationImpl implements TransfomedViatraQuery { | ||
28 | /** | ||
29 | * The default value of the '{@link #getPatternFullyQualifiedName() <em>Pattern Fully Qualified Name</em>}' attribute. | ||
30 | * <!-- begin-user-doc --> | ||
31 | * <!-- end-user-doc --> | ||
32 | * @see #getPatternFullyQualifiedName() | ||
33 | * @generated | ||
34 | * @ordered | ||
35 | */ | ||
36 | protected static final String PATTERN_FULLY_QUALIFIED_NAME_EDEFAULT = null; | ||
37 | /** | ||
38 | * The cached value of the '{@link #getPatternFullyQualifiedName() <em>Pattern Fully Qualified Name</em>}' attribute. | ||
39 | * <!-- begin-user-doc --> | ||
40 | * <!-- end-user-doc --> | ||
41 | * @see #getPatternFullyQualifiedName() | ||
42 | * @generated | ||
43 | * @ordered | ||
44 | */ | ||
45 | protected String patternFullyQualifiedName = PATTERN_FULLY_QUALIFIED_NAME_EDEFAULT; | ||
46 | |||
47 | /** | ||
48 | * <!-- begin-user-doc --> | ||
49 | * <!-- end-user-doc --> | ||
50 | * @generated | ||
51 | */ | ||
52 | protected TransfomedViatraQueryImpl() { | ||
53 | super(); | ||
54 | } | ||
55 | |||
56 | /** | ||
57 | * <!-- begin-user-doc --> | ||
58 | * <!-- end-user-doc --> | ||
59 | * @generated | ||
60 | */ | ||
61 | @Override | ||
62 | protected EClass eStaticClass() { | ||
63 | return Viatra2LogicAnnotationsPackage.Literals.TRANSFOMED_VIATRA_QUERY; | ||
64 | } | ||
65 | |||
66 | /** | ||
67 | * <!-- begin-user-doc --> | ||
68 | * <!-- end-user-doc --> | ||
69 | * @generated | ||
70 | */ | ||
71 | public String getPatternFullyQualifiedName() { | ||
72 | return patternFullyQualifiedName; | ||
73 | } | ||
74 | |||
75 | /** | ||
76 | * <!-- begin-user-doc --> | ||
77 | * <!-- end-user-doc --> | ||
78 | * @generated | ||
79 | */ | ||
80 | public void setPatternFullyQualifiedName(String newPatternFullyQualifiedName) { | ||
81 | String oldPatternFullyQualifiedName = patternFullyQualifiedName; | ||
82 | patternFullyQualifiedName = newPatternFullyQualifiedName; | ||
83 | if (eNotificationRequired()) | ||
84 | eNotify(new ENotificationImpl(this, Notification.SET, Viatra2LogicAnnotationsPackage.TRANSFOMED_VIATRA_QUERY__PATTERN_FULLY_QUALIFIED_NAME, oldPatternFullyQualifiedName, patternFullyQualifiedName)); | ||
85 | } | ||
86 | |||
87 | /** | ||
88 | * <!-- begin-user-doc --> | ||
89 | * <!-- end-user-doc --> | ||
90 | * @generated | ||
91 | */ | ||
92 | @Override | ||
93 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
94 | switch (featureID) { | ||
95 | case Viatra2LogicAnnotationsPackage.TRANSFOMED_VIATRA_QUERY__PATTERN_FULLY_QUALIFIED_NAME: | ||
96 | return getPatternFullyQualifiedName(); | ||
97 | } | ||
98 | return super.eGet(featureID, resolve, coreType); | ||
99 | } | ||
100 | |||
101 | /** | ||
102 | * <!-- begin-user-doc --> | ||
103 | * <!-- end-user-doc --> | ||
104 | * @generated | ||
105 | */ | ||
106 | @Override | ||
107 | public void eSet(int featureID, Object newValue) { | ||
108 | switch (featureID) { | ||
109 | case Viatra2LogicAnnotationsPackage.TRANSFOMED_VIATRA_QUERY__PATTERN_FULLY_QUALIFIED_NAME: | ||
110 | setPatternFullyQualifiedName((String)newValue); | ||
111 | return; | ||
112 | } | ||
113 | super.eSet(featureID, newValue); | ||
114 | } | ||
115 | |||
116 | /** | ||
117 | * <!-- begin-user-doc --> | ||
118 | * <!-- end-user-doc --> | ||
119 | * @generated | ||
120 | */ | ||
121 | @Override | ||
122 | public void eUnset(int featureID) { | ||
123 | switch (featureID) { | ||
124 | case Viatra2LogicAnnotationsPackage.TRANSFOMED_VIATRA_QUERY__PATTERN_FULLY_QUALIFIED_NAME: | ||
125 | setPatternFullyQualifiedName(PATTERN_FULLY_QUALIFIED_NAME_EDEFAULT); | ||
126 | return; | ||
127 | } | ||
128 | super.eUnset(featureID); | ||
129 | } | ||
130 | |||
131 | /** | ||
132 | * <!-- begin-user-doc --> | ||
133 | * <!-- end-user-doc --> | ||
134 | * @generated | ||
135 | */ | ||
136 | @Override | ||
137 | public boolean eIsSet(int featureID) { | ||
138 | switch (featureID) { | ||
139 | case Viatra2LogicAnnotationsPackage.TRANSFOMED_VIATRA_QUERY__PATTERN_FULLY_QUALIFIED_NAME: | ||
140 | return PATTERN_FULLY_QUALIFIED_NAME_EDEFAULT == null ? patternFullyQualifiedName != null : !PATTERN_FULLY_QUALIFIED_NAME_EDEFAULT.equals(patternFullyQualifiedName); | ||
141 | } | ||
142 | return super.eIsSet(featureID); | ||
143 | } | ||
144 | |||
145 | /** | ||
146 | * <!-- begin-user-doc --> | ||
147 | * <!-- end-user-doc --> | ||
148 | * @generated | ||
149 | */ | ||
150 | @Override | ||
151 | public String toString() { | ||
152 | if (eIsProxy()) return super.toString(); | ||
153 | |||
154 | StringBuffer result = new StringBuffer(super.toString()); | ||
155 | result.append(" (patternFullyQualifiedName: "); | ||
156 | result.append(patternFullyQualifiedName); | ||
157 | result.append(')'); | ||
158 | return result.toString(); | ||
159 | } | ||
160 | |||
161 | } //TransfomedViatraQueryImpl | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/impl/TransformedViatraWellformednessConstraintImpl.java b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/impl/TransformedViatraWellformednessConstraintImpl.java new file mode 100644 index 00000000..be0c3078 --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/impl/TransformedViatraWellformednessConstraintImpl.java | |||
@@ -0,0 +1,158 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl; | ||
4 | |||
5 | import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.impl.AssertionAnnotationImpl; | ||
6 | |||
7 | import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransfomedViatraQuery; | ||
8 | import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransformedViatraWellformednessConstraint; | ||
9 | import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsPackage; | ||
10 | |||
11 | import org.eclipse.emf.common.notify.Notification; | ||
12 | |||
13 | import org.eclipse.emf.ecore.EClass; | ||
14 | import org.eclipse.emf.ecore.InternalEObject; | ||
15 | |||
16 | import org.eclipse.emf.ecore.impl.ENotificationImpl; | ||
17 | |||
18 | /** | ||
19 | * <!-- begin-user-doc --> | ||
20 | * An implementation of the model object '<em><b>Transformed Viatra Wellformedness Constraint</b></em>'. | ||
21 | * <!-- end-user-doc --> | ||
22 | * <p> | ||
23 | * The following features are implemented: | ||
24 | * </p> | ||
25 | * <ul> | ||
26 | * <li>{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl.TransformedViatraWellformednessConstraintImpl#getQuery <em>Query</em>}</li> | ||
27 | * </ul> | ||
28 | * | ||
29 | * @generated | ||
30 | */ | ||
31 | public class TransformedViatraWellformednessConstraintImpl extends AssertionAnnotationImpl implements TransformedViatraWellformednessConstraint { | ||
32 | /** | ||
33 | * The cached value of the '{@link #getQuery() <em>Query</em>}' reference. | ||
34 | * <!-- begin-user-doc --> | ||
35 | * <!-- end-user-doc --> | ||
36 | * @see #getQuery() | ||
37 | * @generated | ||
38 | * @ordered | ||
39 | */ | ||
40 | protected TransfomedViatraQuery query; | ||
41 | |||
42 | /** | ||
43 | * <!-- begin-user-doc --> | ||
44 | * <!-- end-user-doc --> | ||
45 | * @generated | ||
46 | */ | ||
47 | protected TransformedViatraWellformednessConstraintImpl() { | ||
48 | super(); | ||
49 | } | ||
50 | |||
51 | /** | ||
52 | * <!-- begin-user-doc --> | ||
53 | * <!-- end-user-doc --> | ||
54 | * @generated | ||
55 | */ | ||
56 | @Override | ||
57 | protected EClass eStaticClass() { | ||
58 | return Viatra2LogicAnnotationsPackage.Literals.TRANSFORMED_VIATRA_WELLFORMEDNESS_CONSTRAINT; | ||
59 | } | ||
60 | |||
61 | /** | ||
62 | * <!-- begin-user-doc --> | ||
63 | * <!-- end-user-doc --> | ||
64 | * @generated | ||
65 | */ | ||
66 | public TransfomedViatraQuery getQuery() { | ||
67 | if (query != null && query.eIsProxy()) { | ||
68 | InternalEObject oldQuery = (InternalEObject)query; | ||
69 | query = (TransfomedViatraQuery)eResolveProxy(oldQuery); | ||
70 | if (query != oldQuery) { | ||
71 | if (eNotificationRequired()) | ||
72 | eNotify(new ENotificationImpl(this, Notification.RESOLVE, Viatra2LogicAnnotationsPackage.TRANSFORMED_VIATRA_WELLFORMEDNESS_CONSTRAINT__QUERY, oldQuery, query)); | ||
73 | } | ||
74 | } | ||
75 | return query; | ||
76 | } | ||
77 | |||
78 | /** | ||
79 | * <!-- begin-user-doc --> | ||
80 | * <!-- end-user-doc --> | ||
81 | * @generated | ||
82 | */ | ||
83 | public TransfomedViatraQuery basicGetQuery() { | ||
84 | return query; | ||
85 | } | ||
86 | |||
87 | /** | ||
88 | * <!-- begin-user-doc --> | ||
89 | * <!-- end-user-doc --> | ||
90 | * @generated | ||
91 | */ | ||
92 | public void setQuery(TransfomedViatraQuery newQuery) { | ||
93 | TransfomedViatraQuery oldQuery = query; | ||
94 | query = newQuery; | ||
95 | if (eNotificationRequired()) | ||
96 | eNotify(new ENotificationImpl(this, Notification.SET, Viatra2LogicAnnotationsPackage.TRANSFORMED_VIATRA_WELLFORMEDNESS_CONSTRAINT__QUERY, oldQuery, query)); | ||
97 | } | ||
98 | |||
99 | /** | ||
100 | * <!-- begin-user-doc --> | ||
101 | * <!-- end-user-doc --> | ||
102 | * @generated | ||
103 | */ | ||
104 | @Override | ||
105 | public Object eGet(int featureID, boolean resolve, boolean coreType) { | ||
106 | switch (featureID) { | ||
107 | case Viatra2LogicAnnotationsPackage.TRANSFORMED_VIATRA_WELLFORMEDNESS_CONSTRAINT__QUERY: | ||
108 | if (resolve) return getQuery(); | ||
109 | return basicGetQuery(); | ||
110 | } | ||
111 | return super.eGet(featureID, resolve, coreType); | ||
112 | } | ||
113 | |||
114 | /** | ||
115 | * <!-- begin-user-doc --> | ||
116 | * <!-- end-user-doc --> | ||
117 | * @generated | ||
118 | */ | ||
119 | @Override | ||
120 | public void eSet(int featureID, Object newValue) { | ||
121 | switch (featureID) { | ||
122 | case Viatra2LogicAnnotationsPackage.TRANSFORMED_VIATRA_WELLFORMEDNESS_CONSTRAINT__QUERY: | ||
123 | setQuery((TransfomedViatraQuery)newValue); | ||
124 | return; | ||
125 | } | ||
126 | super.eSet(featureID, newValue); | ||
127 | } | ||
128 | |||
129 | /** | ||
130 | * <!-- begin-user-doc --> | ||
131 | * <!-- end-user-doc --> | ||
132 | * @generated | ||
133 | */ | ||
134 | @Override | ||
135 | public void eUnset(int featureID) { | ||
136 | switch (featureID) { | ||
137 | case Viatra2LogicAnnotationsPackage.TRANSFORMED_VIATRA_WELLFORMEDNESS_CONSTRAINT__QUERY: | ||
138 | setQuery((TransfomedViatraQuery)null); | ||
139 | return; | ||
140 | } | ||
141 | super.eUnset(featureID); | ||
142 | } | ||
143 | |||
144 | /** | ||
145 | * <!-- begin-user-doc --> | ||
146 | * <!-- end-user-doc --> | ||
147 | * @generated | ||
148 | */ | ||
149 | @Override | ||
150 | public boolean eIsSet(int featureID) { | ||
151 | switch (featureID) { | ||
152 | case Viatra2LogicAnnotationsPackage.TRANSFORMED_VIATRA_WELLFORMEDNESS_CONSTRAINT__QUERY: | ||
153 | return query != null; | ||
154 | } | ||
155 | return super.eIsSet(featureID); | ||
156 | } | ||
157 | |||
158 | } //TransformedViatraWellformednessConstraintImpl | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/impl/Viatra2LogicAnnotationsFactoryImpl.java b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/impl/Viatra2LogicAnnotationsFactoryImpl.java new file mode 100644 index 00000000..fc8f23c7 --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/impl/Viatra2LogicAnnotationsFactoryImpl.java | |||
@@ -0,0 +1,117 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl; | ||
4 | |||
5 | import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.*; | ||
6 | |||
7 | import org.eclipse.emf.ecore.EClass; | ||
8 | import org.eclipse.emf.ecore.EObject; | ||
9 | import org.eclipse.emf.ecore.EPackage; | ||
10 | |||
11 | import org.eclipse.emf.ecore.impl.EFactoryImpl; | ||
12 | |||
13 | import org.eclipse.emf.ecore.plugin.EcorePlugin; | ||
14 | |||
15 | /** | ||
16 | * <!-- begin-user-doc --> | ||
17 | * An implementation of the model <b>Factory</b>. | ||
18 | * <!-- end-user-doc --> | ||
19 | * @generated | ||
20 | */ | ||
21 | public class Viatra2LogicAnnotationsFactoryImpl extends EFactoryImpl implements Viatra2LogicAnnotationsFactory { | ||
22 | /** | ||
23 | * Creates the default factory implementation. | ||
24 | * <!-- begin-user-doc --> | ||
25 | * <!-- end-user-doc --> | ||
26 | * @generated | ||
27 | */ | ||
28 | public static Viatra2LogicAnnotationsFactory init() { | ||
29 | try { | ||
30 | Viatra2LogicAnnotationsFactory theViatra2LogicAnnotationsFactory = (Viatra2LogicAnnotationsFactory)EPackage.Registry.INSTANCE.getEFactory(Viatra2LogicAnnotationsPackage.eNS_URI); | ||
31 | if (theViatra2LogicAnnotationsFactory != null) { | ||
32 | return theViatra2LogicAnnotationsFactory; | ||
33 | } | ||
34 | } | ||
35 | catch (Exception exception) { | ||
36 | EcorePlugin.INSTANCE.log(exception); | ||
37 | } | ||
38 | return new Viatra2LogicAnnotationsFactoryImpl(); | ||
39 | } | ||
40 | |||
41 | /** | ||
42 | * Creates an instance of the factory. | ||
43 | * <!-- begin-user-doc --> | ||
44 | * <!-- end-user-doc --> | ||
45 | * @generated | ||
46 | */ | ||
47 | public Viatra2LogicAnnotationsFactoryImpl() { | ||
48 | super(); | ||
49 | } | ||
50 | |||
51 | /** | ||
52 | * <!-- begin-user-doc --> | ||
53 | * <!-- end-user-doc --> | ||
54 | * @generated | ||
55 | */ | ||
56 | @Override | ||
57 | public EObject create(EClass eClass) { | ||
58 | switch (eClass.getClassifierID()) { | ||
59 | case Viatra2LogicAnnotationsPackage.TRANSFOMED_VIATRA_QUERY: return createTransfomedViatraQuery(); | ||
60 | case Viatra2LogicAnnotationsPackage.TRANSFORMED_VIATRA_WELLFORMEDNESS_CONSTRAINT: return createTransformedViatraWellformednessConstraint(); | ||
61 | case Viatra2LogicAnnotationsPackage.DEFINED_BY_DERIVED_FEATURE: return createDefinedByDerivedFeature(); | ||
62 | default: | ||
63 | throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier"); | ||
64 | } | ||
65 | } | ||
66 | |||
67 | /** | ||
68 | * <!-- begin-user-doc --> | ||
69 | * <!-- end-user-doc --> | ||
70 | * @generated | ||
71 | */ | ||
72 | public TransfomedViatraQuery createTransfomedViatraQuery() { | ||
73 | TransfomedViatraQueryImpl transfomedViatraQuery = new TransfomedViatraQueryImpl(); | ||
74 | return transfomedViatraQuery; | ||
75 | } | ||
76 | |||
77 | /** | ||
78 | * <!-- begin-user-doc --> | ||
79 | * <!-- end-user-doc --> | ||
80 | * @generated | ||
81 | */ | ||
82 | public TransformedViatraWellformednessConstraint createTransformedViatraWellformednessConstraint() { | ||
83 | TransformedViatraWellformednessConstraintImpl transformedViatraWellformednessConstraint = new TransformedViatraWellformednessConstraintImpl(); | ||
84 | return transformedViatraWellformednessConstraint; | ||
85 | } | ||
86 | |||
87 | /** | ||
88 | * <!-- begin-user-doc --> | ||
89 | * <!-- end-user-doc --> | ||
90 | * @generated | ||
91 | */ | ||
92 | public DefinedByDerivedFeature createDefinedByDerivedFeature() { | ||
93 | DefinedByDerivedFeatureImpl definedByDerivedFeature = new DefinedByDerivedFeatureImpl(); | ||
94 | return definedByDerivedFeature; | ||
95 | } | ||
96 | |||
97 | /** | ||
98 | * <!-- begin-user-doc --> | ||
99 | * <!-- end-user-doc --> | ||
100 | * @generated | ||
101 | */ | ||
102 | public Viatra2LogicAnnotationsPackage getViatra2LogicAnnotationsPackage() { | ||
103 | return (Viatra2LogicAnnotationsPackage)getEPackage(); | ||
104 | } | ||
105 | |||
106 | /** | ||
107 | * <!-- begin-user-doc --> | ||
108 | * <!-- end-user-doc --> | ||
109 | * @deprecated | ||
110 | * @generated | ||
111 | */ | ||
112 | @Deprecated | ||
113 | public static Viatra2LogicAnnotationsPackage getPackage() { | ||
114 | return Viatra2LogicAnnotationsPackage.eINSTANCE; | ||
115 | } | ||
116 | |||
117 | } //Viatra2LogicAnnotationsFactoryImpl | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/impl/Viatra2LogicAnnotationsPackageImpl.java b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/impl/Viatra2LogicAnnotationsPackageImpl.java new file mode 100644 index 00000000..b6992bf9 --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/impl/Viatra2LogicAnnotationsPackageImpl.java | |||
@@ -0,0 +1,256 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.impl; | ||
4 | |||
5 | import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.LogiclanguagePackage; | ||
6 | |||
7 | import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.LogicproblemPackage; | ||
8 | |||
9 | import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.DefinedByDerivedFeature; | ||
10 | import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransfomedViatraQuery; | ||
11 | import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransformedViatraWellformednessConstraint; | ||
12 | import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsFactory; | ||
13 | import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsPackage; | ||
14 | |||
15 | import org.eclipse.emf.ecore.EAttribute; | ||
16 | import org.eclipse.emf.ecore.EClass; | ||
17 | import org.eclipse.emf.ecore.EPackage; | ||
18 | import org.eclipse.emf.ecore.EReference; | ||
19 | |||
20 | import org.eclipse.emf.ecore.impl.EPackageImpl; | ||
21 | |||
22 | /** | ||
23 | * <!-- begin-user-doc --> | ||
24 | * An implementation of the model <b>Package</b>. | ||
25 | * <!-- end-user-doc --> | ||
26 | * @generated | ||
27 | */ | ||
28 | public class Viatra2LogicAnnotationsPackageImpl extends EPackageImpl implements Viatra2LogicAnnotationsPackage { | ||
29 | /** | ||
30 | * <!-- begin-user-doc --> | ||
31 | * <!-- end-user-doc --> | ||
32 | * @generated | ||
33 | */ | ||
34 | private EClass transfomedViatraQueryEClass = null; | ||
35 | |||
36 | /** | ||
37 | * <!-- begin-user-doc --> | ||
38 | * <!-- end-user-doc --> | ||
39 | * @generated | ||
40 | */ | ||
41 | private EClass transformedViatraWellformednessConstraintEClass = null; | ||
42 | |||
43 | /** | ||
44 | * <!-- begin-user-doc --> | ||
45 | * <!-- end-user-doc --> | ||
46 | * @generated | ||
47 | */ | ||
48 | private EClass definedByDerivedFeatureEClass = null; | ||
49 | |||
50 | /** | ||
51 | * Creates an instance of the model <b>Package</b>, registered with | ||
52 | * {@link org.eclipse.emf.ecore.EPackage.Registry EPackage.Registry} by the package | ||
53 | * package URI value. | ||
54 | * <p>Note: the correct way to create the package is via the static | ||
55 | * factory method {@link #init init()}, which also performs | ||
56 | * initialization of the package, or returns the registered package, | ||
57 | * if one already exists. | ||
58 | * <!-- begin-user-doc --> | ||
59 | * <!-- end-user-doc --> | ||
60 | * @see org.eclipse.emf.ecore.EPackage.Registry | ||
61 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsPackage#eNS_URI | ||
62 | * @see #init() | ||
63 | * @generated | ||
64 | */ | ||
65 | private Viatra2LogicAnnotationsPackageImpl() { | ||
66 | super(eNS_URI, Viatra2LogicAnnotationsFactory.eINSTANCE); | ||
67 | } | ||
68 | |||
69 | /** | ||
70 | * <!-- begin-user-doc --> | ||
71 | * <!-- end-user-doc --> | ||
72 | * @generated | ||
73 | */ | ||
74 | private static boolean isInited = false; | ||
75 | |||
76 | /** | ||
77 | * Creates, registers, and initializes the <b>Package</b> for this model, and for any others upon which it depends. | ||
78 | * | ||
79 | * <p>This method is used to initialize {@link Viatra2LogicAnnotationsPackage#eINSTANCE} when that field is accessed. | ||
80 | * Clients should not invoke it directly. Instead, they should simply access that field to obtain the package. | ||
81 | * <!-- begin-user-doc --> | ||
82 | * <!-- end-user-doc --> | ||
83 | * @see #eNS_URI | ||
84 | * @see #createPackageContents() | ||
85 | * @see #initializePackageContents() | ||
86 | * @generated | ||
87 | */ | ||
88 | public static Viatra2LogicAnnotationsPackage init() { | ||
89 | if (isInited) return (Viatra2LogicAnnotationsPackage)EPackage.Registry.INSTANCE.getEPackage(Viatra2LogicAnnotationsPackage.eNS_URI); | ||
90 | |||
91 | // Obtain or create and register package | ||
92 | Viatra2LogicAnnotationsPackageImpl theViatra2LogicAnnotationsPackage = (Viatra2LogicAnnotationsPackageImpl)(EPackage.Registry.INSTANCE.get(eNS_URI) instanceof Viatra2LogicAnnotationsPackageImpl ? EPackage.Registry.INSTANCE.get(eNS_URI) : new Viatra2LogicAnnotationsPackageImpl()); | ||
93 | |||
94 | isInited = true; | ||
95 | |||
96 | // Initialize simple dependencies | ||
97 | LogiclanguagePackage.eINSTANCE.eClass(); | ||
98 | LogicproblemPackage.eINSTANCE.eClass(); | ||
99 | |||
100 | // Create package meta-data objects | ||
101 | theViatra2LogicAnnotationsPackage.createPackageContents(); | ||
102 | |||
103 | // Initialize created meta-data | ||
104 | theViatra2LogicAnnotationsPackage.initializePackageContents(); | ||
105 | |||
106 | // Mark meta-data to indicate it can't be changed | ||
107 | theViatra2LogicAnnotationsPackage.freeze(); | ||
108 | |||
109 | |||
110 | // Update the registry and return the package | ||
111 | EPackage.Registry.INSTANCE.put(Viatra2LogicAnnotationsPackage.eNS_URI, theViatra2LogicAnnotationsPackage); | ||
112 | return theViatra2LogicAnnotationsPackage; | ||
113 | } | ||
114 | |||
115 | /** | ||
116 | * <!-- begin-user-doc --> | ||
117 | * <!-- end-user-doc --> | ||
118 | * @generated | ||
119 | */ | ||
120 | public EClass getTransfomedViatraQuery() { | ||
121 | return transfomedViatraQueryEClass; | ||
122 | } | ||
123 | |||
124 | /** | ||
125 | * <!-- begin-user-doc --> | ||
126 | * <!-- end-user-doc --> | ||
127 | * @generated | ||
128 | */ | ||
129 | public EAttribute getTransfomedViatraQuery_PatternFullyQualifiedName() { | ||
130 | return (EAttribute)transfomedViatraQueryEClass.getEStructuralFeatures().get(0); | ||
131 | } | ||
132 | |||
133 | /** | ||
134 | * <!-- begin-user-doc --> | ||
135 | * <!-- end-user-doc --> | ||
136 | * @generated | ||
137 | */ | ||
138 | public EClass getTransformedViatraWellformednessConstraint() { | ||
139 | return transformedViatraWellformednessConstraintEClass; | ||
140 | } | ||
141 | |||
142 | /** | ||
143 | * <!-- begin-user-doc --> | ||
144 | * <!-- end-user-doc --> | ||
145 | * @generated | ||
146 | */ | ||
147 | public EReference getTransformedViatraWellformednessConstraint_Query() { | ||
148 | return (EReference)transformedViatraWellformednessConstraintEClass.getEStructuralFeatures().get(0); | ||
149 | } | ||
150 | |||
151 | /** | ||
152 | * <!-- begin-user-doc --> | ||
153 | * <!-- end-user-doc --> | ||
154 | * @generated | ||
155 | */ | ||
156 | public EClass getDefinedByDerivedFeature() { | ||
157 | return definedByDerivedFeatureEClass; | ||
158 | } | ||
159 | |||
160 | /** | ||
161 | * <!-- begin-user-doc --> | ||
162 | * <!-- end-user-doc --> | ||
163 | * @generated | ||
164 | */ | ||
165 | public EReference getDefinedByDerivedFeature_Query() { | ||
166 | return (EReference)definedByDerivedFeatureEClass.getEStructuralFeatures().get(0); | ||
167 | } | ||
168 | |||
169 | /** | ||
170 | * <!-- begin-user-doc --> | ||
171 | * <!-- end-user-doc --> | ||
172 | * @generated | ||
173 | */ | ||
174 | public Viatra2LogicAnnotationsFactory getViatra2LogicAnnotationsFactory() { | ||
175 | return (Viatra2LogicAnnotationsFactory)getEFactoryInstance(); | ||
176 | } | ||
177 | |||
178 | /** | ||
179 | * <!-- begin-user-doc --> | ||
180 | * <!-- end-user-doc --> | ||
181 | * @generated | ||
182 | */ | ||
183 | private boolean isCreated = false; | ||
184 | |||
185 | /** | ||
186 | * Creates the meta-model objects for the package. This method is | ||
187 | * guarded to have no affect on any invocation but its first. | ||
188 | * <!-- begin-user-doc --> | ||
189 | * <!-- end-user-doc --> | ||
190 | * @generated | ||
191 | */ | ||
192 | public void createPackageContents() { | ||
193 | if (isCreated) return; | ||
194 | isCreated = true; | ||
195 | |||
196 | // Create classes and their features | ||
197 | transfomedViatraQueryEClass = createEClass(TRANSFOMED_VIATRA_QUERY); | ||
198 | createEAttribute(transfomedViatraQueryEClass, TRANSFOMED_VIATRA_QUERY__PATTERN_FULLY_QUALIFIED_NAME); | ||
199 | |||
200 | transformedViatraWellformednessConstraintEClass = createEClass(TRANSFORMED_VIATRA_WELLFORMEDNESS_CONSTRAINT); | ||
201 | createEReference(transformedViatraWellformednessConstraintEClass, TRANSFORMED_VIATRA_WELLFORMEDNESS_CONSTRAINT__QUERY); | ||
202 | |||
203 | definedByDerivedFeatureEClass = createEClass(DEFINED_BY_DERIVED_FEATURE); | ||
204 | createEReference(definedByDerivedFeatureEClass, DEFINED_BY_DERIVED_FEATURE__QUERY); | ||
205 | } | ||
206 | |||
207 | /** | ||
208 | * <!-- begin-user-doc --> | ||
209 | * <!-- end-user-doc --> | ||
210 | * @generated | ||
211 | */ | ||
212 | private boolean isInitialized = false; | ||
213 | |||
214 | /** | ||
215 | * Complete the initialization of the package and its meta-model. This | ||
216 | * method is guarded to have no affect on any invocation but its first. | ||
217 | * <!-- begin-user-doc --> | ||
218 | * <!-- end-user-doc --> | ||
219 | * @generated | ||
220 | */ | ||
221 | public void initializePackageContents() { | ||
222 | if (isInitialized) return; | ||
223 | isInitialized = true; | ||
224 | |||
225 | // Initialize package | ||
226 | setName(eNAME); | ||
227 | setNsPrefix(eNS_PREFIX); | ||
228 | setNsURI(eNS_URI); | ||
229 | |||
230 | // Obtain other dependent packages | ||
231 | LogicproblemPackage theLogicproblemPackage = (LogicproblemPackage)EPackage.Registry.INSTANCE.getEPackage(LogicproblemPackage.eNS_URI); | ||
232 | |||
233 | // Create type parameters | ||
234 | |||
235 | // Set bounds for type parameters | ||
236 | |||
237 | // Add supertypes to classes | ||
238 | transfomedViatraQueryEClass.getESuperTypes().add(theLogicproblemPackage.getRelationAnnotation()); | ||
239 | transformedViatraWellformednessConstraintEClass.getESuperTypes().add(theLogicproblemPackage.getAssertionAnnotation()); | ||
240 | definedByDerivedFeatureEClass.getESuperTypes().add(theLogicproblemPackage.getRelationAnnotation()); | ||
241 | |||
242 | // Initialize classes, features, and operations; add parameters | ||
243 | initEClass(transfomedViatraQueryEClass, TransfomedViatraQuery.class, "TransfomedViatraQuery", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
244 | initEAttribute(getTransfomedViatraQuery_PatternFullyQualifiedName(), ecorePackage.getEString(), "patternFullyQualifiedName", null, 1, 1, TransfomedViatraQuery.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
245 | |||
246 | initEClass(transformedViatraWellformednessConstraintEClass, TransformedViatraWellformednessConstraint.class, "TransformedViatraWellformednessConstraint", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
247 | initEReference(getTransformedViatraWellformednessConstraint_Query(), this.getTransfomedViatraQuery(), null, "query", null, 1, 1, TransformedViatraWellformednessConstraint.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
248 | |||
249 | initEClass(definedByDerivedFeatureEClass, DefinedByDerivedFeature.class, "DefinedByDerivedFeature", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS); | ||
250 | initEReference(getDefinedByDerivedFeature_Query(), this.getTransfomedViatraQuery(), null, "query", null, 1, 1, DefinedByDerivedFeature.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED); | ||
251 | |||
252 | // Create resource | ||
253 | createResource(eNS_URI); | ||
254 | } | ||
255 | |||
256 | } //Viatra2LogicAnnotationsPackageImpl | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/util/Viatra2LogicAnnotationsAdapterFactory.java b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/util/Viatra2LogicAnnotationsAdapterFactory.java new file mode 100644 index 00000000..91bbdc9f --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/util/Viatra2LogicAnnotationsAdapterFactory.java | |||
@@ -0,0 +1,214 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.util; | ||
4 | |||
5 | import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.Annotation; | ||
6 | import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.AssertionAnnotation; | ||
7 | import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.RelationAnnotation; | ||
8 | |||
9 | import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.*; | ||
10 | |||
11 | import org.eclipse.emf.common.notify.Adapter; | ||
12 | import org.eclipse.emf.common.notify.Notifier; | ||
13 | |||
14 | import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl; | ||
15 | |||
16 | import org.eclipse.emf.ecore.EObject; | ||
17 | |||
18 | /** | ||
19 | * <!-- begin-user-doc --> | ||
20 | * The <b>Adapter Factory</b> for the model. | ||
21 | * It provides an adapter <code>createXXX</code> method for each class of the model. | ||
22 | * <!-- end-user-doc --> | ||
23 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsPackage | ||
24 | * @generated | ||
25 | */ | ||
26 | public class Viatra2LogicAnnotationsAdapterFactory extends AdapterFactoryImpl { | ||
27 | /** | ||
28 | * The cached model package. | ||
29 | * <!-- begin-user-doc --> | ||
30 | * <!-- end-user-doc --> | ||
31 | * @generated | ||
32 | */ | ||
33 | protected static Viatra2LogicAnnotationsPackage modelPackage; | ||
34 | |||
35 | /** | ||
36 | * Creates an instance of the adapter factory. | ||
37 | * <!-- begin-user-doc --> | ||
38 | * <!-- end-user-doc --> | ||
39 | * @generated | ||
40 | */ | ||
41 | public Viatra2LogicAnnotationsAdapterFactory() { | ||
42 | if (modelPackage == null) { | ||
43 | modelPackage = Viatra2LogicAnnotationsPackage.eINSTANCE; | ||
44 | } | ||
45 | } | ||
46 | |||
47 | /** | ||
48 | * Returns whether this factory is applicable for the type of the object. | ||
49 | * <!-- begin-user-doc --> | ||
50 | * This implementation returns <code>true</code> if the object is either the model's package or is an instance object of the model. | ||
51 | * <!-- end-user-doc --> | ||
52 | * @return whether this factory is applicable for the type of the object. | ||
53 | * @generated | ||
54 | */ | ||
55 | @Override | ||
56 | public boolean isFactoryForType(Object object) { | ||
57 | if (object == modelPackage) { | ||
58 | return true; | ||
59 | } | ||
60 | if (object instanceof EObject) { | ||
61 | return ((EObject)object).eClass().getEPackage() == modelPackage; | ||
62 | } | ||
63 | return false; | ||
64 | } | ||
65 | |||
66 | /** | ||
67 | * The switch that delegates to the <code>createXXX</code> methods. | ||
68 | * <!-- begin-user-doc --> | ||
69 | * <!-- end-user-doc --> | ||
70 | * @generated | ||
71 | */ | ||
72 | protected Viatra2LogicAnnotationsSwitch<Adapter> modelSwitch = | ||
73 | new Viatra2LogicAnnotationsSwitch<Adapter>() { | ||
74 | @Override | ||
75 | public Adapter caseTransfomedViatraQuery(TransfomedViatraQuery object) { | ||
76 | return createTransfomedViatraQueryAdapter(); | ||
77 | } | ||
78 | @Override | ||
79 | public Adapter caseTransformedViatraWellformednessConstraint(TransformedViatraWellformednessConstraint object) { | ||
80 | return createTransformedViatraWellformednessConstraintAdapter(); | ||
81 | } | ||
82 | @Override | ||
83 | public Adapter caseDefinedByDerivedFeature(DefinedByDerivedFeature object) { | ||
84 | return createDefinedByDerivedFeatureAdapter(); | ||
85 | } | ||
86 | @Override | ||
87 | public Adapter caseAnnotation(Annotation object) { | ||
88 | return createAnnotationAdapter(); | ||
89 | } | ||
90 | @Override | ||
91 | public Adapter caseRelationAnnotation(RelationAnnotation object) { | ||
92 | return createRelationAnnotationAdapter(); | ||
93 | } | ||
94 | @Override | ||
95 | public Adapter caseAssertionAnnotation(AssertionAnnotation object) { | ||
96 | return createAssertionAnnotationAdapter(); | ||
97 | } | ||
98 | @Override | ||
99 | public Adapter defaultCase(EObject object) { | ||
100 | return createEObjectAdapter(); | ||
101 | } | ||
102 | }; | ||
103 | |||
104 | /** | ||
105 | * Creates an adapter for the <code>target</code>. | ||
106 | * <!-- begin-user-doc --> | ||
107 | * <!-- end-user-doc --> | ||
108 | * @param target the object to adapt. | ||
109 | * @return the adapter for the <code>target</code>. | ||
110 | * @generated | ||
111 | */ | ||
112 | @Override | ||
113 | public Adapter createAdapter(Notifier target) { | ||
114 | return modelSwitch.doSwitch((EObject)target); | ||
115 | } | ||
116 | |||
117 | |||
118 | /** | ||
119 | * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransfomedViatraQuery <em>Transfomed Viatra Query</em>}'. | ||
120 | * <!-- begin-user-doc --> | ||
121 | * This default implementation returns null so that we can easily ignore cases; | ||
122 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
123 | * <!-- end-user-doc --> | ||
124 | * @return the new adapter. | ||
125 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransfomedViatraQuery | ||
126 | * @generated | ||
127 | */ | ||
128 | public Adapter createTransfomedViatraQueryAdapter() { | ||
129 | return null; | ||
130 | } | ||
131 | |||
132 | /** | ||
133 | * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransformedViatraWellformednessConstraint <em>Transformed Viatra Wellformedness Constraint</em>}'. | ||
134 | * <!-- begin-user-doc --> | ||
135 | * This default implementation returns null so that we can easily ignore cases; | ||
136 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
137 | * <!-- end-user-doc --> | ||
138 | * @return the new adapter. | ||
139 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransformedViatraWellformednessConstraint | ||
140 | * @generated | ||
141 | */ | ||
142 | public Adapter createTransformedViatraWellformednessConstraintAdapter() { | ||
143 | return null; | ||
144 | } | ||
145 | |||
146 | /** | ||
147 | * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.DefinedByDerivedFeature <em>Defined By Derived Feature</em>}'. | ||
148 | * <!-- begin-user-doc --> | ||
149 | * This default implementation returns null so that we can easily ignore cases; | ||
150 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
151 | * <!-- end-user-doc --> | ||
152 | * @return the new adapter. | ||
153 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.DefinedByDerivedFeature | ||
154 | * @generated | ||
155 | */ | ||
156 | public Adapter createDefinedByDerivedFeatureAdapter() { | ||
157 | return null; | ||
158 | } | ||
159 | |||
160 | /** | ||
161 | * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.Annotation <em>Annotation</em>}'. | ||
162 | * <!-- begin-user-doc --> | ||
163 | * This default implementation returns null so that we can easily ignore cases; | ||
164 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
165 | * <!-- end-user-doc --> | ||
166 | * @return the new adapter. | ||
167 | * @see hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.Annotation | ||
168 | * @generated | ||
169 | */ | ||
170 | public Adapter createAnnotationAdapter() { | ||
171 | return null; | ||
172 | } | ||
173 | |||
174 | /** | ||
175 | * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.RelationAnnotation <em>Relation Annotation</em>}'. | ||
176 | * <!-- begin-user-doc --> | ||
177 | * This default implementation returns null so that we can easily ignore cases; | ||
178 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
179 | * <!-- end-user-doc --> | ||
180 | * @return the new adapter. | ||
181 | * @see hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.RelationAnnotation | ||
182 | * @generated | ||
183 | */ | ||
184 | public Adapter createRelationAnnotationAdapter() { | ||
185 | return null; | ||
186 | } | ||
187 | |||
188 | /** | ||
189 | * Creates a new adapter for an object of class '{@link hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.AssertionAnnotation <em>Assertion Annotation</em>}'. | ||
190 | * <!-- begin-user-doc --> | ||
191 | * This default implementation returns null so that we can easily ignore cases; | ||
192 | * it's useful to ignore a case when inheritance will catch all the cases anyway. | ||
193 | * <!-- end-user-doc --> | ||
194 | * @return the new adapter. | ||
195 | * @see hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.AssertionAnnotation | ||
196 | * @generated | ||
197 | */ | ||
198 | public Adapter createAssertionAnnotationAdapter() { | ||
199 | return null; | ||
200 | } | ||
201 | |||
202 | /** | ||
203 | * Creates a new adapter for the default case. | ||
204 | * <!-- begin-user-doc --> | ||
205 | * This default implementation returns null. | ||
206 | * <!-- end-user-doc --> | ||
207 | * @return the new adapter. | ||
208 | * @generated | ||
209 | */ | ||
210 | public Adapter createEObjectAdapter() { | ||
211 | return null; | ||
212 | } | ||
213 | |||
214 | } //Viatra2LogicAnnotationsAdapterFactory | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/util/Viatra2LogicAnnotationsSwitch.java b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/util/Viatra2LogicAnnotationsSwitch.java new file mode 100644 index 00000000..09288a62 --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen/hu/bme/mit/inf/dslreasoner/viatra2logic/viatra2logicannotations/util/Viatra2LogicAnnotationsSwitch.java | |||
@@ -0,0 +1,207 @@ | |||
1 | /** | ||
2 | */ | ||
3 | package hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.util; | ||
4 | |||
5 | import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.Annotation; | ||
6 | import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.AssertionAnnotation; | ||
7 | import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.RelationAnnotation; | ||
8 | |||
9 | import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.*; | ||
10 | |||
11 | import org.eclipse.emf.ecore.EObject; | ||
12 | import org.eclipse.emf.ecore.EPackage; | ||
13 | |||
14 | import org.eclipse.emf.ecore.util.Switch; | ||
15 | |||
16 | /** | ||
17 | * <!-- begin-user-doc --> | ||
18 | * The <b>Switch</b> for the model's inheritance hierarchy. | ||
19 | * It supports the call {@link #doSwitch(EObject) doSwitch(object)} | ||
20 | * to invoke the <code>caseXXX</code> method for each class of the model, | ||
21 | * starting with the actual class of the object | ||
22 | * and proceeding up the inheritance hierarchy | ||
23 | * until a non-null result is returned, | ||
24 | * which is the result of the switch. | ||
25 | * <!-- end-user-doc --> | ||
26 | * @see hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsPackage | ||
27 | * @generated | ||
28 | */ | ||
29 | public class Viatra2LogicAnnotationsSwitch<T> extends Switch<T> { | ||
30 | /** | ||
31 | * The cached model package | ||
32 | * <!-- begin-user-doc --> | ||
33 | * <!-- end-user-doc --> | ||
34 | * @generated | ||
35 | */ | ||
36 | protected static Viatra2LogicAnnotationsPackage modelPackage; | ||
37 | |||
38 | /** | ||
39 | * Creates an instance of the switch. | ||
40 | * <!-- begin-user-doc --> | ||
41 | * <!-- end-user-doc --> | ||
42 | * @generated | ||
43 | */ | ||
44 | public Viatra2LogicAnnotationsSwitch() { | ||
45 | if (modelPackage == null) { | ||
46 | modelPackage = Viatra2LogicAnnotationsPackage.eINSTANCE; | ||
47 | } | ||
48 | } | ||
49 | |||
50 | /** | ||
51 | * Checks whether this is a switch for the given package. | ||
52 | * <!-- begin-user-doc --> | ||
53 | * <!-- end-user-doc --> | ||
54 | * @param ePackage the package in question. | ||
55 | * @return whether this is a switch for the given package. | ||
56 | * @generated | ||
57 | */ | ||
58 | @Override | ||
59 | protected boolean isSwitchFor(EPackage ePackage) { | ||
60 | return ePackage == modelPackage; | ||
61 | } | ||
62 | |||
63 | /** | ||
64 | * Calls <code>caseXXX</code> for each class of the model until one returns a non null result; it yields that result. | ||
65 | * <!-- begin-user-doc --> | ||
66 | * <!-- end-user-doc --> | ||
67 | * @return the first non-null result returned by a <code>caseXXX</code> call. | ||
68 | * @generated | ||
69 | */ | ||
70 | @Override | ||
71 | protected T doSwitch(int classifierID, EObject theEObject) { | ||
72 | switch (classifierID) { | ||
73 | case Viatra2LogicAnnotationsPackage.TRANSFOMED_VIATRA_QUERY: { | ||
74 | TransfomedViatraQuery transfomedViatraQuery = (TransfomedViatraQuery)theEObject; | ||
75 | T result = caseTransfomedViatraQuery(transfomedViatraQuery); | ||
76 | if (result == null) result = caseRelationAnnotation(transfomedViatraQuery); | ||
77 | if (result == null) result = caseAnnotation(transfomedViatraQuery); | ||
78 | if (result == null) result = defaultCase(theEObject); | ||
79 | return result; | ||
80 | } | ||
81 | case Viatra2LogicAnnotationsPackage.TRANSFORMED_VIATRA_WELLFORMEDNESS_CONSTRAINT: { | ||
82 | TransformedViatraWellformednessConstraint transformedViatraWellformednessConstraint = (TransformedViatraWellformednessConstraint)theEObject; | ||
83 | T result = caseTransformedViatraWellformednessConstraint(transformedViatraWellformednessConstraint); | ||
84 | if (result == null) result = caseAssertionAnnotation(transformedViatraWellformednessConstraint); | ||
85 | if (result == null) result = caseAnnotation(transformedViatraWellformednessConstraint); | ||
86 | if (result == null) result = defaultCase(theEObject); | ||
87 | return result; | ||
88 | } | ||
89 | case Viatra2LogicAnnotationsPackage.DEFINED_BY_DERIVED_FEATURE: { | ||
90 | DefinedByDerivedFeature definedByDerivedFeature = (DefinedByDerivedFeature)theEObject; | ||
91 | T result = caseDefinedByDerivedFeature(definedByDerivedFeature); | ||
92 | if (result == null) result = caseRelationAnnotation(definedByDerivedFeature); | ||
93 | if (result == null) result = caseAnnotation(definedByDerivedFeature); | ||
94 | if (result == null) result = defaultCase(theEObject); | ||
95 | return result; | ||
96 | } | ||
97 | default: return defaultCase(theEObject); | ||
98 | } | ||
99 | } | ||
100 | |||
101 | /** | ||
102 | * Returns the result of interpreting the object as an instance of '<em>Transfomed Viatra Query</em>'. | ||
103 | * <!-- begin-user-doc --> | ||
104 | * This implementation returns null; | ||
105 | * returning a non-null result will terminate the switch. | ||
106 | * <!-- end-user-doc --> | ||
107 | * @param object the target of the switch. | ||
108 | * @return the result of interpreting the object as an instance of '<em>Transfomed Viatra Query</em>'. | ||
109 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
110 | * @generated | ||
111 | */ | ||
112 | public T caseTransfomedViatraQuery(TransfomedViatraQuery object) { | ||
113 | return null; | ||
114 | } | ||
115 | |||
116 | /** | ||
117 | * Returns the result of interpreting the object as an instance of '<em>Transformed Viatra Wellformedness Constraint</em>'. | ||
118 | * <!-- begin-user-doc --> | ||
119 | * This implementation returns null; | ||
120 | * returning a non-null result will terminate the switch. | ||
121 | * <!-- end-user-doc --> | ||
122 | * @param object the target of the switch. | ||
123 | * @return the result of interpreting the object as an instance of '<em>Transformed Viatra Wellformedness Constraint</em>'. | ||
124 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
125 | * @generated | ||
126 | */ | ||
127 | public T caseTransformedViatraWellformednessConstraint(TransformedViatraWellformednessConstraint object) { | ||
128 | return null; | ||
129 | } | ||
130 | |||
131 | /** | ||
132 | * Returns the result of interpreting the object as an instance of '<em>Defined By Derived Feature</em>'. | ||
133 | * <!-- begin-user-doc --> | ||
134 | * This implementation returns null; | ||
135 | * returning a non-null result will terminate the switch. | ||
136 | * <!-- end-user-doc --> | ||
137 | * @param object the target of the switch. | ||
138 | * @return the result of interpreting the object as an instance of '<em>Defined By Derived Feature</em>'. | ||
139 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
140 | * @generated | ||
141 | */ | ||
142 | public T caseDefinedByDerivedFeature(DefinedByDerivedFeature object) { | ||
143 | return null; | ||
144 | } | ||
145 | |||
146 | /** | ||
147 | * Returns the result of interpreting the object as an instance of '<em>Annotation</em>'. | ||
148 | * <!-- begin-user-doc --> | ||
149 | * This implementation returns null; | ||
150 | * returning a non-null result will terminate the switch. | ||
151 | * <!-- end-user-doc --> | ||
152 | * @param object the target of the switch. | ||
153 | * @return the result of interpreting the object as an instance of '<em>Annotation</em>'. | ||
154 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
155 | * @generated | ||
156 | */ | ||
157 | public T caseAnnotation(Annotation object) { | ||
158 | return null; | ||
159 | } | ||
160 | |||
161 | /** | ||
162 | * Returns the result of interpreting the object as an instance of '<em>Relation Annotation</em>'. | ||
163 | * <!-- begin-user-doc --> | ||
164 | * This implementation returns null; | ||
165 | * returning a non-null result will terminate the switch. | ||
166 | * <!-- end-user-doc --> | ||
167 | * @param object the target of the switch. | ||
168 | * @return the result of interpreting the object as an instance of '<em>Relation Annotation</em>'. | ||
169 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
170 | * @generated | ||
171 | */ | ||
172 | public T caseRelationAnnotation(RelationAnnotation object) { | ||
173 | return null; | ||
174 | } | ||
175 | |||
176 | /** | ||
177 | * Returns the result of interpreting the object as an instance of '<em>Assertion Annotation</em>'. | ||
178 | * <!-- begin-user-doc --> | ||
179 | * This implementation returns null; | ||
180 | * returning a non-null result will terminate the switch. | ||
181 | * <!-- end-user-doc --> | ||
182 | * @param object the target of the switch. | ||
183 | * @return the result of interpreting the object as an instance of '<em>Assertion Annotation</em>'. | ||
184 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject) | ||
185 | * @generated | ||
186 | */ | ||
187 | public T caseAssertionAnnotation(AssertionAnnotation object) { | ||
188 | return null; | ||
189 | } | ||
190 | |||
191 | /** | ||
192 | * Returns the result of interpreting the object as an instance of '<em>EObject</em>'. | ||
193 | * <!-- begin-user-doc --> | ||
194 | * This implementation returns null; | ||
195 | * returning a non-null result will terminate the switch, but this is the last case anyway. | ||
196 | * <!-- end-user-doc --> | ||
197 | * @param object the target of the switch. | ||
198 | * @return the result of interpreting the object as an instance of '<em>EObject</em>'. | ||
199 | * @see #doSwitch(org.eclipse.emf.ecore.EObject) | ||
200 | * @generated | ||
201 | */ | ||
202 | @Override | ||
203 | public T defaultCase(EObject object) { | ||
204 | return null; | ||
205 | } | ||
206 | |||
207 | } //Viatra2LogicAnnotationsSwitch | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/model/ViatraModelAnnotations.aird b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/model/ViatraModelAnnotations.aird new file mode 100644 index 00000000..b4c8ec92 --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/model/ViatraModelAnnotations.aird | |||
@@ -0,0 +1,394 @@ | |||
1 | <?xml version="1.0" encoding="UTF-8"?> | ||
2 | <viewpoint:DAnalysis xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:description="http://www.eclipse.org/sirius/description/1.1.0" xmlns:description_1="http://www.eclipse.org/sirius/diagram/description/1.1.0" xmlns:diagram="http://www.eclipse.org/sirius/diagram/1.1.0" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:notation="http://www.eclipse.org/gmf/runtime/1.0.2/notation" xmlns:style="http://www.eclipse.org/sirius/diagram/description/style/1.1.0" xmlns:viewpoint="http://www.eclipse.org/sirius/1.1.0" xsi:schemaLocation="http://www.eclipse.org/sirius/description/1.1.0 http://www.eclipse.org/sirius/1.1.0#//description http://www.eclipse.org/sirius/diagram/description/1.1.0 http://www.eclipse.org/sirius/diagram/1.1.0#//description http://www.eclipse.org/sirius/diagram/description/style/1.1.0 http://www.eclipse.org/sirius/diagram/1.1.0#//description/style" xmi:id="_hKMI0LzSEeaj7tVusjQpHg" selectedViews="_hMdZsLzSEeaj7tVusjQpHg _hMvGgLzSEeaj7tVusjQpHg _hM760LzSEeaj7tVusjQpHg _hNNAkLzSEeaj7tVusjQpHg" version="10.1.0.201509162000"> | ||
3 | <semanticResources>ViatraModelAnnotations.ecore</semanticResources> | ||
4 | <semanticResources>platform:/resource/hu.bme.mit.inf.dslreasoner.logic.model/model/logicproblem.ecore</semanticResources> | ||
5 | <semanticResources>platform:/resource/hu.bme.mit.inf.dslreasoner.logic.model/model/logiclanguage.ecore</semanticResources> | ||
6 | <semanticResources>http://www.eclipse.org/emf/2002/Ecore</semanticResources> | ||
7 | <ownedViews xmi:type="viewpoint:DRepresentationContainer" xmi:id="_hMdZsLzSEeaj7tVusjQpHg"> | ||
8 | <ownedRepresentations xmi:type="diagram:DSemanticDiagram" xmi:id="_h6EtoLzSEeaj7tVusjQpHg" name="viatra2logicannotations class diagram"> | ||
9 | <ownedAnnotationEntries xmi:type="description:AnnotationEntry" xmi:id="_h6EtobzSEeaj7tVusjQpHg" source="DANNOTATION_CUSTOMIZATION_KEY"> | ||
10 | <data xmi:type="diagram:ComputedStyleDescriptionRegistry" xmi:id="_h6EtorzSEeaj7tVusjQpHg"> | ||
11 | <computedStyleDescriptions xmi:type="style:EdgeStyleDescription" xmi:id="_JijTsLzTEeaj7tVusjQpHg" routingStyle="manhattan"> | ||
12 | <strokeColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> | ||
13 | <centerLabelStyleDescription xmi:type="style:CenterLabelStyleDescription" xmi:id="_JijTsbzTEeaj7tVusjQpHg" showIcon="false" labelExpression="service:render"> | ||
14 | <labelFormat>bold</labelFormat> | ||
15 | <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> | ||
16 | </centerLabelStyleDescription> | ||
17 | <endLabelStyleDescription xmi:type="style:EndLabelStyleDescription" xmi:id="_JijTsrzTEeaj7tVusjQpHg" labelSize="6" showIcon="false" labelExpression="service:eKeysLabel"> | ||
18 | <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='dark_blue']"/> | ||
19 | </endLabelStyleDescription> | ||
20 | </computedStyleDescriptions> | ||
21 | <computedStyleDescriptions xmi:type="style:BundledImageDescription" xmi:id="__q-j0L2REeaj7tVusjQpHg" labelExpression="service:render" labelAlignment="LEFT" tooltipExpression="service:renderTooltip" sizeComputationExpression="1"> | ||
22 | <borderColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> | ||
23 | <labelFormat>bold</labelFormat> | ||
24 | <labelColor xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> | ||
25 | <color xmi:type="description:SystemColor" href="environment:/viewpoint#//@systemColors/@entries[name='black']"/> | ||
26 | </computedStyleDescriptions> | ||
27 | </data> | ||
28 | </ownedAnnotationEntries> | ||
29 | <ownedAnnotationEntries xmi:type="description:AnnotationEntry" xmi:id="_h6IYALzSEeaj7tVusjQpHg" source="GMF_DIAGRAMS"> | ||
30 | <data xmi:type="notation:Diagram" xmi:id="_h6IYAbzSEeaj7tVusjQpHg" type="Sirius" element="_h6EtoLzSEeaj7tVusjQpHg" measurementUnit="Pixel"> | ||
31 | <children xmi:type="notation:Node" xmi:id="_8vuhcLzSEeaj7tVusjQpHg" type="2003" element="_8vqQALzSEeaj7tVusjQpHg"> | ||
32 | <children xmi:type="notation:Node" xmi:id="_8vuhc7zSEeaj7tVusjQpHg" type="5007"/> | ||
33 | <children xmi:type="notation:Node" xmi:id="_8vuhdLzSEeaj7tVusjQpHg" type="7004"> | ||
34 | <children xmi:type="notation:Node" xmi:id="_4D-9QL2REeaj7tVusjQpHg" type="3010" element="_4Dt3gL2REeaj7tVusjQpHg"> | ||
35 | <styles xmi:type="notation:FontStyle" xmi:id="_4D-9Qb2REeaj7tVusjQpHg" fontColor="2697711" fontName="Segoe UI" fontHeight="8"/> | ||
36 | <layoutConstraint xmi:type="notation:Location" xmi:id="_4D-9Qr2REeaj7tVusjQpHg"/> | ||
37 | </children> | ||
38 | <styles xmi:type="notation:SortingStyle" xmi:id="_8vuhdbzSEeaj7tVusjQpHg"/> | ||
39 | <styles xmi:type="notation:FilteringStyle" xmi:id="_8vuhdrzSEeaj7tVusjQpHg"/> | ||
40 | </children> | ||
41 | <styles xmi:type="notation:ShapeStyle" xmi:id="_8vuhcbzSEeaj7tVusjQpHg" fontName="Segoe UI" fontHeight="8"/> | ||
42 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_8vuhcrzSEeaj7tVusjQpHg" x="5" y="390" width="228" height="53"/> | ||
43 | </children> | ||
44 | <children xmi:type="notation:Node" xmi:id="_Ci29sLzTEeaj7tVusjQpHg" type="2003" element="_Ciz6YLzTEeaj7tVusjQpHg"> | ||
45 | <children xmi:type="notation:Node" xmi:id="_Ci29s7zTEeaj7tVusjQpHg" type="5007"/> | ||
46 | <children xmi:type="notation:Node" xmi:id="_Ci3kwLzTEeaj7tVusjQpHg" type="7004"> | ||
47 | <styles xmi:type="notation:SortingStyle" xmi:id="_Ci3kwbzTEeaj7tVusjQpHg"/> | ||
48 | <styles xmi:type="notation:FilteringStyle" xmi:id="_Ci3kwrzTEeaj7tVusjQpHg"/> | ||
49 | </children> | ||
50 | <styles xmi:type="notation:ShapeStyle" xmi:id="_Ci29sbzTEeaj7tVusjQpHg" fontName="Segoe UI" fontHeight="8"/> | ||
51 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ci29srzTEeaj7tVusjQpHg" x="520" y="390" width="263" height="53"/> | ||
52 | </children> | ||
53 | <children xmi:type="notation:Node" xmi:id="_hos0ULzTEeaj7tVusjQpHg" type="2003" element="_hon70LzTEeaj7tVusjQpHg"> | ||
54 | <children xmi:type="notation:Node" xmi:id="_hotbYLzTEeaj7tVusjQpHg" type="5007"/> | ||
55 | <children xmi:type="notation:Node" xmi:id="_hotbYbzTEeaj7tVusjQpHg" type="7004"> | ||
56 | <styles xmi:type="notation:SortingStyle" xmi:id="_hotbYrzTEeaj7tVusjQpHg"/> | ||
57 | <styles xmi:type="notation:FilteringStyle" xmi:id="_hotbY7zTEeaj7tVusjQpHg"/> | ||
58 | </children> | ||
59 | <styles xmi:type="notation:ShapeStyle" xmi:id="_hos0UbzTEeaj7tVusjQpHg" fontName="Segoe UI" fontHeight="8"/> | ||
60 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_hos0UrzTEeaj7tVusjQpHg" x="180" y="320" height="23"/> | ||
61 | </children> | ||
62 | <children xmi:type="notation:Node" xmi:id="_kYcYELzTEeaj7tVusjQpHg" type="2003" element="_kYYGoLzTEeaj7tVusjQpHg"> | ||
63 | <children xmi:type="notation:Node" xmi:id="_kYcYE7zTEeaj7tVusjQpHg" type="5007"/> | ||
64 | <children xmi:type="notation:Node" xmi:id="_kYc_ILzTEeaj7tVusjQpHg" type="7004"> | ||
65 | <styles xmi:type="notation:SortingStyle" xmi:id="_kYc_IbzTEeaj7tVusjQpHg"/> | ||
66 | <styles xmi:type="notation:FilteringStyle" xmi:id="_kYc_IrzTEeaj7tVusjQpHg"/> | ||
67 | </children> | ||
68 | <styles xmi:type="notation:ShapeStyle" xmi:id="_kYcYEbzTEeaj7tVusjQpHg" fontName="Segoe UI" fontHeight="8"/> | ||
69 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kYcYErzTEeaj7tVusjQpHg" x="403" y="245" height="35"/> | ||
70 | </children> | ||
71 | <children xmi:type="notation:Node" xmi:id="_pqrGsLzTEeaj7tVusjQpHg" type="2003" element="_pqmOMLzTEeaj7tVusjQpHg"> | ||
72 | <children xmi:type="notation:Node" xmi:id="_pqrtwLzTEeaj7tVusjQpHg" type="5007"/> | ||
73 | <children xmi:type="notation:Node" xmi:id="_pqrtwbzTEeaj7tVusjQpHg" type="7004"> | ||
74 | <styles xmi:type="notation:SortingStyle" xmi:id="_pqrtwrzTEeaj7tVusjQpHg"/> | ||
75 | <styles xmi:type="notation:FilteringStyle" xmi:id="_pqrtw7zTEeaj7tVusjQpHg"/> | ||
76 | </children> | ||
77 | <styles xmi:type="notation:ShapeStyle" xmi:id="_pqrGsbzTEeaj7tVusjQpHg" fontName="Segoe UI" fontHeight="8"/> | ||
78 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pqrGsrzTEeaj7tVusjQpHg" x="580" y="320" height="28"/> | ||
79 | </children> | ||
80 | <children xmi:type="notation:Node" xmi:id="_7hZUIPObEeauOJk-5mBnBg" type="2003" element="_7gtXoPObEeauOJk-5mBnBg"> | ||
81 | <children xmi:type="notation:Node" xmi:id="_7hjFIPObEeauOJk-5mBnBg" type="5007"/> | ||
82 | <children xmi:type="notation:Node" xmi:id="_7hkTQPObEeauOJk-5mBnBg" type="7004"> | ||
83 | <styles xmi:type="notation:SortingStyle" xmi:id="_7hkTQfObEeauOJk-5mBnBg"/> | ||
84 | <styles xmi:type="notation:FilteringStyle" xmi:id="_7hkTQvObEeauOJk-5mBnBg"/> | ||
85 | </children> | ||
86 | <styles xmi:type="notation:ShapeStyle" xmi:id="_7hZUIfObEeauOJk-5mBnBg" fontName="Segoe UI" fontHeight="8"/> | ||
87 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_7hZUIvObEeauOJk-5mBnBg" x="245" y="390" width="263" height="53"/> | ||
88 | </children> | ||
89 | <styles xmi:type="notation:DiagramStyle" xmi:id="_h6IYArzSEeaj7tVusjQpHg"/> | ||
90 | <edges xmi:type="notation:Edge" xmi:id="_HcowELzTEeaj7tVusjQpHg" type="4001" element="_HcjQgLzTEeaj7tVusjQpHg" source="_Ci29sLzTEeaj7tVusjQpHg" target="_8vuhcLzSEeaj7tVusjQpHg"> | ||
91 | <children xmi:type="notation:Node" xmi:id="_HcowFLzTEeaj7tVusjQpHg" type="6001"> | ||
92 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HcowFbzTEeaj7tVusjQpHg" x="113" y="-12" width="59" height="17"/> | ||
93 | </children> | ||
94 | <children xmi:type="notation:Node" xmi:id="_HcowFrzTEeaj7tVusjQpHg" type="6002"> | ||
95 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HcowF7zTEeaj7tVusjQpHg" x="1" y="366"/> | ||
96 | </children> | ||
97 | <children xmi:type="notation:Node" xmi:id="_HcowGLzTEeaj7tVusjQpHg" type="6003"> | ||
98 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_HcowGbzTEeaj7tVusjQpHg" x="4" y="139"/> | ||
99 | </children> | ||
100 | <styles xmi:type="notation:ConnectorStyle" xmi:id="_HcowEbzTEeaj7tVusjQpHg" routing="Rectilinear"/> | ||
101 | <styles xmi:type="notation:FontStyle" xmi:id="_HcowErzTEeaj7tVusjQpHg" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> | ||
102 | <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_HcowE7zTEeaj7tVusjQpHg" points="[131, 21, 420, 26]$[131, 150, 420, 155]$[-401, 150, -112, 155]$[-401, 26, -112, 31]"/> | ||
103 | <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HcpXILzTEeaj7tVusjQpHg" id="(0.0,0.49019607843137253)"/> | ||
104 | <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_HcpXIbzTEeaj7tVusjQpHg" id="(1.0,0.39215686274509803)"/> | ||
105 | </edges> | ||
106 | <edges xmi:type="notation:Edge" xmi:id="_hotbZLzTEeaj7tVusjQpHg" type="4001" element="_hormMLzTEeaj7tVusjQpHg" source="_8vuhcLzSEeaj7tVusjQpHg" target="_hos0ULzTEeaj7tVusjQpHg"> | ||
107 | <children xmi:type="notation:Node" xmi:id="_houCcLzTEeaj7tVusjQpHg" type="6001"> | ||
108 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_houCcbzTEeaj7tVusjQpHg" y="-10"/> | ||
109 | </children> | ||
110 | <children xmi:type="notation:Node" xmi:id="_houCcrzTEeaj7tVusjQpHg" type="6002"> | ||
111 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_houCc7zTEeaj7tVusjQpHg" y="10"/> | ||
112 | </children> | ||
113 | <children xmi:type="notation:Node" xmi:id="_houCdLzTEeaj7tVusjQpHg" type="6003"> | ||
114 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_houCdbzTEeaj7tVusjQpHg" y="10"/> | ||
115 | </children> | ||
116 | <styles xmi:type="notation:ConnectorStyle" xmi:id="_hotbZbzTEeaj7tVusjQpHg" routing="Tree"/> | ||
117 | <styles xmi:type="notation:FontStyle" xmi:id="_hotbZrzTEeaj7tVusjQpHg" fontName="Segoe UI" fontHeight="8"/> | ||
118 | <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_hotbZ7zTEeaj7tVusjQpHg" points="[115, 240, 115, 240]$[0, 0, 0, 0]"/> | ||
119 | <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_howesLzTEeaj7tVusjQpHg" id="(0.6769911504424779,0.3926128590971272)"/> | ||
120 | <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_howesbzTEeaj7tVusjQpHg" id="(0.5,2.3333333333333335)"/> | ||
121 | </edges> | ||
122 | <edges xmi:type="notation:Edge" xmi:id="_kYdmMLzTEeaj7tVusjQpHg" type="4001" element="_kYbxALzTEeaj7tVusjQpHg" source="_hos0ULzTEeaj7tVusjQpHg" target="_kYcYELzTEeaj7tVusjQpHg"> | ||
123 | <children xmi:type="notation:Node" xmi:id="_kYeNQLzTEeaj7tVusjQpHg" type="6001"> | ||
124 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kYeNQbzTEeaj7tVusjQpHg" y="-10"/> | ||
125 | </children> | ||
126 | <children xmi:type="notation:Node" xmi:id="_kYeNQrzTEeaj7tVusjQpHg" type="6002"> | ||
127 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kYeNQ7zTEeaj7tVusjQpHg" y="10"/> | ||
128 | </children> | ||
129 | <children xmi:type="notation:Node" xmi:id="_kYeNRLzTEeaj7tVusjQpHg" type="6003"> | ||
130 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_kYeNRbzTEeaj7tVusjQpHg" y="10"/> | ||
131 | </children> | ||
132 | <styles xmi:type="notation:ConnectorStyle" xmi:id="_kYdmMbzTEeaj7tVusjQpHg" routing="Tree"/> | ||
133 | <styles xmi:type="notation:FontStyle" xmi:id="_kYdmMrzTEeaj7tVusjQpHg" fontName="Segoe UI" fontHeight="8"/> | ||
134 | <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_kYdmM7zTEeaj7tVusjQpHg" points="[126, 55, 126, 55]$[0, 0, 0, 0]"/> | ||
135 | <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kYhQkLzTEeaj7tVusjQpHg" id="(0.5,2.3333333333333335)"/> | ||
136 | <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_kYhQkbzTEeaj7tVusjQpHg" id="(0.5,-0.48484848484848486)"/> | ||
137 | </edges> | ||
138 | <edges xmi:type="notation:Edge" xmi:id="_pqsU0LzTEeaj7tVusjQpHg" type="4001" element="_pqp4kLzTEeaj7tVusjQpHg" source="_pqrGsLzTEeaj7tVusjQpHg" target="_kYcYELzTEeaj7tVusjQpHg"> | ||
139 | <children xmi:type="notation:Node" xmi:id="_pqsU1LzTEeaj7tVusjQpHg" type="6001"> | ||
140 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pqsU1bzTEeaj7tVusjQpHg" y="-10"/> | ||
141 | </children> | ||
142 | <children xmi:type="notation:Node" xmi:id="_pqsU1rzTEeaj7tVusjQpHg" type="6002"> | ||
143 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pqsU17zTEeaj7tVusjQpHg" y="10"/> | ||
144 | </children> | ||
145 | <children xmi:type="notation:Node" xmi:id="_pqsU2LzTEeaj7tVusjQpHg" type="6003"> | ||
146 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_pqsU2bzTEeaj7tVusjQpHg" y="10"/> | ||
147 | </children> | ||
148 | <styles xmi:type="notation:ConnectorStyle" xmi:id="_pqsU0bzTEeaj7tVusjQpHg" routing="Tree"/> | ||
149 | <styles xmi:type="notation:FontStyle" xmi:id="_pqsU0rzTEeaj7tVusjQpHg" fontName="Segoe UI" fontHeight="8"/> | ||
150 | <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_pqsU07zTEeaj7tVusjQpHg" points="[0, 0, 0, 0]$[305, -26, 305, -26]"/> | ||
151 | <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_pqs74LzTEeaj7tVusjQpHg" id="(0.5,1.8846153846153846)"/> | ||
152 | <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_pqs74bzTEeaj7tVusjQpHg" id="(0.5,-0.48484848484848486)"/> | ||
153 | </edges> | ||
154 | <edges xmi:type="notation:Edge" xmi:id="_rIM0oLzTEeaj7tVusjQpHg" type="4001" element="_rIFf4LzTEeaj7tVusjQpHg" source="_Ci29sLzTEeaj7tVusjQpHg" target="_pqrGsLzTEeaj7tVusjQpHg"> | ||
155 | <children xmi:type="notation:Node" xmi:id="_rINbsLzTEeaj7tVusjQpHg" type="6001"> | ||
156 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rINbsbzTEeaj7tVusjQpHg" y="-10"/> | ||
157 | </children> | ||
158 | <children xmi:type="notation:Node" xmi:id="_rINbsrzTEeaj7tVusjQpHg" type="6002"> | ||
159 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rINbs7zTEeaj7tVusjQpHg" y="10"/> | ||
160 | </children> | ||
161 | <children xmi:type="notation:Node" xmi:id="_rINbtLzTEeaj7tVusjQpHg" type="6003"> | ||
162 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_rINbtbzTEeaj7tVusjQpHg" y="10"/> | ||
163 | </children> | ||
164 | <styles xmi:type="notation:ConnectorStyle" xmi:id="_rIM0obzTEeaj7tVusjQpHg" routing="Tree"/> | ||
165 | <styles xmi:type="notation:FontStyle" xmi:id="_rIM0orzTEeaj7tVusjQpHg" fontName="Segoe UI" fontHeight="8"/> | ||
166 | <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_rIM0o7zTEeaj7tVusjQpHg" points="[0, 0, 0, 37]$[0, -37, 0, 0]"/> | ||
167 | <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rIOCwLzTEeaj7tVusjQpHg" id="(0.4866920152091255,0.17282261741906063)"/> | ||
168 | <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_rIOCwbzTEeaj7tVusjQpHg" id="(0.5,1.8846153846153846)"/> | ||
169 | </edges> | ||
170 | <edges xmi:type="notation:Edge" xmi:id="_Ff16QPOcEeauOJk-5mBnBg" type="4001" element="_Fff8APOcEeauOJk-5mBnBg" source="_7hZUIPObEeauOJk-5mBnBg" target="_hos0ULzTEeaj7tVusjQpHg"> | ||
171 | <children xmi:type="notation:Node" xmi:id="_Ff4WgPOcEeauOJk-5mBnBg" type="6001"> | ||
172 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ff4WgfOcEeauOJk-5mBnBg" y="-10"/> | ||
173 | </children> | ||
174 | <children xmi:type="notation:Node" xmi:id="_Ff5koPOcEeauOJk-5mBnBg" type="6002"> | ||
175 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ff5kofOcEeauOJk-5mBnBg" y="10"/> | ||
176 | </children> | ||
177 | <children xmi:type="notation:Node" xmi:id="_Ff6ywPOcEeauOJk-5mBnBg" type="6003"> | ||
178 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_Ff6ywfOcEeauOJk-5mBnBg" y="10"/> | ||
179 | </children> | ||
180 | <styles xmi:type="notation:ConnectorStyle" xmi:id="_Ff16QfOcEeauOJk-5mBnBg" routing="Tree"/> | ||
181 | <styles xmi:type="notation:FontStyle" xmi:id="_Ff16QvOcEeauOJk-5mBnBg" fontName="Segoe UI" fontHeight="8"/> | ||
182 | <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_Ff16Q_OcEeauOJk-5mBnBg" points="[0, 0, 245, 116]$[-245, -116, 0, 0]"/> | ||
183 | <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Ff8A4POcEeauOJk-5mBnBg" id="(0.40229885057471265,0.09803921568627451)"/> | ||
184 | <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_Ff8n8POcEeauOJk-5mBnBg" id="(0.5,2.3333333333333335)"/> | ||
185 | </edges> | ||
186 | <edges xmi:type="notation:Edge" xmi:id="_fhjIoPOcEeauOJk-5mBnBg" type="4001" element="_fhW7YPOcEeauOJk-5mBnBg" source="_7hZUIPObEeauOJk-5mBnBg" target="_8vuhcLzSEeaj7tVusjQpHg"> | ||
187 | <children xmi:type="notation:Node" xmi:id="_fhjvsPOcEeauOJk-5mBnBg" type="6001"> | ||
188 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fhjvsfOcEeauOJk-5mBnBg" x="8" y="10"/> | ||
189 | </children> | ||
190 | <children xmi:type="notation:Node" xmi:id="_fhjvsvOcEeauOJk-5mBnBg" type="6002"> | ||
191 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fhjvs_OcEeauOJk-5mBnBg" x="-8" y="133"/> | ||
192 | </children> | ||
193 | <children xmi:type="notation:Node" xmi:id="_fhjvtPOcEeauOJk-5mBnBg" type="6003"> | ||
194 | <layoutConstraint xmi:type="notation:Bounds" xmi:id="_fhjvtfOcEeauOJk-5mBnBg" x="8" y="98"/> | ||
195 | </children> | ||
196 | <styles xmi:type="notation:ConnectorStyle" xmi:id="_fhjIofOcEeauOJk-5mBnBg" routing="Rectilinear"/> | ||
197 | <styles xmi:type="notation:FontStyle" xmi:id="_fhjIovOcEeauOJk-5mBnBg" fontColor="7490599" fontName="Segoe UI" fontHeight="8"/> | ||
198 | <bendpoints xmi:type="notation:RelativeBendpoints" xmi:id="_fhjIo_OcEeauOJk-5mBnBg" points="[131, 26, 145, 26]$[131, 80, 145, 80]$[-110, 80, -96, 80]$[-110, 26, -96, 26]"/> | ||
199 | <sourceAnchor xmi:type="notation:IdentityAnchor" xmi:id="_fhjvtvOcEeauOJk-5mBnBg" id="(0.0,0.49019607843137253)"/> | ||
200 | <targetAnchor xmi:type="notation:IdentityAnchor" xmi:id="_fhjvt_OcEeauOJk-5mBnBg" id="(1.0,0.49019607843137253)"/> | ||
201 | </edges> | ||
202 | </data> | ||
203 | </ownedAnnotationEntries> | ||
204 | <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_8vqQALzSEeaj7tVusjQpHg" name="TransfomedViatraQuery" tooltipText="" outgoingEdges="_hormMLzTEeaj7tVusjQpHg" incomingEdges="_HcjQgLzTEeaj7tVusjQpHg _fhW7YPOcEeauOJk-5mBnBg" width="12" height="10"> | ||
205 | <target xmi:type="ecore:EClass" href="ViatraModelAnnotations.ecore#//TransfomedViatraQuery"/> | ||
206 | <semanticElements xmi:type="ecore:EClass" href="ViatraModelAnnotations.ecore#//TransfomedViatraQuery"/> | ||
207 | <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> | ||
208 | <arrangeConstraints>KEEP_SIZE</arrangeConstraints> | ||
209 | <arrangeConstraints>KEEP_RATIO</arrangeConstraints> | ||
210 | <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="__LnHQL2REeaj7tVusjQpHg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> | ||
211 | <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> | ||
212 | </ownedStyle> | ||
213 | <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> | ||
214 | <ownedElements xmi:type="diagram:DNodeListElement" xmi:id="_4Dt3gL2REeaj7tVusjQpHg" name="patternFullyQualifiedName : EString" tooltipText=""> | ||
215 | <target xmi:type="ecore:EAttribute" href="ViatraModelAnnotations.ecore#//TransfomedViatraQuery/patternFullyQualifiedName"/> | ||
216 | <semanticElements xmi:type="ecore:EAttribute" href="ViatraModelAnnotations.ecore#//TransfomedViatraQuery/patternFullyQualifiedName"/> | ||
217 | <ownedStyle xmi:type="diagram:BundledImage" xmi:id="__q-j0b2REeaj7tVusjQpHg" labelAlignment="LEFT" description="__q-j0L2REeaj7tVusjQpHg"> | ||
218 | <labelFormat>bold</labelFormat> | ||
219 | </ownedStyle> | ||
220 | <actualMapping xmi:type="description_1:NodeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@subNodeMappings[name='EC%20EAttribute']"/> | ||
221 | </ownedElements> | ||
222 | </ownedDiagramElements> | ||
223 | <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_Ciz6YLzTEeaj7tVusjQpHg" name="TransformedViatraWellformednessConstraint" tooltipText="" outgoingEdges="_HcjQgLzTEeaj7tVusjQpHg _rIFf4LzTEeaj7tVusjQpHg" width="12" height="10"> | ||
224 | <target xmi:type="ecore:EClass" href="ViatraModelAnnotations.ecore#//TransformedViatraWellformednessConstraint"/> | ||
225 | <semanticElements xmi:type="ecore:EClass" href="ViatraModelAnnotations.ecore#//TransformedViatraWellformednessConstraint"/> | ||
226 | <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> | ||
227 | <arrangeConstraints>KEEP_SIZE</arrangeConstraints> | ||
228 | <arrangeConstraints>KEEP_RATIO</arrangeConstraints> | ||
229 | <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_Ci0hcLzTEeaj7tVusjQpHg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> | ||
230 | <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> | ||
231 | </ownedStyle> | ||
232 | <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> | ||
233 | </ownedDiagramElements> | ||
234 | <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_HcjQgLzTEeaj7tVusjQpHg" name="[1..1] query" sourceNode="_Ciz6YLzTEeaj7tVusjQpHg" targetNode="_8vqQALzSEeaj7tVusjQpHg"> | ||
235 | <target xmi:type="ecore:EReference" href="ViatraModelAnnotations.ecore#//TransformedViatraWellformednessConstraint/query"/> | ||
236 | <semanticElements xmi:type="ecore:EReference" href="ViatraModelAnnotations.ecore#//TransformedViatraWellformednessConstraint/query"/> | ||
237 | <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_JijTs7zTEeaj7tVusjQpHg" description="_JijTsLzTEeaj7tVusjQpHg" routingStyle="manhattan" strokeColor="0,0,0"> | ||
238 | <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_JijTtLzTEeaj7tVusjQpHg" showIcon="false"> | ||
239 | <labelFormat>bold</labelFormat> | ||
240 | </centerLabelStyle> | ||
241 | <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_JijTtbzTEeaj7tVusjQpHg" labelSize="6" showIcon="false" labelColor="39,76,114"/> | ||
242 | </ownedStyle> | ||
243 | <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> | ||
244 | </ownedDiagramElements> | ||
245 | <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_hon70LzTEeaj7tVusjQpHg" name="RelationAnnotation" tooltipText="" outgoingEdges="_kYbxALzTEeaj7tVusjQpHg" incomingEdges="_hormMLzTEeaj7tVusjQpHg _Fff8APOcEeauOJk-5mBnBg" width="12" height="10"> | ||
246 | <target xmi:type="ecore:EClass" href="platform:/resource/hu.bme.mit.inf.dslreasoner.logic.model/model/logicproblem.ecore#//RelationAnnotation"/> | ||
247 | <semanticElements xmi:type="ecore:EClass" href="platform:/resource/hu.bme.mit.inf.dslreasoner.logic.model/model/logicproblem.ecore#//RelationAnnotation"/> | ||
248 | <decorations xmi:type="viewpoint:Decoration" xmi:id="_hoq_ILzTEeaj7tVusjQpHg"> | ||
249 | <description xmi:type="description:SemanticBasedDecoration" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@decorationDescriptionsSet/@decorationDescriptions[name='External']"/> | ||
250 | </decorations> | ||
251 | <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> | ||
252 | <arrangeConstraints>KEEP_SIZE</arrangeConstraints> | ||
253 | <arrangeConstraints>KEEP_RATIO</arrangeConstraints> | ||
254 | <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_hon70bzTEeaj7tVusjQpHg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> | ||
255 | <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> | ||
256 | </ownedStyle> | ||
257 | <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> | ||
258 | </ownedDiagramElements> | ||
259 | <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_hormMLzTEeaj7tVusjQpHg" sourceNode="_8vqQALzSEeaj7tVusjQpHg" targetNode="_hon70LzTEeaj7tVusjQpHg"> | ||
260 | <target xmi:type="ecore:EClass" href="ViatraModelAnnotations.ecore#//TransfomedViatraQuery"/> | ||
261 | <semanticElements xmi:type="ecore:EGenericType" href="ViatraModelAnnotations.ecore#//TransfomedViatraQuery/@eGenericSuperTypes.0"/> | ||
262 | <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="__LpjgL2REeaj7tVusjQpHg" targetArrow="InputClosedArrow" routingStyle="tree"> | ||
263 | <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> | ||
264 | <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="__Lpjgb2REeaj7tVusjQpHg" showIcon="false"> | ||
265 | <labelFormat>italic</labelFormat> | ||
266 | </beginLabelStyle> | ||
267 | <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="__Lpjgr2REeaj7tVusjQpHg" showIcon="false"/> | ||
268 | </ownedStyle> | ||
269 | <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> | ||
270 | </ownedDiagramElements> | ||
271 | <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_kYYGoLzTEeaj7tVusjQpHg" name="Annotation" tooltipText="" incomingEdges="_kYbxALzTEeaj7tVusjQpHg _pqp4kLzTEeaj7tVusjQpHg" width="12" height="10"> | ||
272 | <target xmi:type="ecore:EClass" href="platform:/resource/hu.bme.mit.inf.dslreasoner.logic.model/model/logicproblem.ecore#//Annotation"/> | ||
273 | <semanticElements xmi:type="ecore:EClass" href="platform:/resource/hu.bme.mit.inf.dslreasoner.logic.model/model/logicproblem.ecore#//Annotation"/> | ||
274 | <decorations xmi:type="viewpoint:Decoration" xmi:id="_kYai4LzTEeaj7tVusjQpHg"> | ||
275 | <description xmi:type="description:SemanticBasedDecoration" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@decorationDescriptionsSet/@decorationDescriptions[name='External']"/> | ||
276 | </decorations> | ||
277 | <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> | ||
278 | <arrangeConstraints>KEEP_SIZE</arrangeConstraints> | ||
279 | <arrangeConstraints>KEEP_RATIO</arrangeConstraints> | ||
280 | <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_kYYGobzTEeaj7tVusjQpHg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> | ||
281 | <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> | ||
282 | </ownedStyle> | ||
283 | <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> | ||
284 | </ownedDiagramElements> | ||
285 | <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_kYbxALzTEeaj7tVusjQpHg" sourceNode="_hon70LzTEeaj7tVusjQpHg" targetNode="_kYYGoLzTEeaj7tVusjQpHg"> | ||
286 | <target xmi:type="ecore:EClass" href="platform:/resource/hu.bme.mit.inf.dslreasoner.logic.model/model/logicproblem.ecore#//RelationAnnotation"/> | ||
287 | <semanticElements xmi:type="ecore:EGenericType" href="platform:/resource/hu.bme.mit.inf.dslreasoner.logic.model/model/logicproblem.ecore#//RelationAnnotation/@eGenericSuperTypes.0"/> | ||
288 | <decorations xmi:type="viewpoint:Decoration" xmi:id="_rIE40LzTEeaj7tVusjQpHg"> | ||
289 | <description xmi:type="description:SemanticBasedDecoration" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@decorationDescriptionsSet/@decorationDescriptions[name='External']"/> | ||
290 | </decorations> | ||
291 | <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_kYbxAbzTEeaj7tVusjQpHg" targetArrow="InputClosedArrow" routingStyle="tree"> | ||
292 | <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> | ||
293 | <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_kYbxArzTEeaj7tVusjQpHg" showIcon="false"> | ||
294 | <labelFormat>italic</labelFormat> | ||
295 | </beginLabelStyle> | ||
296 | <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_kYbxA7zTEeaj7tVusjQpHg" showIcon="false"/> | ||
297 | </ownedStyle> | ||
298 | <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> | ||
299 | </ownedDiagramElements> | ||
300 | <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_pqmOMLzTEeaj7tVusjQpHg" name="AssertionAnnotation" tooltipText="" outgoingEdges="_pqp4kLzTEeaj7tVusjQpHg" incomingEdges="_rIFf4LzTEeaj7tVusjQpHg" width="12" height="10"> | ||
301 | <target xmi:type="ecore:EClass" href="platform:/resource/hu.bme.mit.inf.dslreasoner.logic.model/model/logicproblem.ecore#//AssertionAnnotation"/> | ||
302 | <semanticElements xmi:type="ecore:EClass" href="platform:/resource/hu.bme.mit.inf.dslreasoner.logic.model/model/logicproblem.ecore#//AssertionAnnotation"/> | ||
303 | <decorations xmi:type="viewpoint:Decoration" xmi:id="_pqpRgLzTEeaj7tVusjQpHg"> | ||
304 | <description xmi:type="description:SemanticBasedDecoration" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@decorationDescriptionsSet/@decorationDescriptions[name='External']"/> | ||
305 | </decorations> | ||
306 | <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> | ||
307 | <arrangeConstraints>KEEP_SIZE</arrangeConstraints> | ||
308 | <arrangeConstraints>KEEP_RATIO</arrangeConstraints> | ||
309 | <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_pqmOMbzTEeaj7tVusjQpHg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> | ||
310 | <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> | ||
311 | </ownedStyle> | ||
312 | <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> | ||
313 | </ownedDiagramElements> | ||
314 | <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_pqp4kLzTEeaj7tVusjQpHg" sourceNode="_pqmOMLzTEeaj7tVusjQpHg" targetNode="_kYYGoLzTEeaj7tVusjQpHg"> | ||
315 | <target xmi:type="ecore:EClass" href="platform:/resource/hu.bme.mit.inf.dslreasoner.logic.model/model/logicproblem.ecore#//AssertionAnnotation"/> | ||
316 | <semanticElements xmi:type="ecore:EGenericType" href="platform:/resource/hu.bme.mit.inf.dslreasoner.logic.model/model/logicproblem.ecore#//AssertionAnnotation/@eGenericSuperTypes.0"/> | ||
317 | <decorations xmi:type="viewpoint:Decoration" xmi:id="_rIE40bzTEeaj7tVusjQpHg"> | ||
318 | <description xmi:type="description:SemanticBasedDecoration" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@decorationDescriptionsSet/@decorationDescriptions[name='External']"/> | ||
319 | </decorations> | ||
320 | <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_pqqfoLzTEeaj7tVusjQpHg" targetArrow="InputClosedArrow" routingStyle="tree"> | ||
321 | <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> | ||
322 | <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_pqqfobzTEeaj7tVusjQpHg" showIcon="false"> | ||
323 | <labelFormat>italic</labelFormat> | ||
324 | </beginLabelStyle> | ||
325 | <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_pqqforzTEeaj7tVusjQpHg" showIcon="false"/> | ||
326 | </ownedStyle> | ||
327 | <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> | ||
328 | </ownedDiagramElements> | ||
329 | <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_rIFf4LzTEeaj7tVusjQpHg" sourceNode="_Ciz6YLzTEeaj7tVusjQpHg" targetNode="_pqmOMLzTEeaj7tVusjQpHg"> | ||
330 | <target xmi:type="ecore:EClass" href="ViatraModelAnnotations.ecore#//TransformedViatraWellformednessConstraint"/> | ||
331 | <semanticElements xmi:type="ecore:EGenericType" href="ViatraModelAnnotations.ecore#//TransformedViatraWellformednessConstraint/@eGenericSuperTypes.0"/> | ||
332 | <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_rIGG8LzTEeaj7tVusjQpHg" targetArrow="InputClosedArrow" routingStyle="tree"> | ||
333 | <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> | ||
334 | <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_rIGG8bzTEeaj7tVusjQpHg" showIcon="false"> | ||
335 | <labelFormat>italic</labelFormat> | ||
336 | </beginLabelStyle> | ||
337 | <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_rIGG8rzTEeaj7tVusjQpHg" showIcon="false"/> | ||
338 | </ownedStyle> | ||
339 | <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> | ||
340 | </ownedDiagramElements> | ||
341 | <ownedDiagramElements xmi:type="diagram:DNodeList" xmi:id="_7gtXoPObEeauOJk-5mBnBg" name="DefinedByDerivedFeature" tooltipText="" outgoingEdges="_Fff8APOcEeauOJk-5mBnBg _fhW7YPOcEeauOJk-5mBnBg" width="12" height="10"> | ||
342 | <target xmi:type="ecore:EClass" href="ViatraModelAnnotations.ecore#//DefinedByDerivedFeature"/> | ||
343 | <semanticElements xmi:type="ecore:EClass" href="ViatraModelAnnotations.ecore#//DefinedByDerivedFeature"/> | ||
344 | <arrangeConstraints>KEEP_LOCATION</arrangeConstraints> | ||
345 | <arrangeConstraints>KEEP_SIZE</arrangeConstraints> | ||
346 | <arrangeConstraints>KEEP_RATIO</arrangeConstraints> | ||
347 | <ownedStyle xmi:type="diagram:FlatContainerStyle" xmi:id="_7gvM0PObEeauOJk-5mBnBg" borderSize="1" borderSizeComputationExpression="1" backgroundStyle="Liquid" foregroundColor="255,252,216"> | ||
348 | <description xmi:type="style:FlatContainerStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']/@style"/> | ||
349 | </ownedStyle> | ||
350 | <actualMapping xmi:type="description_1:ContainerMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@containerMappings[name='EC%20EClass']"/> | ||
351 | </ownedDiagramElements> | ||
352 | <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_Fff8APOcEeauOJk-5mBnBg" sourceNode="_7gtXoPObEeauOJk-5mBnBg" targetNode="_hon70LzTEeaj7tVusjQpHg"> | ||
353 | <target xmi:type="ecore:EClass" href="ViatraModelAnnotations.ecore#//DefinedByDerivedFeature"/> | ||
354 | <semanticElements xmi:type="ecore:EGenericType" href="ViatraModelAnnotations.ecore#//DefinedByDerivedFeature/@eGenericSuperTypes.0"/> | ||
355 | <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_FfgjEPOcEeauOJk-5mBnBg" targetArrow="InputClosedArrow" routingStyle="tree"> | ||
356 | <description xmi:type="style:EdgeStyleDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']/@style"/> | ||
357 | <beginLabelStyle xmi:type="diagram:BeginLabelStyle" xmi:id="_FfgjEfOcEeauOJk-5mBnBg" showIcon="false"> | ||
358 | <labelFormat>italic</labelFormat> | ||
359 | </beginLabelStyle> | ||
360 | <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_FfgjEvOcEeauOJk-5mBnBg" showIcon="false"/> | ||
361 | </ownedStyle> | ||
362 | <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC%20ESupertypes']"/> | ||
363 | </ownedDiagramElements> | ||
364 | <ownedDiagramElements xmi:type="diagram:DEdge" xmi:id="_fhW7YPOcEeauOJk-5mBnBg" name="[1..1] query" sourceNode="_7gtXoPObEeauOJk-5mBnBg" targetNode="_8vqQALzSEeaj7tVusjQpHg"> | ||
365 | <target xmi:type="ecore:EReference" href="ViatraModelAnnotations.ecore#//DefinedByDerivedFeature/query"/> | ||
366 | <semanticElements xmi:type="ecore:EReference" href="ViatraModelAnnotations.ecore#//DefinedByDerivedFeature/query"/> | ||
367 | <ownedStyle xmi:type="diagram:EdgeStyle" xmi:id="_hzsKYPOcEeauOJk-5mBnBg" description="_JijTsLzTEeaj7tVusjQpHg" routingStyle="manhattan" strokeColor="0,0,0"> | ||
368 | <centerLabelStyle xmi:type="diagram:CenterLabelStyle" xmi:id="_hzsKYfOcEeauOJk-5mBnBg" showIcon="false"> | ||
369 | <labelFormat>bold</labelFormat> | ||
370 | </centerLabelStyle> | ||
371 | <endLabelStyle xmi:type="diagram:EndLabelStyle" xmi:id="_hzsKYvOcEeauOJk-5mBnBg" labelSize="6" showIcon="false" labelColor="39,76,114"/> | ||
372 | </ownedStyle> | ||
373 | <actualMapping xmi:type="description_1:EdgeMapping" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer/@edgeMappings[name='EC_EReference']"/> | ||
374 | </ownedDiagramElements> | ||
375 | <description xmi:type="description_1:DiagramDescription" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']"/> | ||
376 | <filterVariableHistory xmi:type="diagram:FilterVariableHistory" xmi:id="_h6FUsrzSEeaj7tVusjQpHg"/> | ||
377 | <activatedLayers xmi:type="description_1:Layer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@defaultLayer"/> | ||
378 | <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Package']"/> | ||
379 | <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']/@ownedRepresentations[name='Entities']/@additionalLayers[name='Validation']"/> | ||
380 | <activatedLayers xmi:type="description_1:AdditionalLayer" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Archetype']/@ownedRepresentationExtensions[name='Entities%20With%20Archetypes']/@layers[name='Archetypes']"/> | ||
381 | <target xmi:type="ecore:EPackage" href="ViatraModelAnnotations.ecore#/"/> | ||
382 | </ownedRepresentations> | ||
383 | <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Design']"/> | ||
384 | </ownedViews> | ||
385 | <ownedViews xmi:type="viewpoint:DRepresentationContainer" xmi:id="_hMvGgLzSEeaj7tVusjQpHg"> | ||
386 | <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Review']"/> | ||
387 | </ownedViews> | ||
388 | <ownedViews xmi:type="viewpoint:DRepresentationContainer" xmi:id="_hM760LzSEeaj7tVusjQpHg"> | ||
389 | <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Archetype']"/> | ||
390 | </ownedViews> | ||
391 | <ownedViews xmi:type="viewpoint:DRepresentationContainer" xmi:id="_hNNAkLzSEeaj7tVusjQpHg"> | ||
392 | <viewpoint xmi:type="description:Viewpoint" href="platform:/plugin/org.eclipse.emf.ecoretools.design/description/ecore.odesign#//@ownedViewpoints[name='Generation']"/> | ||
393 | </ownedViews> | ||
394 | </viewpoint:DAnalysis> | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/model/ViatraModelAnnotations.ecore b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/model/ViatraModelAnnotations.ecore new file mode 100644 index 00000000..e4632b1c --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/model/ViatraModelAnnotations.ecore | |||
@@ -0,0 +1,16 @@ | |||
1 | <?xml version="1.0" encoding="UTF-8"?> | ||
2 | <ecore:EPackage xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | ||
3 | xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="viatra2logicannotations" nsURI="http://www.bme.hu/mit/inf/dslreasoner/logic/model/language/viatra2logicannotation" | ||
4 | nsPrefix="viatra2logicannotations"> | ||
5 | <eClassifiers xsi:type="ecore:EClass" name="TransfomedViatraQuery" eSuperTypes="../../hu.bme.mit.inf.dslreasoner.logic.model/model/logicproblem.ecore#//RelationAnnotation"> | ||
6 | <eStructuralFeatures xsi:type="ecore:EAttribute" name="patternFullyQualifiedName" | ||
7 | lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/> | ||
8 | </eClassifiers> | ||
9 | <eClassifiers xsi:type="ecore:EClass" name="TransformedViatraWellformednessConstraint" | ||
10 | eSuperTypes="../../hu.bme.mit.inf.dslreasoner.logic.model/model/logicproblem.ecore#//AssertionAnnotation"> | ||
11 | <eStructuralFeatures xsi:type="ecore:EReference" name="query" lowerBound="1" eType="#//TransfomedViatraQuery"/> | ||
12 | </eClassifiers> | ||
13 | <eClassifiers xsi:type="ecore:EClass" name="DefinedByDerivedFeature" eSuperTypes="../../hu.bme.mit.inf.dslreasoner.logic.model/model/logicproblem.ecore#//RelationAnnotation"> | ||
14 | <eStructuralFeatures xsi:type="ecore:EReference" name="query" lowerBound="1" eType="#//TransfomedViatraQuery"/> | ||
15 | </eClassifiers> | ||
16 | </ecore:EPackage> | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/model/ViatraModelAnnotations.genmodel b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/model/ViatraModelAnnotations.genmodel new file mode 100644 index 00000000..7a367c7e --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/model/ViatraModelAnnotations.genmodel | |||
@@ -0,0 +1,16 @@ | |||
1 | <?xml version="1.0" encoding="UTF-8"?> | ||
2 | <genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" | ||
3 | xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" modelDirectory="/hu.bme.mit.inf.dslreasoner.viatra2logic/ecore-gen" | ||
4 | modelPluginID="hu.bme.mit.inf.dslreasoner.viatra2logic" modelName="ViatraModelAnnotations" | ||
5 | rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container" importerID="org.eclipse.emf.importer.ecore" | ||
6 | complianceLevel="8.0" copyrightFields="false" usedGenPackages="../../hu.bme.mit.inf.dslreasoner.logic.model/model/logiclanguage.genmodel#//logiclanguage ../../hu.bme.mit.inf.dslreasoner.logic.model/model/logiclanguage.genmodel#//logicproblem" | ||
7 | operationReflection="true" importOrganizing="true"> | ||
8 | <foreignModel>ViatraModelAnnotations.ecore</foreignModel> | ||
9 | <genPackages prefix="Viatra2LogicAnnotations" basePackage="hu.bme.mit.inf.dslreasoner.viatra2logic" | ||
10 | disposableProviderFactory="true" ecorePackage="ViatraModelAnnotations.ecore#/"> | ||
11 | <genClasses ecoreClass="ViatraModelAnnotations.ecore#//TransfomedViatraQuery"/> | ||
12 | <genClasses ecoreClass="ViatraModelAnnotations.ecore#//TransformedViatraWellformednessConstraint"> | ||
13 | <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference ViatraModelAnnotations.ecore#//TransformedViatraWellformednessConstraint/query"/> | ||
14 | </genClasses> | ||
15 | </genPackages> | ||
16 | </genmodel:GenModel> | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/plugin.properties b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/plugin.properties new file mode 100644 index 00000000..92081e57 --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/plugin.properties | |||
@@ -0,0 +1,4 @@ | |||
1 | # | ||
2 | |||
3 | pluginName = ViatraModelAnnotations Model | ||
4 | providerName = www.example.org | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/plugin.xml b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/plugin.xml new file mode 100644 index 00000000..ffe2533a --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/plugin.xml | |||
@@ -0,0 +1,17 @@ | |||
1 | <?xml version="1.0" encoding="UTF-8"?> | ||
2 | <?eclipse version="3.0"?> | ||
3 | |||
4 | <!-- | ||
5 | --> | ||
6 | |||
7 | <plugin> | ||
8 | |||
9 | <extension point="org.eclipse.emf.ecore.generated_package"> | ||
10 | <!-- @generated ViatraModelAnnotations --> | ||
11 | <package | ||
12 | uri="http://www.bme.hu/mit/inf/dslreasoner/logic/model/language/viatra2logicannotation" | ||
13 | class="hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsPackage" | ||
14 | genModel="model/ViatraModelAnnotations.genmodel"/> | ||
15 | </extension> | ||
16 | |||
17 | </plugin> | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/Constraint2Logic.xtend b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/Constraint2Logic.xtend new file mode 100644 index 00000000..414af4c8 --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/Constraint2Logic.xtend | |||
@@ -0,0 +1,217 @@ | |||
1 | package hu.bme.mit.inf.dslreasoner.viatra2logic | ||
2 | |||
3 | import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic | ||
4 | import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic_Trace | ||
5 | import hu.bme.mit.inf.dslreasoner.logic.model.builder.LogicProblemBuilder | ||
6 | import hu.bme.mit.inf.dslreasoner.logic.model.builder.TracedOutput | ||
7 | import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.Term | ||
8 | import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.Variable | ||
9 | import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.LogicProblem | ||
10 | import java.util.LinkedList | ||
11 | import java.util.Map | ||
12 | import org.eclipse.emf.common.util.Enumerator | ||
13 | import org.eclipse.emf.ecore.EAttribute | ||
14 | import org.eclipse.emf.ecore.EClass | ||
15 | import org.eclipse.emf.ecore.EReference | ||
16 | import org.eclipse.emf.ecore.EStructuralFeature | ||
17 | import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey | ||
18 | import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey | ||
19 | import org.eclipse.viatra.query.runtime.emf.types.EStructuralFeatureInstancesKey | ||
20 | import org.eclipse.viatra.query.runtime.matchers.psystem.PConstraint | ||
21 | import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable | ||
22 | import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Equality | ||
23 | import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.ExportedParameter | ||
24 | import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.Inequality | ||
25 | import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.NegativePatternCall | ||
26 | import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.BinaryTransitiveClosure | ||
27 | import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.ConstantValue | ||
28 | import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.PositivePatternCall | ||
29 | import org.eclipse.viatra.query.runtime.matchers.psystem.basicenumerables.TypeConstraint | ||
30 | |||
31 | import static extension hu.bme.mit.inf.dslreasoner.util.CollectionsUtil.* | ||
32 | |||
33 | class Constraint2Logic { | ||
34 | val extension LogicProblemBuilder builder = new LogicProblemBuilder | ||
35 | val Ecore2Logic ecore2Logic | ||
36 | |||
37 | new(Ecore2Logic ecore2Logic) { | ||
38 | this.ecore2Logic = ecore2Logic | ||
39 | } | ||
40 | |||
41 | def dispatch Term transformConstraint(Equality constraint, | ||
42 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
43 | Viatra2LogicTrace viatra2LogicTrace, | ||
44 | Map<PVariable, Variable> variable2Variable, | ||
45 | Viatra2LogicConfiguration config) | ||
46 | { | ||
47 | constraint.who.lookup(variable2Variable) | ||
48 | == | ||
49 | constraint.withWhom.lookup(variable2Variable) | ||
50 | } | ||
51 | |||
52 | def dispatch Term transformConstraint(ExportedParameter constraint, | ||
53 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
54 | Viatra2LogicTrace viatra2LogicTrace, | ||
55 | Map<PVariable, Variable> variable2Variable, | ||
56 | Viatra2LogicConfiguration config) | ||
57 | { | ||
58 | return null | ||
59 | } | ||
60 | |||
61 | def dispatch Term transformConstraint(Inequality constraint, | ||
62 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
63 | Viatra2LogicTrace viatra2LogicTrace, | ||
64 | Map<PVariable, Variable> variable2Variable, | ||
65 | Viatra2LogicConfiguration config) | ||
66 | { | ||
67 | constraint.who.lookup(variable2Variable) | ||
68 | != | ||
69 | constraint.withWhom.lookup(variable2Variable) | ||
70 | } | ||
71 | |||
72 | def dispatch Term transformConstraint(NegativePatternCall constraint, | ||
73 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
74 | Viatra2LogicTrace viatra2LogicTrace, | ||
75 | Map<PVariable, Variable> variable2Variable, | ||
76 | Viatra2LogicConfiguration config) | ||
77 | { | ||
78 | val parameterSubstitution = new LinkedList | ||
79 | for(index : 0..<constraint.actualParametersTuple.size) { | ||
80 | val variable = constraint.actualParametersTuple.get(index) as PVariable | ||
81 | parameterSubstitution += variable.lookup(variable2Variable).toTerm | ||
82 | } | ||
83 | |||
84 | val res = constraint.referredQuery.lookup(viatra2LogicTrace.query2Relation).call(parameterSubstitution) | ||
85 | return res.Not | ||
86 | } | ||
87 | |||
88 | def dispatch Term transformConstraint(BinaryTransitiveClosure constraint, | ||
89 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
90 | Viatra2LogicTrace viatra2LogicTrace, | ||
91 | Map<PVariable, Variable> variable2Variable, | ||
92 | Viatra2LogicConfiguration config) | ||
93 | { | ||
94 | throw new UnsupportedOperationException | ||
95 | } | ||
96 | |||
97 | def dispatch Term transformConstraint(ConstantValue constant, | ||
98 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
99 | Viatra2LogicTrace viatra2LogicTrace, | ||
100 | Map<PVariable, Variable> variable2Variable, | ||
101 | Viatra2LogicConfiguration config) | ||
102 | { | ||
103 | val tuple = constant.variablesTuple | ||
104 | if(tuple.size == 1) { | ||
105 | val variable = tuple.get(0) as PVariable | ||
106 | //println(variable.name + " == " + constant.supplierKey + "["+constant.supplierKey.class.name+"]") | ||
107 | val translatedConstant = transformConstantValue(constant.supplierKey,ecore2LogicTrace,viatra2LogicTrace,config); | ||
108 | return variable.lookup(variable2Variable) == translatedConstant | ||
109 | } else throw new AssertionError | ||
110 | } | ||
111 | |||
112 | private def dispatch transformConstantValue( | ||
113 | Enumerator enumerator, | ||
114 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
115 | Viatra2LogicTrace viatra2LogicTrace, | ||
116 | Viatra2LogicConfiguration config) | ||
117 | { | ||
118 | ecore2Logic.Literal(ecore2LogicTrace.trace,enumerator) | ||
119 | } | ||
120 | private def dispatch transformConstantValue( | ||
121 | Integer value, | ||
122 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
123 | Viatra2LogicTrace viatra2LogicTrace, | ||
124 | Viatra2LogicConfiguration config) | ||
125 | { | ||
126 | return value.asTerm | ||
127 | } | ||
128 | private def dispatch transformConstantValue(Object other, | ||
129 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
130 | Viatra2LogicTrace viatra2LogicTrace, | ||
131 | Viatra2LogicConfiguration config) | ||
132 | { | ||
133 | throw new UnsupportedOperationException('''Unknown constant «other»:«other.class.name»''') | ||
134 | } | ||
135 | |||
136 | def dispatch Term transformConstraint(PositivePatternCall constraint, | ||
137 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
138 | Viatra2LogicTrace viatra2LogicTrace, | ||
139 | Map<PVariable, Variable> variable2Variable, | ||
140 | Viatra2LogicConfiguration config) | ||
141 | { | ||
142 | |||
143 | val parameterSubstitution = new LinkedList | ||
144 | for(index : 0..<constraint.variablesTuple.size) { | ||
145 | val variable = constraint.variablesTuple.get(index) as PVariable | ||
146 | parameterSubstitution += variable.lookup(variable2Variable).toTerm | ||
147 | } | ||
148 | val res = constraint.referredQuery.lookup(viatra2LogicTrace.query2Relation).call(parameterSubstitution) | ||
149 | return res | ||
150 | } | ||
151 | |||
152 | def dispatch Term transformConstraint(TypeConstraint constraint, | ||
153 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
154 | Viatra2LogicTrace viatra2LogicTrace, | ||
155 | Map<PVariable, Variable> variable2Variable, | ||
156 | Viatra2LogicConfiguration config) | ||
157 | { | ||
158 | val tuple = constraint.variablesTuple | ||
159 | if(tuple.size == 1) { | ||
160 | val typeConstraint = constraint.equivalentJudgement.inputKey | ||
161 | if(typeConstraint instanceof EClassTransitiveInstancesKey) { | ||
162 | val type = typeConstraint.emfKey | ||
163 | val variable = tuple.get(0) as PVariable | ||
164 | return transformTypeConstraint(type,variable,ecore2LogicTrace,variable2Variable,viatra2LogicTrace) | ||
165 | } else if(typeConstraint instanceof EDataTypeInSlotsKey) { | ||
166 | // If the type is a primitive type or EEnum, then instanceof is an unnecessary constraint | ||
167 | return null | ||
168 | } | ||
169 | } else if(tuple.size == 2) { | ||
170 | val type = (constraint.equivalentJudgement.inputKey as EStructuralFeatureInstancesKey).emfKey | ||
171 | val src = tuple.get(0) as PVariable | ||
172 | val trg = tuple.get(1) as PVariable | ||
173 | return transformPathConstraint(type,src,trg,ecore2LogicTrace,variable2Variable,viatra2LogicTrace) | ||
174 | } else throw new IllegalArgumentException('''unknown tuple: «tuple»''') | ||
175 | } | ||
176 | def Term transformTypeConstraint( | ||
177 | EClass type, | ||
178 | PVariable variable, | ||
179 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
180 | Map<PVariable, Variable> variable2Variable, | ||
181 | Viatra2LogicTrace viatra2LogicTrace) | ||
182 | { | ||
183 | InstanceOf( | ||
184 | variable.lookup(variable2Variable), | ||
185 | ecore2Logic.TypeofEClass(ecore2LogicTrace.trace,type)) | ||
186 | } | ||
187 | def Term transformPathConstraint( | ||
188 | EStructuralFeature feature, | ||
189 | PVariable src, PVariable trg, | ||
190 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
191 | Map<PVariable, Variable> variable2Variable, | ||
192 | Viatra2LogicTrace viatra2LogicTrace) | ||
193 | { | ||
194 | if(feature instanceof EReference) { | ||
195 | return ecore2Logic.IsInReference(ecore2LogicTrace.trace, | ||
196 | src.lookup(variable2Variable), | ||
197 | trg.lookup(variable2Variable), | ||
198 | feature) | ||
199 | } else if(feature instanceof EAttribute) { | ||
200 | return ecore2Logic.IsAttributeValue(ecore2LogicTrace.trace, | ||
201 | src.lookup(variable2Variable), | ||
202 | trg.lookup(variable2Variable), | ||
203 | feature) | ||
204 | } else { | ||
205 | throw new IllegalArgumentException('''Unsupported path expression: «feature.class.name»''') | ||
206 | } | ||
207 | } | ||
208 | |||
209 | def dispatch Term transformConstraint(PConstraint constraint, | ||
210 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
211 | Viatra2LogicTrace viatra2LogicTrace, | ||
212 | Map<PVariable, Variable> variable2Variable, | ||
213 | Viatra2LogicConfiguration config) | ||
214 | { | ||
215 | throw new UnsupportedOperationException('''Unkown constraint type: «constraint.class.name»''') | ||
216 | } | ||
217 | } \ No newline at end of file | ||
diff --git a/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/Viatra2Logic.xtend b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/Viatra2Logic.xtend new file mode 100644 index 00000000..d78fe45f --- /dev/null +++ b/Framework/hu.bme.mit.inf.dslreasoner.viatra2logic/src/hu/bme/mit/inf/dslreasoner/viatra2logic/Viatra2Logic.xtend | |||
@@ -0,0 +1,317 @@ | |||
1 | package hu.bme.mit.inf.dslreasoner.viatra2logic | ||
2 | |||
3 | import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic | ||
4 | import hu.bme.mit.inf.dslreasoner.ecore2logic.Ecore2Logic_Trace | ||
5 | import hu.bme.mit.inf.dslreasoner.logic.model.builder.LogicProblemBuilder | ||
6 | import hu.bme.mit.inf.dslreasoner.logic.model.builder.TracedOutput | ||
7 | import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.RelationDefinition | ||
8 | import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.TypeDescriptor | ||
9 | import hu.bme.mit.inf.dslreasoner.logic.model.logiclanguage.Variable | ||
10 | import hu.bme.mit.inf.dslreasoner.logic.model.logicproblem.LogicProblem | ||
11 | import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.TransfomedViatraQuery | ||
12 | import hu.bme.mit.inf.dslreasoner.viatra2logic.viatra2logicannotations.Viatra2LogicAnnotationsFactory | ||
13 | import java.util.ArrayList | ||
14 | import java.util.HashMap | ||
15 | import java.util.LinkedList | ||
16 | import java.util.List | ||
17 | import java.util.Map | ||
18 | import java.util.Set | ||
19 | import org.eclipse.emf.ecore.EAttribute | ||
20 | import org.eclipse.emf.ecore.EClass | ||
21 | import org.eclipse.emf.ecore.EClassifier | ||
22 | import org.eclipse.emf.ecore.EEnum | ||
23 | import org.eclipse.emf.ecore.EReference | ||
24 | import org.eclipse.emf.ecore.EStructuralFeature | ||
25 | import org.eclipse.emf.ecore.EcorePackage | ||
26 | import org.eclipse.viatra.query.runtime.api.IQuerySpecification | ||
27 | import org.eclipse.viatra.query.runtime.emf.EMFQueryMetaContext | ||
28 | import org.eclipse.viatra.query.runtime.emf.types.BaseEMFTypeKey | ||
29 | import org.eclipse.viatra.query.runtime.emf.types.EClassTransitiveInstancesKey | ||
30 | import org.eclipse.viatra.query.runtime.emf.types.EClassUnscopedTransitiveInstancesKey | ||
31 | import org.eclipse.viatra.query.runtime.emf.types.EDataTypeInSlotsKey | ||
32 | import org.eclipse.viatra.query.runtime.matchers.psystem.PBody | ||
33 | import org.eclipse.viatra.query.runtime.matchers.psystem.PVariable | ||
34 | import org.eclipse.viatra.query.runtime.matchers.psystem.basicdeferred.NegativePatternCall | ||
35 | import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PParameter | ||
36 | import org.eclipse.viatra.query.runtime.matchers.psystem.queries.PQuery | ||
37 | import org.eclipse.viatra.query.runtime.matchers.psystem.rewriters.PBodyNormalizer | ||
38 | import org.eclipse.xtend.lib.annotations.Data | ||
39 | |||
40 | import static extension hu.bme.mit.inf.dslreasoner.util.CollectionsUtil.* | ||
41 | |||
42 | @Data class ViatraQuerySetDescriptor { | ||
43 | val List<? extends IQuerySpecification<?>> patterns | ||
44 | val Set<? extends IQuerySpecification<?>> validationPatterns | ||
45 | val Map<PQuery,EStructuralFeature> derivedFeatures | ||
46 | } | ||
47 | class Viatra2LogicTrace { | ||
48 | public val Map<PQuery, RelationDefinition> query2Relation = new HashMap | ||
49 | public val Map<PQuery, TransfomedViatraQuery> query2Annotation = new HashMap | ||
50 | public val Map<Pair<PQuery,PParameter>, Variable> parameter2Variable = new HashMap | ||
51 | //public val Map<PVariable, Variable> variable2Variable = new HashMap | ||
52 | } | ||
53 | class Viatra2LogicConfiguration { | ||
54 | public var normalize = true | ||
55 | public var transitiveClosureDepth = 3 | ||
56 | } | ||
57 | |||
58 | class Viatra2Logic { | ||
59 | val extension LogicProblemBuilder builder = new LogicProblemBuilder | ||
60 | val extension Viatra2LogicAnnotationsFactory factory = Viatra2LogicAnnotationsFactory.eINSTANCE | ||
61 | val Ecore2Logic ecore2Logic | ||
62 | Constraint2Logic constraint2Logic | ||
63 | |||
64 | new(Ecore2Logic ecore2Logic) { | ||
65 | this.ecore2Logic = ecore2Logic | ||
66 | constraint2Logic = new Constraint2Logic(ecore2Logic) | ||
67 | } | ||
68 | |||
69 | def TracedOutput<LogicProblem,Viatra2LogicTrace> transformQueries( | ||
70 | ViatraQuerySetDescriptor queries, | ||
71 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
72 | Viatra2LogicConfiguration config) | ||
73 | { | ||
74 | val viatra2LogicTrace = new Viatra2LogicTrace | ||
75 | for(query: queries.patterns) { | ||
76 | this.transformQueryHeader(query,ecore2LogicTrace,viatra2LogicTrace,config) | ||
77 | } | ||
78 | for(query: queries.patterns) { | ||
79 | this.transformQuerySpecification(query,ecore2LogicTrace,viatra2LogicTrace,config) | ||
80 | } | ||
81 | /*for(d : viatra2LogicTrace.query2Relation.values) { | ||
82 | checkDefinition(d) | ||
83 | }*/ | ||
84 | |||
85 | transformQueryConstraints( | ||
86 | queries.validationPatterns, | ||
87 | queries.derivedFeatures, | ||
88 | ecore2LogicTrace,viatra2LogicTrace) | ||
89 | return new TracedOutput(ecore2LogicTrace.output,viatra2LogicTrace) | ||
90 | } | ||
91 | |||
92 | def protected transformQueryHeader(IQuerySpecification<?> squery, | ||
93 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
94 | Viatra2LogicTrace viatra2LogicTrace, | ||
95 | Viatra2LogicConfiguration config) | ||
96 | { | ||
97 | val pquery = squery.internalQueryRepresentation | ||
98 | val relationName = '''pattern «pquery.fullyQualifiedName.replace('.',' ')»''' | ||
99 | val parameters = new ArrayList<Variable>(pquery.parameters.size) | ||
100 | for(vParam: pquery.parameters) { | ||
101 | val parameterType = transformTypeReference( | ||
102 | vParam.declaredUnaryType as BaseEMFTypeKey<? extends EClassifier>, | ||
103 | ecore2LogicTrace | ||
104 | ) | ||
105 | if(parameterType == null) { | ||
106 | println(parameterType) | ||
107 | } | ||
108 | val parameterName = '''parameter «vParam.name»''' | ||
109 | val lParam = createVar(parameterName,parameterType) | ||
110 | viatra2LogicTrace.parameter2Variable.put(pquery->vParam,lParam) | ||
111 | parameters+=lParam | ||
112 | } | ||
113 | val lRelation = RelationDefinition(relationName,parameters,null) | ||
114 | |||
115 | viatra2LogicTrace.query2Relation.put(pquery,lRelation); | ||
116 | ecore2LogicTrace.output.relations += lRelation | ||
117 | |||
118 | val annotation = createTransfomedViatraQuery => [ | ||
119 | it.target = lRelation | ||
120 | it.patternFullyQualifiedName = pquery.fullyQualifiedName | ||
121 | ] | ||
122 | viatra2LogicTrace.query2Annotation.put(pquery,annotation) | ||
123 | ecore2LogicTrace.output.annotations += annotation | ||
124 | |||
125 | return lRelation | ||
126 | } | ||
127 | |||
128 | def protected transformQuerySpecification( | ||
129 | IQuerySpecification<?> squery, | ||
130 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
131 | Viatra2LogicTrace viatra2LogicTrace, | ||
132 | Viatra2LogicConfiguration config) | ||
133 | { | ||
134 | val pquery = squery.internalQueryRepresentation | ||
135 | val disjunction = if(config.normalize) { | ||
136 | val normalizer = new PBodyNormalizer(EMFQueryMetaContext.INSTANCE,true) | ||
137 | normalizer.rewrite(pquery) | ||
138 | } else { | ||
139 | pquery.disjunctBodies | ||
140 | } | ||
141 | val translatedBodies = new ArrayList(disjunction.bodies.size) | ||
142 | for(body : disjunction.bodies) { | ||
143 | translatedBodies+=body.transformBody(ecore2LogicTrace,viatra2LogicTrace,config) | ||
144 | } | ||
145 | val relation = pquery.lookup(viatra2LogicTrace.query2Relation) | ||
146 | relation.value = Or(translatedBodies) | ||
147 | } | ||
148 | |||
149 | def transformQueryConstraints( | ||
150 | Set<? extends IQuerySpecification<?>> validationPatterns, | ||
151 | Map<PQuery,EStructuralFeature> derivedFeatures, | ||
152 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
153 | Viatra2LogicTrace viatra2LogicTrace) | ||
154 | { | ||
155 | for(validationPattern : validationPatterns) { | ||
156 | val pquery = validationPattern.internalQueryRepresentation | ||
157 | val constraint = Assertion('''errorpattern «pquery.fullyQualifiedName.replace('.',' ')»''', | ||
158 | Forall[ | ||
159 | for(param: pquery.parameters) { | ||
160 | addVar(param.name,transformTypeReference( | ||
161 | param.declaredUnaryType as BaseEMFTypeKey<? extends EClassifier>, | ||
162 | ecore2LogicTrace)) | ||
163 | } | ||
164 | Not(pquery.lookup(viatra2LogicTrace.query2Relation).call(it.variables)) | ||
165 | ] | ||
166 | ) | ||
167 | val annotation = createTransformedViatraWellformednessConstraint => [ | ||
168 | it.query = pquery.lookup(viatra2LogicTrace.query2Annotation) | ||
169 | it.target = constraint | ||
170 | ] | ||
171 | ecore2LogicTrace.output.add(constraint) | ||
172 | ecore2LogicTrace.output.annotations.add(annotation) | ||
173 | } | ||
174 | for(derivedFeature : derivedFeatures.entrySet) { | ||
175 | val relationDefinition = derivedFeature.key.lookup(viatra2LogicTrace.query2Relation) | ||
176 | val feature = derivedFeature.value | ||
177 | if(feature instanceof EAttribute) { | ||
178 | val declaration = ecore2Logic.relationOfAttribute(ecore2LogicTrace.trace,feature) | ||
179 | relationDefinition.defines = declaration | ||
180 | } else if(feature instanceof EReference) { | ||
181 | val declaration = ecore2Logic.relationOfReference(ecore2LogicTrace.trace,feature) | ||
182 | relationDefinition.defines = declaration | ||
183 | } else throw new IllegalArgumentException('''Unknown feature: «feature»''') | ||
184 | val annotation = createDefinedByDerivedFeature => [ | ||
185 | it.target = relationDefinition.defines | ||
186 | it.query = derivedFeature.key.lookup(viatra2LogicTrace.query2Annotation) | ||
187 | ] | ||
188 | ecore2LogicTrace.output.annotations+=annotation | ||
189 | } | ||
190 | } | ||
191 | |||
192 | def transformBody(PBody body, | ||
193 | TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace, | ||
194 | Viatra2LogicTrace viatra2LogicTrace, | ||
195 | Viatra2LogicConfiguration config) | ||
196 | { | ||
197 | val variable2Variable = new HashMap | ||
198 | // Parameter variables | ||
199 | for(parameter : body.symbolicParameters) { | ||
200 | val param = parameter.patternParameter | ||
201 | val variable = parameter.parameterVariable | ||
202 | variable2Variable.put(variable,(body.pattern->param).lookup(viatra2LogicTrace.parameter2Variable)) | ||
203 | } | ||
204 | // Inner Variables | ||
205 | val innerPositiveVariables = new LinkedList | ||
206 | val innerNegativeVariables = new LinkedList | ||
207 | for(innerVariable : body.uniqueVariables) { | ||
208 | if(!variable2Variable.containsKey(innerVariable)) { | ||
209 | val name = '''variable «innerVariable.name.normalizeName»''' | ||
210 | //println(body.pattern.fullyQualifiedName + "-") | ||
211 | val logicType = getType(innerVariable,body,ecore2LogicTrace) | ||
212 | val logicVariable = createVar(name,logicType) | ||
213 | if(innerVariable.isPositiveVariable) { | ||
214 | innerPositiveVariables += logicVariable | ||
215 | } else { | ||
216 | innerNegativeVariables += logicVariable | ||
217 | } | ||
218 | variable2Variable.put(innerVariable,logicVariable) | ||
219 | } | ||
220 | } | ||
221 | |||
222 | val translatedConstraints = body.constraints.map[ | ||
223 | constraint2Logic.transformConstraint(it, | ||
224 | ecore2LogicTrace,viatra2LogicTrace,variable2Variable,config) | ||
225 | ].filterNull | ||
226 | val allConstraintIsSatisfied = And(translatedConstraints) | ||
227 | val allNetativeVariablesAreSatisfied = if(innerNegativeVariables.empty) { | ||
228 | allConstraintIsSatisfied | ||
229 | } else { | ||
230 | Forall(innerNegativeVariables,allConstraintIsSatisfied); | ||
231 | } | ||
232 | val allVariablesAreExisting = if(innerPositiveVariables.empty) { | ||
233 | allNetativeVariablesAreSatisfied | ||
234 | } else { | ||
235 | Exists(innerPositiveVariables,allNetativeVariablesAreSatisfied); | ||
236 | } | ||
237 | |||
238 | return allVariablesAreExisting | ||
239 | } | ||
240 | |||
241 | def private normalizeName(String variableName) { | ||
242 | return variableName.replaceAll("[\\W]|_", "") | ||
243 | } | ||
244 | |||
245 | def TypeDescriptor getType(PVariable v, PBody body, TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace) { | ||
246 | if(v.isPositiveVariable) { | ||
247 | val types = v.lookup( | ||
248 | body.getAllUnaryTypeRestrictions(EMFQueryMetaContext.INSTANCE)) | ||
249 | if(types.size == 0) { | ||
250 | throw new AssertionError('''No type for «v.name»''') | ||
251 | } else if(types.size == 1){ | ||
252 | return (types.head.inputKey as BaseEMFTypeKey<? extends EClassifier>).transformTypeReference(ecore2LogicTrace) | ||
253 | } else { | ||
254 | return this.ecore2Logic.TypeofEClass(ecore2LogicTrace.trace, | ||
255 | calculateCommonSubtype(types.map[ | ||
256 | (it.inputKey as BaseEMFTypeKey<EClass>).emfKey as EClass | ||
257 | ],ecore2LogicTrace)) | ||
258 | } | ||
259 | } else { | ||
260 | val onlyConstraint = v.referringConstraints.head as NegativePatternCall | ||
261 | val indexOfVariable = v.lookup(onlyConstraint.actualParametersTuple.invertIndex) | ||
262 | val parameter = onlyConstraint.referredQuery.parameters.get(indexOfVariable) | ||
263 | val declaredUnaryType = parameter.declaredUnaryType as BaseEMFTypeKey<? extends EClassifier> | ||
264 | if(declaredUnaryType == null) { | ||
265 | throw new UnsupportedOperationException( | ||
266 | '''parameter «parameter.name» in pattern « | ||
267 | onlyConstraint.referredQuery.fullyQualifiedName» does not have type!''') | ||
268 | } else return declaredUnaryType.transformTypeReference(ecore2LogicTrace) | ||
269 | } | ||
270 | } | ||
271 | |||
272 | def calculateCommonSubtype(Iterable<EClass> allsuperClasses,TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace) { | ||
273 | val superClasses = allsuperClasses.filter[it!=EcorePackage.eINSTANCE.EObject] | ||
274 | val head = superClasses.head | ||
275 | if(superClasses.forall[it.isSuperTypeOf(head)]) return head | ||
276 | else { | ||
277 | val allClasses = this.ecore2Logic.allClassesInScope(ecore2LogicTrace.trace) | ||
278 | //println(allClasses.toList) | ||
279 | val commonSubclasses = allClasses.filter[sub | superClasses.forall[sup | sup.isSuperTypeOf(sub)]] | ||
280 | //println(commonSubclasses.toList) | ||
281 | val mostGenericSubclasses = commonSubclasses.filter[generic | ! commonSubclasses.exists[moreGeneric | moreGeneric!=generic && moreGeneric.isSuperTypeOf(generic)]] | ||
282 | //println(mostGenericSubclasses.toList) | ||
283 | if(mostGenericSubclasses.isEmpty) throw new AssertionError('''No common supertype: | ||
284 | «FOR s : superClasses SEPARATOR ", "»«s.name»«ENDFOR»''') | ||
285 | else return mostGenericSubclasses.head | ||
286 | |||
287 | } | ||
288 | } | ||
289 | |||
290 | def dispatch transformTypeReference(EDataTypeInSlotsKey k,TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace) { | ||
291 | val w = k.wrappedKey | ||
292 | if(w == EcorePackage.Literals.EINT) { | ||
293 | return builder.LogicInt | ||
294 | } else if(w == EcorePackage.Literals.EDOUBLE || w == EcorePackage.Literals.EFLOAT) { | ||
295 | return builder.LogicReal | ||
296 | } else if(w == EcorePackage.Literals.EBOOLEAN) { | ||
297 | return builder.LogicBool | ||
298 | } else if(w instanceof EEnum) { | ||
299 | this.ecore2Logic.TypeofEEnum(ecore2LogicTrace.trace,w); | ||
300 | } else throw new UnsupportedOperationException('''Unknown reference type «w.class.name»''') | ||
301 | } | ||
302 | |||
303 | def dispatch transformTypeReference(EClassTransitiveInstancesKey k,TracedOutput<LogicProblem, Ecore2Logic_Trace> ecore2LogicTrace) { | ||
304 | this.ecore2Logic.TypeofEClass(ecore2LogicTrace.trace,k.wrappedKey) | ||
305 | } | ||
306 | |||
307 | def boolean isPositiveVariable(PVariable v) { | ||
308 | val constraints = v.referringConstraints | ||
309 | if(constraints.size == 1) { | ||
310 | val onlyConstraint = constraints.head | ||
311 | if(onlyConstraint instanceof NegativePatternCall) { | ||
312 | return false | ||
313 | } | ||
314 | } | ||
315 | return true | ||
316 | } | ||
317 | } \ No newline at end of file | ||