Przeglądaj źródła

Remove Import from statechart,
imports are cross references to packages now

Andreas Muelder 9 lat temu
rodzic
commit
fb9023a230
27 zmienionych plików z 63 dodań i 758 usunięć
  1. 1 1
      plugins/org.yakindu.sct.model.sexec/src/org/yakindu/sct/model/sexec/transformation/StructureMapping.xtend
  2. 0 169
      plugins/org.yakindu.sct.model.sgraph.edit/src/org/yakindu/sct/model/sgraph/provider/ImportItemProvider.java
  3. 0 24
      plugins/org.yakindu.sct.model.sgraph.edit/src/org/yakindu/sct/model/sgraph/provider/SGraphItemProviderAdapterFactory.java
  4. 0 7
      plugins/org.yakindu.sct.model.sgraph.edit/src/org/yakindu/sct/model/sgraph/provider/StatechartItemProvider.java
  5. 1 7
      plugins/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore
  6. 0 65
      plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/Import.java
  7. 0 9
      plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/SGraphFactory.java
  8. 4 99
      plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/SGraphPackage.java
  9. 0 22
      plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/Statechart.java
  10. 0 175
      plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/impl/ImportImpl.java
  11. 0 12
      plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/impl/SGraphFactoryImpl.java
  12. 0 43
      plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/impl/SGraphPackageImpl.java
  13. 0 37
      plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/impl/StatechartImpl.java
  14. 0 19
      plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/util/SGraphAdapterFactory.java
  15. 0 22
      plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/util/SGraphSwitch.java
  16. 5 5
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/ImportScope.java
  17. 4 4
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/StextPackage.java
  18. 6 19
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/impl/ImportScopeImpl.java
  19. 1 0
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/impl/StextFactoryImpl.java
  20. 1 1
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/impl/StextPackageImpl.java
  21. 1 0
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/util/StextAdapterFactory.java
  22. 1 0
      plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/util/StextSwitch.java
  23. 1 1
      plugins/org.yakindu.sct.model.stext/model/SText.ecore
  24. 1 1
      plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/SText.xtext
  25. 35 8
      plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/scoping/StextImportAwareScopeProvider.java
  26. 1 7
      plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/util/ImportResolver.java
  27. 0 1
      test-plugins/org.yakindu.sct.model.stext.test/src/org/yakindu/sct/model/stext/test/SCTUnitClassifierTest.java

+ 1 - 1
plugins/org.yakindu.sct.model.sexec/src/org/yakindu/sct/model/sexec/transformation/StructureMapping.xtend

@@ -71,7 +71,7 @@ class StructureMapping {
 	 */
 	 */
 	def dispatch Scope mapScope(ImportScope scope) {
 	def dispatch Scope mapScope(ImportScope scope) {
 		val _scope = scope.createScope
 		val _scope = scope.createScope
-		for (Import imp : scope.imports) {
+		for (org.yakindu.base.types.Package imp : scope.imports) {
 			val props = resolver.getImportedElementsOfType(imp, org.yakindu.base.types.Property)
 			val props = resolver.getImportedElementsOfType(imp, org.yakindu.base.types.Property)
 			for (Declaration decl : props) {
 			for (Declaration decl : props) {
 				_scope.declarations.add(decl.createImportDeclaration)
 				_scope.declarations.add(decl.createImportDeclaration)

+ 0 - 169
plugins/org.yakindu.sct.model.sgraph.edit/src/org/yakindu/sct/model/sgraph/provider/ImportItemProvider.java

@@ -1,169 +0,0 @@
-/**
- * Copyright (c) 2011 committers of YAKINDU and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * Contributors:
- * committers of YAKINDU - initial API and implementation
- * 
- */
-package org.yakindu.sct.model.sgraph.provider;
-
-
-import java.util.Collection;
-import java.util.List;
-
-import org.eclipse.emf.common.notify.AdapterFactory;
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.common.util.ResourceLocator;
-import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
-import org.eclipse.emf.edit.provider.IEditingDomainItemProvider;
-import org.eclipse.emf.edit.provider.IItemLabelProvider;
-import org.eclipse.emf.edit.provider.IItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.IItemPropertySource;
-import org.eclipse.emf.edit.provider.IStructuredItemContentProvider;
-import org.eclipse.emf.edit.provider.ITreeItemContentProvider;
-import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
-import org.eclipse.emf.edit.provider.ItemProviderAdapter;
-import org.eclipse.emf.edit.provider.ViewerNotification;
-import org.yakindu.sct.model.sgraph.Import;
-import org.yakindu.sct.model.sgraph.SGraphPackage;
-
-/**
- * This is the item provider adapter for a {@link org.yakindu.sct.model.sgraph.Import} object.
- * <!-- begin-user-doc -->
- * <!-- end-user-doc -->
- * @generated
- */
-public class ImportItemProvider
-	extends ItemProviderAdapter
-	implements
-		IEditingDomainItemProvider,
-		IStructuredItemContentProvider,
-		ITreeItemContentProvider,
-		IItemLabelProvider,
-		IItemPropertySource {
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public static final String copyright = "Copyright (c) 2011 committers of YAKINDU and others.\r\nAll rights reserved. This program and the accompanying materials\r\nare made available under the terms of the Eclipse Public License v1.0\r\nwhich accompanies this distribution, and is available at\r\nhttp://www.eclipse.org/legal/epl-v10.html\r\nContributors:\r\ncommitters of YAKINDU - initial API and implementation\r\n";
-
-	/**
-	 * This constructs an instance from a factory and a notifier.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public ImportItemProvider(AdapterFactory adapterFactory) {
-		super(adapterFactory);
-	}
-
-	/**
-	 * This returns the property descriptors for the adapted class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
-		if (itemPropertyDescriptors == null) {
-			super.getPropertyDescriptors(object);
-
-			addImportedNamespacePropertyDescriptor(object);
-		}
-		return itemPropertyDescriptors;
-	}
-
-	/**
-	 * This adds a property descriptor for the Imported Namespace feature.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected void addImportedNamespacePropertyDescriptor(Object object) {
-		itemPropertyDescriptors.add
-			(createItemPropertyDescriptor
-				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-				 getResourceLocator(),
-				 getString("_UI_Import_importedNamespace_feature"),
-				 getString("_UI_PropertyDescriptor_description", "_UI_Import_importedNamespace_feature", "_UI_Import_type"),
-				 SGraphPackage.Literals.IMPORT__IMPORTED_NAMESPACE,
-				 true,
-				 false,
-				 false,
-				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
-				 null,
-				 null));
-	}
-
-	/**
-	 * This returns Import.gif.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public Object getImage(Object object) {
-		return overlayImage(object, getResourceLocator().getImage("full/obj16/Import"));
-	}
-
-	/**
-	 * This returns the label text for the adapted class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public String getText(Object object) {
-		String label = ((Import)object).getImportedNamespace();
-		return label == null || label.length() == 0 ?
-			getString("_UI_Import_type") :
-			getString("_UI_Import_type") + " " + label;
-	}
-
-	/**
-	 * This handles model notifications by calling {@link #updateChildren} to update any cached
-	 * children and by creating a viewer notification, which it passes to {@link #fireNotifyChanged}.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public void notifyChanged(Notification notification) {
-		updateChildren(notification);
-
-		switch (notification.getFeatureID(Import.class)) {
-			case SGraphPackage.IMPORT__IMPORTED_NAMESPACE:
-				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
-				return;
-		}
-		super.notifyChanged(notification);
-	}
-
-	/**
-	 * This adds {@link org.eclipse.emf.edit.command.CommandParameter}s describing the children
-	 * that can be created under this object.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
-		super.collectNewChildDescriptors(newChildDescriptors, object);
-	}
-
-	/**
-	 * Return the resource locator for this item provider's resources.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public ResourceLocator getResourceLocator() {
-		return SGraphEditPlugin.INSTANCE;
-	}
-
-}

+ 0 - 24
plugins/org.yakindu.sct.model.sgraph.edit/src/org/yakindu/sct/model/sgraph/provider/SGraphItemProviderAdapterFactory.java

@@ -337,29 +337,6 @@ public class SGraphItemProviderAdapterFactory extends SGraphAdapterFactory imple
 		return stateItemProvider;
 		return stateItemProvider;
 	}
 	}
 
 
-	/**
-	 * This keeps track of the one adapter used for all {@link org.yakindu.sct.model.sgraph.Import} instances.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected ImportItemProvider importItemProvider;
-
-	/**
-	 * This creates an adapter for a {@link org.yakindu.sct.model.sgraph.Import}.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public Adapter createImportAdapter() {
-		if (importItemProvider == null) {
-			importItemProvider = new ImportItemProvider(this);
-		}
-
-		return importItemProvider;
-	}
-
 	/**
 	/**
 	 * This keeps track of the one adapter used for all {@link org.yakindu.sct.model.sgraph.ImportDeclaration} instances.
 	 * This keeps track of the one adapter used for all {@link org.yakindu.sct.model.sgraph.ImportDeclaration} instances.
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->
@@ -493,7 +470,6 @@ public class SGraphItemProviderAdapterFactory extends SGraphAdapterFactory imple
 		if (scopeItemProvider != null) scopeItemProvider.dispose();
 		if (scopeItemProvider != null) scopeItemProvider.dispose();
 		if (synchronizationItemProvider != null) synchronizationItemProvider.dispose();
 		if (synchronizationItemProvider != null) synchronizationItemProvider.dispose();
 		if (stateItemProvider != null) stateItemProvider.dispose();
 		if (stateItemProvider != null) stateItemProvider.dispose();
-		if (importItemProvider != null) importItemProvider.dispose();
 		if (importDeclarationItemProvider != null) importDeclarationItemProvider.dispose();
 		if (importDeclarationItemProvider != null) importDeclarationItemProvider.dispose();
 	}
 	}
 
 

+ 0 - 7
plugins/org.yakindu.sct.model.sgraph.edit/src/org/yakindu/sct/model/sgraph/provider/StatechartItemProvider.java

@@ -173,7 +173,6 @@ public class StatechartItemProvider
 			childrenFeatures.add(SGraphPackage.Literals.REACTIVE_ELEMENT__LOCAL_REACTIONS);
 			childrenFeatures.add(SGraphPackage.Literals.REACTIVE_ELEMENT__LOCAL_REACTIONS);
 			childrenFeatures.add(SGraphPackage.Literals.SCOPED_ELEMENT__SCOPES);
 			childrenFeatures.add(SGraphPackage.Literals.SCOPED_ELEMENT__SCOPES);
 			childrenFeatures.add(SGraphPackage.Literals.COMPOSITE_ELEMENT__REGIONS);
 			childrenFeatures.add(SGraphPackage.Literals.COMPOSITE_ELEMENT__REGIONS);
-			childrenFeatures.add(SGraphPackage.Literals.STATECHART__IMPORTS);
 		}
 		}
 		return childrenFeatures;
 		return childrenFeatures;
 	}
 	}
@@ -237,7 +236,6 @@ public class StatechartItemProvider
 			case SGraphPackage.STATECHART__LOCAL_REACTIONS:
 			case SGraphPackage.STATECHART__LOCAL_REACTIONS:
 			case SGraphPackage.STATECHART__SCOPES:
 			case SGraphPackage.STATECHART__SCOPES:
 			case SGraphPackage.STATECHART__REGIONS:
 			case SGraphPackage.STATECHART__REGIONS:
-			case SGraphPackage.STATECHART__IMPORTS:
 				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
 				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
 				return;
 				return;
 		}
 		}
@@ -269,11 +267,6 @@ public class StatechartItemProvider
 			(createChildParameter
 			(createChildParameter
 				(SGraphPackage.Literals.COMPOSITE_ELEMENT__REGIONS,
 				(SGraphPackage.Literals.COMPOSITE_ELEMENT__REGIONS,
 				 SGraphFactory.eINSTANCE.createRegion()));
 				 SGraphFactory.eINSTANCE.createRegion()));
-
-		newChildDescriptors.add
-			(createChildParameter
-				(SGraphPackage.Literals.STATECHART__IMPORTS,
-				 SGraphFactory.eINSTANCE.createImport()));
 	}
 	}
 
 
 }
 }

+ 1 - 7
plugins/org.yakindu.sct.model.sgraph/model/emf/sgraph.ecore

@@ -27,10 +27,7 @@
   <eClassifiers xsi:type="ecore:EClass" name="Choice" eSuperTypes="#//Pseudostate">
   <eClassifiers xsi:type="ecore:EClass" name="Choice" eSuperTypes="#//Pseudostate">
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="#//ChoiceKind"/>
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="#//ChoiceKind"/>
   </eClassifiers>
   </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="Statechart" eSuperTypes="#//SpecificationElement #//ReactiveElement #//ScopedElement #//CompositeElement ../../../org.yakindu.base.types/model/base.ecore#//NamedElement ../../../org.yakindu.base.types/model/base.ecore#//DocumentedElement ../../../org.yakindu.base.types/model/base.ecore#//DomainElement">
-    <eStructuralFeatures xsi:type="ecore:EReference" name="imports" upperBound="-1"
-        eType="#//Import" containment="true"/>
-  </eClassifiers>
+  <eClassifiers xsi:type="ecore:EClass" name="Statechart" eSuperTypes="#//SpecificationElement #//ReactiveElement #//ScopedElement #//CompositeElement ../../../org.yakindu.base.types/model/base.ecore#//NamedElement ../../../org.yakindu.base.types/model/base.ecore#//DocumentedElement ../../../org.yakindu.base.types/model/base.ecore#//DomainElement"/>
   <eClassifiers xsi:type="ecore:EClass" name="Entry" eSuperTypes="#//Pseudostate">
   <eClassifiers xsi:type="ecore:EClass" name="Entry" eSuperTypes="#//Pseudostate">
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="#//EntryKind"/>
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="kind" eType="#//EntryKind"/>
   </eClassifiers>
   </eClassifiers>
@@ -96,9 +93,6 @@
     <eStructuralFeatures xsi:type="ecore:EReference" name="regions" upperBound="-1"
     <eStructuralFeatures xsi:type="ecore:EReference" name="regions" upperBound="-1"
         eType="#//Region" containment="true" eOpposite="#//Region/composite"/>
         eType="#//Region" containment="true" eOpposite="#//Region/composite"/>
   </eClassifiers>
   </eClassifiers>
-  <eClassifiers xsi:type="ecore:EClass" name="Import">
-    <eStructuralFeatures xsi:type="ecore:EAttribute" name="importedNamespace" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
-  </eClassifiers>
   <eClassifiers xsi:type="ecore:EClass" name="ImportDeclaration" eSuperTypes="../../../org.yakindu.base.types/model/types.ecore#//Declaration">
   <eClassifiers xsi:type="ecore:EClass" name="ImportDeclaration" eSuperTypes="../../../org.yakindu.base.types/model/types.ecore#//Declaration">
     <eStructuralFeatures xsi:type="ecore:EReference" name="declaration" eType="ecore:EClass ../../../org.yakindu.base.types/model/types.ecore#//Declaration"/>
     <eStructuralFeatures xsi:type="ecore:EReference" name="declaration" eType="ecore:EClass ../../../org.yakindu.base.types/model/types.ecore#//Declaration"/>
   </eClassifiers>
   </eClassifiers>

+ 0 - 65
plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/Import.java

@@ -1,65 +0,0 @@
-/**
- * Copyright (c) 2011 committers of YAKINDU and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * Contributors:
- * committers of YAKINDU - initial API and implementation
- * 
- */
-package org.yakindu.sct.model.sgraph;
-
-import org.eclipse.emf.ecore.EObject;
-
-/**
- * <!-- begin-user-doc -->
- * A representation of the model object '<em><b>Import</b></em>'.
- * <!-- end-user-doc -->
- *
- * <p>
- * The following features are supported:
- * </p>
- * <ul>
- *   <li>{@link org.yakindu.sct.model.sgraph.Import#getImportedNamespace <em>Imported Namespace</em>}</li>
- * </ul>
- *
- * @see org.yakindu.sct.model.sgraph.SGraphPackage#getImport()
- * @model
- * @generated
- */
-public interface Import extends EObject {
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	String copyright = "Copyright (c) 2011 committers of YAKINDU and others.\r\nAll rights reserved. This program and the accompanying materials\r\nare made available under the terms of the Eclipse Public License v1.0\r\nwhich accompanies this distribution, and is available at\r\nhttp://www.eclipse.org/legal/epl-v10.html\r\nContributors:\r\ncommitters of YAKINDU - initial API and implementation\r\n";
-
-	/**
-	 * Returns the value of the '<em><b>Imported Namespace</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Imported Namespace</em>' attribute list isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Imported Namespace</em>' attribute.
-	 * @see #setImportedNamespace(String)
-	 * @see org.yakindu.sct.model.sgraph.SGraphPackage#getImport_ImportedNamespace()
-	 * @model
-	 * @generated
-	 */
-	String getImportedNamespace();
-
-	/**
-	 * Sets the value of the '{@link org.yakindu.sct.model.sgraph.Import#getImportedNamespace <em>Imported Namespace</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Imported Namespace</em>' attribute.
-	 * @see #getImportedNamespace()
-	 * @generated
-	 */
-	void setImportedNamespace(String value);
-
-} // Import

+ 0 - 9
plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/SGraphFactory.java

@@ -135,15 +135,6 @@ public interface SGraphFactory extends EFactory {
 	 */
 	 */
 	State createState();
 	State createState();
 
 
-	/**
-	 * Returns a new object of class '<em>Import</em>'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return a new object of class '<em>Import</em>'.
-	 * @generated
-	 */
-	Import createImport();
-
 	/**
 	/**
 	 * Returns a new object of class '<em>Import Declaration</em>'.
 	 * Returns a new object of class '<em>Import Declaration</em>'.
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->

+ 4 - 99
plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/SGraphPackage.java

@@ -605,15 +605,6 @@ public interface SGraphPackage extends EPackage {
 	 */
 	 */
 	int STATECHART__DOMAIN_ID = SPECIFICATION_ELEMENT_FEATURE_COUNT + 6;
 	int STATECHART__DOMAIN_ID = SPECIFICATION_ELEMENT_FEATURE_COUNT + 6;
 
 
-	/**
-	 * The feature id for the '<em><b>Imports</b></em>' containment reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int STATECHART__IMPORTS = SPECIFICATION_ELEMENT_FEATURE_COUNT + 7;
-
 	/**
 	/**
 	 * The number of structural features of the '<em>Statechart</em>' class.
 	 * The number of structural features of the '<em>Statechart</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->
@@ -621,7 +612,7 @@ public interface SGraphPackage extends EPackage {
 	 * @generated
 	 * @generated
 	 * @ordered
 	 * @ordered
 	 */
 	 */
-	int STATECHART_FEATURE_COUNT = SPECIFICATION_ELEMENT_FEATURE_COUNT + 8;
+	int STATECHART_FEATURE_COUNT = SPECIFICATION_ELEMENT_FEATURE_COUNT + 7;
 
 
 	/**
 	/**
 	 * The meta object id for the '{@link org.yakindu.sct.model.sgraph.impl.EntryImpl <em>Entry</em>}' class.
 	 * The meta object id for the '{@link org.yakindu.sct.model.sgraph.impl.EntryImpl <em>Entry</em>}' class.
@@ -1183,34 +1174,6 @@ public interface SGraphPackage extends EPackage {
 	 */
 	 */
 	int COMPOSITE_ELEMENT_FEATURE_COUNT = 1;
 	int COMPOSITE_ELEMENT_FEATURE_COUNT = 1;
 
 
-	/**
-	 * The meta object id for the '{@link org.yakindu.sct.model.sgraph.impl.ImportImpl <em>Import</em>}' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.yakindu.sct.model.sgraph.impl.ImportImpl
-	 * @see org.yakindu.sct.model.sgraph.impl.SGraphPackageImpl#getImport()
-	 * @generated
-	 */
-	int IMPORT = 21;
-
-	/**
-	 * The feature id for the '<em><b>Imported Namespace</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int IMPORT__IMPORTED_NAMESPACE = 0;
-
-	/**
-	 * The number of structural features of the '<em>Import</em>' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int IMPORT_FEATURE_COUNT = 1;
-
 	/**
 	/**
 	 * The meta object id for the '{@link org.yakindu.sct.model.sgraph.impl.ImportDeclarationImpl <em>Import Declaration</em>}' class.
 	 * The meta object id for the '{@link org.yakindu.sct.model.sgraph.impl.ImportDeclarationImpl <em>Import Declaration</em>}' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->
@@ -1219,7 +1182,7 @@ public interface SGraphPackage extends EPackage {
 	 * @see org.yakindu.sct.model.sgraph.impl.SGraphPackageImpl#getImportDeclaration()
 	 * @see org.yakindu.sct.model.sgraph.impl.SGraphPackageImpl#getImportDeclaration()
 	 * @generated
 	 * @generated
 	 */
 	 */
-	int IMPORT_DECLARATION = 22;
+	int IMPORT_DECLARATION = 21;
 
 
 	/**
 	/**
 	 * The feature id for the '<em><b>Type</b></em>' reference.
 	 * The feature id for the '<em><b>Type</b></em>' reference.
@@ -1292,7 +1255,7 @@ public interface SGraphPackage extends EPackage {
 	 * @see org.yakindu.sct.model.sgraph.impl.SGraphPackageImpl#getEntryKind()
 	 * @see org.yakindu.sct.model.sgraph.impl.SGraphPackageImpl#getEntryKind()
 	 * @generated
 	 * @generated
 	 */
 	 */
-	int ENTRY_KIND = 23;
+	int ENTRY_KIND = 22;
 
 
 
 
 	/**
 	/**
@@ -1303,7 +1266,7 @@ public interface SGraphPackage extends EPackage {
 	 * @see org.yakindu.sct.model.sgraph.impl.SGraphPackageImpl#getChoiceKind()
 	 * @see org.yakindu.sct.model.sgraph.impl.SGraphPackageImpl#getChoiceKind()
 	 * @generated
 	 * @generated
 	 */
 	 */
-	int CHOICE_KIND = 24;
+	int CHOICE_KIND = 23;
 
 
 
 
 	/**
 	/**
@@ -1518,27 +1481,6 @@ public interface SGraphPackage extends EPackage {
 	 */
 	 */
 	EReference getCompositeElement_Regions();
 	EReference getCompositeElement_Regions();
 
 
-	/**
-	 * Returns the meta object for class '{@link org.yakindu.sct.model.sgraph.Import <em>Import</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for class '<em>Import</em>'.
-	 * @see org.yakindu.sct.model.sgraph.Import
-	 * @generated
-	 */
-	EClass getImport();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.yakindu.sct.model.sgraph.Import#getImportedNamespace <em>Imported Namespace</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Imported Namespace</em>'.
-	 * @see org.yakindu.sct.model.sgraph.Import#getImportedNamespace()
-	 * @see #getImport()
-	 * @generated
-	 */
-	EAttribute getImport_ImportedNamespace();
-
 	/**
 	/**
 	 * Returns the meta object for class '{@link org.yakindu.sct.model.sgraph.ImportDeclaration <em>Import Declaration</em>}'.
 	 * Returns the meta object for class '{@link org.yakindu.sct.model.sgraph.ImportDeclaration <em>Import Declaration</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->
@@ -1591,17 +1533,6 @@ public interface SGraphPackage extends EPackage {
 	 */
 	 */
 	EClass getStatechart();
 	EClass getStatechart();
 
 
-	/**
-	 * Returns the meta object for the containment reference list '{@link org.yakindu.sct.model.sgraph.Statechart#getImports <em>Imports</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @return the meta object for the containment reference list '<em>Imports</em>'.
-	 * @see org.yakindu.sct.model.sgraph.Statechart#getImports()
-	 * @see #getStatechart()
-	 * @generated
-	 */
-	EReference getStatechart_Imports();
-
 	/**
 	/**
 	 * Returns the meta object for class '{@link org.yakindu.sct.model.sgraph.Entry <em>Entry</em>}'.
 	 * Returns the meta object for class '{@link org.yakindu.sct.model.sgraph.Entry <em>Entry</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->
@@ -2062,24 +1993,6 @@ public interface SGraphPackage extends EPackage {
 		 */
 		 */
 		EReference COMPOSITE_ELEMENT__REGIONS = eINSTANCE.getCompositeElement_Regions();
 		EReference COMPOSITE_ELEMENT__REGIONS = eINSTANCE.getCompositeElement_Regions();
 
 
-		/**
-		 * The meta object literal for the '{@link org.yakindu.sct.model.sgraph.impl.ImportImpl <em>Import</em>}' class.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @see org.yakindu.sct.model.sgraph.impl.ImportImpl
-		 * @see org.yakindu.sct.model.sgraph.impl.SGraphPackageImpl#getImport()
-		 * @generated
-		 */
-		EClass IMPORT = eINSTANCE.getImport();
-
-		/**
-		 * The meta object literal for the '<em><b>Imported Namespace</b></em>' attribute feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute IMPORT__IMPORTED_NAMESPACE = eINSTANCE.getImport_ImportedNamespace();
-
 		/**
 		/**
 		 * The meta object literal for the '{@link org.yakindu.sct.model.sgraph.impl.ImportDeclarationImpl <em>Import Declaration</em>}' class.
 		 * The meta object literal for the '{@link org.yakindu.sct.model.sgraph.impl.ImportDeclarationImpl <em>Import Declaration</em>}' class.
 		 * <!-- begin-user-doc -->
 		 * <!-- begin-user-doc -->
@@ -2126,14 +2039,6 @@ public interface SGraphPackage extends EPackage {
 		 */
 		 */
 		EClass STATECHART = eINSTANCE.getStatechart();
 		EClass STATECHART = eINSTANCE.getStatechart();
 
 
-		/**
-		 * The meta object literal for the '<em><b>Imports</b></em>' containment reference list feature.
-		 * <!-- begin-user-doc -->
-		 * <!-- end-user-doc -->
-		 * @generated
-		 */
-		EReference STATECHART__IMPORTS = eINSTANCE.getStatechart_Imports();
-
 		/**
 		/**
 		 * The meta object literal for the '{@link org.yakindu.sct.model.sgraph.impl.EntryImpl <em>Entry</em>}' class.
 		 * The meta object literal for the '{@link org.yakindu.sct.model.sgraph.impl.EntryImpl <em>Entry</em>}' class.
 		 * <!-- begin-user-doc -->
 		 * <!-- begin-user-doc -->

+ 0 - 22
plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/Statechart.java

@@ -21,12 +21,6 @@ import org.yakindu.base.base.NamedElement;
  * A representation of the model object '<em><b>Statechart</b></em>'.
  * A representation of the model object '<em><b>Statechart</b></em>'.
  * <!-- end-user-doc -->
  * <!-- end-user-doc -->
  *
  *
- * <p>
- * The following features are supported:
- * </p>
- * <ul>
- *   <li>{@link org.yakindu.sct.model.sgraph.Statechart#getImports <em>Imports</em>}</li>
- * </ul>
  *
  *
  * @see org.yakindu.sct.model.sgraph.SGraphPackage#getStatechart()
  * @see org.yakindu.sct.model.sgraph.SGraphPackage#getStatechart()
  * @model
  * @model
@@ -40,20 +34,4 @@ public interface Statechart extends SpecificationElement, ReactiveElement, Scope
 	 */
 	 */
 	String copyright = "Copyright (c) 2011 committers of YAKINDU and others.\r\nAll rights reserved. This program and the accompanying materials\r\nare made available under the terms of the Eclipse Public License v1.0\r\nwhich accompanies this distribution, and is available at\r\nhttp://www.eclipse.org/legal/epl-v10.html\r\nContributors:\r\ncommitters of YAKINDU - initial API and implementation\r\n";
 	String copyright = "Copyright (c) 2011 committers of YAKINDU and others.\r\nAll rights reserved. This program and the accompanying materials\r\nare made available under the terms of the Eclipse Public License v1.0\r\nwhich accompanies this distribution, and is available at\r\nhttp://www.eclipse.org/legal/epl-v10.html\r\nContributors:\r\ncommitters of YAKINDU - initial API and implementation\r\n";
 
 
-	/**
-	 * Returns the value of the '<em><b>Imports</b></em>' containment reference list.
-	 * The list contents are of type {@link org.yakindu.sct.model.sgraph.Import}.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Imports</em>' containment reference list isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Imports</em>' containment reference list.
-	 * @see org.yakindu.sct.model.sgraph.SGraphPackage#getStatechart_Imports()
-	 * @model containment="true" resolveProxies="true"
-	 * @generated
-	 */
-	EList<Import> getImports();
-
 } // Statechart
 } // Statechart

+ 0 - 175
plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/impl/ImportImpl.java

@@ -1,175 +0,0 @@
-/**
- * Copyright (c) 2011 committers of YAKINDU and others.
- * All rights reserved. This program and the accompanying materials
- * are made available under the terms of the Eclipse Public License v1.0
- * which accompanies this distribution, and is available at
- * http://www.eclipse.org/legal/epl-v10.html
- * Contributors:
- * committers of YAKINDU - initial API and implementation
- * 
- */
-package org.yakindu.sct.model.sgraph.impl;
-
-import org.eclipse.emf.common.notify.Notification;
-import org.eclipse.emf.ecore.EClass;
-import org.eclipse.emf.ecore.impl.ENotificationImpl;
-import org.eclipse.emf.ecore.impl.EObjectImpl;
-import org.yakindu.sct.model.sgraph.Import;
-import org.yakindu.sct.model.sgraph.SGraphPackage;
-
-/**
- * <!-- begin-user-doc -->
- * An implementation of the model object '<em><b>Import</b></em>'.
- * <!-- end-user-doc -->
- * <p>
- * The following features are implemented:
- * </p>
- * <ul>
- *   <li>{@link org.yakindu.sct.model.sgraph.impl.ImportImpl#getImportedNamespace <em>Imported Namespace</em>}</li>
- * </ul>
- *
- * @generated
- */
-public class ImportImpl extends EObjectImpl implements Import {
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public static final String copyright = "Copyright (c) 2011 committers of YAKINDU and others.\r\nAll rights reserved. This program and the accompanying materials\r\nare made available under the terms of the Eclipse Public License v1.0\r\nwhich accompanies this distribution, and is available at\r\nhttp://www.eclipse.org/legal/epl-v10.html\r\nContributors:\r\ncommitters of YAKINDU - initial API and implementation\r\n";
-
-	/**
-	 * The default value of the '{@link #getImportedNamespace() <em>Imported Namespace</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getImportedNamespace()
-	 * @generated
-	 * @ordered
-	 */
-	protected static final String IMPORTED_NAMESPACE_EDEFAULT = null;
-
-	/**
-	 * The cached value of the '{@link #getImportedNamespace() <em>Imported Namespace</em>}' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getImportedNamespace()
-	 * @generated
-	 * @ordered
-	 */
-	protected String importedNamespace = IMPORTED_NAMESPACE_EDEFAULT;
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected ImportImpl() {
-		super();
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	protected EClass eStaticClass() {
-		return SGraphPackage.Literals.IMPORT;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public String getImportedNamespace() {
-		return importedNamespace;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setImportedNamespace(String newImportedNamespace) {
-		String oldImportedNamespace = importedNamespace;
-		importedNamespace = newImportedNamespace;
-		if (eNotificationRequired())
-			eNotify(new ENotificationImpl(this, Notification.SET, SGraphPackage.IMPORT__IMPORTED_NAMESPACE, oldImportedNamespace, importedNamespace));
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public Object eGet(int featureID, boolean resolve, boolean coreType) {
-		switch (featureID) {
-			case SGraphPackage.IMPORT__IMPORTED_NAMESPACE:
-				return getImportedNamespace();
-		}
-		return super.eGet(featureID, resolve, coreType);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public void eSet(int featureID, Object newValue) {
-		switch (featureID) {
-			case SGraphPackage.IMPORT__IMPORTED_NAMESPACE:
-				setImportedNamespace((String)newValue);
-				return;
-		}
-		super.eSet(featureID, newValue);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public void eUnset(int featureID) {
-		switch (featureID) {
-			case SGraphPackage.IMPORT__IMPORTED_NAMESPACE:
-				setImportedNamespace(IMPORTED_NAMESPACE_EDEFAULT);
-				return;
-		}
-		super.eUnset(featureID);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public boolean eIsSet(int featureID) {
-		switch (featureID) {
-			case SGraphPackage.IMPORT__IMPORTED_NAMESPACE:
-				return IMPORTED_NAMESPACE_EDEFAULT == null ? importedNamespace != null : !IMPORTED_NAMESPACE_EDEFAULT.equals(importedNamespace);
-		}
-		return super.eIsSet(featureID);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public String toString() {
-		if (eIsProxy()) return super.toString();
-
-		StringBuffer result = new StringBuffer(super.toString());
-		result.append(" (importedNamespace: ");
-		result.append(importedNamespace);
-		result.append(')');
-		return result.toString();
-	}
-
-} //ImportImpl

+ 0 - 12
plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/impl/SGraphFactoryImpl.java

@@ -22,7 +22,6 @@ import org.yakindu.sct.model.sgraph.Entry;
 import org.yakindu.sct.model.sgraph.EntryKind;
 import org.yakindu.sct.model.sgraph.EntryKind;
 import org.yakindu.sct.model.sgraph.Exit;
 import org.yakindu.sct.model.sgraph.Exit;
 import org.yakindu.sct.model.sgraph.FinalState;
 import org.yakindu.sct.model.sgraph.FinalState;
-import org.yakindu.sct.model.sgraph.Import;
 import org.yakindu.sct.model.sgraph.ImportDeclaration;
 import org.yakindu.sct.model.sgraph.ImportDeclaration;
 import org.yakindu.sct.model.sgraph.ReactionProperty;
 import org.yakindu.sct.model.sgraph.ReactionProperty;
 import org.yakindu.sct.model.sgraph.Region;
 import org.yakindu.sct.model.sgraph.Region;
@@ -96,7 +95,6 @@ public class SGraphFactoryImpl extends EFactoryImpl implements SGraphFactory {
 			case SGraphPackage.SCOPE: return createScope();
 			case SGraphPackage.SCOPE: return createScope();
 			case SGraphPackage.SYNCHRONIZATION: return createSynchronization();
 			case SGraphPackage.SYNCHRONIZATION: return createSynchronization();
 			case SGraphPackage.STATE: return createState();
 			case SGraphPackage.STATE: return createState();
-			case SGraphPackage.IMPORT: return createImport();
 			case SGraphPackage.IMPORT_DECLARATION: return createImportDeclaration();
 			case SGraphPackage.IMPORT_DECLARATION: return createImportDeclaration();
 			default:
 			default:
 				throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
 				throw new IllegalArgumentException("The class '" + eClass.getName() + "' is not a valid classifier");
@@ -247,16 +245,6 @@ public class SGraphFactoryImpl extends EFactoryImpl implements SGraphFactory {
 		return state;
 		return state;
 	}
 	}
 
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Import createImport() {
-		ImportImpl import_ = new ImportImpl();
-		return import_;
-	}
-
 	/**
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * <!-- end-user-doc -->

+ 0 - 43
plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/impl/SGraphPackageImpl.java

@@ -26,7 +26,6 @@ import org.yakindu.sct.model.sgraph.Entry;
 import org.yakindu.sct.model.sgraph.EntryKind;
 import org.yakindu.sct.model.sgraph.EntryKind;
 import org.yakindu.sct.model.sgraph.Exit;
 import org.yakindu.sct.model.sgraph.Exit;
 import org.yakindu.sct.model.sgraph.FinalState;
 import org.yakindu.sct.model.sgraph.FinalState;
-import org.yakindu.sct.model.sgraph.Import;
 import org.yakindu.sct.model.sgraph.ImportDeclaration;
 import org.yakindu.sct.model.sgraph.ImportDeclaration;
 import org.yakindu.sct.model.sgraph.Pseudostate;
 import org.yakindu.sct.model.sgraph.Pseudostate;
 import org.yakindu.sct.model.sgraph.Reaction;
 import org.yakindu.sct.model.sgraph.Reaction;
@@ -116,13 +115,6 @@ public class SGraphPackageImpl extends EPackageImpl implements SGraphPackage {
 	 */
 	 */
 	private EClass compositeElementEClass = null;
 	private EClass compositeElementEClass = null;
 
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	private EClass importEClass = null;
-
 	/**
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * <!-- end-user-doc -->
@@ -479,24 +471,6 @@ public class SGraphPackageImpl extends EPackageImpl implements SGraphPackage {
 		return (EReference)compositeElementEClass.getEStructuralFeatures().get(0);
 		return (EReference)compositeElementEClass.getEStructuralFeatures().get(0);
 	}
 	}
 
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EClass getImport() {
-		return importEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getImport_ImportedNamespace() {
-		return (EAttribute)importEClass.getEStructuralFeatures().get(0);
-	}
-
 	/**
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * <!-- end-user-doc -->
@@ -542,15 +516,6 @@ public class SGraphPackageImpl extends EPackageImpl implements SGraphPackage {
 		return statechartEClass;
 		return statechartEClass;
 	}
 	}
 
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getStatechart_Imports() {
-		return (EReference)statechartEClass.getEStructuralFeatures().get(0);
-	}
-
 	/**
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * <!-- end-user-doc -->
@@ -825,7 +790,6 @@ public class SGraphPackageImpl extends EPackageImpl implements SGraphPackage {
 		createEAttribute(choiceEClass, CHOICE__KIND);
 		createEAttribute(choiceEClass, CHOICE__KIND);
 
 
 		statechartEClass = createEClass(STATECHART);
 		statechartEClass = createEClass(STATECHART);
-		createEReference(statechartEClass, STATECHART__IMPORTS);
 
 
 		entryEClass = createEClass(ENTRY);
 		entryEClass = createEClass(ENTRY);
 		createEAttribute(entryEClass, ENTRY__KIND);
 		createEAttribute(entryEClass, ENTRY__KIND);
@@ -872,9 +836,6 @@ public class SGraphPackageImpl extends EPackageImpl implements SGraphPackage {
 		compositeElementEClass = createEClass(COMPOSITE_ELEMENT);
 		compositeElementEClass = createEClass(COMPOSITE_ELEMENT);
 		createEReference(compositeElementEClass, COMPOSITE_ELEMENT__REGIONS);
 		createEReference(compositeElementEClass, COMPOSITE_ELEMENT__REGIONS);
 
 
-		importEClass = createEClass(IMPORT);
-		createEAttribute(importEClass, IMPORT__IMPORTED_NAMESPACE);
-
 		importDeclarationEClass = createEClass(IMPORT_DECLARATION);
 		importDeclarationEClass = createEClass(IMPORT_DECLARATION);
 		createEReference(importDeclarationEClass, IMPORT_DECLARATION__DECLARATION);
 		createEReference(importDeclarationEClass, IMPORT_DECLARATION__DECLARATION);
 
 
@@ -964,7 +925,6 @@ public class SGraphPackageImpl extends EPackageImpl implements SGraphPackage {
 		initEAttribute(getChoice_Kind(), this.getChoiceKind(), "kind", null, 0, 1, Choice.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 		initEAttribute(getChoice_Kind(), this.getChoiceKind(), "kind", null, 0, 1, Choice.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
 
 		initEClass(statechartEClass, Statechart.class, "Statechart", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
 		initEClass(statechartEClass, Statechart.class, "Statechart", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEReference(getStatechart_Imports(), this.getImport(), null, "imports", null, 0, -1, Statechart.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
 
 		initEClass(entryEClass, Entry.class, "Entry", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
 		initEClass(entryEClass, Entry.class, "Entry", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
 		initEAttribute(getEntry_Kind(), this.getEntryKind(), "kind", null, 0, 1, Entry.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 		initEAttribute(getEntry_Kind(), this.getEntryKind(), "kind", null, 0, 1, Entry.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
@@ -1011,9 +971,6 @@ public class SGraphPackageImpl extends EPackageImpl implements SGraphPackage {
 		initEClass(compositeElementEClass, CompositeElement.class, "CompositeElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
 		initEClass(compositeElementEClass, CompositeElement.class, "CompositeElement", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
 		initEReference(getCompositeElement_Regions(), this.getRegion(), this.getRegion_Composite(), "regions", null, 0, -1, CompositeElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 		initEReference(getCompositeElement_Regions(), this.getRegion(), this.getRegion_Composite(), "regions", null, 0, -1, CompositeElement.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
 
-		initEClass(importEClass, Import.class, "Import", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEAttribute(getImport_ImportedNamespace(), ecorePackage.getEString(), "importedNamespace", null, 0, 1, Import.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
 		initEClass(importDeclarationEClass, ImportDeclaration.class, "ImportDeclaration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
 		initEClass(importDeclarationEClass, ImportDeclaration.class, "ImportDeclaration", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
 		initEReference(getImportDeclaration_Declaration(), theTypesPackage.getDeclaration(), null, "declaration", null, 0, 1, ImportDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 		initEReference(getImportDeclaration_Declaration(), theTypesPackage.getDeclaration(), null, "declaration", null, 0, 1, ImportDeclaration.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
 

+ 0 - 37
plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/impl/StatechartImpl.java

@@ -27,7 +27,6 @@ import org.yakindu.base.base.DocumentedElement;
 import org.yakindu.base.base.DomainElement;
 import org.yakindu.base.base.DomainElement;
 import org.yakindu.base.base.NamedElement;
 import org.yakindu.base.base.NamedElement;
 import org.yakindu.sct.model.sgraph.CompositeElement;
 import org.yakindu.sct.model.sgraph.CompositeElement;
-import org.yakindu.sct.model.sgraph.Import;
 import org.yakindu.sct.model.sgraph.Reaction;
 import org.yakindu.sct.model.sgraph.Reaction;
 import org.yakindu.sct.model.sgraph.ReactiveElement;
 import org.yakindu.sct.model.sgraph.ReactiveElement;
 import org.yakindu.sct.model.sgraph.Region;
 import org.yakindu.sct.model.sgraph.Region;
@@ -50,7 +49,6 @@ import org.yakindu.sct.model.sgraph.Statechart;
  *   <li>{@link org.yakindu.sct.model.sgraph.impl.StatechartImpl#getName <em>Name</em>}</li>
  *   <li>{@link org.yakindu.sct.model.sgraph.impl.StatechartImpl#getName <em>Name</em>}</li>
  *   <li>{@link org.yakindu.sct.model.sgraph.impl.StatechartImpl#getDocumentation <em>Documentation</em>}</li>
  *   <li>{@link org.yakindu.sct.model.sgraph.impl.StatechartImpl#getDocumentation <em>Documentation</em>}</li>
  *   <li>{@link org.yakindu.sct.model.sgraph.impl.StatechartImpl#getDomainID <em>Domain ID</em>}</li>
  *   <li>{@link org.yakindu.sct.model.sgraph.impl.StatechartImpl#getDomainID <em>Domain ID</em>}</li>
- *   <li>{@link org.yakindu.sct.model.sgraph.impl.StatechartImpl#getImports <em>Imports</em>}</li>
  * </ul>
  * </ul>
  *
  *
  * @generated
  * @generated
@@ -157,16 +155,6 @@ public class StatechartImpl extends SpecificationElementImpl implements
 	 */
 	 */
 	protected String domainID = DOMAIN_ID_EDEFAULT;
 	protected String domainID = DOMAIN_ID_EDEFAULT;
 
 
-	/**
-	 * The cached value of the '{@link #getImports() <em>Imports</em>}' containment reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see #getImports()
-	 * @generated
-	 * @ordered
-	 */
-	protected EList<Import> imports;
-
 	/**
 	/**
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @generated
@@ -290,18 +278,6 @@ public class StatechartImpl extends SpecificationElementImpl implements
 			eNotify(new ENotificationImpl(this, Notification.SET, SGraphPackage.STATECHART__DOCUMENTATION, oldDocumentation, documentation));
 			eNotify(new ENotificationImpl(this, Notification.SET, SGraphPackage.STATECHART__DOCUMENTATION, oldDocumentation, documentation));
 	}
 	}
 
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EList<Import> getImports() {
-		if (imports == null) {
-			imports = new EObjectContainmentEList.Resolving<Import>(Import.class, this, SGraphPackage.STATECHART__IMPORTS);
-		}
-		return imports;
-	}
-
 	/**
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * <!-- end-user-doc -->
@@ -350,8 +326,6 @@ public class StatechartImpl extends SpecificationElementImpl implements
 				return ((InternalEList<?>)getScopes()).basicRemove(otherEnd, msgs);
 				return ((InternalEList<?>)getScopes()).basicRemove(otherEnd, msgs);
 			case SGraphPackage.STATECHART__REGIONS:
 			case SGraphPackage.STATECHART__REGIONS:
 				return ((InternalEList<?>)getRegions()).basicRemove(otherEnd, msgs);
 				return ((InternalEList<?>)getRegions()).basicRemove(otherEnd, msgs);
-			case SGraphPackage.STATECHART__IMPORTS:
-				return ((InternalEList<?>)getImports()).basicRemove(otherEnd, msgs);
 		}
 		}
 		return super.eInverseRemove(otherEnd, featureID, msgs);
 		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 	}
@@ -377,8 +351,6 @@ public class StatechartImpl extends SpecificationElementImpl implements
 				return getDocumentation();
 				return getDocumentation();
 			case SGraphPackage.STATECHART__DOMAIN_ID:
 			case SGraphPackage.STATECHART__DOMAIN_ID:
 				return getDomainID();
 				return getDomainID();
-			case SGraphPackage.STATECHART__IMPORTS:
-				return getImports();
 		}
 		}
 		return super.eGet(featureID, resolve, coreType);
 		return super.eGet(featureID, resolve, coreType);
 	}
 	}
@@ -411,10 +383,6 @@ public class StatechartImpl extends SpecificationElementImpl implements
 			case SGraphPackage.STATECHART__DOMAIN_ID:
 			case SGraphPackage.STATECHART__DOMAIN_ID:
 				setDomainID((String)newValue);
 				setDomainID((String)newValue);
 				return;
 				return;
-			case SGraphPackage.STATECHART__IMPORTS:
-				getImports().clear();
-				getImports().addAll((Collection<? extends Import>)newValue);
-				return;
 		}
 		}
 		super.eSet(featureID, newValue);
 		super.eSet(featureID, newValue);
 	}
 	}
@@ -444,9 +412,6 @@ public class StatechartImpl extends SpecificationElementImpl implements
 			case SGraphPackage.STATECHART__DOMAIN_ID:
 			case SGraphPackage.STATECHART__DOMAIN_ID:
 				setDomainID(DOMAIN_ID_EDEFAULT);
 				setDomainID(DOMAIN_ID_EDEFAULT);
 				return;
 				return;
-			case SGraphPackage.STATECHART__IMPORTS:
-				getImports().clear();
-				return;
 		}
 		}
 		super.eUnset(featureID);
 		super.eUnset(featureID);
 	}
 	}
@@ -472,8 +437,6 @@ public class StatechartImpl extends SpecificationElementImpl implements
 				return DOCUMENTATION_EDEFAULT == null ? documentation != null : !DOCUMENTATION_EDEFAULT.equals(documentation);
 				return DOCUMENTATION_EDEFAULT == null ? documentation != null : !DOCUMENTATION_EDEFAULT.equals(documentation);
 			case SGraphPackage.STATECHART__DOMAIN_ID:
 			case SGraphPackage.STATECHART__DOMAIN_ID:
 				return DOMAIN_ID_EDEFAULT == null ? domainID != null : !DOMAIN_ID_EDEFAULT.equals(domainID);
 				return DOMAIN_ID_EDEFAULT == null ? domainID != null : !DOMAIN_ID_EDEFAULT.equals(domainID);
-			case SGraphPackage.STATECHART__IMPORTS:
-				return imports != null && !imports.isEmpty();
 		}
 		}
 		return super.eIsSet(featureID);
 		return super.eIsSet(featureID);
 	}
 	}

+ 0 - 19
plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/util/SGraphAdapterFactory.java

@@ -27,7 +27,6 @@ import org.yakindu.sct.model.sgraph.Effect;
 import org.yakindu.sct.model.sgraph.Entry;
 import org.yakindu.sct.model.sgraph.Entry;
 import org.yakindu.sct.model.sgraph.Exit;
 import org.yakindu.sct.model.sgraph.Exit;
 import org.yakindu.sct.model.sgraph.FinalState;
 import org.yakindu.sct.model.sgraph.FinalState;
-import org.yakindu.sct.model.sgraph.Import;
 import org.yakindu.sct.model.sgraph.ImportDeclaration;
 import org.yakindu.sct.model.sgraph.ImportDeclaration;
 import org.yakindu.sct.model.sgraph.Pseudostate;
 import org.yakindu.sct.model.sgraph.Pseudostate;
 import org.yakindu.sct.model.sgraph.Reaction;
 import org.yakindu.sct.model.sgraph.Reaction;
@@ -194,10 +193,6 @@ public class SGraphAdapterFactory extends AdapterFactoryImpl {
 				return createCompositeElementAdapter();
 				return createCompositeElementAdapter();
 			}
 			}
 			@Override
 			@Override
-			public Adapter caseImport(Import object) {
-				return createImportAdapter();
-			}
-			@Override
 			public Adapter caseImportDeclaration(ImportDeclaration object) {
 			public Adapter caseImportDeclaration(ImportDeclaration object) {
 				return createImportDeclarationAdapter();
 				return createImportDeclarationAdapter();
 			}
 			}
@@ -459,20 +454,6 @@ public class SGraphAdapterFactory extends AdapterFactoryImpl {
 		return null;
 		return null;
 	}
 	}
 
 
-	/**
-	 * Creates a new adapter for an object of class '{@link org.yakindu.sct.model.sgraph.Import <em>Import</em>}'.
-	 * <!-- begin-user-doc -->
-	 * This default implementation returns null so that we can easily ignore cases;
-	 * it's useful to ignore a case when inheritance will catch all the cases anyway.
-	 * <!-- end-user-doc -->
-	 * @return the new adapter.
-	 * @see org.yakindu.sct.model.sgraph.Import
-	 * @generated
-	 */
-	public Adapter createImportAdapter() {
-		return null;
-	}
-
 	/**
 	/**
 	 * Creates a new adapter for an object of class '{@link org.yakindu.sct.model.sgraph.ImportDeclaration <em>Import Declaration</em>}'.
 	 * Creates a new adapter for an object of class '{@link org.yakindu.sct.model.sgraph.ImportDeclaration <em>Import Declaration</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->

+ 0 - 22
plugins/org.yakindu.sct.model.sgraph/src/org/yakindu/sct/model/sgraph/util/SGraphSwitch.java

@@ -26,7 +26,6 @@ import org.yakindu.sct.model.sgraph.Effect;
 import org.yakindu.sct.model.sgraph.Entry;
 import org.yakindu.sct.model.sgraph.Entry;
 import org.yakindu.sct.model.sgraph.Exit;
 import org.yakindu.sct.model.sgraph.Exit;
 import org.yakindu.sct.model.sgraph.FinalState;
 import org.yakindu.sct.model.sgraph.FinalState;
-import org.yakindu.sct.model.sgraph.Import;
 import org.yakindu.sct.model.sgraph.ImportDeclaration;
 import org.yakindu.sct.model.sgraph.ImportDeclaration;
 import org.yakindu.sct.model.sgraph.Pseudostate;
 import org.yakindu.sct.model.sgraph.Pseudostate;
 import org.yakindu.sct.model.sgraph.Reaction;
 import org.yakindu.sct.model.sgraph.Reaction;
@@ -274,12 +273,6 @@ public class SGraphSwitch<T> extends Switch<T> {
 				if (result == null) result = defaultCase(theEObject);
 				if (result == null) result = defaultCase(theEObject);
 				return result;
 				return result;
 			}
 			}
-			case SGraphPackage.IMPORT: {
-				Import import_ = (Import)theEObject;
-				T result = caseImport(import_);
-				if (result == null) result = defaultCase(theEObject);
-				return result;
-			}
 			case SGraphPackage.IMPORT_DECLARATION: {
 			case SGraphPackage.IMPORT_DECLARATION: {
 				ImportDeclaration importDeclaration = (ImportDeclaration)theEObject;
 				ImportDeclaration importDeclaration = (ImportDeclaration)theEObject;
 				T result = caseImportDeclaration(importDeclaration);
 				T result = caseImportDeclaration(importDeclaration);
@@ -520,21 +513,6 @@ public class SGraphSwitch<T> extends Switch<T> {
 		return null;
 		return null;
 	}
 	}
 
 
-	/**
-	 * Returns the result of interpreting the object as an instance of '<em>Import</em>'.
-	 * <!-- begin-user-doc -->
-	 * This implementation returns null;
-	 * returning a non-null result will terminate the switch.
-	 * <!-- end-user-doc -->
-	 * @param object the target of the switch.
-	 * @return the result of interpreting the object as an instance of '<em>Import</em>'.
-	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-	 * @generated
-	 */
-	public T caseImport(Import object) {
-		return null;
-	}
-
 	/**
 	/**
 	 * Returns the result of interpreting the object as an instance of '<em>Import Declaration</em>'.
 	 * Returns the result of interpreting the object as an instance of '<em>Import Declaration</em>'.
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->

+ 5 - 5
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/ImportScope.java

@@ -22,19 +22,19 @@ import org.eclipse.emf.common.util.EList;
  */
  */
 public interface ImportScope extends StatechartScope {
 public interface ImportScope extends StatechartScope {
 	/**
 	/**
-	 * Returns the value of the '<em><b>Imports</b></em>' containment reference list.
-	 * The list contents are of type {@link org.yakindu.sct.model.stext.stext.Import}.
+	 * Returns the value of the '<em><b>Imports</b></em>' reference list.
+	 * The list contents are of type {@link org.yakindu.base.types.Package}.
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->
 	 * <p>
 	 * <p>
 	 * If the meaning of the '<em>Imports</em>' containment reference list isn't clear,
 	 * If the meaning of the '<em>Imports</em>' containment reference list isn't clear,
 	 * there really should be more of a description here...
 	 * there really should be more of a description here...
 	 * </p>
 	 * </p>
 	 * <!-- end-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Imports</em>' containment reference list.
+	 * @return the value of the '<em>Imports</em>' reference list.
 	 * @see org.yakindu.sct.model.stext.stext.StextPackage#getImportScope_Imports()
 	 * @see org.yakindu.sct.model.stext.stext.StextPackage#getImportScope_Imports()
-	 * @model containment="true"
+	 * @model
 	 * @generated
 	 * @generated
 	 */
 	 */
-	EList<Import> getImports();
+	EList<org.yakindu.base.types.Package> getImports();
 
 
 } // ImportScope
 } // ImportScope

+ 4 - 4
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/StextPackage.java

@@ -504,7 +504,7 @@ public interface StextPackage extends EPackage {
 	int IMPORT_SCOPE__REACTIONS = STATECHART_SCOPE__REACTIONS;
 	int IMPORT_SCOPE__REACTIONS = STATECHART_SCOPE__REACTIONS;
 
 
 	/**
 	/**
-	 * The feature id for the '<em><b>Imports</b></em>' containment reference list.
+	 * The feature id for the '<em><b>Imports</b></em>' reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @generated
@@ -1671,10 +1671,10 @@ public interface StextPackage extends EPackage {
 	EClass getImportScope();
 	EClass getImportScope();
 
 
 	/**
 	/**
-	 * Returns the meta object for the containment reference list '{@link org.yakindu.sct.model.stext.stext.ImportScope#getImports <em>Imports</em>}'.
+	 * Returns the meta object for the reference list '{@link org.yakindu.sct.model.stext.stext.ImportScope#getImports <em>Imports</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for the containment reference list '<em>Imports</em>'.
+	 * @return the meta object for the reference list '<em>Imports</em>'.
 	 * @see org.yakindu.sct.model.stext.stext.ImportScope#getImports()
 	 * @see org.yakindu.sct.model.stext.stext.ImportScope#getImports()
 	 * @see #getImportScope()
 	 * @see #getImportScope()
 	 * @generated
 	 * @generated
@@ -2308,7 +2308,7 @@ public interface StextPackage extends EPackage {
 		EClass IMPORT_SCOPE = eINSTANCE.getImportScope();
 		EClass IMPORT_SCOPE = eINSTANCE.getImportScope();
 
 
 		/**
 		/**
-		 * The meta object literal for the '<em><b>Imports</b></em>' containment reference list feature.
+		 * The meta object literal for the '<em><b>Imports</b></em>' reference list feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 * @generated

+ 6 - 19
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/impl/ImportScopeImpl.java

@@ -9,6 +9,7 @@ import org.eclipse.emf.common.util.EList;
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.InternalEObject;
 import org.eclipse.emf.ecore.InternalEObject;
 import org.eclipse.emf.ecore.util.EObjectContainmentEList;
 import org.eclipse.emf.ecore.util.EObjectContainmentEList;
+import org.eclipse.emf.ecore.util.EObjectResolvingEList;
 import org.eclipse.emf.ecore.util.InternalEList;
 import org.eclipse.emf.ecore.util.InternalEList;
 import org.yakindu.sct.model.stext.stext.Import;
 import org.yakindu.sct.model.stext.stext.Import;
 import org.yakindu.sct.model.stext.stext.ImportScope;
 import org.yakindu.sct.model.stext.stext.ImportScope;
@@ -29,14 +30,14 @@ import org.yakindu.sct.model.stext.stext.StextPackage;
  */
  */
 public class ImportScopeImpl extends StatechartScopeImpl implements ImportScope {
 public class ImportScopeImpl extends StatechartScopeImpl implements ImportScope {
 	/**
 	/**
-	 * The cached value of the '{@link #getImports() <em>Imports</em>}' containment reference list.
+	 * The cached value of the '{@link #getImports() <em>Imports</em>}' reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @see #getImports()
 	 * @see #getImports()
 	 * @generated
 	 * @generated
 	 * @ordered
 	 * @ordered
 	 */
 	 */
-	protected EList<Import> imports;
+	protected EList<org.yakindu.base.types.Package> imports;
 
 
 	/**
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->
@@ -62,27 +63,13 @@ public class ImportScopeImpl extends StatechartScopeImpl implements ImportScope
 	 * <!-- end-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @generated
 	 */
 	 */
-	public EList<Import> getImports() {
+	public EList<org.yakindu.base.types.Package> getImports() {
 		if (imports == null) {
 		if (imports == null) {
-			imports = new EObjectContainmentEList<Import>(Import.class, this, StextPackage.IMPORT_SCOPE__IMPORTS);
+			imports = new EObjectResolvingEList<org.yakindu.base.types.Package>(org.yakindu.base.types.Package.class, this, StextPackage.IMPORT_SCOPE__IMPORTS);
 		}
 		}
 		return imports;
 		return imports;
 	}
 	}
 
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
-		switch (featureID) {
-			case StextPackage.IMPORT_SCOPE__IMPORTS:
-				return ((InternalEList<?>)getImports()).basicRemove(otherEnd, msgs);
-		}
-		return super.eInverseRemove(otherEnd, featureID, msgs);
-	}
-
 	/**
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * <!-- end-user-doc -->
@@ -108,7 +95,7 @@ public class ImportScopeImpl extends StatechartScopeImpl implements ImportScope
 		switch (featureID) {
 		switch (featureID) {
 			case StextPackage.IMPORT_SCOPE__IMPORTS:
 			case StextPackage.IMPORT_SCOPE__IMPORTS:
 				getImports().clear();
 				getImports().clear();
-				getImports().addAll((Collection<? extends Import>)newValue);
+				getImports().addAll((Collection<? extends org.yakindu.base.types.Package>)newValue);
 				return;
 				return;
 		}
 		}
 		super.eSet(featureID, newValue);
 		super.eSet(featureID, newValue);

+ 1 - 0
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/impl/StextFactoryImpl.java

@@ -8,6 +8,7 @@ import org.eclipse.emf.ecore.EObject;
 import org.eclipse.emf.ecore.EPackage;
 import org.eclipse.emf.ecore.EPackage;
 import org.eclipse.emf.ecore.impl.EFactoryImpl;
 import org.eclipse.emf.ecore.impl.EFactoryImpl;
 import org.eclipse.emf.ecore.plugin.EcorePlugin;
 import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.yakindu.sct.model.stext.stext.*;
 import org.yakindu.sct.model.stext.stext.ActiveStateReferenceExpression;
 import org.yakindu.sct.model.stext.stext.ActiveStateReferenceExpression;
 import org.yakindu.sct.model.stext.stext.AlwaysEvent;
 import org.yakindu.sct.model.stext.stext.AlwaysEvent;
 import org.yakindu.sct.model.stext.stext.BuiltinEventSpec;
 import org.yakindu.sct.model.stext.stext.BuiltinEventSpec;

+ 1 - 1
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/impl/StextPackageImpl.java

@@ -1164,7 +1164,7 @@ public class StextPackageImpl extends EPackageImpl implements StextPackage {
 		initEClass(internalScopeEClass, InternalScope.class, "InternalScope", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
 		initEClass(internalScopeEClass, InternalScope.class, "InternalScope", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
 
 
 		initEClass(importScopeEClass, ImportScope.class, "ImportScope", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
 		initEClass(importScopeEClass, ImportScope.class, "ImportScope", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEReference(getImportScope_Imports(), this.getImport(), null, "imports", null, 0, -1, ImportScope.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, !IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getImportScope_Imports(), theTypesPackage.getPackage(), null, "imports", null, 0, -1, ImportScope.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
 
 		initEClass(importEClass, Import.class, "Import", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
 		initEClass(importEClass, Import.class, "Import", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
 		initEAttribute(getImport_ImportedNamespace(), ecorePackage.getEString(), "importedNamespace", null, 0, 1, Import.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 		initEAttribute(getImport_ImportedNamespace(), ecorePackage.getEString(), "importedNamespace", null, 0, 1, Import.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);

+ 1 - 0
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/util/StextAdapterFactory.java

@@ -23,6 +23,7 @@ import org.yakindu.sct.model.sgraph.ReactionProperty;
 import org.yakindu.sct.model.sgraph.Scope;
 import org.yakindu.sct.model.sgraph.Scope;
 import org.yakindu.sct.model.sgraph.ScopedElement;
 import org.yakindu.sct.model.sgraph.ScopedElement;
 import org.yakindu.sct.model.sgraph.Trigger;
 import org.yakindu.sct.model.sgraph.Trigger;
+import org.yakindu.sct.model.stext.stext.*;
 import org.yakindu.sct.model.stext.stext.ActiveStateReferenceExpression;
 import org.yakindu.sct.model.stext.stext.ActiveStateReferenceExpression;
 import org.yakindu.sct.model.stext.stext.AlwaysEvent;
 import org.yakindu.sct.model.stext.stext.AlwaysEvent;
 import org.yakindu.sct.model.stext.stext.BuiltinEventSpec;
 import org.yakindu.sct.model.stext.stext.BuiltinEventSpec;

+ 1 - 0
plugins/org.yakindu.sct.model.stext/emf-gen/org/yakindu/sct/model/stext/stext/util/StextSwitch.java

@@ -22,6 +22,7 @@ import org.yakindu.sct.model.sgraph.ReactionProperty;
 import org.yakindu.sct.model.sgraph.Scope;
 import org.yakindu.sct.model.sgraph.Scope;
 import org.yakindu.sct.model.sgraph.ScopedElement;
 import org.yakindu.sct.model.sgraph.ScopedElement;
 import org.yakindu.sct.model.sgraph.Trigger;
 import org.yakindu.sct.model.sgraph.Trigger;
+import org.yakindu.sct.model.stext.stext.*;
 import org.yakindu.sct.model.stext.stext.ActiveStateReferenceExpression;
 import org.yakindu.sct.model.stext.stext.ActiveStateReferenceExpression;
 import org.yakindu.sct.model.stext.stext.AlwaysEvent;
 import org.yakindu.sct.model.stext.stext.AlwaysEvent;
 import org.yakindu.sct.model.stext.stext.BuiltinEventSpec;
 import org.yakindu.sct.model.stext.stext.BuiltinEventSpec;

+ 1 - 1
plugins/org.yakindu.sct.model.stext/model/SText.ecore

@@ -32,7 +32,7 @@
   <eClassifiers xsi:type="ecore:EClass" name="InternalScope" eSuperTypes="#//StatechartScope"/>
   <eClassifiers xsi:type="ecore:EClass" name="InternalScope" eSuperTypes="#//StatechartScope"/>
   <eClassifiers xsi:type="ecore:EClass" name="ImportScope" eSuperTypes="#//StatechartScope">
   <eClassifiers xsi:type="ecore:EClass" name="ImportScope" eSuperTypes="#//StatechartScope">
     <eStructuralFeatures xsi:type="ecore:EReference" name="imports" upperBound="-1"
     <eStructuralFeatures xsi:type="ecore:EReference" name="imports" upperBound="-1"
-        eType="#//Import" containment="true"/>
+        eType="ecore:EClass ../../org.yakindu.base.types/model/types.ecore#//Package"/>
   </eClassifiers>
   </eClassifiers>
   <eClassifiers xsi:type="ecore:EClass" name="Import">
   <eClassifiers xsi:type="ecore:EClass" name="Import">
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="importedNamespace" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="importedNamespace" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>

+ 1 - 1
plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/SText.xtext

@@ -62,7 +62,7 @@ InternalScope:
 		;
 		;
 	
 	
 ImportScope:
 ImportScope:
-	 {ImportScope} 'import' ':' (imports+=Import)*;
+	 {ImportScope} 'import' ':' (imports+=[types::Package|QID])*;
 
 
 Import:
 Import:
 	importedNamespace=QIDWithWildcards;
 	importedNamespace=QIDWithWildcards;

+ 35 - 8
plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/scoping/StextImportAwareScopeProvider.java

@@ -12,16 +12,18 @@ package org.yakindu.sct.model.stext.scoping;
 import java.util.List;
 import java.util.List;
 
 
 import org.eclipse.emf.ecore.EObject;
 import org.eclipse.emf.ecore.EObject;
+import org.eclipse.emf.ecore.EReference;
 import org.eclipse.emf.ecore.util.EcoreUtil;
 import org.eclipse.emf.ecore.util.EcoreUtil;
 import org.eclipse.xtext.EcoreUtil2;
 import org.eclipse.xtext.EcoreUtil2;
 import org.eclipse.xtext.naming.QualifiedName;
 import org.eclipse.xtext.naming.QualifiedName;
+import org.eclipse.xtext.scoping.IScope;
 import org.eclipse.xtext.scoping.impl.ImportNormalizer;
 import org.eclipse.xtext.scoping.impl.ImportNormalizer;
 import org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider;
 import org.eclipse.xtext.scoping.impl.ImportedNamespaceAwareLocalScopeProvider;
+import org.yakindu.base.types.Package;
 import org.yakindu.sct.model.sgraph.SGraphPackage;
 import org.yakindu.sct.model.sgraph.SGraphPackage;
 import org.yakindu.sct.model.sgraph.Scope;
 import org.yakindu.sct.model.sgraph.Scope;
 import org.yakindu.sct.model.sgraph.Statechart;
 import org.yakindu.sct.model.sgraph.Statechart;
 import org.yakindu.sct.model.sgraph.util.ContextElementAdapter;
 import org.yakindu.sct.model.sgraph.util.ContextElementAdapter;
-import org.yakindu.sct.model.stext.stext.Import;
 import org.yakindu.sct.model.stext.stext.ImportScope;
 import org.yakindu.sct.model.stext.stext.ImportScope;
 import org.yakindu.sct.model.stext.stext.StateSpecification;
 import org.yakindu.sct.model.stext.stext.StateSpecification;
 import org.yakindu.sct.model.stext.stext.TransitionSpecification;
 import org.yakindu.sct.model.stext.stext.TransitionSpecification;
@@ -35,6 +37,23 @@ import com.google.common.collect.Lists;
  */
  */
 public class StextImportAwareScopeProvider extends ImportedNamespaceAwareLocalScopeProvider {
 public class StextImportAwareScopeProvider extends ImportedNamespaceAwareLocalScopeProvider {
 
 
+	
+	@Override
+	public IScope getScope(EObject context, EReference reference) {
+		if (context == null)
+			throw new NullPointerException("context");
+		IScope result = null;
+		if(context instanceof ImportScope){
+			result = getResourceScope(context.eResource(), reference);
+		}
+		else if (context.eContainer() != null) {
+			result = getScope(context.eContainer(), reference);
+		} else {
+			result = getResourceScope(context.eResource(), reference);
+		}
+		return getLocalElementsScope(result, context, reference);
+	}
+	
 	@Override
 	@Override
 	protected List<ImportNormalizer> internalGetImportedNamespaceResolvers(final EObject context, boolean ignoreCase) {
 	protected List<ImportNormalizer> internalGetImportedNamespaceResolvers(final EObject context, boolean ignoreCase) {
 		List<ImportNormalizer> importedNamespaceResolvers = Lists.newArrayList();
 		List<ImportNormalizer> importedNamespaceResolvers = Lists.newArrayList();
@@ -49,17 +68,18 @@ public class StextImportAwareScopeProvider extends ImportedNamespaceAwareLocalSc
 		}
 		}
 		return importedNamespaceResolvers;
 		return importedNamespaceResolvers;
 	}
 	}
-	
+
 	@Override
 	@Override
-	protected ImportNormalizer doCreateImportNormalizer(QualifiedName importedNamespace, boolean wildcard, boolean ignoreCase) {
+	protected ImportNormalizer doCreateImportNormalizer(QualifiedName importedNamespace, boolean wildcard,
+			boolean ignoreCase) {
 		// all imports should be treated as if they had a wild card
 		// all imports should be treated as if they had a wild card
 		return new ImportNormalizer(importedNamespace, true, ignoreCase);
 		return new ImportNormalizer(importedNamespace, true, ignoreCase);
 	}
 	}
-	
+
 	protected List<ImportNormalizer> createNamespaceResolver(Scope scope, boolean ignoreCase) {
 	protected List<ImportNormalizer> createNamespaceResolver(Scope scope, boolean ignoreCase) {
 		List<ImportNormalizer> importedNamespaceResolvers = Lists.newArrayList();
 		List<ImportNormalizer> importedNamespaceResolvers = Lists.newArrayList();
 		ImportScope importScope = (ImportScope) scope;
 		ImportScope importScope = (ImportScope) scope;
-		for (Import child : importScope.getImports()) {
+		for (org.yakindu.base.types.Package child : importScope.getImports()) {
 			String value = getImportedNamespace(child);
 			String value = getImportedNamespace(child);
 			ImportNormalizer resolver = createImportedNamespaceResolver(value, ignoreCase);
 			ImportNormalizer resolver = createImportedNamespaceResolver(value, ignoreCase);
 			if (resolver != null)
 			if (resolver != null)
@@ -67,9 +87,16 @@ public class StextImportAwareScopeProvider extends ImportedNamespaceAwareLocalSc
 		}
 		}
 		return importedNamespaceResolvers;
 		return importedNamespaceResolvers;
 	}
 	}
-	
+
+	@Override
+	protected String getImportedNamespace(EObject object) {
+		if (object instanceof Package)
+			return ((Package) object).getName();
+		return super.getImportedNamespace(object);
+	}
+
 	protected Statechart getStatechart(EObject context) {
 	protected Statechart getStatechart(EObject context) {
-		
+
 		final ContextElementAdapter provider = (ContextElementAdapter) EcoreUtil.getExistingAdapter(context.eResource(),
 		final ContextElementAdapter provider = (ContextElementAdapter) EcoreUtil.getExistingAdapter(context.eResource(),
 				ContextElementAdapter.class);
 				ContextElementAdapter.class);
 
 
@@ -80,5 +107,5 @@ public class StextImportAwareScopeProvider extends ImportedNamespaceAwareLocalSc
 					SGraphPackage.Literals.STATECHART);
 					SGraphPackage.Literals.STATECHART);
 		}
 		}
 	}
 	}
-	
+
 }
 }

+ 1 - 7
plugins/org.yakindu.sct.model.stext/src/org/yakindu/sct/model/stext/util/ImportResolver.java

@@ -19,7 +19,6 @@ import org.eclipse.emf.ecore.EObject;
 import org.eclipse.emf.ecore.resource.Resource;
 import org.eclipse.emf.ecore.resource.Resource;
 import org.eclipse.emf.ecore.resource.ResourceSet;
 import org.eclipse.emf.ecore.resource.ResourceSet;
 import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
 import org.eclipse.emf.ecore.resource.impl.ResourceSetImpl;
-import org.eclipse.emf.ecore.util.EcoreUtil;
 import org.eclipse.xtext.resource.IContainer;
 import org.eclipse.xtext.resource.IContainer;
 import org.eclipse.xtext.resource.IEObjectDescription;
 import org.eclipse.xtext.resource.IEObjectDescription;
 import org.eclipse.xtext.resource.IResourceDescription;
 import org.eclipse.xtext.resource.IResourceDescription;
@@ -56,14 +55,9 @@ public class ImportResolver {
 	 *            type of imported elements to be returned
 	 *            type of imported elements to be returned
 	 * @return imported elements of given type
 	 * @return imported elements of given type
 	 */
 	 */
-	public <T extends EObject> List<T> getImportedElementsOfType(Import importDeclaration, Class<T> type) {
+	public <T extends EObject> List<T> getImportedElementsOfType(Package importedPackage, Class<T> type) {
 		List<T> elements = Lists.newArrayList();
 		List<T> elements = Lists.newArrayList();
-		Package importedPackage = getPackageForNamespace(importDeclaration.eResource(),
-				importDeclaration.getImportedNamespace());
 		if (importedPackage != null) {
 		if (importedPackage != null) {
-			if (importedPackage.eIsProxy()) {
-				importedPackage = (Package) EcoreUtil.resolve(importedPackage, importDeclaration);
-			}
 			for (EObject content : importedPackage.eContents()) {
 			for (EObject content : importedPackage.eContents()) {
 				if (type.isInstance(content)) {
 				if (type.isInstance(content)) {
 					elements.add(type.cast(content));
 					elements.add(type.cast(content));

+ 0 - 1
test-plugins/org.yakindu.sct.model.stext.test/src/org/yakindu/sct/model/stext/test/SCTUnitClassifierTest.java

@@ -54,7 +54,6 @@ public class SCTUnitClassifierTest {
 			StextPackage.Literals.STATE_ROOT, StextPackage.Literals.STATE_ROOT, StextPackage.Literals.TRANSITION_ROOT,
 			StextPackage.Literals.STATE_ROOT, StextPackage.Literals.STATE_ROOT, StextPackage.Literals.TRANSITION_ROOT,
 			StextPackage.Literals.BUILTIN_EVENT_SPEC, StextPackage.Literals.EVENT_SPEC, StextPackage.Literals.IMPORT,
 			StextPackage.Literals.BUILTIN_EVENT_SPEC, StextPackage.Literals.EVENT_SPEC, StextPackage.Literals.IMPORT,
 			StextPackage.Literals.IMPORT_SCOPE, StextPackage.Literals.STATECHART_SCOPE,
 			StextPackage.Literals.IMPORT_SCOPE, StextPackage.Literals.STATECHART_SCOPE,
-			StextPackage.Literals.TRANSITION_REACTION, SGraphPackage.Literals.IMPORT,
 			SGraphPackage.Literals.IMPORT_DECLARATION, SGraphPackage.Literals.SCOPE,
 			SGraphPackage.Literals.IMPORT_DECLARATION, SGraphPackage.Literals.SCOPE,
 			SGraphPackage.Literals.REACTION_PROPERTY);
 			SGraphPackage.Literals.REACTION_PROPERTY);