obeonetwork$informationsystem
Object object
void
void addReferencedTypePropertyDescriptor(Object object)
Object object
void
void addTypePropertyDescriptor(Object object)
obeonetwork$informationsystem
Object object
void
void addMultiplicityPropertyDescriptor(Object object)
Object object
void
void addUpperPropertyDescriptor(Object object)
obeonetwork$informationsystem
Composite parent
createDescription(parent, EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentMessages.ReferencePropertiesEditionPart_ReferencedTypeLabel);
		referencedType = new EObjectFlatComboViewer(parent, !propertiesEditionComponent.isRequired(EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentViewsRepository.SWT_KIND));
		referencedType.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
		referencedType.addSelectionChangedListener(new ISelectionChangedListener() {
				propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartImpl.this, EnvironmentViewsRepository.Reference.Properties.referencedType, PropertiesEditionEvent.CHANGE, PropertiesEditionEvent.SET, null, getReferencedType()));
		GridData referencedTypeData = new GridData(GridData.FILL_HORIZONTAL);
		referencedType.setLayoutData(referencedTypeData);
		referencedType.setID(EnvironmentViewsRepository.Reference.Properties.referencedType);
		SWTUtils.createHelpButton(parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentViewsRepository.SWT_KIND), null); //$NON-NLS-1$
		// Start of user code for createReferencedTypeFlatComboViewer
	protected Composite createIdentifierCheckbox(Composite parent) {
		identifier = new Button(parent, SWT.CHECK);
		identifier.setText(getDescription(EnvironmentViewsRepository.Reference.Properties.identifier, EnvironmentMessages.ReferencePropertiesEditionPart_IdentifierLabel));
		identifier.addSelectionListener(new SelectionAdapter() {

			/**
			 * {@inheritDoc
Composite
Composite createReferencedTypeFlatComboViewer(Composite parent)
Composite parent
createDescription(parent, EnvironmentViewsRepository.Reference.Properties.type, EnvironmentMessages.ReferencePropertiesEditionPart_TypeLabel);
		type = new EObjectFlatComboViewer(parent, !propertiesEditionComponent.isRequired(EnvironmentViewsRepository.Reference.Properties.type, EnvironmentViewsRepository.SWT_KIND));
		type.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
		type.addSelectionChangedListener(new ISelectionChangedListener() {
				propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartImpl.this, EnvironmentViewsRepository.Reference.Properties.type, PropertiesEditionEvent.CHANGE, PropertiesEditionEvent.SET, null, getType()));
		GridData typeData = new GridData(GridData.FILL_HORIZONTAL);
		type.setLayoutData(typeData);
		type.setID(EnvironmentViewsRepository.Reference.Properties.type);
		SWTUtils.createHelpButton(parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.type, EnvironmentViewsRepository.SWT_KIND), null); //$NON-NLS-1$
		// Start of user code for createTypeFlatComboViewer
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#getType()
	public EObject getType() {
		if (type.getSelection() instanceof StructuredSelection) {
			Object firstElement = ((StructuredSelection) type.getSelection()).getFirstElement();
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#initType(EObjectFlatComboSettings)
	public void initType(EObjectFlatComboSettings settings) {
		type.setInput(settings);
			type.setSelection(new StructuredSelection(settings.getValue()));
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
		if (eefElementEditorReadOnlyState && type.isEnabled()) {
			type.setEnabled(false);
			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
Composite
Composite createTypeFlatComboViewer(Composite parent)
obeonetwork$informationsystem
Composite parent,FormToolkit widgetFactory
Composite
Composite createReferencedTypeFlatComboViewer(Composite parent,FormToolkit widgetFactory)
Composite parent,FormToolkit widgetFactory
Composite
Composite createTypeFlatComboViewer(Composite parent,FormToolkit widgetFactory)
obeonetwork$informationsystem
ViewerFilter filter
void
void addBusinessFilterToReferencedType(ViewerFilter filter)
ViewerFilter filter
void
void addBusinessFilterToType(ViewerFilter filter)
obeonetwork$informationsystem
ViewerFilter filter
void
void addBusinessFilterToReferencedType(ViewerFilter filter)
ViewerFilter filter
void
void addBusinessFilterToType(ViewerFilter filter)
obeonetwork$informationsystem
ViewerFilter filter
void
void addFilterToReferencedType(ViewerFilter filter)
ViewerFilter filter
void
void addFilterToType(ViewerFilter filter)
obeonetwork$informationsystem
ViewerFilter filter
void
void addFilterToReferencedType(ViewerFilter filter)
ViewerFilter filter
void
void addFilterToType(ViewerFilter filter)
obeonetwork$informationsystem
StructuredType
StructuredType basicGetContainingType()
DTO
DTO basicGetType()
obeonetwork$informationsystem
StructuredType newContainingType,NotificationChain msgs
NotificationChain
NotificationChain basicSetContainingType(StructuredType newContainingType,NotificationChain msgs)
DTO newDto,NotificationChain msgs
NotificationChain
NotificationChain basicSetDto(DTO newDto,NotificationChain msgs)
obeonetwork$informationsystem
StructuredType newContainingType,NotificationChain msgs
NotificationChain
NotificationChain basicSetContainingType(StructuredType newContainingType,NotificationChain msgs)
DTO newDto,NotificationChain msgs
NotificationChain
NotificationChain basicSetDto(DTO newDto,NotificationChain msgs)
obeonetwork$informationsystem
TypesDefinition object
T
T caseTypesDefinition(TypesDefinition object)
Reference object
T
T caseReference(Reference object)
obeonetwork$informationsystem
Adapter
Adapter createTypesDefinitionAdapter()
Adapter
Adapter createReferenceAdapter()
obeonetwork$informationsystem
Adapter
Adapter createTypesDefinitionAdapter()
Adapter
Adapter createReferenceAdapter()
obeonetwork$informationsystem
EReference
EReference getAttribute_ContainingType()
EReference
EReference getAttribute_Dto()
obeonetwork$informationsystem
EReference
EReference getRoot_Namespaces()
EReference
EReference getBlock_Entities()
obeonetwork$informationsystem
String
String getName()
EList<Block>
EList<Block> getBlocks()
obeonetwork$informationsystem
EReference
EReference getStructuredType_AssociatedTypes()
EReference
EReference getDTO_AssociatedTypes()
obeonetwork$informationsystem
EReference
EReference getStructuredType_References()
EReference
EReference getDTO_Attributes()
obeonetwork$informationsystem
EReference
EReference getStructuredType_Properties()
EReference
EReference getDTO_OwnedAttributes()
obeonetwork$informationsystem
EReference
EReference getStructuredType_OwnedReferences()
EReference
EReference getDTO_OwnedReferences()
obeonetwork$informationsystem
EReference
EReference getStructuredType_OwnedAttributes()
EReference
EReference getDTO_Properties()
obeonetwork$informationsystem
EReference
EReference getStructuredType_Attributes()
EReference
EReference getDTO_References()
obeonetwork$informationsystem
MultiplicityKind
MultiplicityKind getMultiplicity()
int
int getLower()
obeonetwork$informationsystem
EList<Namespace>
EList<Namespace> getNamespaces()
DTORegistry
DTORegistry getOwnedDtoRegistry()
obeonetwork$informationsystem
EAttribute
EAttribute getParameter_Multiplicity()
EAttribute
EAttribute getParameter_Lower()
obeonetwork$informationsystem
EReference
EReference getReference_ReferencedType()
EReference
EReference getReference_Dto()
obeonetwork$informationsystem
EReference
EReference getReference_ContainingType()
EReference
EReference getReference_Type()
obeonetwork$informationsystem
EAttribute
EAttribute getRoot_Name()
EReference
EReference getRoot_Blocks()
obeonetwork$informationsystem
EReference
EReference getSystem_Namespaces()
EReference
EReference getSystem_OwnedDtoRegistry()
obeonetwork$informationsystem
StructuredType
StructuredType getContainingType()
DTO
DTO getType()
obeonetwork$informationsystem
EObject
EObject getReferencedType()
EObject
EObject getType()
obeonetwork$informationsystem
EObject
EObject getReferencedType()
EObject
EObject getType()
obeonetwork$informationsystem
EObjectFlatComboSettings settings
void
void initReferencedType(EObjectFlatComboSettings settings)
EObjectFlatComboSettings settings
void
void initType(EObjectFlatComboSettings settings)
obeonetwork$informationsystem
EObjectFlatComboSettings settings
void
void initReferencedType(EObjectFlatComboSettings settings)
EObjectFlatComboSettings settings
void
void initType(EObjectFlatComboSettings settings)
obeonetwork$informationsystem
StructuredType newType
void
void setReferencedType(StructuredType newType)
DTO newType
void
void setType(DTO newType)
obeonetwork$informationsystem
EObject newValue
referencedType.setSelection(new StructuredSelection(newValue));
			referencedType.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.referencedType);
		if (eefElementEditorReadOnlyState && referencedType.isEnabled()) {
			referencedType.setEnabled(false);
			referencedType.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
void
void setReferencedType(EObject newValue)
EObject newValue
type.setSelection(new StructuredSelection(newValue));
			type.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
		if (eefElementEditorReadOnlyState && type.isEnabled()) {
			type.setEnabled(false);
			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
void
void setType(EObject newValue)
obeonetwork$informationsystem
EObject newValue
referencedType.setSelection(new StructuredSelection(newValue));
			referencedType.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.referencedType);
		if (eefElementEditorReadOnlyState && referencedType.isEnabled()) {
			referencedType.setEnabled(false);
			referencedType.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
void
void setReferencedType(EObject newValue)
EObject newValue
type.setSelection(new StructuredSelection(newValue));
			type.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
		if (eefElementEditorReadOnlyState && type.isEnabled()) {
			type.setEnabled(false);
			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
void
void setType(EObject newValue)
obeonetwork$informationsystem
ButtonsModeEnum newValue
void
void setReferencedTypeButtonMode(ButtonsModeEnum newValue)
ButtonsModeEnum newValue
void
void setTypeButtonMode(ButtonsModeEnum newValue)
obeonetwork$informationsystem
ButtonsModeEnum newValue
void
void setReferencedTypeButtonMode(ButtonsModeEnum newValue)
ButtonsModeEnum newValue
void
void setTypeButtonMode(ButtonsModeEnum newValue)
obeonetwork$informationsystem
Enumerator newValue
void
void setMultiplicity(Enumerator newValue)
String newValue
void
void setUpper(String newValue)
obeonetwork$informationsystem
Enumerator newValue
void
void setMultiplicity(Enumerator newValue)
String newValue
void
void setUpper(String newValue)
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/designs%2Fcinematic%2Fplugins%2Forg.obeonetwork.dsl.cinematic.design%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fcinematic%2Fdesign%2Fservices%2FCinematicBindingServices.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/designs%2Fcinematic%2Fplugins%2Forg.obeonetwork.dsl.cinematic.design%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fcinematic%2Fdesign%2Fservices%2FCinematicBindingServices.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
designs/cinematic/plugins/org.obeonetwork.dsl.cinematic.design/src/org/obeonetwork/dsl/cinematic/design/services/CinematicBindingServices.java
			return attribute.getContainingType().getName() + "." + attribute.getName() + " (DTO Attribute)";
			return reference.getContainingType().getName() + "." + reference.getName() + " (DTO Reference)";
			return attribute.getDto().getName() + "." + attribute.getName() + " (DTO Attribute)";
			return reference.getDto().getName() + "." + reference.getName() + " (DTO Reference)";
@@ -46,10 +46,10 @@ public String getCinematicBindingInfoLabel(BindingInfo bindingInfo) {
 			return ((DTO) element).getName() + " (DTO)";
 		} else if (element instanceof Attribute) {
 			Attribute attribute = (Attribute) element;
-			return attribute.getDto().getName() + "." + attribute.getName() + " (DTO Attribute)";
+			return attribute.getContainingType().getName() + "." + attribute.getName() + " (DTO Attribute)";
 		} else if (element instanceof Reference) {
 			Reference reference = (Reference) element;
-			return reference.getDto().getName() + "." + reference.getName() + " (DTO Reference)";
+			return reference.getContainingType().getName() + "." + reference.getName() + " (DTO Reference)";
 		} else if (element.eClass().getEPackage().getNsURI().startsWith("http://www.obeonetwork.org/dsl/entity/")) {
 			if ("Entity".equals(element.eClass().getName())) {
 				return getNameByReflection(element) + " (Entity)";
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/designs%2Fcinematic%2Fplugins%2Forg.obeonetwork.dsl.cinematic.design%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fcinematic%2Fdesign%2Fservices%2FCinematicBindingServices.java
ed51d06c83432305143753f751d3f8509bc621b4
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2FMETA-INF%2FMANIFEST.MF
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2FMETA-INF%2FMANIFEST.MF?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.edit/META-INF/MANIFEST.MF
Bundle-SymbolicName: org.obeonetwork.dsl.entity.edit;singleton:=true
 org.obeonetwork.dsl.environment;visibility:=reexport,
Bundle-SymbolicName: org.obeonetwork.dsl.entity.edit; singleton:=true
@@ -1,7 +1,7 @@
 Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
-Bundle-SymbolicName: org.obeonetwork.dsl.entity.edit; singleton:=true
+Bundle-SymbolicName: org.obeonetwork.dsl.entity.edit;singleton:=true
 Bundle-Version: 2.4.0.qualifier
 Bundle-ClassPath: .
 Bundle-Activator: org.obeonetwork.dsl.entity.provider.EntityEditPlugin$Implementation
@@ -11,6 +11,7 @@ Export-Package: org.obeonetwork.dsl.entity.extensionUtilities.provider,
  org.obeonetwork.dsl.entity.provider
 Require-Bundle: org.eclipse.core.runtime,
  org.eclipse.emf.edit;visibility:=reexport,
+ org.obeonetwork.dsl.environment;visibility:=reexport,
  org.obeonetwork.dsl.environment.edit,
  org.obeonetwork.dsl.entity;visibility:=reexport,
  org.eclipse.emf.eef.runtime
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2FMETA-INF%2FMANIFEST.MF
429297f9e6afdc41c20a48bda9e3acc81483f593
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fmodels%2Fentity.components
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fmodels%2Fentity.components?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.edit/models/entity.components
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Root/name"/>
          <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//StructuredType/supertype"/>
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Finder/multiplicity"/>
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//Namespace/name"/>
      <bindings xsi:type="eef-components:PropertiesEditionComponent" xmi:id="_9GvkE1UREd6Yk7jCWR7r8A" name="block" views="_9GwLIFUREd6Yk7jCWR7r8A">
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkFFUREd6Yk7jCWR7r8A" name="name" views="_9GwLIlUREd6Yk7jCWR7r8A">
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Block/name"/>
        </properties>
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_m3slUB8YEeC_porSarA8Jw" name="description" views="_ik4sUB8YEeC_porSarA8Jw">
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//ObeoDSMObject/description"/>
        </properties>
        <referencedBinding xmi:id="_P62PEE_sEeCosP_fYaDlww">
          <binding xsi:type="eef-components:PropertiesEditionComponent" href="platform:/resource/org.obeonetwork.dsl.environment.edit/model/environment.components#_65K3QHC0EeCNPbrYssPTmA"/>
        </referencedBinding>
        <model xsi:type="ecore:EClass" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Block"/>
      </bindings>
          <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Entity/supertype"/>
      <bindings xsi:type="eef-components:PropertiesEditionComponent" xmi:id="_9GvkG1UREd6Yk7jCWR7r8A" name="attribute" views="_9GwLKlUREd6Yk7jCWR7r8A">
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkHFUREd6Yk7jCWR7r8A" name="name" views="_9GwLLFUREd6Yk7jCWR7r8A">
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Property/name"/>
        </properties>
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_LMBEQFaUEd6aBfNHgF_s6g" name="type" views="_B6q0sFaUEd6aBfNHgF_s6g">
          <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Attribute/type"/>
        </properties>
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkHVUREd6Yk7jCWR7r8A" name="multiplicity" views="_9GwLLVUREd6Yk7jCWR7r8A">
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Property/multiplicity"/>
        </properties>
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkHlUREd6Yk7jCWR7r8A" name="isPrimaryKey" views="_9GwLLlUREd6Yk7jCWR7r8A">
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Property/isPrimaryKey"/>
        </properties>
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_qNFMwB8YEeC_porSarA8Jw" name="description" views="_j2XiUB8YEeC_porSarA8Jw">
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//ObeoDSMObject/description"/>
        </properties>
        <referencedBinding xmi:id="_rlBaoE_tEeCosP_fYaDlww">
          <binding xsi:type="eef-components:PropertiesEditionComponent" href="platform:/resource/org.obeonetwork.dsl.environment.edit/model/environment.components#_65K3QHC0EeCNPbrYssPTmA"/>
        </referencedBinding>
        <model xsi:type="ecore:EClass" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Attribute"/>
      </bindings>
      <bindings xsi:type="eef-components:PropertiesEditionComponent" xmi:id="_9GvkH1UREd6Yk7jCWR7r8A" name="reference" views="_9GwLL1UREd6Yk7jCWR7r8A">
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkIFUREd6Yk7jCWR7r8A" name="name" views="_9GwLMVUREd6Yk7jCWR7r8A">
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Property/name"/>
        </properties>
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_NgUwUFcwEd6GSZXd5_Wzgg" name="type" views="_K0mw8VcwEd6GSZXd5_Wzgg">
          <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Reference/type"/>
        </properties>
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkIVUREd6Yk7jCWR7r8A" name="multiplicity" views="_9GwLMlUREd6Yk7jCWR7r8A">
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Property/multiplicity"/>
        </properties>
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkIlUREd6Yk7jCWR7r8A" name="isPrimaryKey" views="_9GwLM1UREd6Yk7jCWR7r8A">
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Property/isPrimaryKey"/>
        </properties>
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkI1UREd6Yk7jCWR7r8A" name="isComposite" views="_9GwLNFUREd6Yk7jCWR7r8A">
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Reference/isComposite"/>
        </properties>
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkJFUREd6Yk7jCWR7r8A" name="navigable" views="_9GwLNVUREd6Yk7jCWR7r8A">
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Reference/navigable"/>
        </properties>
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_qY-6wB8YEeC_porSarA8Jw" name="description" views="_gV33EB8YEeC_porSarA8Jw">
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//ObeoDSMObject/description"/>
        </properties>
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_BvsHoCrvEeCjoN1mWj_CpQ" name="oppositeOf" views="_3dffECruEeCjoN1mWj_CpQ">
          <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Reference/oppositeOf"/>
        </properties>
        <referencedBinding xmi:id="_sDYKkE_tEeCosP_fYaDlww">
          <binding xsi:type="eef-components:PropertiesEditionComponent" href="platform:/resource/org.obeonetwork.dsl.environment.edit/model/environment.components#_65K3QHC0EeCNPbrYssPTmA"/>
        </referencedBinding>
        <model xsi:type="ecore:EClass" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Reference"/>
      </bindings>
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Property/multiplicity"/>
      <views xmi:id="_9GwLIFUREd6Yk7jCWR7r8A" name="Block">
        <elements xsi:type="eef-views:Container" xmi:id="_9GwLIVUREd6Yk7jCWR7r8A" name="properties">
          <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.4"/>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_9GwLIlUREd6Yk7jCWR7r8A" name="name">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.0"/>
          </elements>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_ik4sUB8YEeC_porSarA8Jw" name="description">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.2"/>
          </elements>
        </elements>
      </views>
      <views xmi:id="_9GwLKlUREd6Yk7jCWR7r8A" name="Attribute">
        <elements xsi:type="eef-views:Container" xmi:id="_9GwLK1UREd6Yk7jCWR7r8A" name="properties">
          <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.4"/>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_9GwLLFUREd6Yk7jCWR7r8A" name="name">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.0"/>
          </elements>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_B6q0sFaUEd6aBfNHgF_s6g" name="type">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.6"/>
          </elements>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_9GwLLVUREd6Yk7jCWR7r8A" name="multiplicity">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/EMFProperties.toolkits#//@widgets.2"/>
          </elements>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_9GwLLlUREd6Yk7jCWR7r8A" name="isPrimaryKey">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.1"/>
          </elements>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_j2XiUB8YEeC_porSarA8Jw" name="description">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.2"/>
          </elements>
        </elements>
      </views>
      <views xmi:id="_9GwLL1UREd6Yk7jCWR7r8A" name="Reference">
        <elements xsi:type="eef-views:Container" xmi:id="_9GwLMFUREd6Yk7jCWR7r8A" name="properties">
          <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.4"/>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_9GwLMVUREd6Yk7jCWR7r8A" name="name">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.0"/>
          </elements>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_K0mw8VcwEd6GSZXd5_Wzgg" name="type">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/EMFProperties.toolkits#//@widgets.9"/>
          </elements>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_9GwLMlUREd6Yk7jCWR7r8A" name="multiplicity">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/EMFProperties.toolkits#//@widgets.2"/>
          </elements>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_9GwLM1UREd6Yk7jCWR7r8A" name="isPrimaryKey">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.1"/>
          </elements>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_9GwLNFUREd6Yk7jCWR7r8A" name="isComposite">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.1"/>
          </elements>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_9GwLNVUREd6Yk7jCWR7r8A" name="navigable">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.1"/>
          </elements>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_3dffECruEeCjoN1mWj_CpQ" name="oppositeOf">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/EMFProperties.toolkits#//@widgets.0"/>
          </elements>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_gV33EB8YEeC_porSarA8Jw" name="description">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.2"/>
          </elements>
        </elements>
      </views>
@@ -4,7 +4,7 @@
     <categories xmi:id="_9GvkEVUREd6Yk7jCWR7r8A" name="entity">
       <bindings xsi:type="eef-components:PropertiesEditionComponent" xmi:id="_9GvkElUREd6Yk7jCWR7r8A" name="root" views="_9GvkMFUREd6Yk7jCWR7r8A">
         <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_Nt348J9cEeG2HK8o5hk6vA" name="name" views="_-vyJAZ9bEeG2HK8o5hk6vA">
-          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//Namespace/name"/>
+          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Root/name"/>
         </properties>
         <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_Nt4gAJ9cEeG2HK8o5hk6vA" name="description" views="_-vyJAp9bEeG2HK8o5hk6vA">
           <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//ObeoDSMObject/description"/>
@@ -14,24 +14,12 @@
         </referencedBinding>
         <model xsi:type="ecore:EClass" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Root"/>
       </bindings>
-      <bindings xsi:type="eef-components:PropertiesEditionComponent" xmi:id="_9GvkE1UREd6Yk7jCWR7r8A" name="block" views="_9GwLIFUREd6Yk7jCWR7r8A">
-        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkFFUREd6Yk7jCWR7r8A" name="name" views="_9GwLIlUREd6Yk7jCWR7r8A">
-          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Block/name"/>
-        </properties>
-        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_m3slUB8YEeC_porSarA8Jw" name="description" views="_ik4sUB8YEeC_porSarA8Jw">
-          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//ObeoDSMObject/description"/>
-        </properties>
-        <referencedBinding xmi:id="_P62PEE_sEeCosP_fYaDlww">
-          <binding xsi:type="eef-components:PropertiesEditionComponent" href="platform:/resource/org.obeonetwork.dsl.environment.edit/model/environment.components#_65K3QHC0EeCNPbrYssPTmA"/>
-        </referencedBinding>
-        <model xsi:type="ecore:EClass" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Block"/>
-      </bindings>
       <bindings xsi:type="eef-components:PropertiesEditionComponent" xmi:id="_9GvkFVUREd6Yk7jCWR7r8A" name="entity" views="_9GwLI1UREd6Yk7jCWR7r8A">
         <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkFlUREd6Yk7jCWR7r8A" name="name" views="_9GwLJVUREd6Yk7jCWR7r8A">
           <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//Type/name"/>
         </properties>
         <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_ZUxxoFc3Ed6HocRae_Ft8A" name="superType" views="_UeFvgFc3Ed6HocRae_Ft8A">
-          <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Entity/supertype"/>
+          <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//StructuredType/supertype"/>
         </properties>
         <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkF1UREd6Yk7jCWR7r8A" name="estimatedVolumetry" views="_9GwLJlUREd6Yk7jCWR7r8A">
           <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Entity/estimatedVolumetry"/>
@@ -53,63 +41,12 @@
         </referencedBinding>
         <model xsi:type="ecore:EClass" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Entity"/>
       </bindings>
-      <bindings xsi:type="eef-components:PropertiesEditionComponent" xmi:id="_9GvkG1UREd6Yk7jCWR7r8A" name="attribute" views="_9GwLKlUREd6Yk7jCWR7r8A">
-        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkHFUREd6Yk7jCWR7r8A" name="name" views="_9GwLLFUREd6Yk7jCWR7r8A">
-          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Property/name"/>
-        </properties>
-        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_LMBEQFaUEd6aBfNHgF_s6g" name="type" views="_B6q0sFaUEd6aBfNHgF_s6g">
-          <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Attribute/type"/>
-        </properties>
-        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkHVUREd6Yk7jCWR7r8A" name="multiplicity" views="_9GwLLVUREd6Yk7jCWR7r8A">
-          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Property/multiplicity"/>
-        </properties>
-        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkHlUREd6Yk7jCWR7r8A" name="isPrimaryKey" views="_9GwLLlUREd6Yk7jCWR7r8A">
-          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Property/isPrimaryKey"/>
-        </properties>
-        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_qNFMwB8YEeC_porSarA8Jw" name="description" views="_j2XiUB8YEeC_porSarA8Jw">
-          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//ObeoDSMObject/description"/>
-        </properties>
-        <referencedBinding xmi:id="_rlBaoE_tEeCosP_fYaDlww">
-          <binding xsi:type="eef-components:PropertiesEditionComponent" href="platform:/resource/org.obeonetwork.dsl.environment.edit/model/environment.components#_65K3QHC0EeCNPbrYssPTmA"/>
-        </referencedBinding>
-        <model xsi:type="ecore:EClass" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Attribute"/>
-      </bindings>
-      <bindings xsi:type="eef-components:PropertiesEditionComponent" xmi:id="_9GvkH1UREd6Yk7jCWR7r8A" name="reference" views="_9GwLL1UREd6Yk7jCWR7r8A">
-        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkIFUREd6Yk7jCWR7r8A" name="name" views="_9GwLMVUREd6Yk7jCWR7r8A">
-          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Property/name"/>
-        </properties>
-        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_NgUwUFcwEd6GSZXd5_Wzgg" name="type" views="_K0mw8VcwEd6GSZXd5_Wzgg">
-          <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Reference/type"/>
-        </properties>
-        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkIVUREd6Yk7jCWR7r8A" name="multiplicity" views="_9GwLMlUREd6Yk7jCWR7r8A">
-          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Property/multiplicity"/>
-        </properties>
-        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkIlUREd6Yk7jCWR7r8A" name="isPrimaryKey" views="_9GwLM1UREd6Yk7jCWR7r8A">
-          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Property/isPrimaryKey"/>
-        </properties>
-        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkI1UREd6Yk7jCWR7r8A" name="isComposite" views="_9GwLNFUREd6Yk7jCWR7r8A">
-          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Reference/isComposite"/>
-        </properties>
-        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkJFUREd6Yk7jCWR7r8A" name="navigable" views="_9GwLNVUREd6Yk7jCWR7r8A">
-          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Reference/navigable"/>
-        </properties>
-        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_qY-6wB8YEeC_porSarA8Jw" name="description" views="_gV33EB8YEeC_porSarA8Jw">
-          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//ObeoDSMObject/description"/>
-        </properties>
-        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_BvsHoCrvEeCjoN1mWj_CpQ" name="oppositeOf" views="_3dffECruEeCjoN1mWj_CpQ">
-          <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Reference/oppositeOf"/>
-        </properties>
-        <referencedBinding xmi:id="_sDYKkE_tEeCosP_fYaDlww">
-          <binding xsi:type="eef-components:PropertiesEditionComponent" href="platform:/resource/org.obeonetwork.dsl.environment.edit/model/environment.components#_65K3QHC0EeCNPbrYssPTmA"/>
-        </referencedBinding>
-        <model xsi:type="ecore:EClass" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Reference"/>
-      </bindings>
       <bindings xsi:type="eef-components:PropertiesEditionComponent" xmi:id="_9GvkJVUREd6Yk7jCWR7r8A" name="finder" views="_9GwLNlUREd6Yk7jCWR7r8A">
         <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_9GvkJlUREd6Yk7jCWR7r8A" name="customizedName" views="_9GwLOFUREd6Yk7jCWR7r8A">
           <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Finder/customizedName"/>
         </properties>
         <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_Pfk9MeTIEd6q6KiIIVvIrw" name="multiplicity" views="_R9OrYOTIEd6q6KiIIVvIrw">
-          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Property/multiplicity"/>
+          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.entity/model/entity.ecore#//Finder/multiplicity"/>
         </properties>
         <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_qj-CwB8YEeC_porSarA8Jw" name="description" views="_kgZ90B8YEeC_porSarA8Jw">
           <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//ObeoDSMObject/description"/>
@@ -164,17 +101,6 @@
           </elements>
         </elements>
       </views>
-      <views xmi:id="_9GwLIFUREd6Yk7jCWR7r8A" name="Block">
-        <elements xsi:type="eef-views:Container" xmi:id="_9GwLIVUREd6Yk7jCWR7r8A" name="properties">
-          <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.4"/>
-          <elements xsi:type="eef-views:ElementEditor" xmi:id="_9GwLIlUREd6Yk7jCWR7r8A" name="name">
-            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.0"/>
-          </elements>
-          <elements xsi:type="eef-views:ElementEditor" xmi:id="_ik4sUB8YEeC_porSarA8Jw" name="description">
-            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.2"/>
-          </elements>
-        </elements>
-      </views>
       <views xmi:id="_9GwLI1UREd6Yk7jCWR7r8A" name="Entity">
         <elements xsi:type="eef-views:Container" xmi:id="_9GwLJFUREd6Yk7jCWR7r8A" name="properties">
           <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.4"/>
@@ -201,55 +127,6 @@
           </elements>
         </elements>
       </views>
-      <views xmi:id="_9GwLKlUREd6Yk7jCWR7r8A" name="Attribute">
-        <elements xsi:type="eef-views:Container" xmi:id="_9GwLK1UREd6Yk7jCWR7r8A" name="properties">
-          <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.4"/>
-          <elements xsi:type="eef-views:ElementEditor" xmi:id="_9GwLLFUREd6Yk7jCWR7r8A" name="name">
-            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.0"/>
-          </elements>
-          <elements xsi:type="eef-views:ElementEditor" xmi:id="_B6q0sFaUEd6aBfNHgF_s6g" name="type">
-            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.6"/>
-          </elements>
-          <elements xsi:type="eef-views:ElementEditor" xmi:id="_9GwLLVUREd6Yk7jCWR7r8A" name="multiplicity">
-            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/EMFProperties.toolkits#//@widgets.2"/>
-          </elements>
-          <elements xsi:type="eef-views:ElementEditor" xmi:id="_9GwLLlUREd6Yk7jCWR7r8A" name="isPrimaryKey">
-            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.1"/>
-          </elements>
-          <elements xsi:type="eef-views:ElementEditor" xmi:id="_j2XiUB8YEeC_porSarA8Jw" name="description">
-            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.2"/>
-          </elements>
-        </elements>
-      </views>
-      <views xmi:id="_9GwLL1UREd6Yk7jCWR7r8A" name="Reference">
-        <elements xsi:type="eef-views:Container" xmi:id="_9GwLMFUREd6Yk7jCWR7r8A" name="properties">
-          <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.4"/>
-          <elements xsi:type="eef-views:ElementEditor" xmi:id="_9GwLMVUREd6Yk7jCWR7r8A" name="name">
-            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.0"/>
-          </elements>
-          <elements xsi:type="eef-views:ElementEditor" xmi:id="_K0mw8VcwEd6GSZXd5_Wzgg" name="type">
-            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/EMFProperties.toolkits#//@widgets.9"/>
-          </elements>
-          <elements xsi:type="eef-views:ElementEditor" xmi:id="_9GwLMlUREd6Yk7jCWR7r8A" name="multiplicity">
-            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/EMFProperties.toolkits#//@widgets.2"/>
-          </elements>
-          <elements xsi:type="eef-views:ElementEditor" xmi:id="_9GwLM1UREd6Yk7jCWR7r8A" name="isPrimaryKey">
-            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.1"/>
-          </elements>
-          <elements xsi:type="eef-views:ElementEditor" xmi:id="_9GwLNFUREd6Yk7jCWR7r8A" name="isComposite">
-            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.1"/>
-          </elements>
-          <elements xsi:type="eef-views:ElementEditor" xmi:id="_9GwLNVUREd6Yk7jCWR7r8A" name="navigable">
-            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.1"/>
-          </elements>
-          <elements xsi:type="eef-views:ElementEditor" xmi:id="_3dffECruEeCjoN1mWj_CpQ" name="oppositeOf">
-            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/EMFProperties.toolkits#//@widgets.0"/>
-          </elements>
-          <elements xsi:type="eef-views:ElementEditor" xmi:id="_gV33EB8YEeC_porSarA8Jw" name="description">
-            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.2"/>
-          </elements>
-        </elements>
-      </views>
       <views xmi:id="_9GwLNlUREd6Yk7jCWR7r8A" name="Finder">
         <elements xsi:type="eef-views:Container" xmi:id="_9GwLN1UREd6Yk7jCWR7r8A" name="properties">
           <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.4"/>
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fmodels%2Fentity.components
273abc205279c952d528547cdda9f37623565d15
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fplugin.properties
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fplugin.properties?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.edit/plugin.properties
_UI_Root_namespaces_feature = Namespaces
_UI_Root_name_feature = Name
@@ -112,3 +112,5 @@ _UI_InheritanceKind_TABLE_PER_SUBCLASS_literal = TABLE_PER_SUBCLASS
 _UI_InheritanceKind_TABLE_PER_CLASS_HIERARCHY_literal = TABLE_PER_CLASS_HIERARCHY
 _UI_Property_isPrimaryKey_feature = Is Primary Key
 _UI_Finder_multiplicity_feature = Multiplicity
+_UI_Root_namespaces_feature = Namespaces
+_UI_Root_name_feature = Name
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fplugin.properties
1ddac1ae70392d80687f0bc5cdd81b69b1850462
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fplugin.xml
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fplugin.xml?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.edit/plugin.xml

   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
      <!-- @generated entity -->
      <factory
            uri="http://www.obeonetwork.org/dsl/entity/2.0.0/utilities"
            class="org.obeonetwork.dsl.entity.extensionUtilities.provider.ExtensionUtilitiesItemProviderAdapterFactory"
            supportedTypes=
              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
               org.eclipse.emf.edit.provider.ITreeItemContentProvider
               org.eclipse.emf.edit.provider.IItemLabelProvider
               org.eclipse.emf.edit.provider.IItemPropertySource"/>
   </extension>
@@ -21,6 +21,19 @@
           org.eclipse.emf.edit.provider.IItemLabelProvider
           org.eclipse.emf.edit.provider.IItemPropertySource" />
   </extension>
+
+   <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
+      <!-- @generated entity -->
+      <factory
+            uri="http://www.obeonetwork.org/dsl/entity/2.0.0/utilities"
+            class="org.obeonetwork.dsl.entity.extensionUtilities.provider.ExtensionUtilitiesItemProviderAdapterFactory"
+            supportedTypes=
+              "org.eclipse.emf.edit.provider.IEditingDomainItemProvider
+               org.eclipse.emf.edit.provider.IStructuredItemContentProvider
+               org.eclipse.emf.edit.provider.ITreeItemContentProvider
+               org.eclipse.emf.edit.provider.IItemLabelProvider
+               org.eclipse.emf.edit.provider.IItemPropertySource"/>
+   </extension>
   <extension
         point="org.eclipse.emf.edit.itemProviderAdapterFactories">
      <factory
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fplugin.xml
10645fc0f272b2f6b7bd35fe73b10d459894109e
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Fentity_properties.plugin.xml
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Fentity_properties.plugin.xml?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src-gen/entity_properties.plugin.xml
            uri="http://www.obeonetwork.org/dsl/entity/3.0.0"
            uri="http://www.obeonetwork.org/dsl/entity/2.0.0"
         <propertyTab
               id="Block"
               label="Block"
               category="default">
         </propertyTab>

         <propertyTab
               id="Attribute"
               label="Attribute"
               category="default">
         </propertyTab>

         <propertyTab
               id="Reference"
               label="Reference"
               category="default">
         </propertyTab>

         <propertySection
               class="org.obeonetwork.dsl.entity.parts.forms.BlockPropertiesEditionPartForm"
               filter="org.obeonetwork.dsl.entity.providers.BlockPropertiesEditionProvider$EditionFilter"
               id="org.obeonetwork.dsl.entity.section.Block"
               tab="Block">
         </propertySection>
         <propertySection
               class="org.obeonetwork.dsl.environment.parts.forms.MetadatasPropertiesEditionPartForm"
               filter="org.obeonetwork.dsl.entity.providers.BlockPropertiesEditionProvider$EditionFilter"
               id="org.obeonetwork.dsl.entity.section.Block"
               tab="Metadatas">
         </propertySection>
         <propertySection
               class="org.obeonetwork.dsl.entity.parts.forms.AttributePropertiesEditionPartForm"
               filter="org.obeonetwork.dsl.entity.providers.AttributePropertiesEditionProvider$EditionFilter"
               id="org.obeonetwork.dsl.entity.section.Attribute"
               tab="Attribute">
         </propertySection>
         <propertySection
               class="org.obeonetwork.dsl.environment.parts.forms.MetadatasPropertiesEditionPartForm"
               filter="org.obeonetwork.dsl.entity.providers.AttributePropertiesEditionProvider$EditionFilter"
               id="org.obeonetwork.dsl.entity.section.Attribute"
               tab="Metadatas">
         </propertySection>
         <propertySection
               class="org.obeonetwork.dsl.entity.parts.forms.ReferencePropertiesEditionPartForm"
               filter="org.obeonetwork.dsl.entity.providers.ReferencePropertiesEditionProvider$EditionFilter"
               id="org.obeonetwork.dsl.entity.section.Reference"
               tab="Reference">
         </propertySection>
         <propertySection
               class="org.obeonetwork.dsl.environment.parts.forms.MetadatasPropertiesEditionPartForm"
               filter="org.obeonetwork.dsl.entity.providers.ReferencePropertiesEditionProvider$EditionFilter"
               id="org.obeonetwork.dsl.entity.section.Reference"
               tab="Metadatas">
         </propertySection>
@@ -6,7 +6,7 @@
   <!-- EEF extensions -->
    <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
       <factory
-            uri="http://www.obeonetwork.org/dsl/entity/2.0.0"
+            uri="http://www.obeonetwork.org/dsl/entity/3.0.0"
             class="org.obeonetwork.dsl.entity.providers.EntityEEFAdapterFactory"
             supportedTypes="org.eclipse.emf.eef.runtime.providers.PropertiesEditingProvider"/>
    </extension>
@@ -51,30 +51,12 @@
                afterTab="Root">
          </propertyTab>
 
-         <propertyTab
-               id="Block"
-               label="Block"
-               category="default">
-         </propertyTab>
-
          <propertyTab
                id="Entity"
                label="Entity"
                category="default">
          </propertyTab>
 
-         <propertyTab
-               id="Attribute"
-               label="Attribute"
-               category="default">
-         </propertyTab>
-
-         <propertyTab
-               id="Reference"
-               label="Reference"
-               category="default">
-         </propertyTab>
-
          <propertyTab
                id="Finder"
                label="Finder"
@@ -111,18 +93,6 @@
                id="org.obeonetwork.dsl.entity.section.Root"
                tab="Metadatas">
          </propertySection>
-         <propertySection
-               class="org.obeonetwork.dsl.entity.parts.forms.BlockPropertiesEditionPartForm"
-               filter="org.obeonetwork.dsl.entity.providers.BlockPropertiesEditionProvider$EditionFilter"
-               id="org.obeonetwork.dsl.entity.section.Block"
-               tab="Block">
-         </propertySection>
-         <propertySection
-               class="org.obeonetwork.dsl.environment.parts.forms.MetadatasPropertiesEditionPartForm"
-               filter="org.obeonetwork.dsl.entity.providers.BlockPropertiesEditionProvider$EditionFilter"
-               id="org.obeonetwork.dsl.entity.section.Block"
-               tab="Metadatas">
-         </propertySection>
          <propertySection
                class="org.obeonetwork.dsl.entity.parts.forms.EntityPropertiesEditionPartForm"
                filter="org.obeonetwork.dsl.entity.providers.EntityPropertiesEditionProvider$EditionFilter"
@@ -135,30 +105,6 @@
                id="org.obeonetwork.dsl.entity.section.Entity"
                tab="Metadatas">
          </propertySection>
-         <propertySection
-               class="org.obeonetwork.dsl.entity.parts.forms.AttributePropertiesEditionPartForm"
-               filter="org.obeonetwork.dsl.entity.providers.AttributePropertiesEditionProvider$EditionFilter"
-               id="org.obeonetwork.dsl.entity.section.Attribute"
-               tab="Attribute">
-         </propertySection>
-         <propertySection
-               class="org.obeonetwork.dsl.environment.parts.forms.MetadatasPropertiesEditionPartForm"
-               filter="org.obeonetwork.dsl.entity.providers.AttributePropertiesEditionProvider$EditionFilter"
-               id="org.obeonetwork.dsl.entity.section.Attribute"
-               tab="Metadatas">
-         </propertySection>
-         <propertySection
-               class="org.obeonetwork.dsl.entity.parts.forms.ReferencePropertiesEditionPartForm"
-               filter="org.obeonetwork.dsl.entity.providers.ReferencePropertiesEditionProvider$EditionFilter"
-               id="org.obeonetwork.dsl.entity.section.Reference"
-               tab="Reference">
-         </propertySection>
-         <propertySection
-               class="org.obeonetwork.dsl.environment.parts.forms.MetadatasPropertiesEditionPartForm"
-               filter="org.obeonetwork.dsl.entity.providers.ReferencePropertiesEditionProvider$EditionFilter"
-               id="org.obeonetwork.dsl.entity.section.Reference"
-               tab="Metadatas">
-         </propertySection>
          <propertySection
                class="org.obeonetwork.dsl.entity.parts.forms.FinderPropertiesEditionPartForm"
                filter="org.obeonetwork.dsl.entity.providers.FinderPropertiesEditionProvider$EditionFilter"
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Fentity_properties.plugin.xml
82fff1dbcfab07a249bc2791b28f1029a24a4af3
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fcomponents%2FEntityEntityPropertiesEditionComponent.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fcomponents%2FEntityEntityPropertiesEditionComponent.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src-gen/org/obeonetwork/dsl/entity/components/EntityEntityPropertiesEditionComponent.java
import org.eclipse.emf.eef.runtime.context.impl.EReferencePropertiesEditionContext;
import org.eclipse.emf.eef.runtime.policies.impl.CreateEditingPolicy;
import org.obeonetwork.dsl.environment.StructuredType;
				superTypeSettings = new EObjectFlatComboSettings(entity, EnvironmentPackage.eINSTANCE.getStructuredType_Supertype());
			return EnvironmentPackage.eINSTANCE.getStructuredType_Supertype();
				superTypeSettings.setToReference((StructuredType)event.getNewValue());
				EReferencePropertiesEditionContext context = new EReferencePropertiesEditionContext(editingContext, this, superTypeSettings, editingContext.getAdapterFactory());
				PropertiesEditingProvider provider = (PropertiesEditingProvider)editingContext.getAdapterFactory().adapt(semanticObject, PropertiesEditingProvider.class);
					if (policy instanceof CreateEditingPolicy) {
			if (EnvironmentPackage.eINSTANCE.getStructuredType_Supertype().equals(msg.getFeature()) && entityPart != null && isAccessible(EntityViewsRepository.Entity_.Properties.superType))
			EnvironmentPackage.eINSTANCE.getStructuredType_Supertype(),
import org.eclipse.emf.eef.runtime.context.impl.EObjectPropertiesEditionContext;
import org.obeonetwork.dsl.entity.EntityFactory;
				superTypeSettings = new EObjectFlatComboSettings(entity, EntityPackage.eINSTANCE.getEntity_Supertype());
			return EntityPackage.eINSTANCE.getEntity_Supertype();
				superTypeSettings.setToReference((Entity)event.getNewValue());
				Entity eObject = EntityFactory.eINSTANCE.createEntity();
				EObjectPropertiesEditionContext context = new EObjectPropertiesEditionContext(editingContext, this, eObject, editingContext.getAdapterFactory());
				PropertiesEditingProvider provider = (PropertiesEditingProvider)editingContext.getAdapterFactory().adapt(eObject, PropertiesEditingProvider.class);
					if (policy != null) {
				superTypeSettings.setToReference(eObject);
			if (EntityPackage.eINSTANCE.getEntity_Supertype().equals(msg.getFeature()) && entityPart != null && isAccessible(EntityViewsRepository.Entity_.Properties.superType))
			EntityPackage.eINSTANCE.getEntity_Supertype(),
@@ -25,22 +25,23 @@
 import org.eclipse.emf.eef.runtime.api.notify.IPropertiesEditionEvent;
 import org.eclipse.emf.eef.runtime.api.notify.NotificationFilter;
 import org.eclipse.emf.eef.runtime.context.PropertiesEditingContext;
-import org.eclipse.emf.eef.runtime.context.impl.EObjectPropertiesEditionContext;
+import org.eclipse.emf.eef.runtime.context.impl.EReferencePropertiesEditionContext;
 import org.eclipse.emf.eef.runtime.impl.components.SinglePartPropertiesEditingComponent;
 import org.eclipse.emf.eef.runtime.impl.notify.PropertiesEditionEvent;
 import org.eclipse.emf.eef.runtime.impl.utils.EEFConverterUtil;
 import org.eclipse.emf.eef.runtime.impl.utils.EEFUtils;
 import org.eclipse.emf.eef.runtime.policies.PropertiesEditingPolicy;
+import org.eclipse.emf.eef.runtime.policies.impl.CreateEditingPolicy;
 import org.eclipse.emf.eef.runtime.providers.PropertiesEditingProvider;
 import org.eclipse.emf.eef.runtime.ui.widgets.ButtonsModeEnum;
 import org.eclipse.emf.eef.runtime.ui.widgets.eobjflatcombo.EObjectFlatComboSettings;
 import org.obeonetwork.dsl.entity.Entity;
-import org.obeonetwork.dsl.entity.EntityFactory;
 import org.obeonetwork.dsl.entity.EntityPackage;
 import org.obeonetwork.dsl.entity.InheritanceKind;
 import org.obeonetwork.dsl.entity.parts.EntityPropertiesEditionPart;
 import org.obeonetwork.dsl.entity.parts.EntityViewsRepository;
 import org.obeonetwork.dsl.environment.EnvironmentPackage;
+import org.obeonetwork.dsl.environment.StructuredType;
 
 
 // End of user code
@@ -92,7 +93,7 @@ public void initPart(Object key, int kind, EObject elt, ResourceSet allResource)
 			
 			if (isAccessible(EntityViewsRepository.Entity_.Properties.superType)) {
 				// init part
-				superTypeSettings = new EObjectFlatComboSettings(entity, EntityPackage.eINSTANCE.getEntity_Supertype());
+				superTypeSettings = new EObjectFlatComboSettings(entity, EnvironmentPackage.eINSTANCE.getStructuredType_Supertype());
 				entityPart.initSuperType(superTypeSettings);
 				// set the button mode
 				entityPart.setSuperTypeButtonMode(ButtonsModeEnum.BROWSE);
@@ -147,7 +148,7 @@ public EStructuralFeature associatedFeature(Object editorKey) {
 			return EnvironmentPackage.eINSTANCE.getType_Name();
 		}
 		if (editorKey == EntityViewsRepository.Entity_.Properties.superType) {
-			return EntityPackage.eINSTANCE.getEntity_Supertype();
+			return EnvironmentPackage.eINSTANCE.getStructuredType_Supertype();
 		}
 		if (editorKey == EntityViewsRepository.Entity_.Properties.estimatedVolumetry) {
 			return EntityPackage.eINSTANCE.getEntity_EstimatedVolumetry();
@@ -179,18 +180,16 @@ public void updateSemanticModel(final IPropertiesEditionEvent event) {
 		}
 		if (EntityViewsRepository.Entity_.Properties.superType == event.getAffectedEditor()) {
 			if (event.getKind() == PropertiesEditionEvent.SET) {
-				superTypeSettings.setToReference((Entity)event.getNewValue());
+				superTypeSettings.setToReference((StructuredType)event.getNewValue());
 			} else if (event.getKind() == PropertiesEditionEvent.ADD) {
-				Entity eObject = EntityFactory.eINSTANCE.createEntity();
-				EObjectPropertiesEditionContext context = new EObjectPropertiesEditionContext(editingContext, this, eObject, editingContext.getAdapterFactory());
-				PropertiesEditingProvider provider = (PropertiesEditingProvider)editingContext.getAdapterFactory().adapt(eObject, PropertiesEditingProvider.class);
+				EReferencePropertiesEditionContext context = new EReferencePropertiesEditionContext(editingContext, this, superTypeSettings, editingContext.getAdapterFactory());
+				PropertiesEditingProvider provider = (PropertiesEditingProvider)editingContext.getAdapterFactory().adapt(semanticObject, PropertiesEditingProvider.class);
 				if (provider != null) {
 					PropertiesEditingPolicy policy = provider.getPolicy(context);
-					if (policy != null) {
+					if (policy instanceof CreateEditingPolicy) {
 						policy.execute();
 					}
 				}
-				superTypeSettings.setToReference(eObject);
 			}
 		}
 		if (EntityViewsRepository.Entity_.Properties.estimatedVolumetry == event.getAffectedEditor()) {
@@ -225,7 +224,7 @@ public void updatePart(Notification msg) {
 					entityPart.setName("");
 				}
 			}
-			if (EntityPackage.eINSTANCE.getEntity_Supertype().equals(msg.getFeature()) && entityPart != null && isAccessible(EntityViewsRepository.Entity_.Properties.superType))
+			if (EnvironmentPackage.eINSTANCE.getStructuredType_Supertype().equals(msg.getFeature()) && entityPart != null && isAccessible(EntityViewsRepository.Entity_.Properties.superType))
 				entityPart.setSuperType((EObject)msg.getNewValue());
 			if (EntityPackage.eINSTANCE.getEntity_EstimatedVolumetry().equals(msg.getFeature()) && msg.getNotifier().equals(semanticObject) && entityPart != null && isAccessible(EntityViewsRepository.Entity_.Properties.estimatedVolumetry)) {
 				if (msg.getNewValue() != null) {
@@ -267,7 +266,7 @@ public void updatePart(Notification msg) {
 	protected NotificationFilter[] getNotificationFilters() {
 		NotificationFilter filter = new EStructuralFeatureNotificationFilter(
 			EnvironmentPackage.eINSTANCE.getType_Name(),
-			EntityPackage.eINSTANCE.getEntity_Supertype(),
+			EnvironmentPackage.eINSTANCE.getStructuredType_Supertype(),
 			EntityPackage.eINSTANCE.getEntity_EstimatedVolumetry(),
 			EntityPackage.eINSTANCE.getEntity_EstimatedAccess(),
 			EntityPackage.eINSTANCE.getEntity_Historized(),
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fcomponents%2FEntityEntityPropertiesEditionComponent.java
c4d77ad0c0cacdfa8a9f862156e32c6acf1e597a
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fcomponents%2FFinderFinderPropertiesEditionComponent.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fcomponents%2FFinderFinderPropertiesEditionComponent.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src-gen/org/obeonetwork/dsl/entity/components/FinderFinderPropertiesEditionComponent.java
				finderPart.initMultiplicity(EEFUtils.choiceOfValues(finder, EntityPackage.eINSTANCE.getFinder_Multiplicity()), finder.getMultiplicity());
			return EntityPackage.eINSTANCE.getFinder_Multiplicity();
			if (EntityPackage.eINSTANCE.getFinder_Multiplicity().equals(msg.getFeature()) && msg.getNotifier().equals(semanticObject) && isAccessible(EntityViewsRepository.Finder.Properties.multiplicity))
			EntityPackage.eINSTANCE.getFinder_Multiplicity(),
						newValue = EEFConverterUtil.createFromString(EntityPackage.eINSTANCE.getFinder_Multiplicity().getEAttributeType(), (String)newValue);
					ret = Diagnostician.INSTANCE.validate(EntityPackage.eINSTANCE.getFinder_Multiplicity().getEAttributeType(), newValue);
				finderPart.initMultiplicity(EEFUtils.choiceOfValues(finder, EntityPackage.eINSTANCE.getProperty_Multiplicity()), finder.getMultiplicity());
			return EntityPackage.eINSTANCE.getProperty_Multiplicity();
			if (EntityPackage.eINSTANCE.getProperty_Multiplicity().equals(msg.getFeature()) && msg.getNotifier().equals(semanticObject) && isAccessible(EntityViewsRepository.Finder.Properties.multiplicity))
			EntityPackage.eINSTANCE.getProperty_Multiplicity(),
						newValue = EEFConverterUtil.createFromString(EntityPackage.eINSTANCE.getProperty_Multiplicity().getEAttributeType(), (String)newValue);
					ret = Diagnostician.INSTANCE.validate(EntityPackage.eINSTANCE.getProperty_Multiplicity().getEAttributeType(), newValue);
@@ -79,7 +79,7 @@ public void initPart(Object key, int kind, EObject elt, ResourceSet allResource)
 				finderPart.setCustomizedName(EEFConverterUtil.convertToString(EcorePackage.Literals.ESTRING, finder.getCustomizedName()));
 			
 			if (isAccessible(EntityViewsRepository.Finder.Properties.multiplicity)) {
-				finderPart.initMultiplicity(EEFUtils.choiceOfValues(finder, EntityPackage.eINSTANCE.getProperty_Multiplicity()), finder.getMultiplicity());
+				finderPart.initMultiplicity(EEFUtils.choiceOfValues(finder, EntityPackage.eINSTANCE.getFinder_Multiplicity()), finder.getMultiplicity());
 			}
 			if (isAccessible(EntityViewsRepository.Finder.Properties.description))
 				finderPart.setDescription(EcoreUtil.convertToString(EcorePackage.Literals.ESTRING, finder.getDescription()));
@@ -109,7 +109,7 @@ public EStructuralFeature associatedFeature(Object editorKey) {
 			return EntityPackage.eINSTANCE.getFinder_CustomizedName();
 		}
 		if (editorKey == EntityViewsRepository.Finder.Properties.multiplicity) {
-			return EntityPackage.eINSTANCE.getProperty_Multiplicity();
+			return EntityPackage.eINSTANCE.getFinder_Multiplicity();
 		}
 		if (editorKey == EntityViewsRepository.Finder.Properties.description) {
 			return EnvironmentPackage.eINSTANCE.getObeoDSMObject_Description();
@@ -150,7 +150,7 @@ public void updatePart(Notification msg) {
 					finderPart.setCustomizedName("");
 				}
 			}
-			if (EntityPackage.eINSTANCE.getProperty_Multiplicity().equals(msg.getFeature()) && msg.getNotifier().equals(semanticObject) && isAccessible(EntityViewsRepository.Finder.Properties.multiplicity))
+			if (EntityPackage.eINSTANCE.getFinder_Multiplicity().equals(msg.getFeature()) && msg.getNotifier().equals(semanticObject) && isAccessible(EntityViewsRepository.Finder.Properties.multiplicity))
 				finderPart.setMultiplicity((MultiplicityKind)msg.getNewValue());
 			
 			if (EnvironmentPackage.eINSTANCE.getObeoDSMObject_Description().equals(msg.getFeature()) && msg.getNotifier().equals(semanticObject) && finderPart != null && isAccessible(EntityViewsRepository.Finder.Properties.description)){
@@ -173,7 +173,7 @@ public void updatePart(Notification msg) {
 	protected NotificationFilter[] getNotificationFilters() {
 		NotificationFilter filter = new EStructuralFeatureNotificationFilter(
 			EntityPackage.eINSTANCE.getFinder_CustomizedName(),
-			EntityPackage.eINSTANCE.getProperty_Multiplicity(),
+			EntityPackage.eINSTANCE.getFinder_Multiplicity(),
 			EnvironmentPackage.eINSTANCE.getObeoDSMObject_Description()		);
 		return new NotificationFilter[] {filter,};
 	}
@@ -209,9 +209,9 @@ public Diagnostic validateValue(IPropertiesEditionEvent event) {
 				if (EntityViewsRepository.Finder.Properties.multiplicity == event.getAffectedEditor()) {
 					Object newValue = event.getNewValue();
 					if (newValue instanceof String) {
-						newValue = EEFConverterUtil.createFromString(EntityPackage.eINSTANCE.getProperty_Multiplicity().getEAttributeType(), (String)newValue);
+						newValue = EEFConverterUtil.createFromString(EntityPackage.eINSTANCE.getFinder_Multiplicity().getEAttributeType(), (String)newValue);
 					}
-					ret = Diagnostician.INSTANCE.validate(EntityPackage.eINSTANCE.getProperty_Multiplicity().getEAttributeType(), newValue);
+					ret = Diagnostician.INSTANCE.validate(EntityPackage.eINSTANCE.getFinder_Multiplicity().getEAttributeType(), newValue);
 				}
 				if (EntityViewsRepository.Finder.Properties.description == event.getAffectedEditor()) {
 					Object newValue = event.getNewValue();
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fcomponents%2FFinderFinderPropertiesEditionComponent.java
937112f77afa1ceb36be3537ec66403bd925be97
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fcomponents%2FInternalCriterionInternalCriterionPropertiesEditionComponent.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fcomponents%2FInternalCriterionInternalCriterionPropertiesEditionComponent.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src-gen/org/obeonetwork/dsl/entity/components/InternalCriterionInternalCriterionPropertiesEditionComponent.java
import org.obeonetwork.dsl.environment.Attribute;
import org.obeonetwork.dsl.environment.EnvironmentFactory;
				Attribute eObject = EnvironmentFactory.eINSTANCE.createAttribute();
import org.obeonetwork.dsl.entity.Attribute;
import org.obeonetwork.dsl.entity.EntityFactory;
				Attribute eObject = EntityFactory.eINSTANCE.createAttribute();
@@ -33,12 +33,12 @@
 import org.eclipse.emf.eef.runtime.providers.PropertiesEditingProvider;
 import org.eclipse.emf.eef.runtime.ui.widgets.ButtonsModeEnum;
 import org.eclipse.emf.eef.runtime.ui.widgets.eobjflatcombo.EObjectFlatComboSettings;
-import org.obeonetwork.dsl.entity.Attribute;
-import org.obeonetwork.dsl.entity.EntityFactory;
 import org.obeonetwork.dsl.entity.EntityPackage;
 import org.obeonetwork.dsl.entity.InternalCriterion;
 import org.obeonetwork.dsl.entity.parts.EntityViewsRepository;
 import org.obeonetwork.dsl.entity.parts.InternalCriterionPropertiesEditionPart;
+import org.obeonetwork.dsl.environment.Attribute;
+import org.obeonetwork.dsl.environment.EnvironmentFactory;
 import org.obeonetwork.dsl.environment.EnvironmentPackage;
 
 
@@ -135,7 +135,7 @@ public void updateSemanticModel(final IPropertiesEditionEvent event) {
 			if (event.getKind() == PropertiesEditionEvent.SET) {
 				targetSettings.setToReference((Attribute)event.getNewValue());
 			} else if (event.getKind() == PropertiesEditionEvent.ADD) {
-				Attribute eObject = EntityFactory.eINSTANCE.createAttribute();
+				Attribute eObject = EnvironmentFactory.eINSTANCE.createAttribute();
 				EObjectPropertiesEditionContext context = new EObjectPropertiesEditionContext(editingContext, this, eObject, editingContext.getAdapterFactory());
 				PropertiesEditingProvider provider = (PropertiesEditingProvider)editingContext.getAdapterFactory().adapt(eObject, PropertiesEditingProvider.class);
 				if (provider != null) {
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fcomponents%2FInternalCriterionInternalCriterionPropertiesEditionComponent.java
5611b02b67ad4982718c6da4cc12384651b02d65
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fcomponents%2FRootRootPropertiesEditionComponent.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fcomponents%2FRootRootPropertiesEditionComponent.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src-gen/org/obeonetwork/dsl/entity/components/RootRootPropertiesEditionComponent.java
import org.obeonetwork.dsl.entity.EntityPackage;
 * @author <a href="mailto:jerome.benois@obeo.fr>J�r�me Benois</a>
			return EntityPackage.eINSTANCE.getRoot_Name();
			if (EntityPackage.eINSTANCE.getRoot_Name().equals(msg.getFeature()) && msg.getNotifier().equals(semanticObject) && rootPart != null && isAccessible(EntityViewsRepository.Root.Properties.name)) {
			EntityPackage.eINSTANCE.getRoot_Name(),
						newValue = EEFConverterUtil.createFromString(EntityPackage.eINSTANCE.getRoot_Name().getEAttributeType(), (String)newValue);
					ret = Diagnostician.INSTANCE.validate(EntityPackage.eINSTANCE.getRoot_Name().getEAttributeType(), newValue);
 * @author <a href="mailto:jerome.benois@obeo.fr>J�r�me Benois</a>
			return EnvironmentPackage.eINSTANCE.getNamespace_Name();
			if (EnvironmentPackage.eINSTANCE.getNamespace_Name().equals(msg.getFeature()) && msg.getNotifier().equals(semanticObject) && rootPart != null && isAccessible(EntityViewsRepository.Root.Properties.name)) {
			EnvironmentPackage.eINSTANCE.getNamespace_Name(),
						newValue = EEFConverterUtil.createFromString(EnvironmentPackage.eINSTANCE.getNamespace_Name().getEAttributeType(), (String)newValue);
					ret = Diagnostician.INSTANCE.validate(EnvironmentPackage.eINSTANCE.getNamespace_Name().getEAttributeType(), newValue);
@@ -27,6 +27,7 @@
 import org.eclipse.emf.eef.runtime.context.PropertiesEditingContext;
 import org.eclipse.emf.eef.runtime.impl.components.SinglePartPropertiesEditingComponent;
 import org.eclipse.emf.eef.runtime.impl.utils.EEFConverterUtil;
+import org.obeonetwork.dsl.entity.EntityPackage;
 import org.obeonetwork.dsl.entity.Root;
 import org.obeonetwork.dsl.entity.parts.EntityViewsRepository;
 import org.obeonetwork.dsl.entity.parts.RootPropertiesEditionPart;
@@ -36,7 +37,7 @@
 // End of user code
 
 /**
- * @author <a href="mailto:jerome.benois@obeo.fr>J�r�me Benois</a>
+ * @author <a href="mailto:jerome.benois@obeo.fr>J�r�me Benois</a>
  * 
  */
 public class RootRootPropertiesEditionComponent extends SinglePartPropertiesEditingComponent {
@@ -98,7 +99,7 @@ public void initPart(Object key, int kind, EObject elt, ResourceSet allResource)
 	 */
 	public EStructuralFeature associatedFeature(Object editorKey) {
 		if (editorKey == EntityViewsRepository.Root.Properties.name) {
-			return EnvironmentPackage.eINSTANCE.getNamespace_Name();
+			return EntityPackage.eINSTANCE.getRoot_Name();
 		}
 		if (editorKey == EntityViewsRepository.Root.Properties.description) {
 			return EnvironmentPackage.eINSTANCE.getObeoDSMObject_Description();
@@ -129,7 +130,7 @@ public void updatePart(Notification msg) {
 		super.updatePart(msg);
 		if (editingPart.isVisible()) {
 			RootPropertiesEditionPart rootPart = (RootPropertiesEditionPart)editingPart;
-			if (EnvironmentPackage.eINSTANCE.getNamespace_Name().equals(msg.getFeature()) && msg.getNotifier().equals(semanticObject) && rootPart != null && isAccessible(EntityViewsRepository.Root.Properties.name)) {
+			if (EntityPackage.eINSTANCE.getRoot_Name().equals(msg.getFeature()) && msg.getNotifier().equals(semanticObject) && rootPart != null && isAccessible(EntityViewsRepository.Root.Properties.name)) {
 				if (msg.getNewValue() != null) {
 					rootPart.setName(EcoreUtil.convertToString(EcorePackage.Literals.ESTRING, msg.getNewValue()));
 				} else {
@@ -155,7 +156,7 @@ public void updatePart(Notification msg) {
 	@Override
 	protected NotificationFilter[] getNotificationFilters() {
 		NotificationFilter filter = new EStructuralFeatureNotificationFilter(
-			EnvironmentPackage.eINSTANCE.getNamespace_Name(),
+			EntityPackage.eINSTANCE.getRoot_Name(),
 			EnvironmentPackage.eINSTANCE.getObeoDSMObject_Description()		);
 		return new NotificationFilter[] {filter,};
 	}
@@ -174,9 +175,9 @@ public Diagnostic validateValue(IPropertiesEditionEvent event) {
 				if (EntityViewsRepository.Root.Properties.name == event.getAffectedEditor()) {
 					Object newValue = event.getNewValue();
 					if (newValue instanceof String) {
-						newValue = EEFConverterUtil.createFromString(EnvironmentPackage.eINSTANCE.getNamespace_Name().getEAttributeType(), (String)newValue);
+						newValue = EEFConverterUtil.createFromString(EntityPackage.eINSTANCE.getRoot_Name().getEAttributeType(), (String)newValue);
 					}
-					ret = Diagnostician.INSTANCE.validate(EnvironmentPackage.eINSTANCE.getNamespace_Name().getEAttributeType(), newValue);
+					ret = Diagnostician.INSTANCE.validate(EntityPackage.eINSTANCE.getRoot_Name().getEAttributeType(), newValue);
 				}
 				if (EntityViewsRepository.Root.Properties.description == event.getAffectedEditor()) {
 					Object newValue = event.getNewValue();
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fcomponents%2FRootRootPropertiesEditionComponent.java
a7291f6c66f42aa01c29370a88881fabeaeb2d9f
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fparts%2FEntityViewsRepository.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fparts%2FEntityViewsRepository.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src-gen/org/obeonetwork/dsl/entity/parts/EntityViewsRepository.java
	/**
	 * Block view descriptor
	 * 
	 */
	public static class Block {
		public static class Properties {
	
			
			public static String name = "entity::Block::properties::name";
			
			
			public static String description = "entity::Block::properties::description";
			
	
		}
	
	}

	/**
	 * Attribute view descriptor
	 * 
	 */
	public static class Attribute {
		public static class Properties {
	
			
			public static String name = "entity::Attribute::properties::name";
			
			
			public static String type = "entity::Attribute::properties::type";
			
			
			public static String multiplicity = "entity::Attribute::properties::multiplicity";
			
			
			public static String isPrimaryKey = "entity::Attribute::properties::isPrimaryKey";
			
			
			public static String description = "entity::Attribute::properties::description";
			
	
		}
	
	}

	/**
	 * Reference view descriptor
	 * 
	 */
	public static class Reference {
		public static class Properties {
	
			
			public static String name = "entity::Reference::properties::name";
			
			
			public static String type = "entity::Reference::properties::type";
			
			
			public static String multiplicity = "entity::Reference::properties::multiplicity";
			
			
			public static String isPrimaryKey = "entity::Reference::properties::isPrimaryKey";
			
			
			public static String isComposite = "entity::Reference::properties::isComposite";
			
			
			public static String navigable = "entity::Reference::properties::navigable";
			
			
			public static String oppositeOf = "entity::Reference::properties::oppositeOf";
			
			
			public static String description = "entity::Reference::properties::description";
			
	
		}
	
	}

@@ -39,24 +39,6 @@ public static class Properties {
 	
 	}
 
-	/**
-	 * Block view descriptor
-	 * 
-	 */
-	public static class Block {
-		public static class Properties {
-	
-			
-			public static String name = "entity::Block::properties::name";
-			
-			
-			public static String description = "entity::Block::properties::description";
-			
-	
-		}
-	
-	}
-
 	/**
 	 * Entity view descriptor
 	 * 
@@ -90,69 +72,6 @@ public static class Properties {
 	
 	}
 
-	/**
-	 * Attribute view descriptor
-	 * 
-	 */
-	public static class Attribute {
-		public static class Properties {
-	
-			
-			public static String name = "entity::Attribute::properties::name";
-			
-			
-			public static String type = "entity::Attribute::properties::type";
-			
-			
-			public static String multiplicity = "entity::Attribute::properties::multiplicity";
-			
-			
-			public static String isPrimaryKey = "entity::Attribute::properties::isPrimaryKey";
-			
-			
-			public static String description = "entity::Attribute::properties::description";
-			
-	
-		}
-	
-	}
-
-	/**
-	 * Reference view descriptor
-	 * 
-	 */
-	public static class Reference {
-		public static class Properties {
-	
-			
-			public static String name = "entity::Reference::properties::name";
-			
-			
-			public static String type = "entity::Reference::properties::type";
-			
-			
-			public static String multiplicity = "entity::Reference::properties::multiplicity";
-			
-			
-			public static String isPrimaryKey = "entity::Reference::properties::isPrimaryKey";
-			
-			
-			public static String isComposite = "entity::Reference::properties::isComposite";
-			
-			
-			public static String navigable = "entity::Reference::properties::navigable";
-			
-			
-			public static String oppositeOf = "entity::Reference::properties::oppositeOf";
-			
-			
-			public static String description = "entity::Reference::properties::description";
-			
-	
-		}
-	
-	}
-
 	/**
 	 * Finder view descriptor
 	 * 
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fparts%2FEntityViewsRepository.java
c8221c3ac9d2796b1e3ea938864e4713003e5ed2
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fproviders%2FEntityEEFAdapterFactory.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fproviders%2FEntityEEFAdapterFactory.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src-gen/org/obeonetwork/dsl/entity/providers/EntityEEFAdapterFactory.java
import org.obeonetwork.dsl.environment.providers.TypesDefinitionPropertiesEditionProvider;
	 * @see org.obeonetwork.dsl.entity.util.EntityAdapterFactory#createTypesDefinitionAdapter()
	public Adapter createTypesDefinitionAdapter() {
		return new TypesDefinitionPropertiesEditionProvider(providers);
import org.obeonetwork.dsl.environment.providers.NamespacePropertiesEditionProvider;
	 * @see org.obeonetwork.dsl.entity.util.EntityAdapterFactory#createNamespaceAdapter()
	public Adapter createNamespaceAdapter() {
		return new NamespacePropertiesEditionProvider(providers);
	/**
	 * {@inheritDoc}
	 * @see org.obeonetwork.dsl.entity.util.EntityAdapterFactory#createBlockAdapter()
	 * 
	 */
	public Adapter createBlockAdapter() {
		List<PropertiesEditingProvider> providers = new ArrayList<PropertiesEditingProvider>(1);
		providers.add((PropertiesEditingProvider)createObeoDSMObjectAdapter());
		return new BlockPropertiesEditionProvider(providers);
	}
	/**
	 * {@inheritDoc}
	 * @see org.obeonetwork.dsl.entity.util.EntityAdapterFactory#createAttributeAdapter()
	 * 
	 */
	public Adapter createAttributeAdapter() {
		List<PropertiesEditingProvider> providers = new ArrayList<PropertiesEditingProvider>(1);
		providers.add((PropertiesEditingProvider)createObeoDSMObjectAdapter());
		return new AttributePropertiesEditionProvider(providers);
	}
	/**
	 * {@inheritDoc}
	 * @see org.obeonetwork.dsl.entity.util.EntityAdapterFactory#createReferenceAdapter()
	 * 
	 */
	public Adapter createReferenceAdapter() {
		List<PropertiesEditingProvider> providers = new ArrayList<PropertiesEditingProvider>(1);
		providers.add((PropertiesEditingProvider)createObeoDSMObjectAdapter());
		return new ReferencePropertiesEditionProvider(providers);
	}
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src-gen/org/obeonetwork/dsl/entity/providers/EntityEEFAdapterFactory.java
return new NamespacePropertiesEditionProvider(providers);
	/**
	 * {@inheritDoc
Adapter createNamespaceAdapter()
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src-gen/org/obeonetwork/dsl/entity/providers/EntityEEFAdapterFactory.java
List<PropertiesEditingProvider> providers = new ArrayList<PropertiesEditingProvider>(1);
		providers.add((PropertiesEditingProvider)createObeoDSMObjectAdapter());
		return new BlockPropertiesEditionProvider(providers);
Adapter createBlockAdapter()
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src-gen/org/obeonetwork/dsl/entity/providers/EntityEEFAdapterFactory.java
List<PropertiesEditingProvider> providers = new ArrayList<PropertiesEditingProvider>(1);
		providers.add((PropertiesEditingProvider)createObeoDSMObjectAdapter());
		return new AttributePropertiesEditionProvider(providers);
Adapter createAttributeAdapter()
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src-gen/org/obeonetwork/dsl/entity/providers/EntityEEFAdapterFactory.java
List<PropertiesEditingProvider> providers = new ArrayList<PropertiesEditingProvider>(1);
		providers.add((PropertiesEditingProvider)createObeoDSMObjectAdapter());
		return new ReferencePropertiesEditionProvider(providers);
Adapter createReferenceAdapter()
@@ -20,7 +20,7 @@
 import org.obeonetwork.dsl.entity.util.EntityAdapterFactory;
 
 import org.obeonetwork.dsl.environment.providers.MetadataCptPropertiesEditionProvider;
-import org.obeonetwork.dsl.environment.providers.NamespacePropertiesEditionProvider;
+import org.obeonetwork.dsl.environment.providers.TypesDefinitionPropertiesEditionProvider;
 
 /**
  * @author <a href="mailto:jerome.benois@obeo.fr>J�r�me Benois</a>
@@ -38,13 +38,13 @@ public Adapter createObeoDSMObjectAdapter() {
 	}
 	/**
 	 * {@inheritDoc}
-	 * @see org.obeonetwork.dsl.entity.util.EntityAdapterFactory#createNamespaceAdapter()
+	 * @see org.obeonetwork.dsl.entity.util.EntityAdapterFactory#createTypesDefinitionAdapter()
 	 * 
 	 */
-	public Adapter createNamespaceAdapter() {
+	public Adapter createTypesDefinitionAdapter() {
 		List<PropertiesEditingProvider> providers = new ArrayList<PropertiesEditingProvider>(1);
 		providers.add((PropertiesEditingProvider)createObeoDSMObjectAdapter());
-		return new NamespacePropertiesEditionProvider(providers);
+		return new TypesDefinitionPropertiesEditionProvider(providers);
 	}
 	/**
 	 * {@inheritDoc}
@@ -56,16 +56,6 @@ public Adapter createRootAdapter() {
 		providers.add((PropertiesEditingProvider)createObeoDSMObjectAdapter());
 		return new RootPropertiesEditionProvider(providers);
 	}
-	/**
-	 * {@inheritDoc}
-	 * @see org.obeonetwork.dsl.entity.util.EntityAdapterFactory#createBlockAdapter()
-	 * 
-	 */
-	public Adapter createBlockAdapter() {
-		List<PropertiesEditingProvider> providers = new ArrayList<PropertiesEditingProvider>(1);
-		providers.add((PropertiesEditingProvider)createObeoDSMObjectAdapter());
-		return new BlockPropertiesEditionProvider(providers);
-	}
 	/**
 	 * {@inheritDoc}
 	 * @see org.obeonetwork.dsl.entity.util.EntityAdapterFactory#createEntityAdapter()
@@ -76,26 +66,6 @@ public Adapter createEntityAdapter() {
 		providers.add((PropertiesEditingProvider)createObeoDSMObjectAdapter());
 		return new EntityPropertiesEditionProvider(providers);
 	}
-	/**
-	 * {@inheritDoc}
-	 * @see org.obeonetwork.dsl.entity.util.EntityAdapterFactory#createAttributeAdapter()
-	 * 
-	 */
-	public Adapter createAttributeAdapter() {
-		List<PropertiesEditingProvider> providers = new ArrayList<PropertiesEditingProvider>(1);
-		providers.add((PropertiesEditingProvider)createObeoDSMObjectAdapter());
-		return new AttributePropertiesEditionProvider(providers);
-	}
-	/**
-	 * {@inheritDoc}
-	 * @see org.obeonetwork.dsl.entity.util.EntityAdapterFactory#createReferenceAdapter()
-	 * 
-	 */
-	public Adapter createReferenceAdapter() {
-		List<PropertiesEditingProvider> providers = new ArrayList<PropertiesEditingProvider>(1);
-		providers.add((PropertiesEditingProvider)createObeoDSMObjectAdapter());
-		return new ReferencePropertiesEditionProvider(providers);
-	}
 	/**
 	 * {@inheritDoc}
 	 * @see org.obeonetwork.dsl.entity.util.EntityAdapterFactory#createFinderAdapter()
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fproviders%2FEntityEEFAdapterFactory.java
d416f42f72465ced8bd8f084166ece0fa9246bab
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fproviders%2FEntityMessages.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fproviders%2FEntityMessages.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src-gen/org/obeonetwork/dsl/entity/providers/EntityMessages.java
	public static String BlockPropertiesEditionPart_PropertiesGroupLabel;

	
	public static String AttributePropertiesEditionPart_PropertiesGroupLabel;

	
	public static String ReferencePropertiesEditionPart_PropertiesGroupLabel;

	
	public static String Block_ReadOnly;

	
	public static String Block_Part_Title;

	
	public static String Attribute_ReadOnly;

	
	public static String Attribute_Part_Title;

	
	public static String Reference_ReadOnly;

	
	public static String Reference_Part_Title;

	
	public static String BlockPropertiesEditionPart_NameLabel;

	
	public static String BlockPropertiesEditionPart_DescriptionLabel;

	
	public static String AttributePropertiesEditionPart_NameLabel;

	
	public static String AttributePropertiesEditionPart_TypeLabel;

	
	public static String AttributePropertiesEditionPart_MultiplicityLabel;

	
	public static String AttributePropertiesEditionPart_IsPrimaryKeyLabel;

	
	public static String AttributePropertiesEditionPart_DescriptionLabel;

	
	public static String ReferencePropertiesEditionPart_NameLabel;

	
	public static String ReferencePropertiesEditionPart_TypeLabel;

	
	public static String ReferencePropertiesEditionPart_MultiplicityLabel;

	
	public static String ReferencePropertiesEditionPart_IsPrimaryKeyLabel;

	
	public static String ReferencePropertiesEditionPart_IsCompositeLabel;

	
	public static String ReferencePropertiesEditionPart_NavigableLabel;

	
	public static String ReferencePropertiesEditionPart_OppositeOfLabel;

	
	public static String ReferencePropertiesEditionPart_DescriptionLabel;

	
@@ -24,18 +24,9 @@ public class EntityMessages extends NLS {
 	public static String RootPropertiesEditionPart_PropertiesGroupLabel;
 
 	
-	public static String BlockPropertiesEditionPart_PropertiesGroupLabel;
-
-	
 	public static String EntityPropertiesEditionPart_PropertiesGroupLabel;
 
 	
-	public static String AttributePropertiesEditionPart_PropertiesGroupLabel;
-
-	
-	public static String ReferencePropertiesEditionPart_PropertiesGroupLabel;
-
-	
 	public static String FinderPropertiesEditionPart_PropertiesGroupLabel;
 
 	
@@ -52,30 +43,12 @@ public class EntityMessages extends NLS {
 	public static String Root_Part_Title;
 
 	
-	public static String Block_ReadOnly;
-
-	
-	public static String Block_Part_Title;
-
-	
 	public static String Entity_ReadOnly;
 
 	
 	public static String Entity_Part_Title;
 
 	
-	public static String Attribute_ReadOnly;
-
-	
-	public static String Attribute_Part_Title;
-
-	
-	public static String Reference_ReadOnly;
-
-	
-	public static String Reference_Part_Title;
-
-	
 	public static String Finder_ReadOnly;
 
 	
@@ -101,12 +74,6 @@ public class EntityMessages extends NLS {
 	public static String RootPropertiesEditionPart_DescriptionLabel;
 
 	
-	public static String BlockPropertiesEditionPart_NameLabel;
-
-	
-	public static String BlockPropertiesEditionPart_DescriptionLabel;
-
-	
 	public static String EntityPropertiesEditionPart_NameLabel;
 
 	
@@ -128,45 +95,6 @@ public class EntityMessages extends NLS {
 	public static String EntityPropertiesEditionPart_DescriptionLabel;
 
 	
-	public static String AttributePropertiesEditionPart_NameLabel;
-
-	
-	public static String AttributePropertiesEditionPart_TypeLabel;
-
-	
-	public static String AttributePropertiesEditionPart_MultiplicityLabel;
-
-	
-	public static String AttributePropertiesEditionPart_IsPrimaryKeyLabel;
-
-	
-	public static String AttributePropertiesEditionPart_DescriptionLabel;
-
-	
-	public static String ReferencePropertiesEditionPart_NameLabel;
-
-	
-	public static String ReferencePropertiesEditionPart_TypeLabel;
-
-	
-	public static String ReferencePropertiesEditionPart_MultiplicityLabel;
-
-	
-	public static String ReferencePropertiesEditionPart_IsPrimaryKeyLabel;
-
-	
-	public static String ReferencePropertiesEditionPart_IsCompositeLabel;
-
-	
-	public static String ReferencePropertiesEditionPart_NavigableLabel;
-
-	
-	public static String ReferencePropertiesEditionPart_OppositeOfLabel;
-
-	
-	public static String ReferencePropertiesEditionPart_DescriptionLabel;
-
-	
 	public static String FinderPropertiesEditionPart_CustomizedNameLabel;
 
 	
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fproviders%2FEntityMessages.java
c32f38c4747367108f3fc7967b3a8ebd9ea22b09
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fproviders%2FEntityPropertiesEditionPartProvider.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fproviders%2FEntityPropertiesEditionPartProvider.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src-gen/org/obeonetwork/dsl/entity/providers/EntityPropertiesEditionPartProvider.java
import org.obeonetwork.dsl.entity.parts.forms.AttributePropertiesEditionPartForm;
import org.obeonetwork.dsl.entity.parts.forms.BlockPropertiesEditionPartForm;
import org.obeonetwork.dsl.entity.parts.forms.ReferencePropertiesEditionPartForm;
import org.obeonetwork.dsl.entity.parts.impl.AttributePropertiesEditionPartImpl;
import org.obeonetwork.dsl.entity.parts.impl.BlockPropertiesEditionPartImpl;
import org.obeonetwork.dsl.entity.parts.impl.ReferencePropertiesEditionPartImpl;
		if (key == EntityViewsRepository.Block.class) {
			if (kind == EntityViewsRepository.SWT_KIND)
				return new BlockPropertiesEditionPartImpl(component);
			if (kind == EntityViewsRepository.FORM_KIND)
				return new BlockPropertiesEditionPartForm(component);
		}
		if (key == EntityViewsRepository.Attribute.class) {
			if (kind == EntityViewsRepository.SWT_KIND)
				return new AttributePropertiesEditionPartImpl(component);
			if (kind == EntityViewsRepository.FORM_KIND)
				return new AttributePropertiesEditionPartForm(component);
		}
		if (key == EntityViewsRepository.Reference.class) {
			if (kind == EntityViewsRepository.SWT_KIND)
				return new ReferencePropertiesEditionPartImpl(component);
			if (kind == EntityViewsRepository.FORM_KIND)
				return new ReferencePropertiesEditionPartForm(component);
		}
@@ -18,22 +18,16 @@
 
 import org.obeonetwork.dsl.entity.parts.EntityViewsRepository;
 
-import org.obeonetwork.dsl.entity.parts.forms.AttributePropertiesEditionPartForm;
-import org.obeonetwork.dsl.entity.parts.forms.BlockPropertiesEditionPartForm;
 import org.obeonetwork.dsl.entity.parts.forms.EntityPropertiesEditionPartForm;
 import org.obeonetwork.dsl.entity.parts.forms.ExternalCriterionPropertiesEditionPartForm;
 import org.obeonetwork.dsl.entity.parts.forms.FinderPropertiesEditionPartForm;
 import org.obeonetwork.dsl.entity.parts.forms.InternalCriterionPropertiesEditionPartForm;
-import org.obeonetwork.dsl.entity.parts.forms.ReferencePropertiesEditionPartForm;
 import org.obeonetwork.dsl.entity.parts.forms.RootPropertiesEditionPartForm;
 
-import org.obeonetwork.dsl.entity.parts.impl.AttributePropertiesEditionPartImpl;
-import org.obeonetwork.dsl.entity.parts.impl.BlockPropertiesEditionPartImpl;
 import org.obeonetwork.dsl.entity.parts.impl.EntityPropertiesEditionPartImpl;
 import org.obeonetwork.dsl.entity.parts.impl.ExternalCriterionPropertiesEditionPartImpl;
 import org.obeonetwork.dsl.entity.parts.impl.FinderPropertiesEditionPartImpl;
 import org.obeonetwork.dsl.entity.parts.impl.InternalCriterionPropertiesEditionPartImpl;
-import org.obeonetwork.dsl.entity.parts.impl.ReferencePropertiesEditionPartImpl;
 import org.obeonetwork.dsl.entity.parts.impl.RootPropertiesEditionPartImpl;
 
 /**
@@ -63,30 +57,12 @@ public IPropertiesEditionPart getPropertiesEditionPart(Object key, int kind, IPr
 			if (kind == EntityViewsRepository.FORM_KIND)
 				return new RootPropertiesEditionPartForm(component);
 		}
-		if (key == EntityViewsRepository.Block.class) {
-			if (kind == EntityViewsRepository.SWT_KIND)
-				return new BlockPropertiesEditionPartImpl(component);
-			if (kind == EntityViewsRepository.FORM_KIND)
-				return new BlockPropertiesEditionPartForm(component);
-		}
 		if (key == EntityViewsRepository.Entity_.class) {
 			if (kind == EntityViewsRepository.SWT_KIND)
 				return new EntityPropertiesEditionPartImpl(component);
 			if (kind == EntityViewsRepository.FORM_KIND)
 				return new EntityPropertiesEditionPartForm(component);
 		}
-		if (key == EntityViewsRepository.Attribute.class) {
-			if (kind == EntityViewsRepository.SWT_KIND)
-				return new AttributePropertiesEditionPartImpl(component);
-			if (kind == EntityViewsRepository.FORM_KIND)
-				return new AttributePropertiesEditionPartForm(component);
-		}
-		if (key == EntityViewsRepository.Reference.class) {
-			if (kind == EntityViewsRepository.SWT_KIND)
-				return new ReferencePropertiesEditionPartImpl(component);
-			if (kind == EntityViewsRepository.FORM_KIND)
-				return new ReferencePropertiesEditionPartForm(component);
-		}
 		if (key == EntityViewsRepository.Finder.class) {
 			if (kind == EntityViewsRepository.SWT_KIND)
 				return new FinderPropertiesEditionPartImpl(component);
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fproviders%2FEntityPropertiesEditionPartProvider.java
6d0f7dddd0d63e8f22cc2e57f0aafc277fc74f12
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fproviders%2FentityMessages.properties
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fproviders%2FentityMessages.properties?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src-gen/org/obeonetwork/dsl/entity/providers/entityMessages.properties
BlockPropertiesEditionPart_PropertiesGroupLabel=Properties
AttributePropertiesEditionPart_PropertiesGroupLabel=Properties
ReferencePropertiesEditionPart_PropertiesGroupLabel=Properties
Block_ReadOnly=This property is read only
Block_Part_Title=Block
Attribute_ReadOnly=This property is read only
Attribute_Part_Title=Attribute
Reference_ReadOnly=This property is read only
Reference_Part_Title=Reference
BlockPropertiesEditionPart_NameLabel=Name : 
BlockPropertiesEditionPart_DescriptionLabel=Description : 
AttributePropertiesEditionPart_NameLabel=Name : 
AttributePropertiesEditionPart_TypeLabel=Type : 
AttributePropertiesEditionPart_MultiplicityLabel=Multiplicity : 
AttributePropertiesEditionPart_IsPrimaryKeyLabel=IsPrimaryKey
AttributePropertiesEditionPart_DescriptionLabel=Description : 
ReferencePropertiesEditionPart_NameLabel=Name : 
ReferencePropertiesEditionPart_TypeLabel=Type : 
ReferencePropertiesEditionPart_MultiplicityLabel=Multiplicity : 
ReferencePropertiesEditionPart_IsPrimaryKeyLabel=IsPrimaryKey
ReferencePropertiesEditionPart_IsCompositeLabel=IsComposite
ReferencePropertiesEditionPart_NavigableLabel=Navigable
ReferencePropertiesEditionPart_OppositeOfLabel=OppositeOf : 
ReferencePropertiesEditionPart_DescriptionLabel=Description : 
@@ -15,23 +15,14 @@
 
 # default values ...
 RootPropertiesEditionPart_PropertiesGroupLabel=Properties
-BlockPropertiesEditionPart_PropertiesGroupLabel=Properties
 EntityPropertiesEditionPart_PropertiesGroupLabel=Properties
-AttributePropertiesEditionPart_PropertiesGroupLabel=Properties
-ReferencePropertiesEditionPart_PropertiesGroupLabel=Properties
 FinderPropertiesEditionPart_PropertiesGroupLabel=Properties
 InternalCriterionPropertiesEditionPart_PropertiesGroupLabel=Properties
 ExternalCriterionPropertiesEditionPart_PropertiesGroupLabel=Properties
 Root_ReadOnly=This property is read only
 Root_Part_Title=Root
-Block_ReadOnly=This property is read only
-Block_Part_Title=Block
 Entity_ReadOnly=This property is read only
 Entity_Part_Title=Entity
-Attribute_ReadOnly=This property is read only
-Attribute_Part_Title=Attribute
-Reference_ReadOnly=This property is read only
-Reference_Part_Title=Reference
 Finder_ReadOnly=This property is read only
 Finder_Part_Title=Finder
 InternalCriterion_ReadOnly=This property is read only
@@ -40,28 +31,13 @@ ExternalCriterion_ReadOnly=This property is read only
 ExternalCriterion_Part_Title=ExternalCriterion
 RootPropertiesEditionPart_NameLabel=Name : 
 RootPropertiesEditionPart_DescriptionLabel=Description : 
-BlockPropertiesEditionPart_NameLabel=Name : 
-BlockPropertiesEditionPart_DescriptionLabel=Description : 
 EntityPropertiesEditionPart_NameLabel=Name : 
 EntityPropertiesEditionPart_SuperTypeLabel=SuperType : 
 EntityPropertiesEditionPart_EstimatedVolumetryLabel=EstimatedVolumetry : 
 EntityPropertiesEditionPart_EstimatedAccessLabel=EstimatedAccess : 
 EntityPropertiesEditionPart_HistorizedLabel=Historized
 EntityPropertiesEditionPart_InheritanceKindLabel=InheritanceKind : 
 EntityPropertiesEditionPart_DescriptionLabel=Description : 
-AttributePropertiesEditionPart_NameLabel=Name : 
-AttributePropertiesEditionPart_TypeLabel=Type : 
-AttributePropertiesEditionPart_MultiplicityLabel=Multiplicity : 
-AttributePropertiesEditionPart_IsPrimaryKeyLabel=IsPrimaryKey
-AttributePropertiesEditionPart_DescriptionLabel=Description : 
-ReferencePropertiesEditionPart_NameLabel=Name : 
-ReferencePropertiesEditionPart_TypeLabel=Type : 
-ReferencePropertiesEditionPart_MultiplicityLabel=Multiplicity : 
-ReferencePropertiesEditionPart_IsPrimaryKeyLabel=IsPrimaryKey
-ReferencePropertiesEditionPart_IsCompositeLabel=IsComposite
-ReferencePropertiesEditionPart_NavigableLabel=Navigable
-ReferencePropertiesEditionPart_OppositeOfLabel=OppositeOf : 
-ReferencePropertiesEditionPart_DescriptionLabel=Description : 
 FinderPropertiesEditionPart_CustomizedNameLabel=CustomizedName : 
 FinderPropertiesEditionPart_MultiplicityLabel=Multiplicity : 
 FinderPropertiesEditionPart_DescriptionLabel=Description : 
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fproviders%2FentityMessages.properties
e551490d3772a5bcf82734c6159364943ef6b8c0
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fproviders%2FentityMessages_fr.properties
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fproviders%2FentityMessages_fr.properties?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src-gen/org/obeonetwork/dsl/entity/providers/entityMessages_fr.properties
BlockPropertiesEditionPart_PropertiesGroupLabel=Properties
AttributePropertiesEditionPart_PropertiesGroupLabel=Properties
ReferencePropertiesEditionPart_PropertiesGroupLabel=Properties
Block_ReadOnly=Cette propri\u00E9t\u00E9 est en lecture seule
Block_Part_Title=Block
Attribute_ReadOnly=Cette propri\u00E9t\u00E9 est en lecture seule
Attribute_Part_Title=Attribute
Reference_ReadOnly=Cette propri\u00E9t\u00E9 est en lecture seule
Reference_Part_Title=Reference
BlockPropertiesEditionPart_NameLabel=Name : 
BlockPropertiesEditionPart_DescriptionLabel=Description : 
AttributePropertiesEditionPart_NameLabel=Name : 
AttributePropertiesEditionPart_TypeLabel=Type : 
AttributePropertiesEditionPart_MultiplicityLabel=Multiplicity : 
AttributePropertiesEditionPart_IsPrimaryKeyLabel=IsPrimaryKey
AttributePropertiesEditionPart_DescriptionLabel=Description : 
ReferencePropertiesEditionPart_NameLabel=Name : 
ReferencePropertiesEditionPart_TypeLabel=Type : 
ReferencePropertiesEditionPart_MultiplicityLabel=Multiplicity : 
ReferencePropertiesEditionPart_IsPrimaryKeyLabel=IsPrimaryKey
ReferencePropertiesEditionPart_IsCompositeLabel=IsComposite
ReferencePropertiesEditionPart_NavigableLabel=Navigable
ReferencePropertiesEditionPart_OppositeOfLabel=OppositeOf : 
ReferencePropertiesEditionPart_DescriptionLabel=Description : 
@@ -15,23 +15,14 @@
 
 # default values ...
 RootPropertiesEditionPart_PropertiesGroupLabel=Properties
-BlockPropertiesEditionPart_PropertiesGroupLabel=Properties
 EntityPropertiesEditionPart_PropertiesGroupLabel=Properties
-AttributePropertiesEditionPart_PropertiesGroupLabel=Properties
-ReferencePropertiesEditionPart_PropertiesGroupLabel=Properties
 FinderPropertiesEditionPart_PropertiesGroupLabel=Properties
 InternalCriterionPropertiesEditionPart_PropertiesGroupLabel=Properties
 ExternalCriterionPropertiesEditionPart_PropertiesGroupLabel=Properties
 Root_ReadOnly=Cette propri\u00E9t\u00E9 est en lecture seule
 Root_Part_Title=Root
-Block_ReadOnly=Cette propri\u00E9t\u00E9 est en lecture seule
-Block_Part_Title=Block
 Entity_ReadOnly=Cette propri\u00E9t\u00E9 est en lecture seule
 Entity_Part_Title=Entity
-Attribute_ReadOnly=Cette propri\u00E9t\u00E9 est en lecture seule
-Attribute_Part_Title=Attribute
-Reference_ReadOnly=Cette propri\u00E9t\u00E9 est en lecture seule
-Reference_Part_Title=Reference
 Finder_ReadOnly=Cette propri\u00E9t\u00E9 est en lecture seule
 Finder_Part_Title=Finder
 InternalCriterion_ReadOnly=Cette propri\u00E9t\u00E9 est en lecture seule
@@ -40,28 +31,13 @@ ExternalCriterion_ReadOnly=Cette propri\u00E9t\u00E9 est en lecture seule
 ExternalCriterion_Part_Title=ExternalCriterion
 RootPropertiesEditionPart_NameLabel=Name : 
 RootPropertiesEditionPart_DescriptionLabel=Description : 
-BlockPropertiesEditionPart_NameLabel=Name : 
-BlockPropertiesEditionPart_DescriptionLabel=Description : 
 EntityPropertiesEditionPart_NameLabel=Name : 
 EntityPropertiesEditionPart_SuperTypeLabel=SuperType : 
 EntityPropertiesEditionPart_EstimatedVolumetryLabel=EstimatedVolumetry : 
 EntityPropertiesEditionPart_EstimatedAccessLabel=EstimatedAccess : 
 EntityPropertiesEditionPart_HistorizedLabel=Historized
 EntityPropertiesEditionPart_InheritanceKindLabel=InheritanceKind : 
 EntityPropertiesEditionPart_DescriptionLabel=Description : 
-AttributePropertiesEditionPart_NameLabel=Name : 
-AttributePropertiesEditionPart_TypeLabel=Type : 
-AttributePropertiesEditionPart_MultiplicityLabel=Multiplicity : 
-AttributePropertiesEditionPart_IsPrimaryKeyLabel=IsPrimaryKey
-AttributePropertiesEditionPart_DescriptionLabel=Description : 
-ReferencePropertiesEditionPart_NameLabel=Name : 
-ReferencePropertiesEditionPart_TypeLabel=Type : 
-ReferencePropertiesEditionPart_MultiplicityLabel=Multiplicity : 
-ReferencePropertiesEditionPart_IsPrimaryKeyLabel=IsPrimaryKey
-ReferencePropertiesEditionPart_IsCompositeLabel=IsComposite
-ReferencePropertiesEditionPart_NavigableLabel=Navigable
-ReferencePropertiesEditionPart_OppositeOfLabel=OppositeOf : 
-ReferencePropertiesEditionPart_DescriptionLabel=Description : 
 FinderPropertiesEditionPart_CustomizedNameLabel=CustomizedName : 
 FinderPropertiesEditionPart_MultiplicityLabel=Multiplicity : 
 FinderPropertiesEditionPart_DescriptionLabel=Description : 
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fproviders%2FentityMessages_fr.properties
309a89bb42c5deb41a6a477e221bedff09378680
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fprovider%2FEntityItemProvider.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fprovider%2FEntityItemProvider.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src/org/obeonetwork/dsl/entity/provider/EntityItemProvider.java
			addSupertypePropertyDescriptor(object);
	/**
	 * This adds a property descriptor for the Supertype feature.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected void addSupertypePropertyDescriptor(Object object) {
		itemPropertyDescriptors.add
			(createItemPropertyDescriptor
				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
				 getResourceLocator(),
				 getString("_UI_Entity_supertype_feature"),
				 getString("_UI_PropertyDescriptor_description", "_UI_Entity_supertype_feature", "_UI_Entity_type"),
				 EntityPackage.Literals.ENTITY__SUPERTYPE,
				 true,
				 false,
				 true,
				 null,
				 null,
				 null));
	}

			childrenFeatures.add(EntityPackage.Literals.ENTITY__OWNED_ATTRIBUTES);
			childrenFeatures.add(EntityPackage.Literals.ENTITY__OWNED_REFERENCES);
			case EntityPackage.ENTITY__OWNED_ATTRIBUTES:
			case EntityPackage.ENTITY__OWNED_REFERENCES:
		newChildDescriptors.add
			(createChildParameter
				(EntityPackage.Literals.ENTITY__OWNED_ATTRIBUTES,
				 EntityFactory.eINSTANCE.createAttribute()));

		newChildDescriptors.add
			(createChildParameter
				(EntityPackage.Literals.ENTITY__OWNED_REFERENCES,
				 EntityFactory.eINSTANCE.createReference()));

Object object
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src/org/obeonetwork/dsl/entity/provider/EntityItemProvider.java
itemPropertyDescriptors.add
			(createItemPropertyDescriptor
				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
				 getResourceLocator(),
				 getString("_UI_Entity_supertype_feature"),
				 getString("_UI_PropertyDescriptor_description", "_UI_Entity_supertype_feature", "_UI_Entity_type"),
				 EntityPackage.Literals.ENTITY__SUPERTYPE,
				 true,
				 false,
				 true,
				 null,
				 null,
				 null));
void addSupertypePropertyDescriptor(Object object)
@@ -76,7 +76,6 @@ public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
 		if (itemPropertyDescriptors == null) {
 			super.getPropertyDescriptors(object);
 
-			addSupertypePropertyDescriptor(object);
 			addEstimatedVolumetryPropertyDescriptor(object);
 			addEstimatedAccessPropertyDescriptor(object);
 			addHistorizedPropertyDescriptor(object);
@@ -85,28 +84,6 @@ public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
 		return itemPropertyDescriptors;
 	}
 
-	/**
-	 * This adds a property descriptor for the Supertype feature.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected void addSupertypePropertyDescriptor(Object object) {
-		itemPropertyDescriptors.add
-			(createItemPropertyDescriptor
-				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
-				 getResourceLocator(),
-				 getString("_UI_Entity_supertype_feature"),
-				 getString("_UI_PropertyDescriptor_description", "_UI_Entity_supertype_feature", "_UI_Entity_type"),
-				 EntityPackage.Literals.ENTITY__SUPERTYPE,
-				 true,
-				 false,
-				 true,
-				 null,
-				 null,
-				 null));
-	}
-
 	/**
 	 * This adds a property descriptor for the Estimated Volumetry feature.
 	 * <!-- begin-user-doc -->
@@ -207,8 +184,6 @@ protected void addInheritanceKindPropertyDescriptor(Object object) {
 	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
 		if (childrenFeatures == null) {
 			super.getChildrenFeatures(object);
-			childrenFeatures.add(EntityPackage.Literals.ENTITY__OWNED_ATTRIBUTES);
-			childrenFeatures.add(EntityPackage.Literals.ENTITY__OWNED_REFERENCES);
 			childrenFeatures.add(EntityPackage.Literals.ENTITY__OWNED_FINDERS);
 		}
 		return childrenFeatures;
@@ -280,8 +255,6 @@ public void notifyChanged(Notification notification) {
 			case EntityPackage.ENTITY__INHERITANCE_KIND:
 				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
 				return;
-			case EntityPackage.ENTITY__OWNED_ATTRIBUTES:
-			case EntityPackage.ENTITY__OWNED_REFERENCES:
 			case EntityPackage.ENTITY__OWNED_FINDERS:
 				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
 				return;
@@ -300,16 +273,6 @@ public void notifyChanged(Notification notification) {
 	protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors, Object object) {
 		super.collectNewChildDescriptors(newChildDescriptors, object);
 
-		newChildDescriptors.add
-			(createChildParameter
-				(EntityPackage.Literals.ENTITY__OWNED_ATTRIBUTES,
-				 EntityFactory.eINSTANCE.createAttribute()));
-
-		newChildDescriptors.add
-			(createChildParameter
-				(EntityPackage.Literals.ENTITY__OWNED_REFERENCES,
-				 EntityFactory.eINSTANCE.createReference()));
-
 		newChildDescriptors.add
 			(createChildParameter
 				(EntityPackage.Literals.ENTITY__OWNED_FINDERS,
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fprovider%2FEntityItemProvider.java
f30aa0a7834b87444800447803f17309525950c7
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fprovider%2FEntityItemProviderAdapterFactory.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fprovider%2FEntityItemProviderAdapterFactory.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src/org/obeonetwork/dsl/entity/provider/EntityItemProviderAdapterFactory.java
	/**
	 * This keeps track of the one adapter used for all {@link org.obeonetwork.dsl.entity.Block} instances.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected BlockItemProvider blockItemProvider;

	/**
	 * This creates an adapter for a {@link org.obeonetwork.dsl.entity.Block}.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	public Adapter createBlockAdapter() {
		if (blockItemProvider == null) {
			blockItemProvider = new BlockItemProvider(this);
		}

		return blockItemProvider;
	}

	/**
	 * This keeps track of the one adapter used for all {@link org.obeonetwork.dsl.entity.Attribute} instances.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected AttributeItemProvider attributeItemProvider;

	/**
	 * This creates an adapter for a {@link org.obeonetwork.dsl.entity.Attribute}.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	public Adapter createAttributeAdapter() {
		if (attributeItemProvider == null) {
			attributeItemProvider = new AttributeItemProvider(this);
		}

		return attributeItemProvider;
	}

	/**
	 * This keeps track of the one adapter used for all {@link org.obeonetwork.dsl.entity.Reference} instances.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected ReferenceItemProvider referenceItemProvider;

	/**
	 * This creates an adapter for a {@link org.obeonetwork.dsl.entity.Reference}.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	public Adapter createReferenceAdapter() {
		if (referenceItemProvider == null) {
			referenceItemProvider = new ReferenceItemProvider(this);
		}

		return referenceItemProvider;
	}

		if (blockItemProvider != null) blockItemProvider.dispose();
		if (attributeItemProvider != null) attributeItemProvider.dispose();
		if (referenceItemProvider != null) referenceItemProvider.dispose();
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src/org/obeonetwork/dsl/entity/provider/EntityItemProviderAdapterFactory.java
if (blockItemProvider == null) {
			blockItemProvider = new BlockItemProvider(this);
Adapter createBlockAdapter()
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src/org/obeonetwork/dsl/entity/provider/EntityItemProviderAdapterFactory.java
if (attributeItemProvider == null) {
			attributeItemProvider = new AttributeItemProvider(this);
Adapter createAttributeAdapter()
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src/org/obeonetwork/dsl/entity/provider/EntityItemProviderAdapterFactory.java
if (referenceItemProvider == null) {
			referenceItemProvider = new ReferenceItemProvider(this);
Adapter createReferenceAdapter()
@@ -109,29 +109,6 @@ public Adapter createRootAdapter() {
 		return rootItemProvider;
 	}
 
-	/**
-	 * This keeps track of the one adapter used for all {@link org.obeonetwork.dsl.entity.Block} instances.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected BlockItemProvider blockItemProvider;
-
-	/**
-	 * This creates an adapter for a {@link org.obeonetwork.dsl.entity.Block}.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public Adapter createBlockAdapter() {
-		if (blockItemProvider == null) {
-			blockItemProvider = new BlockItemProvider(this);
-		}
-
-		return blockItemProvider;
-	}
-
 	/**
 	 * This keeps track of the one adapter used for all {@link org.obeonetwork.dsl.entity.Entity} instances.
 	 * <!-- begin-user-doc -->
@@ -155,52 +132,6 @@ public Adapter createEntityAdapter() {
 		return entityItemProvider;
 	}
 
-	/**
-	 * This keeps track of the one adapter used for all {@link org.obeonetwork.dsl.entity.Attribute} instances.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected AttributeItemProvider attributeItemProvider;
-
-	/**
-	 * This creates an adapter for a {@link org.obeonetwork.dsl.entity.Attribute}.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public Adapter createAttributeAdapter() {
-		if (attributeItemProvider == null) {
-			attributeItemProvider = new AttributeItemProvider(this);
-		}
-
-		return attributeItemProvider;
-	}
-
-	/**
-	 * This keeps track of the one adapter used for all {@link org.obeonetwork.dsl.entity.Reference} instances.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected ReferenceItemProvider referenceItemProvider;
-
-	/**
-	 * This creates an adapter for a {@link org.obeonetwork.dsl.entity.Reference}.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public Adapter createReferenceAdapter() {
-		if (referenceItemProvider == null) {
-			referenceItemProvider = new ReferenceItemProvider(this);
-		}
-
-		return referenceItemProvider;
-	}
-
 	/**
 	 * This keeps track of the one adapter used for all {@link org.obeonetwork.dsl.entity.Finder} instances.
 	 * <!-- begin-user-doc -->
@@ -370,10 +301,7 @@ public void fireNotifyChanged(Notification notification) {
 	 */
 	public void dispose() {
 		if (rootItemProvider != null) rootItemProvider.dispose();
-		if (blockItemProvider != null) blockItemProvider.dispose();
 		if (entityItemProvider != null) entityItemProvider.dispose();
-		if (attributeItemProvider != null) attributeItemProvider.dispose();
-		if (referenceItemProvider != null) referenceItemProvider.dispose();
 		if (finderItemProvider != null) finderItemProvider.dispose();
 		if (internalCriterionItemProvider != null) internalCriterionItemProvider.dispose();
 		if (externalCriterionItemProvider != null) externalCriterionItemProvider.dispose();
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fprovider%2FEntityItemProviderAdapterFactory.java
badda280b3ed642ab47843aa7b92a10dfdfddf53
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fprovider%2FRootItemProvider.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fprovider%2FRootItemProvider.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src/org/obeonetwork/dsl/entity/provider/RootItemProvider.java
import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
import org.eclipse.emf.edit.provider.ItemPropertyDescriptor;
import org.obeonetwork.dsl.environment.EnvironmentFactory;
import org.obeonetwork.dsl.environment.provider.TypesDefinitionItemProvider;
	extends TypesDefinitionItemProvider
			addNamePropertyDescriptor(object);
	/**
	 * This adds a property descriptor for the Name feature.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected void addNamePropertyDescriptor(Object object) {
		itemPropertyDescriptors.add
			(createItemPropertyDescriptor
				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
				 getResourceLocator(),
				 getString("_UI_Root_name_feature"),
				 getString("_UI_PropertyDescriptor_description", "_UI_Root_name_feature", "_UI_Root_type"),
				 EntityPackage.Literals.ROOT__NAME,
				 true,
				 false,
				 false,
				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
				 null,
				 null));
	}

			childrenFeatures.add(EntityPackage.Literals.ROOT__NAMESPACES);
		String label = ((Root)object).getName();
		if (label != null) {
			return label;
		}
		return "Entities";
			case EntityPackage.ROOT__NAME:
				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
				return;
			case EntityPackage.ROOT__NAMESPACES:
				(EnvironmentPackage.Literals.TYPES_DEFINITION__TYPES,
				 EntityFactory.eINSTANCE.createEntity()));
				(EntityPackage.Literals.ROOT__NAMESPACES,
				 EnvironmentFactory.eINSTANCE.createNamespace()));
Object object
models/entity/plugins/org.obeonetwork.dsl.entity.edit/src/org/obeonetwork/dsl/entity/provider/RootItemProvider.java
itemPropertyDescriptors.add
			(createItemPropertyDescriptor
				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
				 getResourceLocator(),
				 getString("_UI_Root_name_feature"),
				 getString("_UI_PropertyDescriptor_description", "_UI_Root_name_feature", "_UI_Root_type"),
				 EntityPackage.Literals.ROOT__NAME,
				 true,
				 false,
				 false,
				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
				 null,
				 null));
void addNamePropertyDescriptor(Object object)
	extends NamespaceItemProvider
			childrenFeatures.add(EntityPackage.Literals.ROOT__BLOCKS);
		return "Blocks";
			case EntityPackage.ROOT__BLOCKS:
				(EnvironmentPackage.Literals.NAMESPACE__OWNED_NAMESPACES,
				 EntityFactory.eINSTANCE.createRoot()));
				(EntityPackage.Literals.ROOT__BLOCKS,
				 EntityFactory.eINSTANCE.createBlock()));
@@ -20,18 +20,22 @@
 import org.eclipse.emf.common.notify.Notification;
 import org.eclipse.emf.common.util.ResourceLocator;
 import org.eclipse.emf.ecore.EStructuralFeature;
+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.ViewerNotification;
 import org.obeonetwork.dsl.entity.EntityFactory;
 import org.obeonetwork.dsl.entity.EntityPackage;
 import org.obeonetwork.dsl.entity.Root;
+import org.obeonetwork.dsl.environment.EnvironmentFactory;
 import org.obeonetwork.dsl.environment.EnvironmentPackage;
 import org.obeonetwork.dsl.environment.provider.NamespaceItemProvider;
+import org.obeonetwork.dsl.environment.provider.TypesDefinitionItemProvider;
 
 /**
  * This is the item provider adapter for a {@link org.obeonetwork.dsl.entity.Root} object.
@@ -40,7 +44,7 @@
  * @generated
  */
 public class RootItemProvider
-	extends NamespaceItemProvider
+	extends TypesDefinitionItemProvider
 	implements	
 		IEditingDomainItemProvider,	
 		IStructuredItemContentProvider,	
@@ -75,10 +79,33 @@ public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
 		if (itemPropertyDescriptors == null) {
 			super.getPropertyDescriptors(object);
 
+			addNamePropertyDescriptor(object);
 		}
 		return itemPropertyDescriptors;
 	}
 
+	/**
+	 * This adds a property descriptor for the Name feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addNamePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add
+			(createItemPropertyDescriptor
+				(((ComposeableAdapterFactory)adapterFactory).getRootAdapterFactory(),
+				 getResourceLocator(),
+				 getString("_UI_Root_name_feature"),
+				 getString("_UI_PropertyDescriptor_description", "_UI_Root_name_feature", "_UI_Root_type"),
+				 EntityPackage.Literals.ROOT__NAME,
+				 true,
+				 false,
+				 false,
+				 ItemPropertyDescriptor.GENERIC_VALUE_IMAGE,
+				 null,
+				 null));
+	}
+
 	/**
 	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
 	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
@@ -91,7 +118,7 @@ public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
 	public Collection<? extends EStructuralFeature> getChildrenFeatures(Object object) {
 		if (childrenFeatures == null) {
 			super.getChildrenFeatures(object);
-			childrenFeatures.add(EntityPackage.Literals.ROOT__BLOCKS);
+			childrenFeatures.add(EntityPackage.Literals.ROOT__NAMESPACES);
 		}
 		return childrenFeatures;
 	}
@@ -138,7 +165,11 @@ protected boolean shouldComposeCreationImage() {
 	 */
 	@Override
 	public String getText(Object object) {
-		return "Blocks";
+		String label = ((Root)object).getName();
+		if (label != null) {
+			return label;
+		}
+		return "Entities";
 	}
 
 	/**
@@ -153,7 +184,10 @@ public void notifyChanged(Notification notification) {
 		updateChildren(notification);
 
 		switch (notification.getFeatureID(Root.class)) {
-			case EntityPackage.ROOT__BLOCKS:
+			case EntityPackage.ROOT__NAME:
+				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), false, true));
+				return;
+			case EntityPackage.ROOT__NAMESPACES:
 				fireNotifyChanged(new ViewerNotification(notification, notification.getNotifier(), true, false));
 				return;
 		}
@@ -173,13 +207,13 @@ protected void collectNewChildDescriptors(Collection<Object> newChildDescriptors
 
 		newChildDescriptors.add
 			(createChildParameter
-				(EnvironmentPackage.Literals.NAMESPACE__OWNED_NAMESPACES,
-				 EntityFactory.eINSTANCE.createRoot()));
+				(EnvironmentPackage.Literals.TYPES_DEFINITION__TYPES,
+				 EntityFactory.eINSTANCE.createEntity()));
 
 		newChildDescriptors.add
 			(createChildParameter
-				(EntityPackage.Literals.ROOT__BLOCKS,
-				 EntityFactory.eINSTANCE.createBlock()));
+				(EntityPackage.Literals.ROOT__NAMESPACES,
+				 EnvironmentFactory.eINSTANCE.createNamespace()));
 	}
 
 	/**
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fprovider%2FRootItemProvider.java
3fecd259c422a24d95ee0d0169890c68118b678f
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.editor%2FMETA-INF%2FMANIFEST.MF
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.editor%2FMETA-INF%2FMANIFEST.MF?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.editor/META-INF/MANIFEST.MF
Bundle-SymbolicName: org.obeonetwork.dsl.entity.editor;singleton:=true
Export-Package: org.obeonetwork.dsl.entity.extensionUtilities.presentation,
 org.obeonetwork.dsl.entity.presentation
 org.obeonetwork.dsl.environment.edit;visibility:=reexport,
Bundle-SymbolicName: org.obeonetwork.dsl.entity.editor; singleton:=true
Export-Package: org.obeonetwork.dsl.entity.presentation
@@ -1,19 +1,21 @@
 Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
-Bundle-SymbolicName: org.obeonetwork.dsl.entity.editor; singleton:=true
+Bundle-SymbolicName: org.obeonetwork.dsl.entity.editor;singleton:=true
 Bundle-Version: 2.4.0.qualifier
 Bundle-ClassPath: .
 Bundle-Activator: org.obeonetwork.dsl.entity.presentation.EntityEditorPlugin$Implementation
 Bundle-Vendor: %providerName
 Bundle-Localization: plugin
-Export-Package: org.obeonetwork.dsl.entity.presentation
+Export-Package: org.obeonetwork.dsl.entity.extensionUtilities.presentation,
+ org.obeonetwork.dsl.entity.presentation
 Require-Bundle: org.eclipse.core.runtime,
  org.eclipse.core.resources;visibility:=reexport,
  org.obeonetwork.dsl.entity.edit;visibility:=reexport,
  org.eclipse.emf.ecore.xmi;visibility:=reexport,
  org.eclipse.emf.edit.ui;visibility:=reexport,
  org.eclipse.ui.ide;visibility:=reexport,
+ org.obeonetwork.dsl.environment.edit;visibility:=reexport,
  org.obeonetwork.dsl.environment.editor,
  org.eclipse.emf.eef.runtime
 Bundle-ActivationPolicy: lazy
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.editor%2FMETA-INF%2FMANIFEST.MF
226851ae9f7bd49dc7760eeee731203ed48c8415
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.editor%2Fplugin.xml
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.editor%2Fplugin.xml?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.editor/plugin.xml
   <extension point="org.eclipse.ui.newWizards">
      <!-- @generated entity -->
      <category
            id="org.eclipse.emf.ecore.Wizard.category.ID"
            name="%_UI_Wizard_category"/>
      <wizard
            id="org.obeonetwork.dsl.entity.presentation.EntityModelWizardID"
            name="%_UI_EntityModelWizard_label"
            class="org.obeonetwork.dsl.entity.presentation.EntityModelWizard"
            category="org.eclipse.emf.ecore.Wizard.category.ID"
            icon="icons/full/obj16/EntityModelFile.gif">
         <description>%_UI_EntityModelWizard_description</description>
         <selection class="org.eclipse.core.resources.IResource"/>
      </wizard>
   </extension>

   <extension point="org.eclipse.ui.editors">
      <!-- @generated entity -->
      <editor
            id="org.obeonetwork.dsl.entity.extensionUtilities.presentation.ExtensionUtilitiesEditorID"
            name="%_UI_ExtensionUtilitiesEditor_label"
            icon="icons/full/obj16/ExtensionUtilitiesModelFile.gif"
            extensions="extensionutilities"
            class="org.obeonetwork.dsl.entity.extensionUtilities.presentation.ExtensionUtilitiesEditor"
            contributorClass="org.obeonetwork.dsl.entity.extensionUtilities.presentation.ExtensionUtilitiesActionBarContributor">
      </editor>
   </extension>
   <extension point="org.eclipse.ui.editors">
      <!-- @generated entity -->
      <editor
            id="org.obeonetwork.dsl.entity.presentation.EntityEditorID"
            name="%_UI_EntityEditor_label"
            icon="icons/full/obj16/EntityModelFile.gif"
            extensions="entity"
            class="org.obeonetwork.dsl.entity.presentation.EntityEditor"
            contributorClass="org.obeonetwork.dsl.entity.presentation.EntityActionBarContributor">
      </editor>
   </extension>

   <extension point="org.eclipse.ui.newWizards">
      <!-- @generated entity -->
      <category
            id="org.eclipse.emf.ecore.Wizard.category.ID"
            name="%_UI_Wizard_category"/>
      <wizard
            id="org.obeonetwork.dsl.entity.extensionUtilities.presentation.ExtensionUtilitiesModelWizardID"
            name="%_UI_ExtensionUtilitiesModelWizard_label"
            class="org.obeonetwork.dsl.entity.extensionUtilities.presentation.ExtensionUtilitiesModelWizard"
            category="org.eclipse.emf.ecore.Wizard.category.ID"
            icon="icons/full/obj16/ExtensionUtilitiesModelFile.gif">
         <description>%_UI_ExtensionUtilitiesModelWizard_description</description>
         <selection class="org.eclipse.core.resources.IResource"/>
      </wizard>
   </extension>

null</plugin>
</plugin>
@@ -40,4 +40,59 @@
         contributorClass="org.obeonetwork.dsl.entity.presentation.EntityActionBarContributor" >
     </editor>
   </extension>
-</plugin>
+   <extension point="org.eclipse.ui.newWizards">
+      <!-- @generated entity -->
+      <category
+            id="org.eclipse.emf.ecore.Wizard.category.ID"
+            name="%_UI_Wizard_category"/>
+      <wizard
+            id="org.obeonetwork.dsl.entity.presentation.EntityModelWizardID"
+            name="%_UI_EntityModelWizard_label"
+            class="org.obeonetwork.dsl.entity.presentation.EntityModelWizard"
+            category="org.eclipse.emf.ecore.Wizard.category.ID"
+            icon="icons/full/obj16/EntityModelFile.gif">
+         <description>%_UI_EntityModelWizard_description</description>
+         <selection class="org.eclipse.core.resources.IResource"/>
+      </wizard>
+   </extension>
+
+   <extension point="org.eclipse.ui.editors">
+      <!-- @generated entity -->
+      <editor
+            id="org.obeonetwork.dsl.entity.extensionUtilities.presentation.ExtensionUtilitiesEditorID"
+            name="%_UI_ExtensionUtilitiesEditor_label"
+            icon="icons/full/obj16/ExtensionUtilitiesModelFile.gif"
+            extensions="extensionutilities"
+            class="org.obeonetwork.dsl.entity.extensionUtilities.presentation.ExtensionUtilitiesEditor"
+            contributorClass="org.obeonetwork.dsl.entity.extensionUtilities.presentation.ExtensionUtilitiesActionBarContributor">
+      </editor>
+   </extension>
+   <extension point="org.eclipse.ui.editors">
+      <!-- @generated entity -->
+      <editor
+            id="org.obeonetwork.dsl.entity.presentation.EntityEditorID"
+            name="%_UI_EntityEditor_label"
+            icon="icons/full/obj16/EntityModelFile.gif"
+            extensions="entity"
+            class="org.obeonetwork.dsl.entity.presentation.EntityEditor"
+            contributorClass="org.obeonetwork.dsl.entity.presentation.EntityActionBarContributor">
+      </editor>
+   </extension>
+
+   <extension point="org.eclipse.ui.newWizards">
+      <!-- @generated entity -->
+      <category
+            id="org.eclipse.emf.ecore.Wizard.category.ID"
+            name="%_UI_Wizard_category"/>
+      <wizard
+            id="org.obeonetwork.dsl.entity.extensionUtilities.presentation.ExtensionUtilitiesModelWizardID"
+            name="%_UI_ExtensionUtilitiesModelWizard_label"
+            class="org.obeonetwork.dsl.entity.extensionUtilities.presentation.ExtensionUtilitiesModelWizard"
+            category="org.eclipse.emf.ecore.Wizard.category.ID"
+            icon="icons/full/obj16/ExtensionUtilitiesModelFile.gif">
+         <description>%_UI_ExtensionUtilitiesModelWizard_description</description>
+         <selection class="org.eclipse.core.resources.IResource"/>
+      </wizard>
+   </extension>
+
+null</plugin>
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.editor%2Fplugin.xml
cbf5ef13dc1987b81aea2befdee5b03786a9cf77
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.editor%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2Fpresentation%2FExtensionUtilitiesEditor.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.editor%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2Fpresentation%2FExtensionUtilitiesEditor.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.editor/src/org/obeonetwork/dsl/entity/extensionUtilities/presentation/ExtensionUtilitiesEditor.java
	protected List<PropertySheetPage> propertySheetPages = new ArrayList<PropertySheetPage>();
					if (propertySheetPages.contains(((PropertySheet)p).getCurrentPage())) {
				resourceToDiagnosticMap.remove(target);
				if (updateProblemIndication) {
					getSite().getShell().getDisplay().asyncExec
						(new Runnable() {
							 public void run() {
								 updateProblemIndication();
							 }
						 });
				}
								return false;
								  for (Iterator<PropertySheetPage> i = propertySheetPages.iterator(); i.hasNext(); ) {
									  PropertySheetPage propertySheetPage = i.next();
									  if (propertySheetPage.getControl().isDisposed()) {
										  i.remove();
									  }
									  else {
										  propertySheetPage.refresh();
									  }
		PropertySheetPage propertySheetPage =
			new ExtendedPropertySheetPage(editingDomain) {
				@Override
				public void setSelectionToViewer(List<?> selection) {
					ExtensionUtilitiesEditor.this.setSelectionToViewer(selection);
					ExtensionUtilitiesEditor.this.setFocus();
				}
				@Override
				public void setActionBars(IActionBars actionBars) {
					super.setActionBars(actionBars);
					getActionBarContributor().shareGlobalActions(this, actionBars);
				}
			};
		propertySheetPage.setPropertySourceProvider(new AdapterFactoryContentProvider(adapterFactory));
		propertySheetPages.add(propertySheetPage);
	 * The implementation uses the URI converter from the editor's resource set to try to open an input stream.
		List<?> targetObjects = markerHelper.getTargetObjects(editingDomain, marker);
		if (!targetObjects.isEmpty()) {
			setSelectionToViewer(targetObjects);
		for (PropertySheetPage propertySheetPage : propertySheetPages) {
models/entity/plugins/org.obeonetwork.dsl.entity.editor/src/org/obeonetwork/dsl/entity/extensionUtilities/presentation/ExtensionUtilitiesEditor.java
public void run() {
								 updateProblemIndication();
new Runnable()
editingDomain
models/entity/plugins/org.obeonetwork.dsl.entity.editor/src/org/obeonetwork/dsl/entity/extensionUtilities/presentation/ExtensionUtilitiesEditor.java
@Override
				public void setSelectionToViewer(List<?> selection) {
					ExtensionUtilitiesEditor.this.setSelectionToViewer(selection);
					ExtensionUtilitiesEditor.this.setFocus();
new ExtendedPropertySheetPage(editingDomain)
IActionBars actionBars
models/entity/plugins/org.obeonetwork.dsl.entity.editor/src/org/obeonetwork/dsl/entity/extensionUtilities/presentation/ExtensionUtilitiesEditor.java
super.setActionBars(actionBars);
					getActionBarContributor().shareGlobalActions(this, actionBars);
void setActionBars(IActionBars actionBars)
	protected PropertySheetPage propertySheetPage;
					if (((PropertySheet)p).getCurrentPage() == propertySheetPage) {
								  if (propertySheetPage != null && !propertySheetPage.getControl().isDisposed()) {
									  propertySheetPage.refresh();
		if (propertySheetPage == null) {
			propertySheetPage =
				new ExtendedPropertySheetPage(editingDomain) {
					@Override
					public void setSelectionToViewer(List<?> selection) {
						ExtensionUtilitiesEditor.this.setSelectionToViewer(selection);
						ExtensionUtilitiesEditor.this.setFocus();
					}
					@Override
					public void setActionBars(IActionBars actionBars) {
						super.setActionBars(actionBars);
						getActionBarContributor().shareGlobalActions(this, actionBars);
					}
				};
			propertySheetPage.setPropertySourceProvider(new AdapterFactoryContentProvider(adapterFactory));
		}
	 * The implementation uses the URI converter from the editor's resource set to try to open an input stream. 
		try {
			if (marker.getType().equals(EValidator.MARKER)) {
				String uriAttribute = marker.getAttribute(EValidator.URI_ATTRIBUTE, null);
				if (uriAttribute != null) {
					URI uri = URI.createURI(uriAttribute);
					EObject eObject = editingDomain.getResourceSet().getEObject(uri, true);
					if (eObject != null) {
					  setSelectionToViewer(Collections.singleton(editingDomain.getWrapper(eObject)));
					}
				}
			}
		}
		catch (CoreException exception) {
			EntityEditorPlugin.INSTANCE.log(exception);
		if (propertySheetPage != null) {
editingDomain
models/entity/plugins/org.obeonetwork.dsl.entity.editor/src/org/obeonetwork/dsl/entity/extensionUtilities/presentation/ExtensionUtilitiesEditor.java
@Override
					public void setSelectionToViewer(List<?> selection) {
						ExtensionUtilitiesEditor.this.setSelectionToViewer(selection);
						ExtensionUtilitiesEditor.this.setFocus();
new ExtendedPropertySheetPage(editingDomain)
IActionBars actionBars
models/entity/plugins/org.obeonetwork.dsl.entity.editor/src/org/obeonetwork/dsl/entity/extensionUtilities/presentation/ExtensionUtilitiesEditor.java
super.setActionBars(actionBars);
						getActionBarContributor().shareGlobalActions(this, actionBars);
void setActionBars(IActionBars actionBars)
@@ -195,7 +195,7 @@ public class ExtensionUtilitiesEditor
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	protected PropertySheetPage propertySheetPage;
+	protected List<PropertySheetPage> propertySheetPages = new ArrayList<PropertySheetPage>();
 
 	/**
 	 * This is the viewer that shadows the selection in the content outline.
@@ -314,7 +314,7 @@ public void partActivated(IWorkbenchPart p) {
 					}
 				}
 				else if (p instanceof PropertySheet) {
-					if (((PropertySheet)p).getCurrentPage() == propertySheetPage) {
+					if (propertySheetPages.contains(((PropertySheet)p).getCurrentPage())) {
 						getActionBarContributor().setActiveEditor(ExtensionUtilitiesEditor.this);
 						handleActivate();
 					}
@@ -426,6 +426,15 @@ protected void setTarget(Resource target) {
 			@Override
 			protected void unsetTarget(Resource target) {
 				basicUnsetTarget(target);
+				resourceToDiagnosticMap.remove(target);
+				if (updateProblemIndication) {
+					getSite().getShell().getDisplay().asyncExec
+						(new Runnable() {
+							 public void run() {
+								 updateProblemIndication();
+							 }
+						 });
+				}
 			}
 		};
 
@@ -459,6 +468,7 @@ else if (!savedResources.remove(resource)) {
 										}
 									}
 								}
+								return false;
 							}
 
 							return true;
@@ -697,8 +707,14 @@ public void run() {
 								  if (mostRecentCommand != null) {
 									  setSelectionToViewer(mostRecentCommand.getAffectedObjects());
 								  }
-								  if (propertySheetPage != null && !propertySheetPage.getControl().isDisposed()) {
-									  propertySheetPage.refresh();
+								  for (Iterator<PropertySheetPage> i = propertySheetPages.iterator(); i.hasNext(); ) {
+									  PropertySheetPage propertySheetPage = i.next();
+									  if (propertySheetPage.getControl().isDisposed()) {
+										  i.remove();
+									  }
+									  else {
+										  propertySheetPage.refresh();
+									  }
 								  }
 							  }
 						  });
@@ -1333,23 +1349,22 @@ public void selectionChanged(SelectionChangedEvent event) {
 	 * @generated
 	 */
 	public IPropertySheetPage getPropertySheetPage() {
-		if (propertySheetPage == null) {
-			propertySheetPage =
-				new ExtendedPropertySheetPage(editingDomain) {
-					@Override
-					public void setSelectionToViewer(List<?> selection) {
-						ExtensionUtilitiesEditor.this.setSelectionToViewer(selection);
-						ExtensionUtilitiesEditor.this.setFocus();
-					}
+		PropertySheetPage propertySheetPage =
+			new ExtendedPropertySheetPage(editingDomain) {
+				@Override
+				public void setSelectionToViewer(List<?> selection) {
+					ExtensionUtilitiesEditor.this.setSelectionToViewer(selection);
+					ExtensionUtilitiesEditor.this.setFocus();
+				}
 
-					@Override
-					public void setActionBars(IActionBars actionBars) {
-						super.setActionBars(actionBars);
-						getActionBarContributor().shareGlobalActions(this, actionBars);
-					}
-				};
-			propertySheetPage.setPropertySourceProvider(new AdapterFactoryContentProvider(adapterFactory));
-		}
+				@Override
+				public void setActionBars(IActionBars actionBars) {
+					super.setActionBars(actionBars);
+					getActionBarContributor().shareGlobalActions(this, actionBars);
+				}
+			};
+		propertySheetPage.setPropertySourceProvider(new AdapterFactoryContentProvider(adapterFactory));
+		propertySheetPages.add(propertySheetPage);
 
 		return propertySheetPage;
 	}
@@ -1468,7 +1483,7 @@ public void execute(IProgressMonitor monitor) {
 
 	/**
 	 * This returns whether something has been persisted to the URI of the specified resource.
-	 * The implementation uses the URI converter from the editor's resource set to try to open an input stream. 
+	 * The implementation uses the URI converter from the editor's resource set to try to open an input stream.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -1540,20 +1555,9 @@ protected void doSaveAs(URI uri, IEditorInput editorInput) {
 	 * @generated
 	 */
 	public void gotoMarker(IMarker marker) {
-		try {
-			if (marker.getType().equals(EValidator.MARKER)) {
-				String uriAttribute = marker.getAttribute(EValidator.URI_ATTRIBUTE, null);
-				if (uriAttribute != null) {
-					URI uri = URI.createURI(uriAttribute);
-					EObject eObject = editingDomain.getResourceSet().getEObject(uri, true);
-					if (eObject != null) {
-					  setSelectionToViewer(Collections.singleton(editingDomain.getWrapper(eObject)));
-					}
-				}
-			}
-		}
-		catch (CoreException exception) {
-			EntityEditorPlugin.INSTANCE.log(exception);
+		List<?> targetObjects = markerHelper.getTargetObjects(editingDomain, marker);
+		if (!targetObjects.isEmpty()) {
+			setSelectionToViewer(targetObjects);
 		}
 	}
 
@@ -1744,7 +1748,7 @@ public void dispose() {
 			getActionBarContributor().setActiveEditor(null);
 		}
 
-		if (propertySheetPage != null) {
+		for (PropertySheetPage propertySheetPage : propertySheetPages) {
 			propertySheetPage.dispose();
 		}
 
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.editor%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2Fpresentation%2FExtensionUtilitiesEditor.java
4b71ce963c48df0e446b6edc73fa5be0f40d66b2
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.editor%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fpresentation%2FEntityEditor.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.editor%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fpresentation%2FEntityEditor.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity.editor/src/org/obeonetwork/dsl/entity/presentation/EntityEditor.java
import java.util.List;
import org.eclipse.emf.edit.ui.view.ExtendedPropertySheetPage;
import org.eclipse.ui.views.properties.PropertySheetPage;
	/**
	 * This is the property sheet page.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected List<PropertySheetPage> propertySheetPages = new ArrayList<PropertySheetPage>();

					if (propertySheetPages.contains(((PropertySheet)p).getCurrentPage())) {
				resourceToDiagnosticMap.remove(target);
				if (updateProblemIndication) {
					getSite().getShell().getDisplay().asyncExec
						(new Runnable() {
							 public void run() {
								 updateProblemIndication();
							 }
						 });
				}
								return false;
	 * The implementation uses the URI converter from the editor's resource set to try to open an input stream.
		List<?> targetObjects = markerHelper.getTargetObjects(editingDomain, marker);
		if (!targetObjects.isEmpty()) {
			setSelectionToViewer(targetObjects);
		for (PropertySheetPage propertySheetPage : propertySheetPages) {
models/entity/plugins/org.obeonetwork.dsl.entity.editor/src/org/obeonetwork/dsl/entity/presentation/EntityEditor.java
public void run() {
								 updateProblemIndication();
new Runnable()
					if (((PropertySheet)p).getCurrentPage() == propertySheetPage) {
	 * The implementation uses the URI converter from the editor's resource set to try to open an input stream. 
		try {
			if (marker.getType().equals(EValidator.MARKER)) {
				String uriAttribute = marker.getAttribute(EValidator.URI_ATTRIBUTE, null);
				if (uriAttribute != null) {
					URI uri = URI.createURI(uriAttribute);
					EObject eObject = editingDomain.getResourceSet().getEObject(uri, true);
					if (eObject != null) {
					  setSelectionToViewer(Collections.singleton(editingDomain.getWrapper(eObject)));
					}
				}
			}
		}
		catch (CoreException exception) {
			EntityEditorPlugin.INSTANCE.log(exception);
		if (propertySheetPage != null) {
@@ -21,6 +21,7 @@
 import java.util.HashMap;
 import java.util.Iterator;
 import java.util.LinkedHashMap;
+import java.util.List;
 import java.util.Map;
 
 import org.eclipse.core.resources.IFile;
@@ -71,6 +72,7 @@
 import org.eclipse.emf.edit.ui.provider.UnwrappingSelectionProvider;
 import org.eclipse.emf.edit.ui.util.EditUIMarkerHelper;
 import org.eclipse.emf.edit.ui.util.EditUIUtil;
+import org.eclipse.emf.edit.ui.view.ExtendedPropertySheetPage;
 import org.eclipse.emf.eef.runtime.ui.notify.OpenWizardOnDoubleClick;
 import org.eclipse.jface.action.IMenuListener;
 import org.eclipse.jface.action.IMenuManager;
@@ -124,6 +126,7 @@
 import org.eclipse.ui.views.contentoutline.IContentOutlinePage;
 import org.eclipse.ui.views.properties.IPropertySheetPage;
 import org.eclipse.ui.views.properties.PropertySheet;
+import org.eclipse.ui.views.properties.PropertySheetPage;
 import org.eclipse.ui.views.properties.tabbed.ITabbedPropertySheetPageContributor;
 import org.eclipse.ui.views.properties.tabbed.TabbedPropertySheetPage;
 import org.obeonetwork.dsl.entity.extensionUtilities.provider.ExtensionUtilitiesItemProviderAdapterFactory;
@@ -188,6 +191,14 @@ public class EntityEditor extends MultiPageEditorPart implements
 	 */
 	protected TreeViewer contentOutlineViewer;
 
+	/**
+	 * This is the property sheet page.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected List<PropertySheetPage> propertySheetPages = new ArrayList<PropertySheetPage>();
+
 	/**
 	 * This is the property sheet page. <!-- begin-user-doc --> <!--
 	 * end-user-doc -->
@@ -309,7 +320,7 @@ public void partActivated(IWorkbenchPart p) {
 					}
 				}
 				else if (p instanceof PropertySheet) {
-					if (((PropertySheet)p).getCurrentPage() == propertySheetPage) {
+					if (propertySheetPages.contains(((PropertySheet)p).getCurrentPage())) {
 						getActionBarContributor().setActiveEditor(EntityEditor.this);
 						handleActivate();
 					}
@@ -419,6 +430,15 @@ protected void setTarget(Resource target) {
 			@Override
 			protected void unsetTarget(Resource target) {
 				basicUnsetTarget(target);
+				resourceToDiagnosticMap.remove(target);
+				if (updateProblemIndication) {
+					getSite().getShell().getDisplay().asyncExec
+						(new Runnable() {
+							 public void run() {
+								 updateProblemIndication();
+							 }
+						 });
+				}
 			}
 		};
 
@@ -451,6 +471,7 @@ else if (!savedResources.remove(resource)) {
 										}
 									}
 								}
+								return false;
 							}
 
 							return true;
@@ -1449,7 +1470,7 @@ public void execute(IProgressMonitor monitor) {
 
 	/**
 	 * This returns whether something has been persisted to the URI of the specified resource.
-	 * The implementation uses the URI converter from the editor's resource set to try to open an input stream. 
+	 * The implementation uses the URI converter from the editor's resource set to try to open an input stream.
 	 * <!-- begin-user-doc
 	 * --> <!-- end-user-doc -->
 	 * @generated
@@ -1519,20 +1540,9 @@ protected void doSaveAs(URI uri, IEditorInput editorInput) {
 	 * @generated
 	 */
 	public void gotoMarker(IMarker marker) {
-		try {
-			if (marker.getType().equals(EValidator.MARKER)) {
-				String uriAttribute = marker.getAttribute(EValidator.URI_ATTRIBUTE, null);
-				if (uriAttribute != null) {
-					URI uri = URI.createURI(uriAttribute);
-					EObject eObject = editingDomain.getResourceSet().getEObject(uri, true);
-					if (eObject != null) {
-					  setSelectionToViewer(Collections.singleton(editingDomain.getWrapper(eObject)));
-					}
-				}
-			}
-		}
-		catch (CoreException exception) {
-			EntityEditorPlugin.INSTANCE.log(exception);
+		List<?> targetObjects = markerHelper.getTargetObjects(editingDomain, marker);
+		if (!targetObjects.isEmpty()) {
+			setSelectionToViewer(targetObjects);
 		}
 	}
 
@@ -1721,7 +1731,7 @@ public void dispose() {
 			getActionBarContributor().setActiveEditor(null);
 		}
 
-		if (propertySheetPage != null) {
+		for (PropertySheetPage propertySheetPage : propertySheetPages) {
 			propertySheetPage.dispose();
 		}
 
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity.editor%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fpresentation%2FEntityEditor.java
3cabf29196558b7f86423c465af74e1fd09af3d9
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2FMETA-INF%2FMANIFEST.MF
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2FMETA-INF%2FMANIFEST.MF?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/META-INF/MANIFEST.MF
 org.eclipse.emf.cdo;visibility:=reexport,
@@ -15,6 +15,7 @@ Export-Package: org.obeonetwork.dsl.entity,
  org.obeonetwork.dsl.entity.util
 Require-Bundle: org.eclipse.core.runtime,
  org.eclipse.emf.ecore;visibility:=reexport,
+ org.eclipse.emf.cdo;visibility:=reexport,
  org.eclipse.emf.ecore.xmi;visibility:=reexport,
  org.obeonetwork.dsl.environment;visibility:=reexport
 Bundle-ActivationPolicy: lazy
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2FMETA-INF%2FMANIFEST.MF
b6669f5cc9f2cbcbf62f971931614879dd45d41b
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fmodel%2Fentity.ecore
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fmodel%2Fentity.ecore?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/model/entity.ecore
    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
@@ -3,6 +3,7 @@
     xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" name="entity" nsURI="http://www.obeonetwork.org/dsl/entity/3.0.0"
     nsPrefix="oent">
   <eClassifiers xsi:type="ecore:EClass" name="Root" eSuperTypes="../../org.obeonetwork.dsl.environment/model/environment.ecore#//TypesDefinition">
+    <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
     <eStructuralFeatures xsi:type="ecore:EReference" name="namespaces" upperBound="-1"
         eType="ecore:EClass ../../org.obeonetwork.dsl.environment/model/environment.ecore#//Namespace"
         containment="true"/>
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fmodel%2Fentity.ecore
09e13314f4c0a117418d7ab00f164b84812d9d99
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fmodel%2Fentity.genmodel
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fmodel%2Fentity.genmodel?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/model/entity.genmodel
    importerID="org.eclipse.emf.importer.cdo" featureDelegation="Dynamic" containmentProxies="true"
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Root/name"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference entity.ecore#//Root/namespaces"/>
    importerID="org.eclipse.importer.cdo" featureDelegation="Dynamic" containmentProxies="true"
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference entity.ecore#//Root/blocks"/>
    </genClasses>
    <genClasses ecoreClass="entity.ecore#//Block">
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Block/name"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference entity.ecore#//Block/entities"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference entity.ecore#//Block/subblocks"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference entity.ecore#//Entity/ownedAttributes"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference entity.ecore#//Entity/ownedReferences"/>
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference entity.ecore#//Entity/supertype"/>
      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference entity.ecore#//Entity/attributes"/>
      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference entity.ecore#//Entity/references"/>
      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference entity.ecore#//Entity/properties"/>
      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference entity.ecore#//Entity/block"/>
      <genOperations ecoreOperation="entity.ecore#//Entity/isSubtypeOf">
        <genParameters ecoreParameter="entity.ecore#//Entity/isSubtypeOf/entity"/>
      </genOperations>
    </genClasses>
    <genClasses image="false" ecoreClass="entity.ecore#//Property">
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Property/name"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Property/multiplicity"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Property/isPrimaryKey"/>
    </genClasses>
    <genClasses ecoreClass="entity.ecore#//Attribute">
      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference entity.ecore#//Attribute/entity"/>
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference entity.ecore#//Attribute/type"/>
    </genClasses>
    <genClasses ecoreClass="entity.ecore#//Reference">
      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference entity.ecore#//Reference/entity"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Reference/isComposite"/>
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference entity.ecore#//Reference/oppositeOf"/>
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference entity.ecore#//Reference/type"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Reference/navigable"/>
      <genOperations ecoreOperation="entity.ecore#//Reference/canBeOppositeOf">
        <genParameters ecoreParameter="entity.ecore#//Reference/canBeOppositeOf/opposite"/>
      </genOperations>
@@ -3,7 +3,7 @@
     xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel" copyrightText="Copyright (c) 2008-2009 Obeo.&#xA;All rights reserved. This program and the accompanying materials&#xA;are made available under the terms of the Eclipse Public License v1.0&#xA;which accompanies this distribution, and is available at&#xA;http://www.eclipse.org/legal/epl-v10.html&#xA;&#xA;Contributors:&#xA;    Obeo - initial API and implementation"
     modelDirectory="/org.obeonetwork.dsl.entity/src" creationIcons="false" modelPluginID="org.obeonetwork.dsl.entity"
     modelName="Entity" rootExtendsInterface="org.eclipse.emf.cdo.CDOObject" rootExtendsClass="org.eclipse.emf.internal.cdo.CDOObjectImpl"
-    importerID="org.eclipse.importer.cdo" featureDelegation="Dynamic" containmentProxies="true"
+    importerID="org.eclipse.emf.importer.cdo" featureDelegation="Dynamic" containmentProxies="true"
     complianceLevel="5.0" runtimeVersion="2.6" usedGenPackages="../../org.obeonetwork.dsl.environment/model/environment.genmodel#//environment">
   <foreignModel>entity.ecore</foreignModel>
   <modelPluginVariables>CDO=org.eclipse.emf.cdo</modelPluginVariables>
@@ -14,48 +14,15 @@
       <genEnumLiterals ecoreEnumLiteral="entity.ecore#//InheritanceKind/TABLE_PER_CLASS_HIERARCHY"/>
     </genEnums>
     <genClasses ecoreClass="entity.ecore#//Root">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference entity.ecore#//Root/blocks"/>
-    </genClasses>
-    <genClasses ecoreClass="entity.ecore#//Block">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Block/name"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference entity.ecore#//Block/entities"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference entity.ecore#//Block/subblocks"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Root/name"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference entity.ecore#//Root/namespaces"/>
     </genClasses>
     <genClasses ecoreClass="entity.ecore#//Entity">
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference entity.ecore#//Entity/ownedAttributes"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference entity.ecore#//Entity/ownedReferences"/>
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference entity.ecore#//Entity/supertype"/>
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference entity.ecore#//Entity/attributes"/>
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference entity.ecore#//Entity/references"/>
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference entity.ecore#//Entity/properties"/>
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Entity/estimatedVolumetry"/>
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Entity/estimatedAccess"/>
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Entity/historized"/>
       <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference entity.ecore#//Entity/ownedFinders"/>
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference entity.ecore#//Entity/block"/>
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Entity/inheritanceKind"/>
-      <genOperations ecoreOperation="entity.ecore#//Entity/isSubtypeOf">
-        <genParameters ecoreParameter="entity.ecore#//Entity/isSubtypeOf/entity"/>
-      </genOperations>
-    </genClasses>
-    <genClasses image="false" ecoreClass="entity.ecore#//Property">
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Property/name"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Property/multiplicity"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Property/isPrimaryKey"/>
-    </genClasses>
-    <genClasses ecoreClass="entity.ecore#//Attribute">
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference entity.ecore#//Attribute/entity"/>
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference entity.ecore#//Attribute/type"/>
-    </genClasses>
-    <genClasses ecoreClass="entity.ecore#//Reference">
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference entity.ecore#//Reference/entity"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Reference/isComposite"/>
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference entity.ecore#//Reference/oppositeOf"/>
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference entity.ecore#//Reference/type"/>
-      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Reference/navigable"/>
-      <genOperations ecoreOperation="entity.ecore#//Reference/canBeOppositeOf">
-        <genParameters ecoreParameter="entity.ecore#//Reference/canBeOppositeOf/opposite"/>
-      </genOperations>
     </genClasses>
     <genClasses ecoreClass="entity.ecore#//Finder">
       <genFeatures property="Readonly" createChild="false" ecoreFeature="ecore:EAttribute entity.ecore#//Finder/name"/>
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fmodel%2Fentity.genmodel
3e2b2ac3b0be4be6b7dd0f11c783104d8caf3cb9
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FEntity.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FEntity.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/Entity.java
 *   <li>{@link org.obeonetwork.dsl.entity.Entity#getOwnedAttributes <em>Owned Attributes</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.entity.Entity#getOwnedReferences <em>Owned References</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.entity.Entity#getSupertype <em>Supertype</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.entity.Entity#getAttributes <em>Attributes</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.entity.Entity#getReferences <em>References</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.entity.Entity#getProperties <em>Properties</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.entity.Entity#getBlock <em>Block</em>}</li>
	/**
	 * Returns the value of the '<em><b>Owned Attributes</b></em>' containment reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.entity.Attribute}.
	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.entity.Attribute#getEntity <em>Entity</em>}'.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Owned Attributes</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>Owned Attributes</em>' containment reference list.
	 * @see org.obeonetwork.dsl.entity.EntityPackage#getEntity_OwnedAttributes()
	 * @see org.obeonetwork.dsl.entity.Attribute#getEntity
	 * @model opposite="entity" containment="true" resolveProxies="true"
	 * @generated
	 */
	EList<Attribute> getOwnedAttributes();

	/**
	 * Returns the value of the '<em><b>Owned References</b></em>' containment reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.entity.Reference}.
	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.entity.Reference#getEntity <em>Entity</em>}'.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Owned References</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>Owned References</em>' containment reference list.
	 * @see org.obeonetwork.dsl.entity.EntityPackage#getEntity_OwnedReferences()
	 * @see org.obeonetwork.dsl.entity.Reference#getEntity
	 * @model opposite="entity" containment="true" resolveProxies="true"
	 * @generated
	 */
	EList<Reference> getOwnedReferences();

	/**
	 * Returns the value of the '<em><b>Supertype</b></em>' reference. <!--
	 * begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Supertype</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * 
	 * @return the value of the '<em>Supertype</em>' reference.
	 * @see #setSupertype(Entity)
	 * @see org.obeonetwork.dsl.entity.EntityPackage#getEntity_Supertype()
	 * @model
	 * @generated
	 */
	Entity getSupertype();

	/**
	 * Sets the value of the '{@link org.obeonetwork.dsl.entity.Entity#getSupertype <em>Supertype</em>}' reference.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @param value the new value of the '<em>Supertype</em>' reference.
	 * @see #getSupertype()
	 * @generated
	 */
	void setSupertype(Entity value);

	/**
	 * Returns the value of the '<em><b>Attributes</b></em>' reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.entity.Attribute}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Attributes</em>' reference list isn't
	 * clear, there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Attributes</em>' reference list.
	 * @see org.obeonetwork.dsl.entity.EntityPackage#getEntity_Attributes()
	 * @model transient="true" changeable="false" volatile="true" derived="true"
	 * @generated
	 */
	EList<Attribute> getAttributes();

	/**
	 * Returns the value of the '<em><b>References</b></em>' reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.entity.Reference}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>References</em>' reference list isn't
	 * clear, there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>References</em>' reference list.
	 * @see org.obeonetwork.dsl.entity.EntityPackage#getEntity_References()
	 * @model transient="true" changeable="false" volatile="true" derived="true"
	 * @generated
	 */
	EList<Reference> getReferences();

	/**
	 * Returns the value of the '<em><b>Properties</b></em>' reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.entity.Property}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Properties</em>' reference list isn't
	 * clear, there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Properties</em>' reference list.
	 * @see org.obeonetwork.dsl.entity.EntityPackage#getEntity_Properties()
	 * @model transient="true" changeable="false" volatile="true" derived="true"
	 * @generated
	 */
	EList<Property> getProperties();

	/**
	 * Returns the value of the '<em><b>Block</b></em>' container reference.
	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.entity.Block#getEntities <em>Entities</em>}'.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Block</em>' container reference isn't
	 * clear, there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Block</em>' container reference.
	 * @see #setBlock(Block)
	 * @see org.obeonetwork.dsl.entity.EntityPackage#getEntity_Block()
	 * @see org.obeonetwork.dsl.entity.Block#getEntities
	 * @model opposite="entities" required="true" transient="false"
	 * @generated
	 */
	Block getBlock();

	/**
	 * Sets the value of the '{@link org.obeonetwork.dsl.entity.Entity#getBlock <em>Block</em>}' container reference.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @param value the new value of the '<em>Block</em>' container reference.
	 * @see #getBlock()
	 * @generated
	 */
	void setBlock(Block value);

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @model
	 * @generated
	 */
	boolean isSubtypeOf(Entity entity);

@@ -22,17 +22,10 @@
  * <p>
  * The following features are supported:
  * <ul>
- *   <li>{@link org.obeonetwork.dsl.entity.Entity#getOwnedAttributes <em>Owned Attributes</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.entity.Entity#getOwnedReferences <em>Owned References</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.entity.Entity#getSupertype <em>Supertype</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.entity.Entity#getAttributes <em>Attributes</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.entity.Entity#getReferences <em>References</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.entity.Entity#getProperties <em>Properties</em>}</li>
  *   <li>{@link org.obeonetwork.dsl.entity.Entity#getEstimatedVolumetry <em>Estimated Volumetry</em>}</li>
  *   <li>{@link org.obeonetwork.dsl.entity.Entity#getEstimatedAccess <em>Estimated Access</em>}</li>
  *   <li>{@link org.obeonetwork.dsl.entity.Entity#isHistorized <em>Historized</em>}</li>
  *   <li>{@link org.obeonetwork.dsl.entity.Entity#getOwnedFinders <em>Owned Finders</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.entity.Entity#getBlock <em>Block</em>}</li>
  *   <li>{@link org.obeonetwork.dsl.entity.Entity#getInheritanceKind <em>Inheritance Kind</em>}</li>
  * </ul>
  * </p>
@@ -49,118 +42,6 @@ public interface Entity extends StructuredType {
 	 */
 	String copyright = "Copyright (c) 2008-2009 Obeo.\nAll rights reserved. This program and the accompanying materials\nare made available under the terms of the Eclipse Public License v1.0\nwhich accompanies this distribution, and is available at\nhttp://www.eclipse.org/legal/epl-v10.html\n\nContributors:\n    Obeo - initial API and implementation";
 
-	/**
-	 * Returns the value of the '<em><b>Owned Attributes</b></em>' containment reference list.
-	 * The list contents are of type {@link org.obeonetwork.dsl.entity.Attribute}.
-	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.entity.Attribute#getEntity <em>Entity</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Owned Attributes</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>Owned Attributes</em>' containment reference list.
-	 * @see org.obeonetwork.dsl.entity.EntityPackage#getEntity_OwnedAttributes()
-	 * @see org.obeonetwork.dsl.entity.Attribute#getEntity
-	 * @model opposite="entity" containment="true" resolveProxies="true"
-	 * @generated
-	 */
-	EList<Attribute> getOwnedAttributes();
-
-	/**
-	 * Returns the value of the '<em><b>Owned References</b></em>' containment reference list.
-	 * The list contents are of type {@link org.obeonetwork.dsl.entity.Reference}.
-	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.entity.Reference#getEntity <em>Entity</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Owned References</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>Owned References</em>' containment reference list.
-	 * @see org.obeonetwork.dsl.entity.EntityPackage#getEntity_OwnedReferences()
-	 * @see org.obeonetwork.dsl.entity.Reference#getEntity
-	 * @model opposite="entity" containment="true" resolveProxies="true"
-	 * @generated
-	 */
-	EList<Reference> getOwnedReferences();
-
-	/**
-	 * Returns the value of the '<em><b>Supertype</b></em>' reference. <!--
-	 * begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Supertype</em>' reference isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * 
-	 * @return the value of the '<em>Supertype</em>' reference.
-	 * @see #setSupertype(Entity)
-	 * @see org.obeonetwork.dsl.entity.EntityPackage#getEntity_Supertype()
-	 * @model
-	 * @generated
-	 */
-	Entity getSupertype();
-
-	/**
-	 * Sets the value of the '{@link org.obeonetwork.dsl.entity.Entity#getSupertype <em>Supertype</em>}' reference.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Supertype</em>' reference.
-	 * @see #getSupertype()
-	 * @generated
-	 */
-	void setSupertype(Entity value);
-
-	/**
-	 * Returns the value of the '<em><b>Attributes</b></em>' reference list.
-	 * The list contents are of type {@link org.obeonetwork.dsl.entity.Attribute}.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Attributes</em>' reference list isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Attributes</em>' reference list.
-	 * @see org.obeonetwork.dsl.entity.EntityPackage#getEntity_Attributes()
-	 * @model transient="true" changeable="false" volatile="true" derived="true"
-	 * @generated
-	 */
-	EList<Attribute> getAttributes();
-
-	/**
-	 * Returns the value of the '<em><b>References</b></em>' reference list.
-	 * The list contents are of type {@link org.obeonetwork.dsl.entity.Reference}.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>References</em>' reference list isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>References</em>' reference list.
-	 * @see org.obeonetwork.dsl.entity.EntityPackage#getEntity_References()
-	 * @model transient="true" changeable="false" volatile="true" derived="true"
-	 * @generated
-	 */
-	EList<Reference> getReferences();
-
-	/**
-	 * Returns the value of the '<em><b>Properties</b></em>' reference list.
-	 * The list contents are of type {@link org.obeonetwork.dsl.entity.Property}.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Properties</em>' reference list isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Properties</em>' reference list.
-	 * @see org.obeonetwork.dsl.entity.EntityPackage#getEntity_Properties()
-	 * @model transient="true" changeable="false" volatile="true" derived="true"
-	 * @generated
-	 */
-	EList<Property> getProperties();
-
 	/**
 	 * Returns the value of the '<em><b>Estimated Volumetry</b></em>' attribute.
 	 * <!-- begin-user-doc -->
@@ -258,33 +139,6 @@ public interface Entity extends StructuredType {
 	 */
 	EList<Finder> getOwnedFinders();
 
-	/**
-	 * Returns the value of the '<em><b>Block</b></em>' container reference.
-	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.entity.Block#getEntities <em>Entities</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Block</em>' container reference isn't
-	 * clear, there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Block</em>' container reference.
-	 * @see #setBlock(Block)
-	 * @see org.obeonetwork.dsl.entity.EntityPackage#getEntity_Block()
-	 * @see org.obeonetwork.dsl.entity.Block#getEntities
-	 * @model opposite="entities" required="true" transient="false"
-	 * @generated
-	 */
-	Block getBlock();
-
-	/**
-	 * Sets the value of the '{@link org.obeonetwork.dsl.entity.Entity#getBlock <em>Block</em>}' container reference.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Block</em>' container reference.
-	 * @see #getBlock()
-	 * @generated
-	 */
-	void setBlock(Block value);
-
 	/**
 	 * Returns the value of the '<em><b>Inheritance Kind</b></em>' attribute.
 	 * The literals are from the enumeration {@link org.obeonetwork.dsl.entity.InheritanceKind}.
@@ -313,12 +167,4 @@ public interface Entity extends StructuredType {
 	 */
 	void setInheritanceKind(InheritanceKind value);
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @model
-	 * @generated
-	 */
-	boolean isSubtypeOf(Entity entity);
-
 } // Entity
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FEntity.java
d437e6c7d4bafe48f759fae41f1ed0d2a1879f0e
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FEntityFactory.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FEntityFactory.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/EntityFactory.java
	/**
	 * Returns a new object of class '<em>Block</em>'.
	 * <!-- begin-user-doc
	 * --> <!-- end-user-doc -->
	 * @return a new object of class '<em>Block</em>'.
	 * @generated
	 */
	Block createBlock();

	/**
	 * Returns a new object of class '<em>Attribute</em>'. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return a new object of class '<em>Attribute</em>'.
	 * @generated
	 */
	Attribute createAttribute();

	/**
	 * Returns a new object of class '<em>Reference</em>'. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @return a new object of class '<em>Reference</em>'.
	 * @generated
	 */
	Reference createReference();

@@ -44,15 +44,6 @@ public interface EntityFactory extends EFactory {
 	 */
 	Root createRoot();
 
-	/**
-	 * Returns a new object of class '<em>Block</em>'.
-	 * <!-- begin-user-doc
-	 * --> <!-- end-user-doc -->
-	 * @return a new object of class '<em>Block</em>'.
-	 * @generated
-	 */
-	Block createBlock();
-
 	/**
 	 * Returns a new object of class '<em>Entity</em>'.
 	 * <!-- begin-user-doc
@@ -62,24 +53,6 @@ public interface EntityFactory extends EFactory {
 	 */
 	Entity createEntity();
 
-	/**
-	 * Returns a new object of class '<em>Attribute</em>'. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return a new object of class '<em>Attribute</em>'.
-	 * @generated
-	 */
-	Attribute createAttribute();
-
-	/**
-	 * Returns a new object of class '<em>Reference</em>'. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @return a new object of class '<em>Reference</em>'.
-	 * @generated
-	 */
-	Reference createReference();
-
 	/**
 	 * Returns a new object of class '<em>Finder</em>'.
 	 * <!-- begin-user-doc
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FEntityFactory.java
49f703ef5fe9ca539a7d102490f0e43792a01be8
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FEntityPackage.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FEntityPackage.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/EntityPackage.java
	String eNS_URI = "http://www.obeonetwork.org/dsl/entity/3.0.0";
	int ROOT__METADATAS = EnvironmentPackage.TYPES_DEFINITION__METADATAS;
	int ROOT__DESCRIPTION = EnvironmentPackage.TYPES_DEFINITION__DESCRIPTION;
	int ROOT__KEYWORDS = EnvironmentPackage.TYPES_DEFINITION__KEYWORDS;
	int ROOT__BEHAVIOURS = EnvironmentPackage.TYPES_DEFINITION__BEHAVIOURS;
	int ROOT__BINDING_REGISTRIES = EnvironmentPackage.TYPES_DEFINITION__BINDING_REGISTRIES;
	int ROOT__VERSION = EnvironmentPackage.TYPES_DEFINITION__VERSION;
	int ROOT__CREATED_ON = EnvironmentPackage.TYPES_DEFINITION__CREATED_ON;
	int ROOT__MODIFIED_ON = EnvironmentPackage.TYPES_DEFINITION__MODIFIED_ON;
	 * The feature id for the '<em><b>Types</b></em>' containment reference list.
	int ROOT__TYPES = EnvironmentPackage.TYPES_DEFINITION__TYPES;
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	int ROOT__NAME = EnvironmentPackage.TYPES_DEFINITION_FEATURE_COUNT + 0;
	 * The feature id for the '<em><b>Namespaces</b></em>' containment reference list.
	int ROOT__NAMESPACES = EnvironmentPackage.TYPES_DEFINITION_FEATURE_COUNT + 1;
	int ROOT_FEATURE_COUNT = EnvironmentPackage.TYPES_DEFINITION_FEATURE_COUNT + 2;
	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.EntityImpl <em>Entity</em>}' class.
	 * @see org.obeonetwork.dsl.entity.impl.EntityImpl
	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getEntity()
	int ENTITY = 1;
	int ENTITY__METADATAS = EnvironmentPackage.STRUCTURED_TYPE__METADATAS;
	int ENTITY__DESCRIPTION = EnvironmentPackage.STRUCTURED_TYPE__DESCRIPTION;
	int ENTITY__KEYWORDS = EnvironmentPackage.STRUCTURED_TYPE__KEYWORDS;
	int ENTITY__BEHAVIOURS = EnvironmentPackage.STRUCTURED_TYPE__BEHAVIOURS;
	int ENTITY__BINDING_REGISTRIES = EnvironmentPackage.STRUCTURED_TYPE__BINDING_REGISTRIES;
	int ENTITY__VERSION = EnvironmentPackage.STRUCTURED_TYPE__VERSION;
	int ENTITY__CREATED_ON = EnvironmentPackage.STRUCTURED_TYPE__CREATED_ON;
	int ENTITY__MODIFIED_ON = EnvironmentPackage.STRUCTURED_TYPE__MODIFIED_ON;
	int ENTITY__NAME = EnvironmentPackage.STRUCTURED_TYPE__NAME;
	 * The feature id for the '<em><b>Type Definition</b></em>' container reference.
	int ENTITY__TYPE_DEFINITION = EnvironmentPackage.STRUCTURED_TYPE__TYPE_DEFINITION;
	 * The feature id for the '<em><b>Supertype</b></em>' reference. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	int ENTITY__SUPERTYPE = EnvironmentPackage.STRUCTURED_TYPE__SUPERTYPE;
	 * The feature id for the '<em><b>Associated Types</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	int ENTITY__ASSOCIATED_TYPES = EnvironmentPackage.STRUCTURED_TYPE__ASSOCIATED_TYPES;
	 * The feature id for the '<em><b>Owned Attributes</b></em>' containment reference list.
	 * @ordered
	int ENTITY__OWNED_ATTRIBUTES = EnvironmentPackage.STRUCTURED_TYPE__OWNED_ATTRIBUTES;
	 * The feature id for the '<em><b>Attributes</b></em>' reference list.
	int ENTITY__ATTRIBUTES = EnvironmentPackage.STRUCTURED_TYPE__ATTRIBUTES;
	 * The feature id for the '<em><b>Owned References</b></em>' containment reference list.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	int ENTITY__OWNED_REFERENCES = EnvironmentPackage.STRUCTURED_TYPE__OWNED_REFERENCES;
	 * The feature id for the '<em><b>References</b></em>' reference list.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	int ENTITY__REFERENCES = EnvironmentPackage.STRUCTURED_TYPE__REFERENCES;
	 * The feature id for the '<em><b>Properties</b></em>' reference list.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	int ENTITY__PROPERTIES = EnvironmentPackage.STRUCTURED_TYPE__PROPERTIES;
	 * The feature id for the '<em><b>Estimated Volumetry</b></em>' attribute.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	int ENTITY__ESTIMATED_VOLUMETRY = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 0;
	 * The feature id for the '<em><b>Estimated Access</b></em>' attribute.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	int ENTITY__ESTIMATED_ACCESS = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 1;
	 * The feature id for the '<em><b>Historized</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	int ENTITY__HISTORIZED = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 2;
	 * The feature id for the '<em><b>Owned Finders</b></em>' containment reference list.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	int ENTITY__OWNED_FINDERS = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 3;
	 * The feature id for the '<em><b>Inheritance Kind</b></em>' attribute.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	int ENTITY__INHERITANCE_KIND = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 4;
	 * The number of structural features of the '<em>Entity</em>' class.
	int ENTITY_FEATURE_COUNT = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 5;
	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.FinderImpl <em>Finder</em>}' class.
	 * @see org.obeonetwork.dsl.entity.impl.FinderImpl
	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getFinder()
	int FINDER = 2;
	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
	int FINDER__METADATAS = EnvironmentPackage.OBEO_DSM_OBJECT__METADATAS;
	 * The feature id for the '<em><b>Description</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	int FINDER__DESCRIPTION = EnvironmentPackage.OBEO_DSM_OBJECT__DESCRIPTION;
	 * The feature id for the '<em><b>Keywords</b></em>' attribute list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	int FINDER__KEYWORDS = EnvironmentPackage.OBEO_DSM_OBJECT__KEYWORDS;
	 * The feature id for the '<em><b>Behaviours</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	int FINDER__BEHAVIOURS = EnvironmentPackage.OBEO_DSM_OBJECT__BEHAVIOURS;
	 * The feature id for the '<em><b>Binding Registries</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	int FINDER__BINDING_REGISTRIES = EnvironmentPackage.OBEO_DSM_OBJECT__BINDING_REGISTRIES;
	 * The feature id for the '<em><b>Version</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	int FINDER__VERSION = EnvironmentPackage.OBEO_DSM_OBJECT__VERSION;
	 * The feature id for the '<em><b>Created On</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	int FINDER__CREATED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__CREATED_ON;
	 * The feature id for the '<em><b>Modified On</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FINDER__MODIFIED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__MODIFIED_ON;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
	int FINDER__NAME = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 0;
	 * The feature id for the '<em><b>Entity</b></em>' container reference.
	int FINDER__ENTITY = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 1;
	 * The feature id for the '<em><b>Customized Name</b></em>' attribute.
	int FINDER__CUSTOMIZED_NAME = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 2;
	 * The feature id for the '<em><b>Criterions</b></em>' containment reference list.
	int FINDER__CRITERIONS = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 3;
	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FINDER__MULTIPLICITY = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 4;

	/**
	 * The number of structural features of the '<em>Finder</em>' class.
	int FINDER_FEATURE_COUNT = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 5;
	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.CriterionImpl <em>Criterion</em>}' class.
	 * @see org.obeonetwork.dsl.entity.impl.CriterionImpl
	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getCriterion()
	int CRITERION = 4;
	int CRITERION__METADATAS = EnvironmentPackage.OBEO_DSM_OBJECT__METADATAS;
	int CRITERION__DESCRIPTION = EnvironmentPackage.OBEO_DSM_OBJECT__DESCRIPTION;
	int CRITERION__KEYWORDS = EnvironmentPackage.OBEO_DSM_OBJECT__KEYWORDS;
	int CRITERION__BEHAVIOURS = EnvironmentPackage.OBEO_DSM_OBJECT__BEHAVIOURS;
	int CRITERION__BINDING_REGISTRIES = EnvironmentPackage.OBEO_DSM_OBJECT__BINDING_REGISTRIES;
	int CRITERION__VERSION = EnvironmentPackage.OBEO_DSM_OBJECT__VERSION;
	int CRITERION__CREATED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__CREATED_ON;
	int CRITERION__MODIFIED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__MODIFIED_ON;
	 * The number of structural features of the '<em>Criterion</em>' class.
	int CRITERION_FEATURE_COUNT = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 0;
	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.InternalCriterionImpl <em>Internal Criterion</em>}' class.
	 * @see org.obeonetwork.dsl.entity.impl.InternalCriterionImpl
	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getInternalCriterion()
	int INTERNAL_CRITERION = 3;
	int INTERNAL_CRITERION__METADATAS = CRITERION__METADATAS;
	int INTERNAL_CRITERION__DESCRIPTION = CRITERION__DESCRIPTION;
	int INTERNAL_CRITERION__KEYWORDS = CRITERION__KEYWORDS;
	int INTERNAL_CRITERION__BEHAVIOURS = CRITERION__BEHAVIOURS;
	int INTERNAL_CRITERION__BINDING_REGISTRIES = CRITERION__BINDING_REGISTRIES;
	int INTERNAL_CRITERION__VERSION = CRITERION__VERSION;
	int INTERNAL_CRITERION__CREATED_ON = CRITERION__CREATED_ON;
	int INTERNAL_CRITERION__MODIFIED_ON = CRITERION__MODIFIED_ON;
	 * The feature id for the '<em><b>Target</b></em>' reference. <!--
	int INTERNAL_CRITERION__TARGET = CRITERION_FEATURE_COUNT + 0;
	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
	int INTERNAL_CRITERION__NAME = CRITERION_FEATURE_COUNT + 1;
	 * The number of structural features of the '<em>Internal Criterion</em>' class.
	int INTERNAL_CRITERION_FEATURE_COUNT = CRITERION_FEATURE_COUNT + 2;
	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.ExternalCriterionImpl <em>External Criterion</em>}' class.
	 * @see org.obeonetwork.dsl.entity.impl.ExternalCriterionImpl
	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getExternalCriterion()
	int EXTERNAL_CRITERION = 5;
	int EXTERNAL_CRITERION__METADATAS = CRITERION__METADATAS;
	int EXTERNAL_CRITERION__DESCRIPTION = CRITERION__DESCRIPTION;
	int EXTERNAL_CRITERION__KEYWORDS = CRITERION__KEYWORDS;
	int EXTERNAL_CRITERION__BEHAVIOURS = CRITERION__BEHAVIOURS;
	int EXTERNAL_CRITERION__BINDING_REGISTRIES = CRITERION__BINDING_REGISTRIES;
	int EXTERNAL_CRITERION__VERSION = CRITERION__VERSION;
	int EXTERNAL_CRITERION__CREATED_ON = CRITERION__CREATED_ON;
	int EXTERNAL_CRITERION__MODIFIED_ON = CRITERION__MODIFIED_ON;
	int EXTERNAL_CRITERION__NAME = CRITERION_FEATURE_COUNT + 0;
	 * The feature id for the '<em><b>Type</b></em>' reference. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @ordered
	int EXTERNAL_CRITERION__TYPE = CRITERION_FEATURE_COUNT + 1;
	 * The number of structural features of the '<em>External Criterion</em>' class.
	 * @ordered
	int EXTERNAL_CRITERION_FEATURE_COUNT = CRITERION_FEATURE_COUNT + 2;
	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.InheritanceKind <em>Inheritance Kind</em>}' enum.
	 * @see org.obeonetwork.dsl.entity.InheritanceKind
	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getInheritanceKind()
	int INHERITANCE_KIND = 6;
	 * Returns the meta object for class '{@link org.obeonetwork.dsl.entity.Root <em>Root</em>}'.
	 * @return the meta object for class '<em>Root</em>'.
	 * @see org.obeonetwork.dsl.entity.Root
	EClass getRoot();
	 * Returns the meta object for the attribute '{@link org.obeonetwork.dsl.entity.Root#getName <em>Name</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see org.obeonetwork.dsl.entity.Root#getName()
	 * @see #getRoot()
	EAttribute getRoot_Name();
	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.entity.Root#getNamespaces <em>Namespaces</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Namespaces</em>'.
	 * @see org.obeonetwork.dsl.entity.Root#getNamespaces()
	 * @see #getRoot()
	EReference getRoot_Namespaces();
	 * Returns the meta object for class '{@link org.obeonetwork.dsl.entity.Entity <em>Entity</em>}'.
	 * @return the meta object for class '<em>Entity</em>'.
	 * @see org.obeonetwork.dsl.entity.Entity
	EClass getEntity();
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		EAttribute ROOT__NAME = eINSTANCE.getRoot_Name();
		 * The meta object literal for the '<em><b>Namespaces</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		EReference ROOT__NAMESPACES = eINSTANCE.getRoot_Namespaces();
	String eNS_URI = "http://www.obeonetwork.org/dsl/entity/2.0.0";
	int ROOT__METADATAS = EnvironmentPackage.NAMESPACE__METADATAS;
	int ROOT__DESCRIPTION = EnvironmentPackage.NAMESPACE__DESCRIPTION;
	int ROOT__KEYWORDS = EnvironmentPackage.NAMESPACE__KEYWORDS;
	int ROOT__BEHAVIOURS = EnvironmentPackage.NAMESPACE__BEHAVIOURS;
	int ROOT__BINDING_REGISTRIES = EnvironmentPackage.NAMESPACE__BINDING_REGISTRIES;
	int ROOT__VERSION = EnvironmentPackage.NAMESPACE__VERSION;
	int ROOT__CREATED_ON = EnvironmentPackage.NAMESPACE__CREATED_ON;
	int ROOT__MODIFIED_ON = EnvironmentPackage.NAMESPACE__MODIFIED_ON;
	 * The feature id for the '<em><b>Owned Namespaces</b></em>' containment reference list.
	int ROOT__OWNED_NAMESPACES = EnvironmentPackage.NAMESPACE__OWNED_NAMESPACES;
	 * The feature id for the '<em><b>Owner</b></em>' container reference.
	int ROOT__OWNER = EnvironmentPackage.NAMESPACE__OWNER;
	 * The feature id for the '<em><b>Name</b></em>' attribute.
	int ROOT__NAME = EnvironmentPackage.NAMESPACE__NAME;

	/**
	 * The feature id for the '<em><b>Blocks</b></em>' containment reference list.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ROOT__BLOCKS = EnvironmentPackage.NAMESPACE_FEATURE_COUNT + 0;
	int ROOT_FEATURE_COUNT = EnvironmentPackage.NAMESPACE_FEATURE_COUNT + 1;
	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.BlockImpl <em>Block</em>}' class.
	 * @see org.obeonetwork.dsl.entity.impl.BlockImpl
	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getBlock()
	int BLOCK = 1;
	int BLOCK__METADATAS = EnvironmentPackage.OBEO_DSM_OBJECT__METADATAS;
	int BLOCK__DESCRIPTION = EnvironmentPackage.OBEO_DSM_OBJECT__DESCRIPTION;
	int BLOCK__KEYWORDS = EnvironmentPackage.OBEO_DSM_OBJECT__KEYWORDS;
	int BLOCK__BEHAVIOURS = EnvironmentPackage.OBEO_DSM_OBJECT__BEHAVIOURS;
	int BLOCK__BINDING_REGISTRIES = EnvironmentPackage.OBEO_DSM_OBJECT__BINDING_REGISTRIES;
	int BLOCK__VERSION = EnvironmentPackage.OBEO_DSM_OBJECT__VERSION;
	int BLOCK__CREATED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__CREATED_ON;
	int BLOCK__MODIFIED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__MODIFIED_ON;
	int BLOCK__NAME = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 0;
	 * The feature id for the '<em><b>Entities</b></em>' containment reference list.
	int BLOCK__ENTITIES = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 1;
	 * The feature id for the '<em><b>Subblocks</b></em>' containment reference list.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	int BLOCK__SUBBLOCKS = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 2;
	 * The number of structural features of the '<em>Block</em>' class. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	int BLOCK_FEATURE_COUNT = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 3;
	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.EntityImpl <em>Entity</em>}' class.
	 * @see org.obeonetwork.dsl.entity.impl.EntityImpl
	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getEntity()
	int ENTITY = 2;
	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
	int ENTITY__METADATAS = EnvironmentPackage.STRUCTURED_TYPE__METADATAS;
	 * The feature id for the '<em><b>Description</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	int ENTITY__DESCRIPTION = EnvironmentPackage.STRUCTURED_TYPE__DESCRIPTION;
	 * The feature id for the '<em><b>Keywords</b></em>' attribute list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	int ENTITY__KEYWORDS = EnvironmentPackage.STRUCTURED_TYPE__KEYWORDS;
	 * The feature id for the '<em><b>Behaviours</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	int ENTITY__BEHAVIOURS = EnvironmentPackage.STRUCTURED_TYPE__BEHAVIOURS;
	 * The feature id for the '<em><b>Binding Registries</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	int ENTITY__BINDING_REGISTRIES = EnvironmentPackage.STRUCTURED_TYPE__BINDING_REGISTRIES;
	 * The feature id for the '<em><b>Version</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	int ENTITY__VERSION = EnvironmentPackage.STRUCTURED_TYPE__VERSION;
	 * The feature id for the '<em><b>Created On</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	int ENTITY__CREATED_ON = EnvironmentPackage.STRUCTURED_TYPE__CREATED_ON;
	 * The feature id for the '<em><b>Modified On</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	int ENTITY__MODIFIED_ON = EnvironmentPackage.STRUCTURED_TYPE__MODIFIED_ON;
	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	int ENTITY__NAME = EnvironmentPackage.STRUCTURED_TYPE__NAME;
	 * The feature id for the '<em><b>Type Definition</b></em>' container reference.
	int ENTITY__TYPE_DEFINITION = EnvironmentPackage.STRUCTURED_TYPE__TYPE_DEFINITION;
	 * The feature id for the '<em><b>Owned Attributes</b></em>' containment reference list.
	 * @ordered
	int ENTITY__OWNED_ATTRIBUTES = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 0;
	 * The feature id for the '<em><b>Owned References</b></em>' containment reference list.
	int ENTITY__OWNED_REFERENCES = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 1;
	 * The feature id for the '<em><b>Supertype</b></em>' reference. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	int ENTITY__SUPERTYPE = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 2;
	 * The feature id for the '<em><b>Attributes</b></em>' reference list.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	int ENTITY__ATTRIBUTES = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 3;
	 * The feature id for the '<em><b>References</b></em>' reference list.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	int ENTITY__REFERENCES = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 4;
	 * The feature id for the '<em><b>Properties</b></em>' reference list.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	int ENTITY__PROPERTIES = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 5;
	 * The feature id for the '<em><b>Estimated Volumetry</b></em>' attribute.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	int ENTITY__ESTIMATED_VOLUMETRY = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 6;
	 * The feature id for the '<em><b>Estimated Access</b></em>' attribute.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	int ENTITY__ESTIMATED_ACCESS = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 7;
	 * The feature id for the '<em><b>Historized</b></em>' attribute. <!--
	int ENTITY__HISTORIZED = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 8;
	 * The feature id for the '<em><b>Owned Finders</b></em>' containment reference list.
	int ENTITY__OWNED_FINDERS = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 9;
	 * The feature id for the '<em><b>Block</b></em>' container reference.
	int ENTITY__BLOCK = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 10;
	 * The feature id for the '<em><b>Inheritance Kind</b></em>' attribute.
	int ENTITY__INHERITANCE_KIND = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 11;
	 * The number of structural features of the '<em>Entity</em>' class.
	int ENTITY_FEATURE_COUNT = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 12;
	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.PropertyImpl <em>Property</em>}' class.
	 * @see org.obeonetwork.dsl.entity.impl.PropertyImpl
	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getProperty()
	int PROPERTY = 3;
	int PROPERTY__METADATAS = EnvironmentPackage.OBEO_DSM_OBJECT__METADATAS;
	int PROPERTY__DESCRIPTION = EnvironmentPackage.OBEO_DSM_OBJECT__DESCRIPTION;
	int PROPERTY__KEYWORDS = EnvironmentPackage.OBEO_DSM_OBJECT__KEYWORDS;
	int PROPERTY__BEHAVIOURS = EnvironmentPackage.OBEO_DSM_OBJECT__BEHAVIOURS;
	int PROPERTY__BINDING_REGISTRIES = EnvironmentPackage.OBEO_DSM_OBJECT__BINDING_REGISTRIES;
	int PROPERTY__VERSION = EnvironmentPackage.OBEO_DSM_OBJECT__VERSION;
	int PROPERTY__CREATED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__CREATED_ON;
	int PROPERTY__MODIFIED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__MODIFIED_ON;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int PROPERTY__NAME = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 0;

	/**
	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int PROPERTY__MULTIPLICITY = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 1;

	/**
	 * The feature id for the '<em><b>Is Primary Key</b></em>' attribute.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int PROPERTY__IS_PRIMARY_KEY = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 2;
	 * The number of structural features of the '<em>Property</em>' class.
	int PROPERTY_FEATURE_COUNT = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 3;
	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.AttributeImpl <em>Attribute</em>}' class.
	 * @see org.obeonetwork.dsl.entity.impl.AttributeImpl
	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getAttribute()
	int ATTRIBUTE = 4;
	int ATTRIBUTE__METADATAS = PROPERTY__METADATAS;
	int ATTRIBUTE__DESCRIPTION = PROPERTY__DESCRIPTION;
	int ATTRIBUTE__KEYWORDS = PROPERTY__KEYWORDS;
	int ATTRIBUTE__BEHAVIOURS = PROPERTY__BEHAVIOURS;
	int ATTRIBUTE__BINDING_REGISTRIES = PROPERTY__BINDING_REGISTRIES;
	int ATTRIBUTE__VERSION = PROPERTY__VERSION;
	int ATTRIBUTE__CREATED_ON = PROPERTY__CREATED_ON;
	int ATTRIBUTE__MODIFIED_ON = PROPERTY__MODIFIED_ON;
	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
	int ATTRIBUTE__NAME = PROPERTY__NAME;

	/**
	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ATTRIBUTE__MULTIPLICITY = PROPERTY__MULTIPLICITY;

	/**
	 * The feature id for the '<em><b>Is Primary Key</b></em>' attribute.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ATTRIBUTE__IS_PRIMARY_KEY = PROPERTY__IS_PRIMARY_KEY;

	/**
	 * The feature id for the '<em><b>Entity</b></em>' container reference.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ATTRIBUTE__ENTITY = PROPERTY_FEATURE_COUNT + 0;
	 * The feature id for the '<em><b>Type</b></em>' reference. <!--
	int ATTRIBUTE__TYPE = PROPERTY_FEATURE_COUNT + 1;
	 * The number of structural features of the '<em>Attribute</em>' class.
	int ATTRIBUTE_FEATURE_COUNT = PROPERTY_FEATURE_COUNT + 2;
	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.ReferenceImpl <em>Reference</em>}' class.
	 * @see org.obeonetwork.dsl.entity.impl.ReferenceImpl
	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getReference()
	int REFERENCE = 5;
	int REFERENCE__METADATAS = PROPERTY__METADATAS;
	int REFERENCE__DESCRIPTION = PROPERTY__DESCRIPTION;
	int REFERENCE__KEYWORDS = PROPERTY__KEYWORDS;
	int REFERENCE__BEHAVIOURS = PROPERTY__BEHAVIOURS;
	int REFERENCE__BINDING_REGISTRIES = PROPERTY__BINDING_REGISTRIES;
	int REFERENCE__VERSION = PROPERTY__VERSION;
	int REFERENCE__CREATED_ON = PROPERTY__CREATED_ON;
	int REFERENCE__MODIFIED_ON = PROPERTY__MODIFIED_ON;
	int REFERENCE__NAME = PROPERTY__NAME;
	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REFERENCE__MULTIPLICITY = PROPERTY__MULTIPLICITY;

	/**
	 * The feature id for the '<em><b>Is Primary Key</b></em>' attribute.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REFERENCE__IS_PRIMARY_KEY = PROPERTY__IS_PRIMARY_KEY;

	/**
	 * The feature id for the '<em><b>Entity</b></em>' container reference.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REFERENCE__ENTITY = PROPERTY_FEATURE_COUNT + 0;

	/**
	 * The feature id for the '<em><b>Is Composite</b></em>' attribute.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REFERENCE__IS_COMPOSITE = PROPERTY_FEATURE_COUNT + 1;

	/**
	 * The feature id for the '<em><b>Opposite Of</b></em>' reference. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int REFERENCE__OPPOSITE_OF = PROPERTY_FEATURE_COUNT + 2;

	/**
	 * The feature id for the '<em><b>Type</b></em>' reference. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int REFERENCE__TYPE = PROPERTY_FEATURE_COUNT + 3;

	/**
	 * The feature id for the '<em><b>Navigable</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int REFERENCE__NAVIGABLE = PROPERTY_FEATURE_COUNT + 4;

	/**
	 * The number of structural features of the '<em>Reference</em>' class.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REFERENCE_FEATURE_COUNT = PROPERTY_FEATURE_COUNT + 5;

	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.FinderImpl <em>Finder</em>}' class.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.entity.impl.FinderImpl
	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getFinder()
	 * @generated
	 */
	int FINDER = 6;

	/**
	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FINDER__METADATAS = EnvironmentPackage.OBEO_DSM_OBJECT__METADATAS;

	/**
	 * The feature id for the '<em><b>Description</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FINDER__DESCRIPTION = EnvironmentPackage.OBEO_DSM_OBJECT__DESCRIPTION;

	/**
	 * The feature id for the '<em><b>Keywords</b></em>' attribute list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FINDER__KEYWORDS = EnvironmentPackage.OBEO_DSM_OBJECT__KEYWORDS;

	/**
	 * The feature id for the '<em><b>Behaviours</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FINDER__BEHAVIOURS = EnvironmentPackage.OBEO_DSM_OBJECT__BEHAVIOURS;

	/**
	 * The feature id for the '<em><b>Binding Registries</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FINDER__BINDING_REGISTRIES = EnvironmentPackage.OBEO_DSM_OBJECT__BINDING_REGISTRIES;

	/**
	 * The feature id for the '<em><b>Version</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FINDER__VERSION = EnvironmentPackage.OBEO_DSM_OBJECT__VERSION;

	/**
	 * The feature id for the '<em><b>Created On</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FINDER__CREATED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__CREATED_ON;

	/**
	 * The feature id for the '<em><b>Modified On</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FINDER__MODIFIED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__MODIFIED_ON;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int FINDER__NAME = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 0;

	/**
	 * The feature id for the '<em><b>Entity</b></em>' container reference.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FINDER__ENTITY = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 1;

	/**
	 * The feature id for the '<em><b>Customized Name</b></em>' attribute.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FINDER__CUSTOMIZED_NAME = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 2;

	/**
	 * The feature id for the '<em><b>Criterions</b></em>' containment reference list.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FINDER__CRITERIONS = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 3;

	/**
	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FINDER__MULTIPLICITY = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 4;

	/**
	 * The number of structural features of the '<em>Finder</em>' class.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int FINDER_FEATURE_COUNT = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 5;

	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.CriterionImpl <em>Criterion</em>}' class.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.entity.impl.CriterionImpl
	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getCriterion()
	 * @generated
	 */
	int CRITERION = 8;

	/**
	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int CRITERION__METADATAS = EnvironmentPackage.OBEO_DSM_OBJECT__METADATAS;

	/**
	 * The feature id for the '<em><b>Description</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int CRITERION__DESCRIPTION = EnvironmentPackage.OBEO_DSM_OBJECT__DESCRIPTION;

	/**
	 * The feature id for the '<em><b>Keywords</b></em>' attribute list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int CRITERION__KEYWORDS = EnvironmentPackage.OBEO_DSM_OBJECT__KEYWORDS;

	/**
	 * The feature id for the '<em><b>Behaviours</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int CRITERION__BEHAVIOURS = EnvironmentPackage.OBEO_DSM_OBJECT__BEHAVIOURS;

	/**
	 * The feature id for the '<em><b>Binding Registries</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int CRITERION__BINDING_REGISTRIES = EnvironmentPackage.OBEO_DSM_OBJECT__BINDING_REGISTRIES;

	/**
	 * The feature id for the '<em><b>Version</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int CRITERION__VERSION = EnvironmentPackage.OBEO_DSM_OBJECT__VERSION;

	/**
	 * The feature id for the '<em><b>Created On</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int CRITERION__CREATED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__CREATED_ON;

	/**
	 * The feature id for the '<em><b>Modified On</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int CRITERION__MODIFIED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__MODIFIED_ON;

	/**
	 * The number of structural features of the '<em>Criterion</em>' class.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int CRITERION_FEATURE_COUNT = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 0;

	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.InternalCriterionImpl <em>Internal Criterion</em>}' class.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.entity.impl.InternalCriterionImpl
	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getInternalCriterion()
	 * @generated
	 */
	int INTERNAL_CRITERION = 7;

	/**
	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int INTERNAL_CRITERION__METADATAS = CRITERION__METADATAS;

	/**
	 * The feature id for the '<em><b>Description</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int INTERNAL_CRITERION__DESCRIPTION = CRITERION__DESCRIPTION;

	/**
	 * The feature id for the '<em><b>Keywords</b></em>' attribute list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int INTERNAL_CRITERION__KEYWORDS = CRITERION__KEYWORDS;

	/**
	 * The feature id for the '<em><b>Behaviours</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int INTERNAL_CRITERION__BEHAVIOURS = CRITERION__BEHAVIOURS;

	/**
	 * The feature id for the '<em><b>Binding Registries</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int INTERNAL_CRITERION__BINDING_REGISTRIES = CRITERION__BINDING_REGISTRIES;

	/**
	 * The feature id for the '<em><b>Version</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int INTERNAL_CRITERION__VERSION = CRITERION__VERSION;

	/**
	 * The feature id for the '<em><b>Created On</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int INTERNAL_CRITERION__CREATED_ON = CRITERION__CREATED_ON;

	/**
	 * The feature id for the '<em><b>Modified On</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int INTERNAL_CRITERION__MODIFIED_ON = CRITERION__MODIFIED_ON;

	/**
	 * The feature id for the '<em><b>Target</b></em>' reference. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int INTERNAL_CRITERION__TARGET = CRITERION_FEATURE_COUNT + 0;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int INTERNAL_CRITERION__NAME = CRITERION_FEATURE_COUNT + 1;

	/**
	 * The number of structural features of the '<em>Internal Criterion</em>' class.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int INTERNAL_CRITERION_FEATURE_COUNT = CRITERION_FEATURE_COUNT + 2;

	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.ExternalCriterionImpl <em>External Criterion</em>}' class.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.entity.impl.ExternalCriterionImpl
	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getExternalCriterion()
	 * @generated
	 */
	int EXTERNAL_CRITERION = 9;

	/**
	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int EXTERNAL_CRITERION__METADATAS = CRITERION__METADATAS;

	/**
	 * The feature id for the '<em><b>Description</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int EXTERNAL_CRITERION__DESCRIPTION = CRITERION__DESCRIPTION;

	/**
	 * The feature id for the '<em><b>Keywords</b></em>' attribute list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int EXTERNAL_CRITERION__KEYWORDS = CRITERION__KEYWORDS;

	/**
	 * The feature id for the '<em><b>Behaviours</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int EXTERNAL_CRITERION__BEHAVIOURS = CRITERION__BEHAVIOURS;

	/**
	 * The feature id for the '<em><b>Binding Registries</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int EXTERNAL_CRITERION__BINDING_REGISTRIES = CRITERION__BINDING_REGISTRIES;

	/**
	 * The feature id for the '<em><b>Version</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int EXTERNAL_CRITERION__VERSION = CRITERION__VERSION;

	/**
	 * The feature id for the '<em><b>Created On</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int EXTERNAL_CRITERION__CREATED_ON = CRITERION__CREATED_ON;

	/**
	 * The feature id for the '<em><b>Modified On</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int EXTERNAL_CRITERION__MODIFIED_ON = CRITERION__MODIFIED_ON;

	/**
	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int EXTERNAL_CRITERION__NAME = CRITERION_FEATURE_COUNT + 0;

	/**
	 * The feature id for the '<em><b>Type</b></em>' reference. <!--
	 * begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated
	 * @ordered
	 */
	int EXTERNAL_CRITERION__TYPE = CRITERION_FEATURE_COUNT + 1;

	/**
	 * The number of structural features of the '<em>External Criterion</em>' class.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int EXTERNAL_CRITERION_FEATURE_COUNT = CRITERION_FEATURE_COUNT + 2;

	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.InheritanceKind <em>Inheritance Kind</em>}' enum.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.entity.InheritanceKind
	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getInheritanceKind()
	 * @generated
	 */
	int INHERITANCE_KIND = 10;

	/**
	 * Returns the meta object for class '{@link org.obeonetwork.dsl.entity.Root <em>Root</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for class '<em>Root</em>'.
	 * @see org.obeonetwork.dsl.entity.Root
	 * @generated
	 */
	EClass getRoot();

	/**
	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.entity.Root#getBlocks <em>Blocks</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Blocks</em>'.
	 * @see org.obeonetwork.dsl.entity.Root#getBlocks()
	 * @see #getRoot()
	 * @generated
	 */
	EReference getRoot_Blocks();

	/**
	 * Returns the meta object for class '{@link org.obeonetwork.dsl.entity.Block <em>Block</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for class '<em>Block</em>'.
	 * @see org.obeonetwork.dsl.entity.Block
	 * @generated
	 */
	EClass getBlock();

	/**
	 * Returns the meta object for the attribute '{@link org.obeonetwork.dsl.entity.Block#getName <em>Name</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see org.obeonetwork.dsl.entity.Block#getName()
	 * @see #getBlock()
	 * @generated
	 */
	EAttribute getBlock_Name();

	/**
	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.entity.Block#getEntities <em>Entities</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Entities</em>'.
	 * @see org.obeonetwork.dsl.entity.Block#getEntities()
	 * @see #getBlock()
	 * @generated
	 */
	EReference getBlock_Entities();

	/**
	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.entity.Block#getSubblocks <em>Subblocks</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Subblocks</em>'.
	 * @see org.obeonetwork.dsl.entity.Block#getSubblocks()
	 * @see #getBlock()
	 * @generated
	 */
	EReference getBlock_Subblocks();

	/**
	 * Returns the meta object for class '{@link org.obeonetwork.dsl.entity.Entity <em>Entity</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for class '<em>Entity</em>'.
	 * @see org.obeonetwork.dsl.entity.Entity
	EClass getEntity();
	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.entity.Entity#getOwnedAttributes <em>Owned Attributes</em>}'.
	 * @return the meta object for the containment reference list '<em>Owned Attributes</em>'.
	 * @see org.obeonetwork.dsl.entity.Entity#getOwnedAttributes()
	 * @see #getEntity()
	EReference getEntity_OwnedAttributes();
	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.entity.Entity#getOwnedReferences <em>Owned References</em>}'.
	 * @return the meta object for the containment reference list '<em>Owned References</em>'.
	 * @see org.obeonetwork.dsl.entity.Entity#getOwnedReferences()
	 * @see #getEntity()
	EReference getEntity_OwnedReferences();
	 * Returns the meta object for the reference '{@link org.obeonetwork.dsl.entity.Entity#getSupertype <em>Supertype</em>}'.
	 * @return the meta object for the reference '<em>Supertype</em>'.
	 * @see org.obeonetwork.dsl.entity.Entity#getSupertype()
	 * @see #getEntity()
	EReference getEntity_Supertype();
	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.entity.Entity#getAttributes <em>Attributes</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for the reference list '<em>Attributes</em>'.
	 * @see org.obeonetwork.dsl.entity.Entity#getAttributes()
	 * @see #getEntity()
	EReference getEntity_Attributes();
	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.entity.Entity#getReferences <em>References</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for the reference list '<em>References</em>'.
	 * @see org.obeonetwork.dsl.entity.Entity#getReferences()
	 * @see #getEntity()
	EReference getEntity_References();
	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.entity.Entity#getProperties <em>Properties</em>}'.
	 * @return the meta object for the reference list '<em>Properties</em>'.
	 * @see org.obeonetwork.dsl.entity.Entity#getProperties()
	 * @see #getEntity()
	EReference getEntity_Properties();
	/**
	 * Returns the meta object for the container reference '{@link org.obeonetwork.dsl.entity.Entity#getBlock <em>Block</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for the container reference '<em>Block</em>'.
	 * @see org.obeonetwork.dsl.entity.Entity#getBlock()
	 * @see #getEntity()
	 * @generated
	 */
	EReference getEntity_Block();

	/**
	 * Returns the meta object for class '{@link org.obeonetwork.dsl.entity.Property <em>Property</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for class '<em>Property</em>'.
	 * @see org.obeonetwork.dsl.entity.Property
	 * @generated
	 */
	EClass getProperty();

	/**
	 * Returns the meta object for the attribute '{@link org.obeonetwork.dsl.entity.Property#getName <em>Name</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Name</em>'.
	 * @see org.obeonetwork.dsl.entity.Property#getName()
	 * @see #getProperty()
	 * @generated
	 */
	EAttribute getProperty_Name();

	/**
	 * Returns the meta object for the attribute '{@link org.obeonetwork.dsl.entity.Property#getMultiplicity <em>Multiplicity</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Multiplicity</em>'.
	 * @see org.obeonetwork.dsl.entity.Property#getMultiplicity()
	 * @see #getProperty()
	 * @generated
	 */
	EAttribute getProperty_Multiplicity();

	/**
	 * Returns the meta object for the attribute '{@link org.obeonetwork.dsl.entity.Property#isIsPrimaryKey <em>Is Primary Key</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Is Primary Key</em>'.
	 * @see org.obeonetwork.dsl.entity.Property#isIsPrimaryKey()
	 * @see #getProperty()
	 * @generated
	 */
	EAttribute getProperty_IsPrimaryKey();

	/**
	 * Returns the meta object for class '{@link org.obeonetwork.dsl.entity.Attribute <em>Attribute</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for class '<em>Attribute</em>'.
	 * @see org.obeonetwork.dsl.entity.Attribute
	 * @generated
	 */
	EClass getAttribute();

	/**
	 * Returns the meta object for the container reference '{@link org.obeonetwork.dsl.entity.Attribute#getEntity <em>Entity</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for the container reference '<em>Entity</em>'.
	 * @see org.obeonetwork.dsl.entity.Attribute#getEntity()
	 * @see #getAttribute()
	 * @generated
	 */
	EReference getAttribute_Entity();

	/**
	 * Returns the meta object for the reference '{@link org.obeonetwork.dsl.entity.Attribute#getType <em>Type</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Type</em>'.
	 * @see org.obeonetwork.dsl.entity.Attribute#getType()
	 * @see #getAttribute()
	 * @generated
	 */
	EReference getAttribute_Type();

	/**
	 * Returns the meta object for class '{@link org.obeonetwork.dsl.entity.Reference <em>Reference</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for class '<em>Reference</em>'.
	 * @see org.obeonetwork.dsl.entity.Reference
	 * @generated
	 */
	EClass getReference();

	/**
	 * Returns the meta object for the container reference '{@link org.obeonetwork.dsl.entity.Reference#getEntity <em>Entity</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for the container reference '<em>Entity</em>'.
	 * @see org.obeonetwork.dsl.entity.Reference#getEntity()
	 * @see #getReference()
	 * @generated
	 */
	EReference getReference_Entity();

	/**
	 * Returns the meta object for the attribute '{@link org.obeonetwork.dsl.entity.Reference#isIsComposite <em>Is Composite</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Is Composite</em>'.
	 * @see org.obeonetwork.dsl.entity.Reference#isIsComposite()
	 * @see #getReference()
	 * @generated
	 */
	EAttribute getReference_IsComposite();

	/**
	 * Returns the meta object for the reference '{@link org.obeonetwork.dsl.entity.Reference#getOppositeOf <em>Opposite Of</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Opposite Of</em>'.
	 * @see org.obeonetwork.dsl.entity.Reference#getOppositeOf()
	 * @see #getReference()
	 * @generated
	 */
	EReference getReference_OppositeOf();

	/**
	 * Returns the meta object for the reference '{@link org.obeonetwork.dsl.entity.Reference#getType <em>Type</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for the reference '<em>Type</em>'.
	 * @see org.obeonetwork.dsl.entity.Reference#getType()
	 * @see #getReference()
	 * @generated
	 */
	EReference getReference_Type();

	/**
	 * Returns the meta object for the attribute '{@link org.obeonetwork.dsl.entity.Reference#isNavigable <em>Navigable</em>}'.
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Navigable</em>'.
	 * @see org.obeonetwork.dsl.entity.Reference#isNavigable()
	 * @see #getReference()
	 * @generated
	 */
	EAttribute getReference_Navigable();

		/**
		 * The meta object literal for the '<em><b>Blocks</b></em>' containment reference list feature.
		 * <!-- begin-user-doc --> <!--
		 * end-user-doc -->
		 * @generated
		 */
		EReference ROOT__BLOCKS = eINSTANCE.getRoot_Blocks();

		/**
		 * The meta object literal for the '{@link org.obeonetwork.dsl.entity.impl.BlockImpl <em>Block</em>}' class.
		 * <!-- begin-user-doc --> <!-- end-user-doc -->
		 * @see org.obeonetwork.dsl.entity.impl.BlockImpl
		 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getBlock()
		 * @generated
		 */
		EClass BLOCK = eINSTANCE.getBlock();

		 * <!-- begin-user-doc --> <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute BLOCK__NAME = eINSTANCE.getBlock_Name();

		/**
		 * The meta object literal for the '<em><b>Entities</b></em>' containment reference list feature.
		 * <!-- begin-user-doc --> <!--
		 * end-user-doc -->
		EReference BLOCK__ENTITIES = eINSTANCE.getBlock_Entities();
		 * The meta object literal for the '<em><b>Subblocks</b></em>' containment reference list feature.
		 * <!-- begin-user-doc --> <!--
		 * end-user-doc -->
		EReference BLOCK__SUBBLOCKS = eINSTANCE.getBlock_Subblocks();
		/**
		 * The meta object literal for the '<em><b>Owned Attributes</b></em>' containment reference list feature.
		 * <!-- begin-user-doc --> <!--
		 * end-user-doc -->
		 * @generated
		 */
		EReference ENTITY__OWNED_ATTRIBUTES = eINSTANCE.getEntity_OwnedAttributes();

		/**
		 * The meta object literal for the '<em><b>Owned References</b></em>' containment reference list feature.
		 * <!-- begin-user-doc --> <!--
		 * end-user-doc -->
		 * @generated
		 */
		EReference ENTITY__OWNED_REFERENCES = eINSTANCE.getEntity_OwnedReferences();

		/**
		 * The meta object literal for the '<em><b>Supertype</b></em>' reference feature.
		 * <!-- begin-user-doc --> <!-- end-user-doc -->
		 * @generated
		 */
		EReference ENTITY__SUPERTYPE = eINSTANCE.getEntity_Supertype();

		/**
		 * The meta object literal for the '<em><b>Attributes</b></em>' reference list feature.
		 * <!-- begin-user-doc --> <!-- end-user-doc -->
		 * @generated
		 */
		EReference ENTITY__ATTRIBUTES = eINSTANCE.getEntity_Attributes();

		/**
		 * The meta object literal for the '<em><b>References</b></em>' reference list feature.
		 * <!-- begin-user-doc --> <!-- end-user-doc -->
		 * @generated
		 */
		EReference ENTITY__REFERENCES = eINSTANCE.getEntity_References();

		/**
		 * The meta object literal for the '<em><b>Properties</b></em>' reference list feature.
		 * <!-- begin-user-doc --> <!-- end-user-doc -->
		 * @generated
		 */
		EReference ENTITY__PROPERTIES = eINSTANCE.getEntity_Properties();

		/**
		 * The meta object literal for the '<em><b>Block</b></em>' container reference feature.
		 * <!-- begin-user-doc --> <!--
		 * end-user-doc -->
		 * @generated
		 */
		EReference ENTITY__BLOCK = eINSTANCE.getEntity_Block();

		/**
		 * The meta object literal for the '{@link org.obeonetwork.dsl.entity.impl.PropertyImpl <em>Property</em>}' class.
		 * <!-- begin-user-doc --> <!-- end-user-doc -->
		 * @see org.obeonetwork.dsl.entity.impl.PropertyImpl
		 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getProperty()
		 * @generated
		 */
		EClass PROPERTY = eINSTANCE.getProperty();

		/**
		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
		 * <!-- begin-user-doc --> <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute PROPERTY__NAME = eINSTANCE.getProperty_Name();

		/**
		 * The meta object literal for the '<em><b>Multiplicity</b></em>' attribute feature.
		 * <!-- begin-user-doc --> <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute PROPERTY__MULTIPLICITY = eINSTANCE.getProperty_Multiplicity();

		/**
		 * The meta object literal for the '<em><b>Is Primary Key</b></em>' attribute feature.
		 * <!-- begin-user-doc --> <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute PROPERTY__IS_PRIMARY_KEY = eINSTANCE.getProperty_IsPrimaryKey();

		/**
		 * The meta object literal for the '{@link org.obeonetwork.dsl.entity.impl.AttributeImpl <em>Attribute</em>}' class.
		 * <!-- begin-user-doc --> <!-- end-user-doc -->
		 * @see org.obeonetwork.dsl.entity.impl.AttributeImpl
		 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getAttribute()
		 * @generated
		 */
		EClass ATTRIBUTE = eINSTANCE.getAttribute();

		/**
		 * The meta object literal for the '<em><b>Entity</b></em>' container reference feature.
		 * <!-- begin-user-doc --> <!--
		 * end-user-doc -->
		 * @generated
		 */
		EReference ATTRIBUTE__ENTITY = eINSTANCE.getAttribute_Entity();

		/**
		 * The meta object literal for the '<em><b>Type</b></em>' reference feature.
		 * <!-- begin-user-doc --> <!-- end-user-doc -->
		 * @generated
		 */
		EReference ATTRIBUTE__TYPE = eINSTANCE.getAttribute_Type();

		/**
		 * The meta object literal for the '{@link org.obeonetwork.dsl.entity.impl.ReferenceImpl <em>Reference</em>}' class.
		 * <!-- begin-user-doc --> <!-- end-user-doc -->
		 * @see org.obeonetwork.dsl.entity.impl.ReferenceImpl
		 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getReference()
		 * @generated
		 */
		EClass REFERENCE = eINSTANCE.getReference();

		/**
		 * The meta object literal for the '<em><b>Entity</b></em>' container reference feature.
		 * <!-- begin-user-doc --> <!--
		 * end-user-doc -->
		 * @generated
		 */
		EReference REFERENCE__ENTITY = eINSTANCE.getReference_Entity();

		/**
		 * The meta object literal for the '<em><b>Is Composite</b></em>' attribute feature.
		 * <!-- begin-user-doc --> <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute REFERENCE__IS_COMPOSITE = eINSTANCE.getReference_IsComposite();

		/**
		 * The meta object literal for the '<em><b>Opposite Of</b></em>' reference feature.
		 * <!-- begin-user-doc --> <!-- end-user-doc -->
		 * @generated
		 */
		EReference REFERENCE__OPPOSITE_OF = eINSTANCE.getReference_OppositeOf();

		/**
		 * The meta object literal for the '<em><b>Type</b></em>' reference feature.
		 * <!-- begin-user-doc --> <!-- end-user-doc -->
		 * @generated
		 */
		EReference REFERENCE__TYPE = eINSTANCE.getReference_Type();

		/**
		 * The meta object literal for the '<em><b>Navigable</b></em>' attribute feature.
		 * <!-- begin-user-doc --> <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute REFERENCE__NAVIGABLE = eINSTANCE.getReference_Navigable();

@@ -53,7 +53,7 @@ public interface EntityPackage extends EPackage {
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 */
-	String eNS_URI = "http://www.obeonetwork.org/dsl/entity/2.0.0";
+	String eNS_URI = "http://www.obeonetwork.org/dsl/entity/3.0.0";
 
 	/**
 	 * The package namespace name.
@@ -85,7 +85,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int ROOT__METADATAS = EnvironmentPackage.NAMESPACE__METADATAS;
+	int ROOT__METADATAS = EnvironmentPackage.TYPES_DEFINITION__METADATAS;
 
 	/**
 	 * The feature id for the '<em><b>Description</b></em>' attribute.
@@ -94,7 +94,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int ROOT__DESCRIPTION = EnvironmentPackage.NAMESPACE__DESCRIPTION;
+	int ROOT__DESCRIPTION = EnvironmentPackage.TYPES_DEFINITION__DESCRIPTION;
 
 	/**
 	 * The feature id for the '<em><b>Keywords</b></em>' attribute list.
@@ -103,7 +103,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int ROOT__KEYWORDS = EnvironmentPackage.NAMESPACE__KEYWORDS;
+	int ROOT__KEYWORDS = EnvironmentPackage.TYPES_DEFINITION__KEYWORDS;
 
 	/**
 	 * The feature id for the '<em><b>Behaviours</b></em>' containment reference list.
@@ -112,7 +112,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int ROOT__BEHAVIOURS = EnvironmentPackage.NAMESPACE__BEHAVIOURS;
+	int ROOT__BEHAVIOURS = EnvironmentPackage.TYPES_DEFINITION__BEHAVIOURS;
 
 	/**
 	 * The feature id for the '<em><b>Binding Registries</b></em>' reference list.
@@ -121,7 +121,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int ROOT__BINDING_REGISTRIES = EnvironmentPackage.NAMESPACE__BINDING_REGISTRIES;
+	int ROOT__BINDING_REGISTRIES = EnvironmentPackage.TYPES_DEFINITION__BINDING_REGISTRIES;
 
 	/**
 	 * The feature id for the '<em><b>Version</b></em>' attribute.
@@ -130,7 +130,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int ROOT__VERSION = EnvironmentPackage.NAMESPACE__VERSION;
+	int ROOT__VERSION = EnvironmentPackage.TYPES_DEFINITION__VERSION;
 
 	/**
 	 * The feature id for the '<em><b>Created On</b></em>' attribute.
@@ -139,7 +139,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int ROOT__CREATED_ON = EnvironmentPackage.NAMESPACE__CREATED_ON;
+	int ROOT__CREATED_ON = EnvironmentPackage.TYPES_DEFINITION__CREATED_ON;
 
 	/**
 	 * The feature id for the '<em><b>Modified On</b></em>' attribute.
@@ -148,42 +148,34 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int ROOT__MODIFIED_ON = EnvironmentPackage.NAMESPACE__MODIFIED_ON;
+	int ROOT__MODIFIED_ON = EnvironmentPackage.TYPES_DEFINITION__MODIFIED_ON;
 
 	/**
-	 * The feature id for the '<em><b>Owned Namespaces</b></em>' containment reference list.
+	 * The feature id for the '<em><b>Types</b></em>' containment reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ROOT__OWNED_NAMESPACES = EnvironmentPackage.NAMESPACE__OWNED_NAMESPACES;
+	int ROOT__TYPES = EnvironmentPackage.TYPES_DEFINITION__TYPES;
 
 	/**
-	 * The feature id for the '<em><b>Owner</b></em>' container reference.
+	 * The feature id for the '<em><b>Name</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ROOT__OWNER = EnvironmentPackage.NAMESPACE__OWNER;
+	int ROOT__NAME = EnvironmentPackage.TYPES_DEFINITION_FEATURE_COUNT + 0;
 
 	/**
-	 * The feature id for the '<em><b>Name</b></em>' attribute.
+	 * The feature id for the '<em><b>Namespaces</b></em>' containment reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ROOT__NAME = EnvironmentPackage.NAMESPACE__NAME;
-
-	/**
-	 * The feature id for the '<em><b>Blocks</b></em>' containment reference list.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int ROOT__BLOCKS = EnvironmentPackage.NAMESPACE_FEATURE_COUNT + 0;
+	int ROOT__NAMESPACES = EnvironmentPackage.TYPES_DEFINITION_FEATURE_COUNT + 1;
 
 	/**
 	 * The number of structural features of the '<em>Root</em>' class. <!--
@@ -192,24 +184,24 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int ROOT_FEATURE_COUNT = EnvironmentPackage.NAMESPACE_FEATURE_COUNT + 1;
+	int ROOT_FEATURE_COUNT = EnvironmentPackage.TYPES_DEFINITION_FEATURE_COUNT + 2;
 
 	/**
-	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.BlockImpl <em>Block</em>}' class.
+	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.EntityImpl <em>Entity</em>}' class.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @see org.obeonetwork.dsl.entity.impl.BlockImpl
-	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getBlock()
+	 * @see org.obeonetwork.dsl.entity.impl.EntityImpl
+	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getEntity()
 	 * @generated
 	 */
-	int BLOCK = 1;
+	int ENTITY = 1;
 
 	/**
 	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int BLOCK__METADATAS = EnvironmentPackage.OBEO_DSM_OBJECT__METADATAS;
+	int ENTITY__METADATAS = EnvironmentPackage.STRUCTURED_TYPE__METADATAS;
 
 	/**
 	 * The feature id for the '<em><b>Description</b></em>' attribute.
@@ -218,7 +210,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int BLOCK__DESCRIPTION = EnvironmentPackage.OBEO_DSM_OBJECT__DESCRIPTION;
+	int ENTITY__DESCRIPTION = EnvironmentPackage.STRUCTURED_TYPE__DESCRIPTION;
 
 	/**
 	 * The feature id for the '<em><b>Keywords</b></em>' attribute list.
@@ -227,7 +219,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int BLOCK__KEYWORDS = EnvironmentPackage.OBEO_DSM_OBJECT__KEYWORDS;
+	int ENTITY__KEYWORDS = EnvironmentPackage.STRUCTURED_TYPE__KEYWORDS;
 
 	/**
 	 * The feature id for the '<em><b>Behaviours</b></em>' containment reference list.
@@ -236,7 +228,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int BLOCK__BEHAVIOURS = EnvironmentPackage.OBEO_DSM_OBJECT__BEHAVIOURS;
+	int ENTITY__BEHAVIOURS = EnvironmentPackage.STRUCTURED_TYPE__BEHAVIOURS;
 
 	/**
 	 * The feature id for the '<em><b>Binding Registries</b></em>' reference list.
@@ -245,7 +237,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int BLOCK__BINDING_REGISTRIES = EnvironmentPackage.OBEO_DSM_OBJECT__BINDING_REGISTRIES;
+	int ENTITY__BINDING_REGISTRIES = EnvironmentPackage.STRUCTURED_TYPE__BINDING_REGISTRIES;
 
 	/**
 	 * The feature id for the '<em><b>Version</b></em>' attribute.
@@ -254,7 +246,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int BLOCK__VERSION = EnvironmentPackage.OBEO_DSM_OBJECT__VERSION;
+	int ENTITY__VERSION = EnvironmentPackage.STRUCTURED_TYPE__VERSION;
 
 	/**
 	 * The feature id for the '<em><b>Created On</b></em>' attribute.
@@ -263,7 +255,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int BLOCK__CREATED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__CREATED_ON;
+	int ENTITY__CREATED_ON = EnvironmentPackage.STRUCTURED_TYPE__CREATED_ON;
 
 	/**
 	 * The feature id for the '<em><b>Modified On</b></em>' attribute.
@@ -272,7 +264,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int BLOCK__MODIFIED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__MODIFIED_ON;
+	int ENTITY__MODIFIED_ON = EnvironmentPackage.STRUCTURED_TYPE__MODIFIED_ON;
 
 	/**
 	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
@@ -281,252 +273,269 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int BLOCK__NAME = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 0;
+	int ENTITY__NAME = EnvironmentPackage.STRUCTURED_TYPE__NAME;
 
 	/**
-	 * The feature id for the '<em><b>Entities</b></em>' containment reference list.
+	 * The feature id for the '<em><b>Type Definition</b></em>' container reference.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int BLOCK__ENTITIES = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 1;
+	int ENTITY__TYPE_DEFINITION = EnvironmentPackage.STRUCTURED_TYPE__TYPE_DEFINITION;
 
 	/**
-	 * The feature id for the '<em><b>Subblocks</b></em>' containment reference list.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * The feature id for the '<em><b>Supertype</b></em>' reference. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
 	 * @generated
 	 * @ordered
 	 */
-	int BLOCK__SUBBLOCKS = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 2;
+	int ENTITY__SUPERTYPE = EnvironmentPackage.STRUCTURED_TYPE__SUPERTYPE;
 
 	/**
-	 * The number of structural features of the '<em>Block</em>' class. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
+	 * The feature id for the '<em><b>Associated Types</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int BLOCK_FEATURE_COUNT = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 3;
+	int ENTITY__ASSOCIATED_TYPES = EnvironmentPackage.STRUCTURED_TYPE__ASSOCIATED_TYPES;
 
 	/**
-	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.EntityImpl <em>Entity</em>}' class.
+	 * The feature id for the '<em><b>Owned Attributes</b></em>' containment reference list.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @see org.obeonetwork.dsl.entity.impl.EntityImpl
-	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getEntity()
 	 * @generated
+	 * @ordered
 	 */
-	int ENTITY = 2;
+	int ENTITY__OWNED_ATTRIBUTES = EnvironmentPackage.STRUCTURED_TYPE__OWNED_ATTRIBUTES;
 
 	/**
-	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
+	 * The feature id for the '<em><b>Attributes</b></em>' reference list.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__METADATAS = EnvironmentPackage.STRUCTURED_TYPE__METADATAS;
+	int ENTITY__ATTRIBUTES = EnvironmentPackage.STRUCTURED_TYPE__ATTRIBUTES;
 
 	/**
-	 * The feature id for the '<em><b>Description</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
+	 * The feature id for the '<em><b>Owned References</b></em>' containment reference list.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__DESCRIPTION = EnvironmentPackage.STRUCTURED_TYPE__DESCRIPTION;
+	int ENTITY__OWNED_REFERENCES = EnvironmentPackage.STRUCTURED_TYPE__OWNED_REFERENCES;
 
 	/**
-	 * The feature id for the '<em><b>Keywords</b></em>' attribute list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
+	 * The feature id for the '<em><b>References</b></em>' reference list.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__KEYWORDS = EnvironmentPackage.STRUCTURED_TYPE__KEYWORDS;
+	int ENTITY__REFERENCES = EnvironmentPackage.STRUCTURED_TYPE__REFERENCES;
 
 	/**
-	 * The feature id for the '<em><b>Behaviours</b></em>' containment reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
+	 * The feature id for the '<em><b>Properties</b></em>' reference list.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__BEHAVIOURS = EnvironmentPackage.STRUCTURED_TYPE__BEHAVIOURS;
+	int ENTITY__PROPERTIES = EnvironmentPackage.STRUCTURED_TYPE__PROPERTIES;
 
 	/**
-	 * The feature id for the '<em><b>Binding Registries</b></em>' reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
+	 * The feature id for the '<em><b>Estimated Volumetry</b></em>' attribute.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__BINDING_REGISTRIES = EnvironmentPackage.STRUCTURED_TYPE__BINDING_REGISTRIES;
+	int ENTITY__ESTIMATED_VOLUMETRY = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 0;
 
 	/**
-	 * The feature id for the '<em><b>Version</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
+	 * The feature id for the '<em><b>Estimated Access</b></em>' attribute.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__VERSION = EnvironmentPackage.STRUCTURED_TYPE__VERSION;
+	int ENTITY__ESTIMATED_ACCESS = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 1;
 
 	/**
-	 * The feature id for the '<em><b>Created On</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
+	 * The feature id for the '<em><b>Historized</b></em>' attribute. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__CREATED_ON = EnvironmentPackage.STRUCTURED_TYPE__CREATED_ON;
+	int ENTITY__HISTORIZED = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 2;
 
 	/**
-	 * The feature id for the '<em><b>Modified On</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
+	 * The feature id for the '<em><b>Owned Finders</b></em>' containment reference list.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__MODIFIED_ON = EnvironmentPackage.STRUCTURED_TYPE__MODIFIED_ON;
+	int ENTITY__OWNED_FINDERS = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 3;
 
 	/**
-	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
+	 * The feature id for the '<em><b>Inheritance Kind</b></em>' attribute.
+	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__NAME = EnvironmentPackage.STRUCTURED_TYPE__NAME;
+	int ENTITY__INHERITANCE_KIND = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 4;
 
 	/**
-	 * The feature id for the '<em><b>Type Definition</b></em>' container reference.
+	 * The number of structural features of the '<em>Entity</em>' class.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__TYPE_DEFINITION = EnvironmentPackage.STRUCTURED_TYPE__TYPE_DEFINITION;
+	int ENTITY_FEATURE_COUNT = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 5;
 
 	/**
-	 * The feature id for the '<em><b>Owned Attributes</b></em>' containment reference list.
+	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.FinderImpl <em>Finder</em>}' class.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * @see org.obeonetwork.dsl.entity.impl.FinderImpl
+	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getFinder()
 	 * @generated
-	 * @ordered
 	 */
-	int ENTITY__OWNED_ATTRIBUTES = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 0;
+	int FINDER = 2;
 
 	/**
-	 * The feature id for the '<em><b>Owned References</b></em>' containment reference list.
+	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__OWNED_REFERENCES = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 1;
+	int FINDER__METADATAS = EnvironmentPackage.OBEO_DSM_OBJECT__METADATAS;
 
 	/**
-	 * The feature id for the '<em><b>Supertype</b></em>' reference. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
+	 * The feature id for the '<em><b>Description</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__SUPERTYPE = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 2;
+	int FINDER__DESCRIPTION = EnvironmentPackage.OBEO_DSM_OBJECT__DESCRIPTION;
 
 	/**
-	 * The feature id for the '<em><b>Attributes</b></em>' reference list.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * The feature id for the '<em><b>Keywords</b></em>' attribute list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__ATTRIBUTES = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 3;
+	int FINDER__KEYWORDS = EnvironmentPackage.OBEO_DSM_OBJECT__KEYWORDS;
 
 	/**
-	 * The feature id for the '<em><b>References</b></em>' reference list.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * The feature id for the '<em><b>Behaviours</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__REFERENCES = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 4;
+	int FINDER__BEHAVIOURS = EnvironmentPackage.OBEO_DSM_OBJECT__BEHAVIOURS;
 
 	/**
-	 * The feature id for the '<em><b>Properties</b></em>' reference list.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * The feature id for the '<em><b>Binding Registries</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__PROPERTIES = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 5;
+	int FINDER__BINDING_REGISTRIES = EnvironmentPackage.OBEO_DSM_OBJECT__BINDING_REGISTRIES;
 
 	/**
-	 * The feature id for the '<em><b>Estimated Volumetry</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * The feature id for the '<em><b>Version</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__ESTIMATED_VOLUMETRY = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 6;
+	int FINDER__VERSION = EnvironmentPackage.OBEO_DSM_OBJECT__VERSION;
 
 	/**
-	 * The feature id for the '<em><b>Estimated Access</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * The feature id for the '<em><b>Created On</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__ESTIMATED_ACCESS = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 7;
+	int FINDER__CREATED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__CREATED_ON;
 
 	/**
-	 * The feature id for the '<em><b>Historized</b></em>' attribute. <!--
+	 * The feature id for the '<em><b>Modified On</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FINDER__MODIFIED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__MODIFIED_ON;
+
+	/**
+	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
 	 * begin-user-doc --> <!-- end-user-doc -->
 	 * 
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__HISTORIZED = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 8;
+	int FINDER__NAME = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 0;
 
 	/**
-	 * The feature id for the '<em><b>Owned Finders</b></em>' containment reference list.
+	 * The feature id for the '<em><b>Entity</b></em>' container reference.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__OWNED_FINDERS = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 9;
+	int FINDER__ENTITY = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 1;
 
 	/**
-	 * The feature id for the '<em><b>Block</b></em>' container reference.
+	 * The feature id for the '<em><b>Customized Name</b></em>' attribute.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__BLOCK = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 10;
+	int FINDER__CUSTOMIZED_NAME = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 2;
 
 	/**
-	 * The feature id for the '<em><b>Inheritance Kind</b></em>' attribute.
+	 * The feature id for the '<em><b>Criterions</b></em>' containment reference list.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY__INHERITANCE_KIND = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 11;
+	int FINDER__CRITERIONS = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 3;
 
 	/**
-	 * The number of structural features of the '<em>Entity</em>' class.
+	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int FINDER__MULTIPLICITY = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 4;
+
+	/**
+	 * The number of structural features of the '<em>Finder</em>' class.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENTITY_FEATURE_COUNT = EnvironmentPackage.STRUCTURED_TYPE_FEATURE_COUNT + 12;
+	int FINDER_FEATURE_COUNT = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 5;
 
 	/**
-	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.PropertyImpl <em>Property</em>}' class.
+	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.CriterionImpl <em>Criterion</em>}' class.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @see org.obeonetwork.dsl.entity.impl.PropertyImpl
-	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getProperty()
+	 * @see org.obeonetwork.dsl.entity.impl.CriterionImpl
+	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getCriterion()
 	 * @generated
 	 */
-	int PROPERTY = 3;
+	int CRITERION = 4;
 
 	/**
 	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int PROPERTY__METADATAS = EnvironmentPackage.OBEO_DSM_OBJECT__METADATAS;
+	int CRITERION__METADATAS = EnvironmentPackage.OBEO_DSM_OBJECT__METADATAS;
 
 	/**
 	 * The feature id for the '<em><b>Description</b></em>' attribute.
@@ -535,7 +544,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int PROPERTY__DESCRIPTION = EnvironmentPackage.OBEO_DSM_OBJECT__DESCRIPTION;
+	int CRITERION__DESCRIPTION = EnvironmentPackage.OBEO_DSM_OBJECT__DESCRIPTION;
 
 	/**
 	 * The feature id for the '<em><b>Keywords</b></em>' attribute list.
@@ -544,7 +553,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int PROPERTY__KEYWORDS = EnvironmentPackage.OBEO_DSM_OBJECT__KEYWORDS;
+	int CRITERION__KEYWORDS = EnvironmentPackage.OBEO_DSM_OBJECT__KEYWORDS;
 
 	/**
 	 * The feature id for the '<em><b>Behaviours</b></em>' containment reference list.
@@ -553,7 +562,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int PROPERTY__BEHAVIOURS = EnvironmentPackage.OBEO_DSM_OBJECT__BEHAVIOURS;
+	int CRITERION__BEHAVIOURS = EnvironmentPackage.OBEO_DSM_OBJECT__BEHAVIOURS;
 
 	/**
 	 * The feature id for the '<em><b>Binding Registries</b></em>' reference list.
@@ -562,7 +571,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int PROPERTY__BINDING_REGISTRIES = EnvironmentPackage.OBEO_DSM_OBJECT__BINDING_REGISTRIES;
+	int CRITERION__BINDING_REGISTRIES = EnvironmentPackage.OBEO_DSM_OBJECT__BINDING_REGISTRIES;
 
 	/**
 	 * The feature id for the '<em><b>Version</b></em>' attribute.
@@ -571,7 +580,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int PROPERTY__VERSION = EnvironmentPackage.OBEO_DSM_OBJECT__VERSION;
+	int CRITERION__VERSION = EnvironmentPackage.OBEO_DSM_OBJECT__VERSION;
 
 	/**
 	 * The feature id for the '<em><b>Created On</b></em>' attribute.
@@ -580,7 +589,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int PROPERTY__CREATED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__CREATED_ON;
+	int CRITERION__CREATED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__CREATED_ON;
 
 	/**
 	 * The feature id for the '<em><b>Modified On</b></em>' attribute.
@@ -589,57 +598,32 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int PROPERTY__MODIFIED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__MODIFIED_ON;
-
-	/**
-	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int PROPERTY__NAME = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 0;
-
-	/**
-	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int PROPERTY__MULTIPLICITY = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 1;
-
-	/**
-	 * The feature id for the '<em><b>Is Primary Key</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int PROPERTY__IS_PRIMARY_KEY = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 2;
+	int CRITERION__MODIFIED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__MODIFIED_ON;
 
 	/**
-	 * The number of structural features of the '<em>Property</em>' class.
+	 * The number of structural features of the '<em>Criterion</em>' class.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int PROPERTY_FEATURE_COUNT = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 3;
+	int CRITERION_FEATURE_COUNT = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 0;
 
 	/**
-	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.AttributeImpl <em>Attribute</em>}' class.
+	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.InternalCriterionImpl <em>Internal Criterion</em>}' class.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @see org.obeonetwork.dsl.entity.impl.AttributeImpl
-	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getAttribute()
+	 * @see org.obeonetwork.dsl.entity.impl.InternalCriterionImpl
+	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getInternalCriterion()
 	 * @generated
 	 */
-	int ATTRIBUTE = 4;
+	int INTERNAL_CRITERION = 3;
 
 	/**
 	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ATTRIBUTE__METADATAS = PROPERTY__METADATAS;
+	int INTERNAL_CRITERION__METADATAS = CRITERION__METADATAS;
 
 	/**
 	 * The feature id for the '<em><b>Description</b></em>' attribute.
@@ -648,7 +632,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int ATTRIBUTE__DESCRIPTION = PROPERTY__DESCRIPTION;
+	int INTERNAL_CRITERION__DESCRIPTION = CRITERION__DESCRIPTION;
 
 	/**
 	 * The feature id for the '<em><b>Keywords</b></em>' attribute list.
@@ -657,7 +641,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int ATTRIBUTE__KEYWORDS = PROPERTY__KEYWORDS;
+	int INTERNAL_CRITERION__KEYWORDS = CRITERION__KEYWORDS;
 
 	/**
 	 * The feature id for the '<em><b>Behaviours</b></em>' containment reference list.
@@ -666,7 +650,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int ATTRIBUTE__BEHAVIOURS = PROPERTY__BEHAVIOURS;
+	int INTERNAL_CRITERION__BEHAVIOURS = CRITERION__BEHAVIOURS;
 
 	/**
 	 * The feature id for the '<em><b>Binding Registries</b></em>' reference list.
@@ -675,7 +659,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int ATTRIBUTE__BINDING_REGISTRIES = PROPERTY__BINDING_REGISTRIES;
+	int INTERNAL_CRITERION__BINDING_REGISTRIES = CRITERION__BINDING_REGISTRIES;
 
 	/**
 	 * The feature id for the '<em><b>Version</b></em>' attribute.
@@ -684,7 +668,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int ATTRIBUTE__VERSION = PROPERTY__VERSION;
+	int INTERNAL_CRITERION__VERSION = CRITERION__VERSION;
 
 	/**
 	 * The feature id for the '<em><b>Created On</b></em>' attribute.
@@ -693,7 +677,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int ATTRIBUTE__CREATED_ON = PROPERTY__CREATED_ON;
+	int INTERNAL_CRITERION__CREATED_ON = CRITERION__CREATED_ON;
 
 	/**
 	 * The feature id for the '<em><b>Modified On</b></em>' attribute.
@@ -702,74 +686,50 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int ATTRIBUTE__MODIFIED_ON = PROPERTY__MODIFIED_ON;
+	int INTERNAL_CRITERION__MODIFIED_ON = CRITERION__MODIFIED_ON;
 
 	/**
-	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
+	 * The feature id for the '<em><b>Target</b></em>' reference. <!--
 	 * begin-user-doc --> <!-- end-user-doc -->
 	 * 
 	 * @generated
 	 * @ordered
 	 */
-	int ATTRIBUTE__NAME = PROPERTY__NAME;
-
-	/**
-	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int ATTRIBUTE__MULTIPLICITY = PROPERTY__MULTIPLICITY;
-
-	/**
-	 * The feature id for the '<em><b>Is Primary Key</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int ATTRIBUTE__IS_PRIMARY_KEY = PROPERTY__IS_PRIMARY_KEY;
-
-	/**
-	 * The feature id for the '<em><b>Entity</b></em>' container reference.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int ATTRIBUTE__ENTITY = PROPERTY_FEATURE_COUNT + 0;
+	int INTERNAL_CRITERION__TARGET = CRITERION_FEATURE_COUNT + 0;
 
 	/**
-	 * The feature id for the '<em><b>Type</b></em>' reference. <!--
+	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
 	 * begin-user-doc --> <!-- end-user-doc -->
 	 * 
 	 * @generated
 	 * @ordered
 	 */
-	int ATTRIBUTE__TYPE = PROPERTY_FEATURE_COUNT + 1;
+	int INTERNAL_CRITERION__NAME = CRITERION_FEATURE_COUNT + 1;
 
 	/**
-	 * The number of structural features of the '<em>Attribute</em>' class.
+	 * The number of structural features of the '<em>Internal Criterion</em>' class.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ATTRIBUTE_FEATURE_COUNT = PROPERTY_FEATURE_COUNT + 2;
+	int INTERNAL_CRITERION_FEATURE_COUNT = CRITERION_FEATURE_COUNT + 2;
 
 	/**
-	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.ReferenceImpl <em>Reference</em>}' class.
+	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.ExternalCriterionImpl <em>External Criterion</em>}' class.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @see org.obeonetwork.dsl.entity.impl.ReferenceImpl
-	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getReference()
+	 * @see org.obeonetwork.dsl.entity.impl.ExternalCriterionImpl
+	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getExternalCriterion()
 	 * @generated
 	 */
-	int REFERENCE = 5;
+	int EXTERNAL_CRITERION = 5;
 
 	/**
 	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int REFERENCE__METADATAS = PROPERTY__METADATAS;
+	int EXTERNAL_CRITERION__METADATAS = CRITERION__METADATAS;
 
 	/**
 	 * The feature id for the '<em><b>Description</b></em>' attribute.
@@ -778,7 +738,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int REFERENCE__DESCRIPTION = PROPERTY__DESCRIPTION;
+	int EXTERNAL_CRITERION__DESCRIPTION = CRITERION__DESCRIPTION;
 
 	/**
 	 * The feature id for the '<em><b>Keywords</b></em>' attribute list.
@@ -787,7 +747,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int REFERENCE__KEYWORDS = PROPERTY__KEYWORDS;
+	int EXTERNAL_CRITERION__KEYWORDS = CRITERION__KEYWORDS;
 
 	/**
 	 * The feature id for the '<em><b>Behaviours</b></em>' containment reference list.
@@ -796,7 +756,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int REFERENCE__BEHAVIOURS = PROPERTY__BEHAVIOURS;
+	int EXTERNAL_CRITERION__BEHAVIOURS = CRITERION__BEHAVIOURS;
 
 	/**
 	 * The feature id for the '<em><b>Binding Registries</b></em>' reference list.
@@ -805,7 +765,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int REFERENCE__BINDING_REGISTRIES = PROPERTY__BINDING_REGISTRIES;
+	int EXTERNAL_CRITERION__BINDING_REGISTRIES = CRITERION__BINDING_REGISTRIES;
 
 	/**
 	 * The feature id for the '<em><b>Version</b></em>' attribute.
@@ -814,7 +774,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int REFERENCE__VERSION = PROPERTY__VERSION;
+	int EXTERNAL_CRITERION__VERSION = CRITERION__VERSION;
 
 	/**
 	 * The feature id for the '<em><b>Created On</b></em>' attribute.
@@ -823,7 +783,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int REFERENCE__CREATED_ON = PROPERTY__CREATED_ON;
+	int EXTERNAL_CRITERION__CREATED_ON = CRITERION__CREATED_ON;
 
 	/**
 	 * The feature id for the '<em><b>Modified On</b></em>' attribute.
@@ -832,7 +792,7 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int REFERENCE__MODIFIED_ON = PROPERTY__MODIFIED_ON;
+	int EXTERNAL_CRITERION__MODIFIED_ON = CRITERION__MODIFIED_ON;
 
 	/**
 	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
@@ -841,640 +801,73 @@ public interface EntityPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int REFERENCE__NAME = PROPERTY__NAME;
+	int EXTERNAL_CRITERION__NAME = CRITERION_FEATURE_COUNT + 0;
 
 	/**
-	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int REFERENCE__MULTIPLICITY = PROPERTY__MULTIPLICITY;
-
-	/**
-	 * The feature id for the '<em><b>Is Primary Key</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int REFERENCE__IS_PRIMARY_KEY = PROPERTY__IS_PRIMARY_KEY;
-
-	/**
-	 * The feature id for the '<em><b>Entity</b></em>' container reference.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int REFERENCE__ENTITY = PROPERTY_FEATURE_COUNT + 0;
-
-	/**
-	 * The feature id for the '<em><b>Is Composite</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int REFERENCE__IS_COMPOSITE = PROPERTY_FEATURE_COUNT + 1;
-
-	/**
-	 * The feature id for the '<em><b>Opposite Of</b></em>' reference. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int REFERENCE__OPPOSITE_OF = PROPERTY_FEATURE_COUNT + 2;
-
-	/**
-	 * The feature id for the '<em><b>Type</b></em>' reference. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int REFERENCE__TYPE = PROPERTY_FEATURE_COUNT + 3;
-
-	/**
-	 * The feature id for the '<em><b>Navigable</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int REFERENCE__NAVIGABLE = PROPERTY_FEATURE_COUNT + 4;
-
-	/**
-	 * The number of structural features of the '<em>Reference</em>' class.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int REFERENCE_FEATURE_COUNT = PROPERTY_FEATURE_COUNT + 5;
-
-	/**
-	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.FinderImpl <em>Finder</em>}' class.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @see org.obeonetwork.dsl.entity.impl.FinderImpl
-	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getFinder()
-	 * @generated
-	 */
-	int FINDER = 6;
-
-	/**
-	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int FINDER__METADATAS = EnvironmentPackage.OBEO_DSM_OBJECT__METADATAS;
-
-	/**
-	 * The feature id for the '<em><b>Description</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int FINDER__DESCRIPTION = EnvironmentPackage.OBEO_DSM_OBJECT__DESCRIPTION;
-
-	/**
-	 * The feature id for the '<em><b>Keywords</b></em>' attribute list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int FINDER__KEYWORDS = EnvironmentPackage.OBEO_DSM_OBJECT__KEYWORDS;
-
-	/**
-	 * The feature id for the '<em><b>Behaviours</b></em>' containment reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int FINDER__BEHAVIOURS = EnvironmentPackage.OBEO_DSM_OBJECT__BEHAVIOURS;
-
-	/**
-	 * The feature id for the '<em><b>Binding Registries</b></em>' reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int FINDER__BINDING_REGISTRIES = EnvironmentPackage.OBEO_DSM_OBJECT__BINDING_REGISTRIES;
-
-	/**
-	 * The feature id for the '<em><b>Version</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int FINDER__VERSION = EnvironmentPackage.OBEO_DSM_OBJECT__VERSION;
-
-	/**
-	 * The feature id for the '<em><b>Created On</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int FINDER__CREATED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__CREATED_ON;
-
-	/**
-	 * The feature id for the '<em><b>Modified On</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int FINDER__MODIFIED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__MODIFIED_ON;
-
-	/**
-	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int FINDER__NAME = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 0;
-
-	/**
-	 * The feature id for the '<em><b>Entity</b></em>' container reference.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int FINDER__ENTITY = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 1;
-
-	/**
-	 * The feature id for the '<em><b>Customized Name</b></em>' attribute.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int FINDER__CUSTOMIZED_NAME = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 2;
-
-	/**
-	 * The feature id for the '<em><b>Criterions</b></em>' containment reference list.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int FINDER__CRITERIONS = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 3;
-
-	/**
-	 * The feature id for the '<em><b>Multiplicity</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int FINDER__MULTIPLICITY = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 4;
-
-	/**
-	 * The number of structural features of the '<em>Finder</em>' class.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int FINDER_FEATURE_COUNT = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 5;
-
-	/**
-	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.CriterionImpl <em>Criterion</em>}' class.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @see org.obeonetwork.dsl.entity.impl.CriterionImpl
-	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getCriterion()
-	 * @generated
-	 */
-	int CRITERION = 8;
-
-	/**
-	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int CRITERION__METADATAS = EnvironmentPackage.OBEO_DSM_OBJECT__METADATAS;
-
-	/**
-	 * The feature id for the '<em><b>Description</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int CRITERION__DESCRIPTION = EnvironmentPackage.OBEO_DSM_OBJECT__DESCRIPTION;
-
-	/**
-	 * The feature id for the '<em><b>Keywords</b></em>' attribute list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int CRITERION__KEYWORDS = EnvironmentPackage.OBEO_DSM_OBJECT__KEYWORDS;
-
-	/**
-	 * The feature id for the '<em><b>Behaviours</b></em>' containment reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int CRITERION__BEHAVIOURS = EnvironmentPackage.OBEO_DSM_OBJECT__BEHAVIOURS;
-
-	/**
-	 * The feature id for the '<em><b>Binding Registries</b></em>' reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int CRITERION__BINDING_REGISTRIES = EnvironmentPackage.OBEO_DSM_OBJECT__BINDING_REGISTRIES;
-
-	/**
-	 * The feature id for the '<em><b>Version</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int CRITERION__VERSION = EnvironmentPackage.OBEO_DSM_OBJECT__VERSION;
-
-	/**
-	 * The feature id for the '<em><b>Created On</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int CRITERION__CREATED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__CREATED_ON;
-
-	/**
-	 * The feature id for the '<em><b>Modified On</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int CRITERION__MODIFIED_ON = EnvironmentPackage.OBEO_DSM_OBJECT__MODIFIED_ON;
-
-	/**
-	 * The number of structural features of the '<em>Criterion</em>' class.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int CRITERION_FEATURE_COUNT = EnvironmentPackage.OBEO_DSM_OBJECT_FEATURE_COUNT + 0;
-
-	/**
-	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.InternalCriterionImpl <em>Internal Criterion</em>}' class.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @see org.obeonetwork.dsl.entity.impl.InternalCriterionImpl
-	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getInternalCriterion()
-	 * @generated
-	 */
-	int INTERNAL_CRITERION = 7;
-
-	/**
-	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int INTERNAL_CRITERION__METADATAS = CRITERION__METADATAS;
-
-	/**
-	 * The feature id for the '<em><b>Description</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int INTERNAL_CRITERION__DESCRIPTION = CRITERION__DESCRIPTION;
-
-	/**
-	 * The feature id for the '<em><b>Keywords</b></em>' attribute list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int INTERNAL_CRITERION__KEYWORDS = CRITERION__KEYWORDS;
-
-	/**
-	 * The feature id for the '<em><b>Behaviours</b></em>' containment reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int INTERNAL_CRITERION__BEHAVIOURS = CRITERION__BEHAVIOURS;
-
-	/**
-	 * The feature id for the '<em><b>Binding Registries</b></em>' reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int INTERNAL_CRITERION__BINDING_REGISTRIES = CRITERION__BINDING_REGISTRIES;
-
-	/**
-	 * The feature id for the '<em><b>Version</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int INTERNAL_CRITERION__VERSION = CRITERION__VERSION;
-
-	/**
-	 * The feature id for the '<em><b>Created On</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int INTERNAL_CRITERION__CREATED_ON = CRITERION__CREATED_ON;
-
-	/**
-	 * The feature id for the '<em><b>Modified On</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int INTERNAL_CRITERION__MODIFIED_ON = CRITERION__MODIFIED_ON;
-
-	/**
-	 * The feature id for the '<em><b>Target</b></em>' reference. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int INTERNAL_CRITERION__TARGET = CRITERION_FEATURE_COUNT + 0;
-
-	/**
-	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int INTERNAL_CRITERION__NAME = CRITERION_FEATURE_COUNT + 1;
-
-	/**
-	 * The number of structural features of the '<em>Internal Criterion</em>' class.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int INTERNAL_CRITERION_FEATURE_COUNT = CRITERION_FEATURE_COUNT + 2;
-
-	/**
-	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.impl.ExternalCriterionImpl <em>External Criterion</em>}' class.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @see org.obeonetwork.dsl.entity.impl.ExternalCriterionImpl
-	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getExternalCriterion()
-	 * @generated
-	 */
-	int EXTERNAL_CRITERION = 9;
-
-	/**
-	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int EXTERNAL_CRITERION__METADATAS = CRITERION__METADATAS;
-
-	/**
-	 * The feature id for the '<em><b>Description</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int EXTERNAL_CRITERION__DESCRIPTION = CRITERION__DESCRIPTION;
-
-	/**
-	 * The feature id for the '<em><b>Keywords</b></em>' attribute list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int EXTERNAL_CRITERION__KEYWORDS = CRITERION__KEYWORDS;
-
-	/**
-	 * The feature id for the '<em><b>Behaviours</b></em>' containment reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int EXTERNAL_CRITERION__BEHAVIOURS = CRITERION__BEHAVIOURS;
-
-	/**
-	 * The feature id for the '<em><b>Binding Registries</b></em>' reference list.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int EXTERNAL_CRITERION__BINDING_REGISTRIES = CRITERION__BINDING_REGISTRIES;
-
-	/**
-	 * The feature id for the '<em><b>Version</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int EXTERNAL_CRITERION__VERSION = CRITERION__VERSION;
-
-	/**
-	 * The feature id for the '<em><b>Created On</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int EXTERNAL_CRITERION__CREATED_ON = CRITERION__CREATED_ON;
-
-	/**
-	 * The feature id for the '<em><b>Modified On</b></em>' attribute.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int EXTERNAL_CRITERION__MODIFIED_ON = CRITERION__MODIFIED_ON;
-
-	/**
-	 * The feature id for the '<em><b>Name</b></em>' attribute. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int EXTERNAL_CRITERION__NAME = CRITERION_FEATURE_COUNT + 0;
-
-	/**
-	 * The feature id for the '<em><b>Type</b></em>' reference. <!--
-	 * begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated
-	 * @ordered
-	 */
-	int EXTERNAL_CRITERION__TYPE = CRITERION_FEATURE_COUNT + 1;
-
-	/**
-	 * The number of structural features of the '<em>External Criterion</em>' class.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 * @ordered
-	 */
-	int EXTERNAL_CRITERION_FEATURE_COUNT = CRITERION_FEATURE_COUNT + 2;
-
-	/**
-	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.InheritanceKind <em>Inheritance Kind</em>}' enum.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @see org.obeonetwork.dsl.entity.InheritanceKind
-	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getInheritanceKind()
-	 * @generated
-	 */
-	int INHERITANCE_KIND = 10;
-
-	/**
-	 * Returns the meta object for class '{@link org.obeonetwork.dsl.entity.Root <em>Root</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for class '<em>Root</em>'.
-	 * @see org.obeonetwork.dsl.entity.Root
-	 * @generated
-	 */
-	EClass getRoot();
-
-	/**
-	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.entity.Root#getBlocks <em>Blocks</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the containment reference list '<em>Blocks</em>'.
-	 * @see org.obeonetwork.dsl.entity.Root#getBlocks()
-	 * @see #getRoot()
-	 * @generated
-	 */
-	EReference getRoot_Blocks();
-
-	/**
-	 * Returns the meta object for class '{@link org.obeonetwork.dsl.entity.Block <em>Block</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for class '<em>Block</em>'.
-	 * @see org.obeonetwork.dsl.entity.Block
-	 * @generated
-	 */
-	EClass getBlock();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.obeonetwork.dsl.entity.Block#getName <em>Name</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Name</em>'.
-	 * @see org.obeonetwork.dsl.entity.Block#getName()
-	 * @see #getBlock()
-	 * @generated
-	 */
-	EAttribute getBlock_Name();
-
-	/**
-	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.entity.Block#getEntities <em>Entities</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the containment reference list '<em>Entities</em>'.
-	 * @see org.obeonetwork.dsl.entity.Block#getEntities()
-	 * @see #getBlock()
-	 * @generated
-	 */
-	EReference getBlock_Entities();
-
-	/**
-	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.entity.Block#getSubblocks <em>Subblocks</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the containment reference list '<em>Subblocks</em>'.
-	 * @see org.obeonetwork.dsl.entity.Block#getSubblocks()
-	 * @see #getBlock()
-	 * @generated
-	 */
-	EReference getBlock_Subblocks();
-
-	/**
-	 * Returns the meta object for class '{@link org.obeonetwork.dsl.entity.Entity <em>Entity</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for class '<em>Entity</em>'.
-	 * @see org.obeonetwork.dsl.entity.Entity
+	 * The feature id for the '<em><b>Type</b></em>' reference. <!--
+	 * begin-user-doc --> <!-- end-user-doc -->
+	 * 
 	 * @generated
+	 * @ordered
 	 */
-	EClass getEntity();
+	int EXTERNAL_CRITERION__TYPE = CRITERION_FEATURE_COUNT + 1;
 
 	/**
-	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.entity.Entity#getOwnedAttributes <em>Owned Attributes</em>}'.
+	 * The number of structural features of the '<em>External Criterion</em>' class.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the containment reference list '<em>Owned Attributes</em>'.
-	 * @see org.obeonetwork.dsl.entity.Entity#getOwnedAttributes()
-	 * @see #getEntity()
 	 * @generated
+	 * @ordered
 	 */
-	EReference getEntity_OwnedAttributes();
+	int EXTERNAL_CRITERION_FEATURE_COUNT = CRITERION_FEATURE_COUNT + 2;
 
 	/**
-	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.entity.Entity#getOwnedReferences <em>Owned References</em>}'.
+	 * The meta object id for the '{@link org.obeonetwork.dsl.entity.InheritanceKind <em>Inheritance Kind</em>}' enum.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the containment reference list '<em>Owned References</em>'.
-	 * @see org.obeonetwork.dsl.entity.Entity#getOwnedReferences()
-	 * @see #getEntity()
+	 * @see org.obeonetwork.dsl.entity.InheritanceKind
+	 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getInheritanceKind()
 	 * @generated
 	 */
-	EReference getEntity_OwnedReferences();
+	int INHERITANCE_KIND = 6;
 
 	/**
-	 * Returns the meta object for the reference '{@link org.obeonetwork.dsl.entity.Entity#getSupertype <em>Supertype</em>}'.
+	 * Returns the meta object for class '{@link org.obeonetwork.dsl.entity.Root <em>Root</em>}'.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the reference '<em>Supertype</em>'.
-	 * @see org.obeonetwork.dsl.entity.Entity#getSupertype()
-	 * @see #getEntity()
+	 * @return the meta object for class '<em>Root</em>'.
+	 * @see org.obeonetwork.dsl.entity.Root
 	 * @generated
 	 */
-	EReference getEntity_Supertype();
+	EClass getRoot();
 
 	/**
-	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.entity.Entity#getAttributes <em>Attributes</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the reference list '<em>Attributes</em>'.
-	 * @see org.obeonetwork.dsl.entity.Entity#getAttributes()
-	 * @see #getEntity()
+	 * Returns the meta object for the attribute '{@link org.obeonetwork.dsl.entity.Root#getName <em>Name</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Name</em>'.
+	 * @see org.obeonetwork.dsl.entity.Root#getName()
+	 * @see #getRoot()
 	 * @generated
 	 */
-	EReference getEntity_Attributes();
+	EAttribute getRoot_Name();
 
 	/**
-	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.entity.Entity#getReferences <em>References</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the reference list '<em>References</em>'.
-	 * @see org.obeonetwork.dsl.entity.Entity#getReferences()
-	 * @see #getEntity()
+	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.entity.Root#getNamespaces <em>Namespaces</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Namespaces</em>'.
+	 * @see org.obeonetwork.dsl.entity.Root#getNamespaces()
+	 * @see #getRoot()
 	 * @generated
 	 */
-	EReference getEntity_References();
+	EReference getRoot_Namespaces();
 
 	/**
-	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.entity.Entity#getProperties <em>Properties</em>}'.
+	 * Returns the meta object for class '{@link org.obeonetwork.dsl.entity.Entity <em>Entity</em>}'.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the reference list '<em>Properties</em>'.
-	 * @see org.obeonetwork.dsl.entity.Entity#getProperties()
-	 * @see #getEntity()
+	 * @return the meta object for class '<em>Entity</em>'.
+	 * @see org.obeonetwork.dsl.entity.Entity
 	 * @generated
 	 */
-	EReference getEntity_Properties();
+	EClass getEntity();
 
 	/**
 	 * Returns the meta object for the attribute '{@link org.obeonetwork.dsl.entity.Entity#getEstimatedVolumetry <em>Estimated Volumetry</em>}'.
@@ -1516,16 +909,6 @@ public interface EntityPackage extends EPackage {
 	 */
 	EReference getEntity_OwnedFinders();
 
-	/**
-	 * Returns the meta object for the container reference '{@link org.obeonetwork.dsl.entity.Entity#getBlock <em>Block</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the container reference '<em>Block</em>'.
-	 * @see org.obeonetwork.dsl.entity.Entity#getBlock()
-	 * @see #getEntity()
-	 * @generated
-	 */
-	EReference getEntity_Block();
-
 	/**
 	 * Returns the meta object for the attribute '{@link org.obeonetwork.dsl.entity.Entity#getInheritanceKind <em>Inheritance Kind</em>}'.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
@@ -1536,133 +919,6 @@ public interface EntityPackage extends EPackage {
 	 */
 	EAttribute getEntity_InheritanceKind();
 
-	/**
-	 * Returns the meta object for class '{@link org.obeonetwork.dsl.entity.Property <em>Property</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for class '<em>Property</em>'.
-	 * @see org.obeonetwork.dsl.entity.Property
-	 * @generated
-	 */
-	EClass getProperty();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.obeonetwork.dsl.entity.Property#getName <em>Name</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Name</em>'.
-	 * @see org.obeonetwork.dsl.entity.Property#getName()
-	 * @see #getProperty()
-	 * @generated
-	 */
-	EAttribute getProperty_Name();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.obeonetwork.dsl.entity.Property#getMultiplicity <em>Multiplicity</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Multiplicity</em>'.
-	 * @see org.obeonetwork.dsl.entity.Property#getMultiplicity()
-	 * @see #getProperty()
-	 * @generated
-	 */
-	EAttribute getProperty_Multiplicity();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.obeonetwork.dsl.entity.Property#isIsPrimaryKey <em>Is Primary Key</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Is Primary Key</em>'.
-	 * @see org.obeonetwork.dsl.entity.Property#isIsPrimaryKey()
-	 * @see #getProperty()
-	 * @generated
-	 */
-	EAttribute getProperty_IsPrimaryKey();
-
-	/**
-	 * Returns the meta object for class '{@link org.obeonetwork.dsl.entity.Attribute <em>Attribute</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for class '<em>Attribute</em>'.
-	 * @see org.obeonetwork.dsl.entity.Attribute
-	 * @generated
-	 */
-	EClass getAttribute();
-
-	/**
-	 * Returns the meta object for the container reference '{@link org.obeonetwork.dsl.entity.Attribute#getEntity <em>Entity</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the container reference '<em>Entity</em>'.
-	 * @see org.obeonetwork.dsl.entity.Attribute#getEntity()
-	 * @see #getAttribute()
-	 * @generated
-	 */
-	EReference getAttribute_Entity();
-
-	/**
-	 * Returns the meta object for the reference '{@link org.obeonetwork.dsl.entity.Attribute#getType <em>Type</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the reference '<em>Type</em>'.
-	 * @see org.obeonetwork.dsl.entity.Attribute#getType()
-	 * @see #getAttribute()
-	 * @generated
-	 */
-	EReference getAttribute_Type();
-
-	/**
-	 * Returns the meta object for class '{@link org.obeonetwork.dsl.entity.Reference <em>Reference</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for class '<em>Reference</em>'.
-	 * @see org.obeonetwork.dsl.entity.Reference
-	 * @generated
-	 */
-	EClass getReference();
-
-	/**
-	 * Returns the meta object for the container reference '{@link org.obeonetwork.dsl.entity.Reference#getEntity <em>Entity</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the container reference '<em>Entity</em>'.
-	 * @see org.obeonetwork.dsl.entity.Reference#getEntity()
-	 * @see #getReference()
-	 * @generated
-	 */
-	EReference getReference_Entity();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.obeonetwork.dsl.entity.Reference#isIsComposite <em>Is Composite</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Is Composite</em>'.
-	 * @see org.obeonetwork.dsl.entity.Reference#isIsComposite()
-	 * @see #getReference()
-	 * @generated
-	 */
-	EAttribute getReference_IsComposite();
-
-	/**
-	 * Returns the meta object for the reference '{@link org.obeonetwork.dsl.entity.Reference#getOppositeOf <em>Opposite Of</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the reference '<em>Opposite Of</em>'.
-	 * @see org.obeonetwork.dsl.entity.Reference#getOppositeOf()
-	 * @see #getReference()
-	 * @generated
-	 */
-	EReference getReference_OppositeOf();
-
-	/**
-	 * Returns the meta object for the reference '{@link org.obeonetwork.dsl.entity.Reference#getType <em>Type</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the reference '<em>Type</em>'.
-	 * @see org.obeonetwork.dsl.entity.Reference#getType()
-	 * @see #getReference()
-	 * @generated
-	 */
-	EReference getReference_Type();
-
-	/**
-	 * Returns the meta object for the attribute '{@link org.obeonetwork.dsl.entity.Reference#isNavigable <em>Navigable</em>}'.
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @return the meta object for the attribute '<em>Navigable</em>'.
-	 * @see org.obeonetwork.dsl.entity.Reference#isNavigable()
-	 * @see #getReference()
-	 * @generated
-	 */
-	EAttribute getReference_Navigable();
-
 	/**
 	 * Returns the meta object for class '{@link org.obeonetwork.dsl.entity.Finder <em>Finder</em>}'.
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
@@ -1830,45 +1086,21 @@ interface Literals  {
 		 */
 		EClass ROOT = eINSTANCE.getRoot();
 
-		/**
-		 * The meta object literal for the '<em><b>Blocks</b></em>' containment reference list feature.
-		 * <!-- begin-user-doc --> <!--
-		 * end-user-doc -->
-		 * @generated
-		 */
-		EReference ROOT__BLOCKS = eINSTANCE.getRoot_Blocks();
-
-		/**
-		 * The meta object literal for the '{@link org.obeonetwork.dsl.entity.impl.BlockImpl <em>Block</em>}' class.
-		 * <!-- begin-user-doc --> <!-- end-user-doc -->
-		 * @see org.obeonetwork.dsl.entity.impl.BlockImpl
-		 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getBlock()
-		 * @generated
-		 */
-		EClass BLOCK = eINSTANCE.getBlock();
-
 		/**
 		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
-		 * <!-- begin-user-doc --> <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute BLOCK__NAME = eINSTANCE.getBlock_Name();
-
-		/**
-		 * The meta object literal for the '<em><b>Entities</b></em>' containment reference list feature.
-		 * <!-- begin-user-doc --> <!--
-		 * end-user-doc -->
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EReference BLOCK__ENTITIES = eINSTANCE.getBlock_Entities();
+		EAttribute ROOT__NAME = eINSTANCE.getRoot_Name();
 
 		/**
-		 * The meta object literal for the '<em><b>Subblocks</b></em>' containment reference list feature.
-		 * <!-- begin-user-doc --> <!--
-		 * end-user-doc -->
+		 * The meta object literal for the '<em><b>Namespaces</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EReference BLOCK__SUBBLOCKS = eINSTANCE.getBlock_Subblocks();
+		EReference ROOT__NAMESPACES = eINSTANCE.getRoot_Namespaces();
 
 		/**
 		 * The meta object literal for the '{@link org.obeonetwork.dsl.entity.impl.EntityImpl <em>Entity</em>}' class.
@@ -1879,50 +1111,6 @@ interface Literals  {
 		 */
 		EClass ENTITY = eINSTANCE.getEntity();
 
-		/**
-		 * The meta object literal for the '<em><b>Owned Attributes</b></em>' containment reference list feature.
-		 * <!-- begin-user-doc --> <!--
-		 * end-user-doc -->
-		 * @generated
-		 */
-		EReference ENTITY__OWNED_ATTRIBUTES = eINSTANCE.getEntity_OwnedAttributes();
-
-		/**
-		 * The meta object literal for the '<em><b>Owned References</b></em>' containment reference list feature.
-		 * <!-- begin-user-doc --> <!--
-		 * end-user-doc -->
-		 * @generated
-		 */
-		EReference ENTITY__OWNED_REFERENCES = eINSTANCE.getEntity_OwnedReferences();
-
-		/**
-		 * The meta object literal for the '<em><b>Supertype</b></em>' reference feature.
-		 * <!-- begin-user-doc --> <!-- end-user-doc -->
-		 * @generated
-		 */
-		EReference ENTITY__SUPERTYPE = eINSTANCE.getEntity_Supertype();
-
-		/**
-		 * The meta object literal for the '<em><b>Attributes</b></em>' reference list feature.
-		 * <!-- begin-user-doc --> <!-- end-user-doc -->
-		 * @generated
-		 */
-		EReference ENTITY__ATTRIBUTES = eINSTANCE.getEntity_Attributes();
-
-		/**
-		 * The meta object literal for the '<em><b>References</b></em>' reference list feature.
-		 * <!-- begin-user-doc --> <!-- end-user-doc -->
-		 * @generated
-		 */
-		EReference ENTITY__REFERENCES = eINSTANCE.getEntity_References();
-
-		/**
-		 * The meta object literal for the '<em><b>Properties</b></em>' reference list feature.
-		 * <!-- begin-user-doc --> <!-- end-user-doc -->
-		 * @generated
-		 */
-		EReference ENTITY__PROPERTIES = eINSTANCE.getEntity_Properties();
-
 		/**
 		 * The meta object literal for the '<em><b>Estimated Volumetry</b></em>' attribute feature.
 		 * <!-- begin-user-doc --> <!-- end-user-doc -->
@@ -1952,120 +1140,13 @@ interface Literals  {
 		 */
 		EReference ENTITY__OWNED_FINDERS = eINSTANCE.getEntity_OwnedFinders();
 
-		/**
-		 * The meta object literal for the '<em><b>Block</b></em>' container reference feature.
-		 * <!-- begin-user-doc --> <!--
-		 * end-user-doc -->
-		 * @generated
-		 */
-		EReference ENTITY__BLOCK = eINSTANCE.getEntity_Block();
-
 		/**
 		 * The meta object literal for the '<em><b>Inheritance Kind</b></em>' attribute feature.
 		 * <!-- begin-user-doc --> <!-- end-user-doc -->
 		 * @generated
 		 */
 		EAttribute ENTITY__INHERITANCE_KIND = eINSTANCE.getEntity_InheritanceKind();
 
-		/**
-		 * The meta object literal for the '{@link org.obeonetwork.dsl.entity.impl.PropertyImpl <em>Property</em>}' class.
-		 * <!-- begin-user-doc --> <!-- end-user-doc -->
-		 * @see org.obeonetwork.dsl.entity.impl.PropertyImpl
-		 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getProperty()
-		 * @generated
-		 */
-		EClass PROPERTY = eINSTANCE.getProperty();
-
-		/**
-		 * The meta object literal for the '<em><b>Name</b></em>' attribute feature.
-		 * <!-- begin-user-doc --> <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute PROPERTY__NAME = eINSTANCE.getProperty_Name();
-
-		/**
-		 * The meta object literal for the '<em><b>Multiplicity</b></em>' attribute feature.
-		 * <!-- begin-user-doc --> <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute PROPERTY__MULTIPLICITY = eINSTANCE.getProperty_Multiplicity();
-
-		/**
-		 * The meta object literal for the '<em><b>Is Primary Key</b></em>' attribute feature.
-		 * <!-- begin-user-doc --> <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute PROPERTY__IS_PRIMARY_KEY = eINSTANCE.getProperty_IsPrimaryKey();
-
-		/**
-		 * The meta object literal for the '{@link org.obeonetwork.dsl.entity.impl.AttributeImpl <em>Attribute</em>}' class.
-		 * <!-- begin-user-doc --> <!-- end-user-doc -->
-		 * @see org.obeonetwork.dsl.entity.impl.AttributeImpl
-		 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getAttribute()
-		 * @generated
-		 */
-		EClass ATTRIBUTE = eINSTANCE.getAttribute();
-
-		/**
-		 * The meta object literal for the '<em><b>Entity</b></em>' container reference feature.
-		 * <!-- begin-user-doc --> <!--
-		 * end-user-doc -->
-		 * @generated
-		 */
-		EReference ATTRIBUTE__ENTITY = eINSTANCE.getAttribute_Entity();
-
-		/**
-		 * The meta object literal for the '<em><b>Type</b></em>' reference feature.
-		 * <!-- begin-user-doc --> <!-- end-user-doc -->
-		 * @generated
-		 */
-		EReference ATTRIBUTE__TYPE = eINSTANCE.getAttribute_Type();
-
-		/**
-		 * The meta object literal for the '{@link org.obeonetwork.dsl.entity.impl.ReferenceImpl <em>Reference</em>}' class.
-		 * <!-- begin-user-doc --> <!-- end-user-doc -->
-		 * @see org.obeonetwork.dsl.entity.impl.ReferenceImpl
-		 * @see org.obeonetwork.dsl.entity.impl.EntityPackageImpl#getReference()
-		 * @generated
-		 */
-		EClass REFERENCE = eINSTANCE.getReference();
-
-		/**
-		 * The meta object literal for the '<em><b>Entity</b></em>' container reference feature.
-		 * <!-- begin-user-doc --> <!--
-		 * end-user-doc -->
-		 * @generated
-		 */
-		EReference REFERENCE__ENTITY = eINSTANCE.getReference_Entity();
-
-		/**
-		 * The meta object literal for the '<em><b>Is Composite</b></em>' attribute feature.
-		 * <!-- begin-user-doc --> <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute REFERENCE__IS_COMPOSITE = eINSTANCE.getReference_IsComposite();
-
-		/**
-		 * The meta object literal for the '<em><b>Opposite Of</b></em>' reference feature.
-		 * <!-- begin-user-doc --> <!-- end-user-doc -->
-		 * @generated
-		 */
-		EReference REFERENCE__OPPOSITE_OF = eINSTANCE.getReference_OppositeOf();
-
-		/**
-		 * The meta object literal for the '<em><b>Type</b></em>' reference feature.
-		 * <!-- begin-user-doc --> <!-- end-user-doc -->
-		 * @generated
-		 */
-		EReference REFERENCE__TYPE = eINSTANCE.getReference_Type();
-
-		/**
-		 * The meta object literal for the '<em><b>Navigable</b></em>' attribute feature.
-		 * <!-- begin-user-doc --> <!-- end-user-doc -->
-		 * @generated
-		 */
-		EAttribute REFERENCE__NAVIGABLE = eINSTANCE.getReference_Navigable();
-
 		/**
 		 * The meta object literal for the '{@link org.obeonetwork.dsl.entity.impl.FinderImpl <em>Finder</em>}' class.
 		 * <!-- begin-user-doc --> <!-- end-user-doc -->
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FEntityPackage.java
14c3d4bb8c77170a81ed8f65adda6b569fd79b2f
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FInternalCriterion.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FInternalCriterion.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/InternalCriterion.java
import org.obeonetwork.dsl.environment.Attribute;

@@ -12,6 +12,8 @@
  */
 package org.obeonetwork.dsl.entity;
 
+import org.obeonetwork.dsl.environment.Attribute;
+
 /**
  * <!-- begin-user-doc --> A representation of the model object '<em><b>Internal Criterion</b></em>'.
  * <!-- end-user-doc -->
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FInternalCriterion.java
900d7d53d0d169f943e7592ec0265e42f7f99a26
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FRoot.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FRoot.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/Root.java
import org.obeonetwork.dsl.environment.TypesDefinition;
 *   <li>{@link org.obeonetwork.dsl.entity.Root#getName <em>Name</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.entity.Root#getNamespaces <em>Namespaces</em>}</li>
public interface Root extends TypesDefinition {
	 * Returns the value of the '<em><b>Name</b></em>' attribute.
	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * @return the value of the '<em>Name</em>' attribute.
	 * @see #setName(String)
	 * @see org.obeonetwork.dsl.entity.EntityPackage#getRoot_Name()
	 * @model
	 * @generated
	 */
	String getName();

	/**
	 * Sets the value of the '{@link org.obeonetwork.dsl.entity.Root#getName <em>Name</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Name</em>' attribute.
	 * @see #getName()
	 * @generated
	 */
	void setName(String value);

	/**
	 * Returns the value of the '<em><b>Namespaces</b></em>' containment reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Namespace}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Namespaces</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>Namespaces</em>' containment reference list.
	 * @see org.obeonetwork.dsl.entity.EntityPackage#getRoot_Namespaces()
	EList<Namespace> getNamespaces();
 *   <li>{@link org.obeonetwork.dsl.entity.Root#getBlocks <em>Blocks</em>}</li>
public interface Root extends Namespace {
	 * Returns the value of the '<em><b>Blocks</b></em>' containment reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.entity.Block}.
	 * If the meaning of the '<em>Blocks</em>' containment reference list
	 * isn't clear, there really should be more of a description here...
	 * @return the value of the '<em>Blocks</em>' containment reference list.
	 * @see org.obeonetwork.dsl.entity.EntityPackage#getRoot_Blocks()
	EList<Block> getBlocks();
@@ -14,6 +14,7 @@
 
 import org.eclipse.emf.common.util.EList;
 import org.obeonetwork.dsl.environment.Namespace;
+import org.obeonetwork.dsl.environment.TypesDefinition;
 
 /**
  * <!-- begin-user-doc --> A representation of the model object '<em><b>Root</b></em>'.
@@ -22,15 +23,16 @@
  * <p>
  * The following features are supported:
  * <ul>
- *   <li>{@link org.obeonetwork.dsl.entity.Root#getBlocks <em>Blocks</em>}</li>
+ *   <li>{@link org.obeonetwork.dsl.entity.Root#getName <em>Name</em>}</li>
+ *   <li>{@link org.obeonetwork.dsl.entity.Root#getNamespaces <em>Namespaces</em>}</li>
  * </ul>
  * </p>
  *
  * @see org.obeonetwork.dsl.entity.EntityPackage#getRoot()
  * @model
  * @generated
  */
-public interface Root extends Namespace {
+public interface Root extends TypesDefinition {
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -39,19 +41,45 @@ public interface Root extends Namespace {
 	String copyright = "Copyright (c) 2008-2009 Obeo.\nAll rights reserved. This program and the accompanying materials\nare made available under the terms of the Eclipse Public License v1.0\nwhich accompanies this distribution, and is available at\nhttp://www.eclipse.org/legal/epl-v10.html\n\nContributors:\n    Obeo - initial API and implementation";
 
 	/**
-	 * Returns the value of the '<em><b>Blocks</b></em>' containment reference list.
-	 * The list contents are of type {@link org.obeonetwork.dsl.entity.Block}.
+	 * Returns the value of the '<em><b>Name</b></em>' attribute.
 	 * <!-- begin-user-doc -->
 	 * <p>
-	 * If the meaning of the '<em>Blocks</em>' containment reference list
-	 * isn't clear, there really should be more of a description here...
+	 * If the meaning of the '<em>Name</em>' attribute isn't clear,
+	 * there really should be more of a description here...
 	 * </p>
 	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Blocks</em>' containment reference list.
-	 * @see org.obeonetwork.dsl.entity.EntityPackage#getRoot_Blocks()
+	 * @return the value of the '<em>Name</em>' attribute.
+	 * @see #setName(String)
+	 * @see org.obeonetwork.dsl.entity.EntityPackage#getRoot_Name()
+	 * @model
+	 * @generated
+	 */
+	String getName();
+
+	/**
+	 * Sets the value of the '{@link org.obeonetwork.dsl.entity.Root#getName <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Name</em>' attribute.
+	 * @see #getName()
+	 * @generated
+	 */
+	void setName(String value);
+
+	/**
+	 * Returns the value of the '<em><b>Namespaces</b></em>' containment reference list.
+	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Namespace}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Namespaces</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>Namespaces</em>' containment reference list.
+	 * @see org.obeonetwork.dsl.entity.EntityPackage#getRoot_Namespaces()
 	 * @model containment="true" resolveProxies="true"
 	 * @generated
 	 */
-	EList<Block> getBlocks();
+	EList<Namespace> getNamespaces();
 
 } // Root
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FRoot.java
c63c83ff05c50157b57c9bea3628643643870180
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2FEntityFilter.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2FEntityFilter.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/extensionUtilities/EntityFilter.java
import org.obeonetwork.dsl.environment.Attribute;
import org.obeonetwork.dsl.environment.Property;
import org.obeonetwork.dsl.environment.Reference;
	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Attribute}.
	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Reference}.
	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Property}.
import org.obeonetwork.dsl.entity.Attribute;
import org.obeonetwork.dsl.entity.Property;
import org.obeonetwork.dsl.entity.Reference;
	 * The list contents are of type {@link org.obeonetwork.dsl.entity.Attribute}.
	 * The list contents are of type {@link org.obeonetwork.dsl.entity.Reference}.
	 * The list contents are of type {@link org.obeonetwork.dsl.entity.Property}.
@@ -13,11 +13,11 @@
 package org.obeonetwork.dsl.entity.extensionUtilities;
 
 import org.eclipse.emf.common.util.EList;
-import org.obeonetwork.dsl.entity.Attribute;
 import org.obeonetwork.dsl.entity.Entity;
-import org.obeonetwork.dsl.entity.Property;
-import org.obeonetwork.dsl.entity.Reference;
+import org.obeonetwork.dsl.environment.Attribute;
 import org.obeonetwork.dsl.environment.Filter;
+import org.obeonetwork.dsl.environment.Property;
+import org.obeonetwork.dsl.environment.Reference;
 
 /**
  * <!-- begin-user-doc --> A representation of the model object '<em><b>Entity Filter</b></em>'.
@@ -47,7 +47,7 @@ public interface EntityFilter extends Filter {
 
 	/**
 	 * Returns the value of the '<em><b>Attribute References</b></em>' reference list.
-	 * The list contents are of type {@link org.obeonetwork.dsl.entity.Attribute}.
+	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Attribute}.
 	 * <!-- begin-user-doc -->
 	 * <p>
 	 * If the meaning of the '<em>Attribute References</em>' reference list
@@ -63,7 +63,7 @@ public interface EntityFilter extends Filter {
 
 	/**
 	 * Returns the value of the '<em><b>Reference References</b></em>' reference list.
-	 * The list contents are of type {@link org.obeonetwork.dsl.entity.Reference}.
+	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Reference}.
 	 * <!-- begin-user-doc -->
 	 * <p>
 	 * If the meaning of the '<em>Reference References</em>' reference list
@@ -79,7 +79,7 @@ public interface EntityFilter extends Filter {
 
 	/**
 	 * Returns the value of the '<em><b>Owned Property References</b></em>' reference list.
-	 * The list contents are of type {@link org.obeonetwork.dsl.entity.Property}.
+	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Property}.
 	 * <!-- begin-user-doc -->
 	 * <p>
 	 * If the meaning of the '<em>Owned Property References</em>' reference
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2FEntityFilter.java
c1a8de5ec12c4a7f45120d7daf3af06680d2fe87
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2Fimpl%2FEntityFilterImpl.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2Fimpl%2FEntityFilterImpl.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/extensionUtilities/impl/EntityFilterImpl.java
import org.obeonetwork.dsl.environment.Attribute;
import org.obeonetwork.dsl.environment.Property;
import org.obeonetwork.dsl.environment.Reference;


	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	public EList<Attribute> getAttributeReferences() {
		BasicEList<Attribute> result = new UniqueEList<Attribute>() {
			private static final long serialVersionUID = 971586213550724954L;

		for (Property property : getOwnedPropertyReferences()) {
				result.add((Attribute)property);
		EList<Attribute> unmodifiableResult = new EcoreEList.UnmodifiableEList.FastCompare<Attribute>(
				this, ExtensionUtilitiesPackage.Literals.ENTITY_FILTER__ATTRIBUTE_REFERENCES, result.size(),
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	public EList<Reference> getReferenceReferences() {
		BasicEList<Reference> result = new UniqueEList<Reference>() {
			private static final long serialVersionUID = 5391913769894408421L;

		for (Property property : getOwnedPropertyReferences()) {
				result.add((Reference)property);
		EList<Reference> unmodifiableResult = new EcoreEList.UnmodifiableEList.FastCompare<Reference>(
import java.util.Iterator;
import org.obeonetwork.dsl.entity.Attribute;
import org.obeonetwork.dsl.entity.Property;
import org.obeonetwork.dsl.entity.Reference;
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	public EList getAttributeReferences() {
		BasicEList result = new UniqueEList() {
		Collection properties = getOwnedPropertyReferences();
		for (Iterator iter = properties.iterator(); iter.hasNext();) {
			Property property = (Property) iter.next();
				result.add(property);
		EList unmodifiableResult = new EcoreEList.UnmodifiableEList.FastCompare(
				this, ExtensionUtilitiesPackage.eINSTANCE
						.getEntityFilter_AttributeReferences(), result.size(),
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	public EList getReferenceReferences() {
		BasicEList result = new UniqueEList() {
		Collection properties = getOwnedPropertyReferences();
		for (Iterator iter = properties.iterator(); iter.hasNext();) {
			Property property = (Property) iter.next();
				result.add(property);
		EList unmodifiableResult = new EcoreEList.UnmodifiableEList.FastCompare(
@@ -13,19 +13,18 @@
 package org.obeonetwork.dsl.entity.extensionUtilities.impl;
 
 import java.util.Collection;
-import java.util.Iterator;
 
 import org.eclipse.emf.common.util.BasicEList;
 import org.eclipse.emf.common.util.EList;
 import org.eclipse.emf.common.util.UniqueEList;
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.util.EcoreEList;
-import org.obeonetwork.dsl.entity.Attribute;
 import org.obeonetwork.dsl.entity.Entity;
-import org.obeonetwork.dsl.entity.Property;
-import org.obeonetwork.dsl.entity.Reference;
 import org.obeonetwork.dsl.entity.extensionUtilities.EntityFilter;
 import org.obeonetwork.dsl.entity.extensionUtilities.ExtensionUtilitiesPackage;
+import org.obeonetwork.dsl.environment.Attribute;
+import org.obeonetwork.dsl.environment.Property;
+import org.obeonetwork.dsl.environment.Reference;
 import org.obeonetwork.dsl.environment.impl.FilterImpl;
 
 /**
@@ -68,13 +67,17 @@ protected EClass eStaticClass() {
 		return ExtensionUtilitiesPackage.Literals.ENTITY_FILTER;
 	}
 
+
+
 	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated NOT
 	 */
-	public EList getAttributeReferences() {
-		BasicEList result = new UniqueEList() {
+	public EList<Attribute> getAttributeReferences() {
+		BasicEList<Attribute> result = new UniqueEList<Attribute>() {
+			private static final long serialVersionUID = 971586213550724954L;
+
 			protected Object[] newData(int capacity) {
 				return new Attribute[capacity];
 			}
@@ -83,28 +86,27 @@ protected boolean useEquals() {
 				return false;
 			}
 		};
-		Collection properties = getOwnedPropertyReferences();
-		for (Iterator iter = properties.iterator(); iter.hasNext();) {
-			Property property = (Property) iter.next();
+		for (Property property : getOwnedPropertyReferences()) {
 			if (property instanceof Attribute) {
-				result.add(property);
+				result.add((Attribute)property);
 			}
 		}
 		result.shrink();
-		EList unmodifiableResult = new EcoreEList.UnmodifiableEList.FastCompare(
-				this, ExtensionUtilitiesPackage.eINSTANCE
-						.getEntityFilter_AttributeReferences(), result.size(),
+		EList<Attribute> unmodifiableResult = new EcoreEList.UnmodifiableEList.FastCompare<Attribute>(
+				this, ExtensionUtilitiesPackage.Literals.ENTITY_FILTER__ATTRIBUTE_REFERENCES, result.size(),
 				result.data());
 		return unmodifiableResult;
 	}
 
 	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated NOT
 	 */
-	public EList getReferenceReferences() {
-		BasicEList result = new UniqueEList() {
+	public EList<Reference> getReferenceReferences() {
+		BasicEList<Reference> result = new UniqueEList<Reference>() {
+			private static final long serialVersionUID = 5391913769894408421L;
+
 			protected Object[] newData(int capacity) {
 				return new Reference[capacity];
 			}
@@ -113,15 +115,13 @@ protected boolean useEquals() {
 				return false;
 			}
 		};
-		Collection properties = getOwnedPropertyReferences();
-		for (Iterator iter = properties.iterator(); iter.hasNext();) {
-			Property property = (Property) iter.next();
+		for (Property property : getOwnedPropertyReferences()) {
 			if (property instanceof Reference) {
-				result.add(property);
+				result.add((Reference)property);
 			}
 		}
 		result.shrink();
-		EList unmodifiableResult = new EcoreEList.UnmodifiableEList.FastCompare(
+		EList<Reference> unmodifiableResult = new EcoreEList.UnmodifiableEList.FastCompare<Reference>(
 				this, ExtensionUtilitiesPackage.eINSTANCE
 						.getEntityFilter_ReferenceReferences(), result.size(),
 				result.data());
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2Fimpl%2FEntityFilterImpl.java
3175c5e3cd8c17cbd66b3193b033119fceb5f195
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2Fimpl%2FExtensionUtilitiesFactoryImpl.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2Fimpl%2FExtensionUtilitiesFactoryImpl.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/extensionUtilities/impl/ExtensionUtilitiesFactoryImpl.java
import org.obeonetwork.dsl.entity.extensionUtilities.*;
			ExtensionUtilitiesFactory theExtensionUtilitiesFactory = (ExtensionUtilitiesFactory)EPackage.Registry.INSTANCE.getEFactory(ExtensionUtilitiesPackage.eNS_URI);
			ExtensionUtilitiesFactory theExtensionUtilitiesFactory = (ExtensionUtilitiesFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.obeonetwork.org/dsl/entity/2.0.0/utilities"); 
@@ -17,6 +17,7 @@
 import org.eclipse.emf.ecore.EPackage;
 import org.eclipse.emf.ecore.impl.EFactoryImpl;
 import org.eclipse.emf.ecore.plugin.EcorePlugin;
+import org.obeonetwork.dsl.entity.extensionUtilities.*;
 import org.obeonetwork.dsl.entity.extensionUtilities.EntityFilter;
 import org.obeonetwork.dsl.entity.extensionUtilities.ExtensionUtilitiesFactory;
 import org.obeonetwork.dsl.entity.extensionUtilities.ExtensionUtilitiesPackage;
@@ -43,7 +44,7 @@ public class ExtensionUtilitiesFactoryImpl extends EFactoryImpl implements
 	 */
 	public static ExtensionUtilitiesFactory init() {
 		try {
-			ExtensionUtilitiesFactory theExtensionUtilitiesFactory = (ExtensionUtilitiesFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.obeonetwork.org/dsl/entity/2.0.0/utilities"); 
+			ExtensionUtilitiesFactory theExtensionUtilitiesFactory = (ExtensionUtilitiesFactory)EPackage.Registry.INSTANCE.getEFactory(ExtensionUtilitiesPackage.eNS_URI);
 			if (theExtensionUtilitiesFactory != null) {
 				return theExtensionUtilitiesFactory;
 			}
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2Fimpl%2FExtensionUtilitiesFactoryImpl.java
98c6a05bfb87fa174bb2d96f093d870c452e917f
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2Fimpl%2FExtensionUtilitiesPackageImpl.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2Fimpl%2FExtensionUtilitiesPackageImpl.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/extensionUtilities/impl/ExtensionUtilitiesPackageImpl.java
		initEReference(getEntityFilter_AttributeReferences(), theEnvironmentPackage.getAttribute(), null, "attributeReferences", null, 0, -1, EntityFilter.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
		initEReference(getEntityFilter_ReferenceReferences(), theEnvironmentPackage.getReference(), null, "referenceReferences", null, 0, -1, EntityFilter.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
		initEReference(getEntityFilter_OwnedPropertyReferences(), theEnvironmentPackage.getProperty(), null, "ownedPropertyReferences", null, 0, -1, EntityFilter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
		initEReference(getEntityFilter_AttributeReferences(), theEntityPackage.getAttribute(), null, "attributeReferences", null, 0, -1, EntityFilter.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
		initEReference(getEntityFilter_ReferenceReferences(), theEntityPackage.getReference(), null, "referenceReferences", null, 0, -1, EntityFilter.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
		initEReference(getEntityFilter_OwnedPropertyReferences(), theEntityPackage.getProperty(), null, "ownedPropertyReferences", null, 0, -1, EntityFilter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
@@ -217,9 +217,9 @@ public void initializePackageContents() {
 
 		// Initialize classes and features; add operations and parameters
 		initEClass(entityFilterEClass, EntityFilter.class, "EntityFilter", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEReference(getEntityFilter_AttributeReferences(), theEntityPackage.getAttribute(), null, "attributeReferences", null, 0, -1, EntityFilter.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
-		initEReference(getEntityFilter_ReferenceReferences(), theEntityPackage.getReference(), null, "referenceReferences", null, 0, -1, EntityFilter.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
-		initEReference(getEntityFilter_OwnedPropertyReferences(), theEntityPackage.getProperty(), null, "ownedPropertyReferences", null, 0, -1, EntityFilter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getEntityFilter_AttributeReferences(), theEnvironmentPackage.getAttribute(), null, "attributeReferences", null, 0, -1, EntityFilter.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+		initEReference(getEntityFilter_ReferenceReferences(), theEnvironmentPackage.getReference(), null, "referenceReferences", null, 0, -1, EntityFilter.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
+		initEReference(getEntityFilter_OwnedPropertyReferences(), theEnvironmentPackage.getProperty(), null, "ownedPropertyReferences", null, 0, -1, EntityFilter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 		initEReference(getEntityFilter_Entity(), theEntityPackage.getEntity(), null, "entity", null, 1, 1, EntityFilter.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 	}
 
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2Fimpl%2FExtensionUtilitiesPackageImpl.java
e9d6b7d5daecb5c2895ea1b7da848560dd0fc78e
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2Futil%2FExtensionUtilitiesAdapterFactory.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2Futil%2FExtensionUtilitiesAdapterFactory.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/extensionUtilities/util/ExtensionUtilitiesAdapterFactory.java
import org.obeonetwork.dsl.entity.extensionUtilities.*;
@@ -16,6 +16,7 @@
 import org.eclipse.emf.common.notify.Notifier;
 import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
 import org.eclipse.emf.ecore.EObject;
+import org.obeonetwork.dsl.entity.extensionUtilities.*;
 import org.obeonetwork.dsl.entity.extensionUtilities.EntityFilter;
 import org.obeonetwork.dsl.entity.extensionUtilities.ExtensionUtilitiesPackage;
 import org.obeonetwork.dsl.environment.Filter;
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2Futil%2FExtensionUtilitiesAdapterFactory.java
ce3d029830d89793d3504cad4bfc4e8ccaa01586
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2Futil%2FExtensionUtilitiesSwitch.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2Futil%2FExtensionUtilitiesSwitch.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/extensionUtilities/util/ExtensionUtilitiesSwitch.java
import org.obeonetwork.dsl.entity.extensionUtilities.*;
@@ -16,6 +16,7 @@
 
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.EObject;
+import org.obeonetwork.dsl.entity.extensionUtilities.*;
 import org.obeonetwork.dsl.entity.extensionUtilities.EntityFilter;
 import org.obeonetwork.dsl.entity.extensionUtilities.ExtensionUtilitiesPackage;
 import org.obeonetwork.dsl.environment.Filter;
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2FextensionUtilities%2Futil%2FExtensionUtilitiesSwitch.java
7c50391393d39bd6e2ff1e6c29e7056b8057015d
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fimpl%2FEntityFactoryImpl.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fimpl%2FEntityFactoryImpl.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityFactoryImpl.java
import org.obeonetwork.dsl.entity.*;
			EntityFactory theEntityFactory = (EntityFactory)EPackage.Registry.INSTANCE.getEFactory(EntityPackage.eNS_URI);
import org.obeonetwork.dsl.entity.Attribute;
import org.obeonetwork.dsl.entity.Block;
import org.obeonetwork.dsl.entity.Reference;
import org.obeonetwork.dsl.entity.spec.ReferenceSpec;
			EntityFactory theEntityFactory = (EntityFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.obeonetwork.org/dsl/entity/2.0.0"); 
			case EntityPackage.BLOCK: return (EObject)createBlock();
			case EntityPackage.ATTRIBUTE: return (EObject)createAttribute();
			case EntityPackage.REFERENCE: return (EObject)createReference();
	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public Block createBlock() {
		BlockImpl block = new BlockImpl();
		return block;
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public Attribute createAttribute() {
		AttributeImpl attribute = new AttributeImpl();
		return attribute;
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated Not
	 */
	public Reference createReference() {
		ReferenceImpl reference = new ReferenceSpec();
		return reference;
	}

models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityFactoryImpl.java
BlockImpl block = new BlockImpl();
		return block;
Block createBlock()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityFactoryImpl.java
AttributeImpl attribute = new AttributeImpl();
		return attribute;
Attribute createAttribute()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityFactoryImpl.java
ReferenceImpl reference = new ReferenceSpec();
		return reference;
Reference createReference()
@@ -18,18 +18,15 @@
 import org.eclipse.emf.ecore.EPackage;
 import org.eclipse.emf.ecore.impl.EFactoryImpl;
 import org.eclipse.emf.ecore.plugin.EcorePlugin;
-import org.obeonetwork.dsl.entity.Attribute;
-import org.obeonetwork.dsl.entity.Block;
+import org.obeonetwork.dsl.entity.*;
 import org.obeonetwork.dsl.entity.Entity;
 import org.obeonetwork.dsl.entity.EntityFactory;
 import org.obeonetwork.dsl.entity.EntityPackage;
 import org.obeonetwork.dsl.entity.ExternalCriterion;
 import org.obeonetwork.dsl.entity.Finder;
 import org.obeonetwork.dsl.entity.InheritanceKind;
 import org.obeonetwork.dsl.entity.InternalCriterion;
-import org.obeonetwork.dsl.entity.Reference;
 import org.obeonetwork.dsl.entity.Root;
-import org.obeonetwork.dsl.entity.spec.ReferenceSpec;
 
 /**
  * <!-- begin-user-doc --> An implementation of the model <b>Factory</b>. <!--
@@ -52,7 +49,7 @@ public class EntityFactoryImpl extends EFactoryImpl implements EntityFactory {
 	 */
 	public static EntityFactory init() {
 		try {
-			EntityFactory theEntityFactory = (EntityFactory)EPackage.Registry.INSTANCE.getEFactory("http://www.obeonetwork.org/dsl/entity/2.0.0"); 
+			EntityFactory theEntityFactory = (EntityFactory)EPackage.Registry.INSTANCE.getEFactory(EntityPackage.eNS_URI);
 			if (theEntityFactory != null) {
 				return theEntityFactory;
 			}
@@ -81,10 +78,7 @@ public EntityFactoryImpl() {
 	public EObject create(EClass eClass) {
 		switch (eClass.getClassifierID()) {
 			case EntityPackage.ROOT: return (EObject)createRoot();
-			case EntityPackage.BLOCK: return (EObject)createBlock();
 			case EntityPackage.ENTITY: return (EObject)createEntity();
-			case EntityPackage.ATTRIBUTE: return (EObject)createAttribute();
-			case EntityPackage.REFERENCE: return (EObject)createReference();
 			case EntityPackage.FINDER: return (EObject)createFinder();
 			case EntityPackage.INTERNAL_CRITERION: return (EObject)createInternalCriterion();
 			case EntityPackage.EXTERNAL_CRITERION: return (EObject)createExternalCriterion();
@@ -130,15 +124,6 @@ public Root createRoot() {
 		return root;
 	}
 
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Block createBlock() {
-		BlockImpl block = new BlockImpl();
-		return block;
-	}
-
 	/**
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
@@ -148,24 +133,6 @@ public Entity createEntity() {
 		return entity;
 	}
 
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Attribute createAttribute() {
-		AttributeImpl attribute = new AttributeImpl();
-		return attribute;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated Not
-	 */
-	public Reference createReference() {
-		ReferenceImpl reference = new ReferenceSpec();
-		return reference;
-	}
-
 	/**
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fimpl%2FEntityFactoryImpl.java
abadb34c5276f1a33ec1734109c04af0f9632128
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fimpl%2FEntityImpl.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fimpl%2FEntityImpl.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityImpl.java
import org.eclipse.emf.common.util.BasicEList;
import org.eclipse.emf.common.util.UniqueEList;
import org.eclipse.emf.ecore.util.EcoreEList;
import org.eclipse.emf.ecore.util.EcoreUtil;
import org.obeonetwork.dsl.entity.Attribute;
import org.obeonetwork.dsl.entity.Block;
import org.obeonetwork.dsl.entity.Property;
import org.obeonetwork.dsl.entity.Reference;
 *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#getOwnedAttributes <em>Owned Attributes</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#getOwnedReferences <em>Owned References</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#getSupertype <em>Supertype</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#getAttributes <em>Attributes</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#getReferences <em>References</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#getProperties <em>Properties</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#getBlock <em>Block</em>}</li>
	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	@SuppressWarnings("unchecked")
	public EList<Attribute> getOwnedAttributes() {
		return (EList<Attribute>)eDynamicGet(EntityPackage.ENTITY__OWNED_ATTRIBUTES, EntityPackage.Literals.ENTITY__OWNED_ATTRIBUTES, true, true);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	@SuppressWarnings("unchecked")
	public EList<Reference> getOwnedReferences() {
		return (EList<Reference>)eDynamicGet(EntityPackage.ENTITY__OWNED_REFERENCES, EntityPackage.Literals.ENTITY__OWNED_REFERENCES, true, true);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public Entity getSupertype() {
		return (Entity)eDynamicGet(EntityPackage.ENTITY__SUPERTYPE, EntityPackage.Literals.ENTITY__SUPERTYPE, true, true);
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Entity basicGetSupertype() {
		return (Entity)eDynamicGet(EntityPackage.ENTITY__SUPERTYPE, EntityPackage.Literals.ENTITY__SUPERTYPE, false, true);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public void setSupertype(Entity newSupertype) {
		eDynamicSet(EntityPackage.ENTITY__SUPERTYPE, EntityPackage.Literals.ENTITY__SUPERTYPE, newSupertype);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated NOT
	 */
	public EList getAttributes() {
		BasicEList result = new UniqueEList() {
			protected Object[] newData(int capacity) {
				return new Attribute[capacity];
			}

			protected boolean useEquals() {
				return false;
			}
		};
		result.addAll(getOwnedAttributes());
		if (getSupertype() != null)
			result.addAll(getSupertype().getAttributes());
		result.shrink();
		EList unmodifiableResult = new EcoreEList.UnmodifiableEList.FastCompare(
				this, EntityPackage.eINSTANCE.getEntity_Attributes(), result
						.size(), result.data());
		return unmodifiableResult;
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated NOT
	 */
	public EList getReferences() {
		BasicEList result = new UniqueEList() {
			protected Object[] newData(int capacity) {
				return new Reference[capacity];
			}

			protected boolean useEquals() {
				return false;
			}
		};
		result.addAll(getOwnedReferences());
		if (getSupertype() != null)
			result.addAll(getSupertype().getReferences());
		result.shrink();
		EList unmodifiableResult = new EcoreEList.UnmodifiableEList.FastCompare(
				this, EntityPackage.eINSTANCE.getEntity_References(), result
						.size(), result.data());
		return unmodifiableResult;
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * 
	 * @generated NOT
	 */
	public EList getProperties() {
		BasicEList result = new UniqueEList() {
			protected Object[] newData(int capacity) {
				return new Property[capacity];
			}

			protected boolean useEquals() {
				return false;
			}
		};
		result.addAll(getAttributes());
		result.addAll(getReferences());
		result.shrink();
		EList unmodifiableResult = new EcoreEList.UnmodifiableEList.FastCompare(
				this, EntityPackage.eINSTANCE.getEntity_Attributes(), result
						.size(), result.data());
		return unmodifiableResult;
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public Block getBlock() {
		return (Block)eDynamicGet(EntityPackage.ENTITY__BLOCK, EntityPackage.Literals.ENTITY__BLOCK, true, true);
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public Block basicGetBlock() {
		return (Block)eDynamicGet(EntityPackage.ENTITY__BLOCK, EntityPackage.Literals.ENTITY__BLOCK, false, true);
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public NotificationChain basicSetBlock(Block newBlock, NotificationChain msgs) {
		msgs = eBasicSetContainer((InternalEObject)newBlock, EntityPackage.ENTITY__BLOCK, msgs);
		return msgs;
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public void setBlock(Block newBlock) {
		eDynamicSet(EntityPackage.ENTITY__BLOCK, EntityPackage.Literals.ENTITY__BLOCK, newBlock);
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated NOT
	 */
	public boolean isSubtypeOf(Entity entity) {
		// An entity A is a subtype of an entity B
		// - A and B are both the same entity
		// - the supertype of A is B
		// - the supertype of A is a subtype of B
		return (EcoreUtil.equals(this, entity)
				|| (getSupertype() != null
						&& (EcoreUtil.equals(getSupertype(), entity) || getSupertype().isSubtypeOf(entity))));
	}

			case EntityPackage.ENTITY__OWNED_ATTRIBUTES:
				return ((InternalEList<InternalEObject>)(InternalEList<?>)getOwnedAttributes()).basicAdd(otherEnd, msgs);
			case EntityPackage.ENTITY__OWNED_REFERENCES:
				return ((InternalEList<InternalEObject>)(InternalEList<?>)getOwnedReferences()).basicAdd(otherEnd, msgs);
			case EntityPackage.ENTITY__BLOCK:
				if (eInternalContainer() != null)
					msgs = eBasicRemoveFromContainer(msgs);
				return basicSetBlock((Block)otherEnd, msgs);
			case EntityPackage.ENTITY__OWNED_ATTRIBUTES:
				return ((InternalEList<?>)getOwnedAttributes()).basicRemove(otherEnd, msgs);
			case EntityPackage.ENTITY__OWNED_REFERENCES:
				return ((InternalEList<?>)getOwnedReferences()).basicRemove(otherEnd, msgs);
			case EntityPackage.ENTITY__BLOCK:
				return basicSetBlock(null, msgs);
	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
		switch (eContainerFeatureID()) {
			case EntityPackage.ENTITY__BLOCK:
				return eInternalContainer().eInverseRemove(this, EntityPackage.BLOCK__ENTITIES, Block.class, msgs);
		}
		return super.eBasicRemoveFromContainerFeature(msgs);
	}

			case EntityPackage.ENTITY__OWNED_ATTRIBUTES:
				return getOwnedAttributes();
			case EntityPackage.ENTITY__OWNED_REFERENCES:
				return getOwnedReferences();
			case EntityPackage.ENTITY__SUPERTYPE:
				if (resolve) return getSupertype();
				return basicGetSupertype();
			case EntityPackage.ENTITY__ATTRIBUTES:
				return getAttributes();
			case EntityPackage.ENTITY__REFERENCES:
				return getReferences();
			case EntityPackage.ENTITY__PROPERTIES:
				return getProperties();
			case EntityPackage.ENTITY__BLOCK:
				if (resolve) return getBlock();
				return basicGetBlock();
			case EntityPackage.ENTITY__OWNED_ATTRIBUTES:
				getOwnedAttributes().clear();
				getOwnedAttributes().addAll((Collection<? extends Attribute>)newValue);
				return;
			case EntityPackage.ENTITY__OWNED_REFERENCES:
				getOwnedReferences().clear();
				getOwnedReferences().addAll((Collection<? extends Reference>)newValue);
				return;
			case EntityPackage.ENTITY__SUPERTYPE:
				setSupertype((Entity)newValue);
				return;
			case EntityPackage.ENTITY__BLOCK:
				setBlock((Block)newValue);
				return;
			case EntityPackage.ENTITY__OWNED_ATTRIBUTES:
				getOwnedAttributes().clear();
				return;
			case EntityPackage.ENTITY__OWNED_REFERENCES:
				getOwnedReferences().clear();
				return;
			case EntityPackage.ENTITY__SUPERTYPE:
				setSupertype((Entity)null);
				return;
			case EntityPackage.ENTITY__BLOCK:
				setBlock((Block)null);
				return;
			case EntityPackage.ENTITY__OWNED_ATTRIBUTES:
				return !getOwnedAttributes().isEmpty();
			case EntityPackage.ENTITY__OWNED_REFERENCES:
				return !getOwnedReferences().isEmpty();
			case EntityPackage.ENTITY__SUPERTYPE:
				return basicGetSupertype() != null;
			case EntityPackage.ENTITY__ATTRIBUTES:
				return !getAttributes().isEmpty();
			case EntityPackage.ENTITY__REFERENCES:
				return !getReferences().isEmpty();
			case EntityPackage.ENTITY__PROPERTIES:
				return !getProperties().isEmpty();
			case EntityPackage.ENTITY__BLOCK:
				return basicGetBlock() != null;
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityImpl.java
return (Entity)eDynamicGet(EntityPackage.ENTITY__SUPERTYPE, EntityPackage.Literals.ENTITY__SUPERTYPE, true, true);
Entity getSupertype()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityImpl.java
return (Entity)eDynamicGet(EntityPackage.ENTITY__SUPERTYPE, EntityPackage.Literals.ENTITY__SUPERTYPE, false, true);
Entity basicGetSupertype()
Entity newSupertype
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityImpl.java
eDynamicSet(EntityPackage.ENTITY__SUPERTYPE, EntityPackage.Literals.ENTITY__SUPERTYPE, newSupertype);
void setSupertype(Entity newSupertype)
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityImpl.java
BasicEList result = new UniqueEList() {
			protected Object[] newData(int capacity) {
				return new Attribute[capacity];
EList getAttributes()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityImpl.java
return false;
boolean useEquals()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityImpl.java
BasicEList result = new UniqueEList() {
			protected Object[] newData(int capacity) {
				return new Reference[capacity];
EList getReferences()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityImpl.java
return false;
boolean useEquals()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityImpl.java
BasicEList result = new UniqueEList() {
			protected Object[] newData(int capacity) {
				return new Property[capacity];
EList getProperties()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityImpl.java
return false;
boolean useEquals()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityImpl.java
return (Block)eDynamicGet(EntityPackage.ENTITY__BLOCK, EntityPackage.Literals.ENTITY__BLOCK, true, true);
Block getBlock()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityImpl.java
return (Block)eDynamicGet(EntityPackage.ENTITY__BLOCK, EntityPackage.Literals.ENTITY__BLOCK, false, true);
Block basicGetBlock()
Block newBlock  NotificationChain msgs
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityImpl.java
msgs = eBasicSetContainer((InternalEObject)newBlock, EntityPackage.ENTITY__BLOCK, msgs);
		return msgs;
NotificationChain basicSetBlock(Block newBlock, NotificationChain msgs)
Block newBlock
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityImpl.java
eDynamicSet(EntityPackage.ENTITY__BLOCK, EntityPackage.Literals.ENTITY__BLOCK, newBlock);
void setBlock(Block newBlock)
Entity entity
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityImpl.java
// An entity A is a subtype of an entity B
		// - A and B are both the same entity
		// - the supertype of A is B
		// - the supertype of A is a subtype of B
		return (EcoreUtil.equals(this, entity)
				|| (getSupertype() != null
						&& (EcoreUtil.equals(getSupertype(), entity) || getSupertype().isSubtypeOf(entity))));
boolean isSubtypeOf(Entity entity)
NotificationChain msgs
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityImpl.java
switch (eContainerFeatureID()) {
			case EntityPackage.ENTITY__BLOCK:
				return eInternalContainer().eInverseRemove(this, EntityPackage.BLOCK__ENTITIES, Block.class, msgs);
NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs)
@@ -15,22 +15,14 @@
 import java.util.Collection;
 
 import org.eclipse.emf.common.notify.NotificationChain;
-import org.eclipse.emf.common.util.BasicEList;
 import org.eclipse.emf.common.util.EList;
-import org.eclipse.emf.common.util.UniqueEList;
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.InternalEObject;
-import org.eclipse.emf.ecore.util.EcoreEList;
-import org.eclipse.emf.ecore.util.EcoreUtil;
 import org.eclipse.emf.ecore.util.InternalEList;
-import org.obeonetwork.dsl.entity.Attribute;
-import org.obeonetwork.dsl.entity.Block;
 import org.obeonetwork.dsl.entity.Entity;
 import org.obeonetwork.dsl.entity.EntityPackage;
 import org.obeonetwork.dsl.entity.Finder;
 import org.obeonetwork.dsl.entity.InheritanceKind;
-import org.obeonetwork.dsl.entity.Property;
-import org.obeonetwork.dsl.entity.Reference;
 import org.obeonetwork.dsl.environment.impl.StructuredTypeImpl;
 
 /**
@@ -39,17 +31,10 @@
  * <p>
  * The following features are implemented:
  * <ul>
- *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#getOwnedAttributes <em>Owned Attributes</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#getOwnedReferences <em>Owned References</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#getSupertype <em>Supertype</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#getAttributes <em>Attributes</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#getReferences <em>References</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#getProperties <em>Properties</em>}</li>
  *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#getEstimatedVolumetry <em>Estimated Volumetry</em>}</li>
  *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#getEstimatedAccess <em>Estimated Access</em>}</li>
  *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#isHistorized <em>Historized</em>}</li>
  *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#getOwnedFinders <em>Owned Finders</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#getBlock <em>Block</em>}</li>
  *   <li>{@link org.obeonetwork.dsl.entity.impl.EntityImpl#getInheritanceKind <em>Inheritance Kind</em>}</li>
  * </ul>
  * </p>
@@ -118,123 +103,6 @@ protected EClass eStaticClass() {
 		return EntityPackage.Literals.ENTITY;
 	}
 
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	@SuppressWarnings("unchecked")
-	public EList<Attribute> getOwnedAttributes() {
-		return (EList<Attribute>)eDynamicGet(EntityPackage.ENTITY__OWNED_ATTRIBUTES, EntityPackage.Literals.ENTITY__OWNED_ATTRIBUTES, true, true);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	@SuppressWarnings("unchecked")
-	public EList<Reference> getOwnedReferences() {
-		return (EList<Reference>)eDynamicGet(EntityPackage.ENTITY__OWNED_REFERENCES, EntityPackage.Literals.ENTITY__OWNED_REFERENCES, true, true);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Entity getSupertype() {
-		return (Entity)eDynamicGet(EntityPackage.ENTITY__SUPERTYPE, EntityPackage.Literals.ENTITY__SUPERTYPE, true, true);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Entity basicGetSupertype() {
-		return (Entity)eDynamicGet(EntityPackage.ENTITY__SUPERTYPE, EntityPackage.Literals.ENTITY__SUPERTYPE, false, true);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setSupertype(Entity newSupertype) {
-		eDynamicSet(EntityPackage.ENTITY__SUPERTYPE, EntityPackage.Literals.ENTITY__SUPERTYPE, newSupertype);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated NOT
-	 */
-	public EList getAttributes() {
-		BasicEList result = new UniqueEList() {
-			protected Object[] newData(int capacity) {
-				return new Attribute[capacity];
-			}
-
-			protected boolean useEquals() {
-				return false;
-			}
-		};
-		result.addAll(getOwnedAttributes());
-		if (getSupertype() != null)
-			result.addAll(getSupertype().getAttributes());
-		result.shrink();
-		EList unmodifiableResult = new EcoreEList.UnmodifiableEList.FastCompare(
-				this, EntityPackage.eINSTANCE.getEntity_Attributes(), result
-						.size(), result.data());
-		return unmodifiableResult;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated NOT
-	 */
-	public EList getReferences() {
-		BasicEList result = new UniqueEList() {
-			protected Object[] newData(int capacity) {
-				return new Reference[capacity];
-			}
-
-			protected boolean useEquals() {
-				return false;
-			}
-		};
-		result.addAll(getOwnedReferences());
-		if (getSupertype() != null)
-			result.addAll(getSupertype().getReferences());
-		result.shrink();
-		EList unmodifiableResult = new EcoreEList.UnmodifiableEList.FastCompare(
-				this, EntityPackage.eINSTANCE.getEntity_References(), result
-						.size(), result.data());
-		return unmodifiableResult;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * 
-	 * @generated NOT
-	 */
-	public EList getProperties() {
-		BasicEList result = new UniqueEList() {
-			protected Object[] newData(int capacity) {
-				return new Property[capacity];
-			}
-
-			protected boolean useEquals() {
-				return false;
-			}
-		};
-		result.addAll(getAttributes());
-		result.addAll(getReferences());
-		result.shrink();
-		EList unmodifiableResult = new EcoreEList.UnmodifiableEList.FastCompare(
-				this, EntityPackage.eINSTANCE.getEntity_Attributes(), result
-						.size(), result.data());
-		return unmodifiableResult;
-	}
-
 	/**
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
@@ -292,41 +160,6 @@ public EList<Finder> getOwnedFinders() {
 		return (EList<Finder>)eDynamicGet(EntityPackage.ENTITY__OWNED_FINDERS, EntityPackage.Literals.ENTITY__OWNED_FINDERS, true, true);
 	}
 
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Block getBlock() {
-		return (Block)eDynamicGet(EntityPackage.ENTITY__BLOCK, EntityPackage.Literals.ENTITY__BLOCK, true, true);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public Block basicGetBlock() {
-		return (Block)eDynamicGet(EntityPackage.ENTITY__BLOCK, EntityPackage.Literals.ENTITY__BLOCK, false, true);
-	}
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	public NotificationChain basicSetBlock(Block newBlock, NotificationChain msgs) {
-		msgs = eBasicSetContainer((InternalEObject)newBlock, EntityPackage.ENTITY__BLOCK, msgs);
-		return msgs;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public void setBlock(Block newBlock) {
-		eDynamicSet(EntityPackage.ENTITY__BLOCK, EntityPackage.Literals.ENTITY__BLOCK, newBlock);
-	}
-
 	/**
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
@@ -343,21 +176,6 @@ public void setInheritanceKind(InheritanceKind newInheritanceKind) {
 		eDynamicSet(EntityPackage.ENTITY__INHERITANCE_KIND, EntityPackage.Literals.ENTITY__INHERITANCE_KIND, newInheritanceKind);
 	}
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated NOT
-	 */
-	public boolean isSubtypeOf(Entity entity) {
-		// An entity A is a subtype of an entity B
-		// - A and B are both the same entity
-		// - the supertype of A is B
-		// - the supertype of A is a subtype of B
-		return (EcoreUtil.equals(this, entity)
-				|| (getSupertype() != null
-						&& (EcoreUtil.equals(getSupertype(), entity) || getSupertype().isSubtypeOf(entity))));
-	}
-
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -367,16 +185,8 @@ public boolean isSubtypeOf(Entity entity) {
 	@Override
 	public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
 		switch (featureID) {
-			case EntityPackage.ENTITY__OWNED_ATTRIBUTES:
-				return ((InternalEList<InternalEObject>)(InternalEList<?>)getOwnedAttributes()).basicAdd(otherEnd, msgs);
-			case EntityPackage.ENTITY__OWNED_REFERENCES:
-				return ((InternalEList<InternalEObject>)(InternalEList<?>)getOwnedReferences()).basicAdd(otherEnd, msgs);
 			case EntityPackage.ENTITY__OWNED_FINDERS:
 				return ((InternalEList<InternalEObject>)(InternalEList<?>)getOwnedFinders()).basicAdd(otherEnd, msgs);
-			case EntityPackage.ENTITY__BLOCK:
-				if (eInternalContainer() != null)
-					msgs = eBasicRemoveFromContainer(msgs);
-				return basicSetBlock((Block)otherEnd, msgs);
 		}
 		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
@@ -389,32 +199,12 @@ public NotificationChain eInverseAdd(InternalEObject otherEnd, int featureID, No
 	@Override
 	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
 		switch (featureID) {
-			case EntityPackage.ENTITY__OWNED_ATTRIBUTES:
-				return ((InternalEList<?>)getOwnedAttributes()).basicRemove(otherEnd, msgs);
-			case EntityPackage.ENTITY__OWNED_REFERENCES:
-				return ((InternalEList<?>)getOwnedReferences()).basicRemove(otherEnd, msgs);
 			case EntityPackage.ENTITY__OWNED_FINDERS:
 				return ((InternalEList<?>)getOwnedFinders()).basicRemove(otherEnd, msgs);
-			case EntityPackage.ENTITY__BLOCK:
-				return basicSetBlock(null, msgs);
 		}
 		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
 
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	@Override
-	public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs) {
-		switch (eContainerFeatureID()) {
-			case EntityPackage.ENTITY__BLOCK:
-				return eInternalContainer().eInverseRemove(this, EntityPackage.BLOCK__ENTITIES, Block.class, msgs);
-		}
-		return super.eBasicRemoveFromContainerFeature(msgs);
-	}
-
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -423,19 +213,6 @@ public NotificationChain eBasicRemoveFromContainerFeature(NotificationChain msgs
 	@Override
 	public Object eGet(int featureID, boolean resolve, boolean coreType) {
 		switch (featureID) {
-			case EntityPackage.ENTITY__OWNED_ATTRIBUTES:
-				return getOwnedAttributes();
-			case EntityPackage.ENTITY__OWNED_REFERENCES:
-				return getOwnedReferences();
-			case EntityPackage.ENTITY__SUPERTYPE:
-				if (resolve) return getSupertype();
-				return basicGetSupertype();
-			case EntityPackage.ENTITY__ATTRIBUTES:
-				return getAttributes();
-			case EntityPackage.ENTITY__REFERENCES:
-				return getReferences();
-			case EntityPackage.ENTITY__PROPERTIES:
-				return getProperties();
 			case EntityPackage.ENTITY__ESTIMATED_VOLUMETRY:
 				return getEstimatedVolumetry();
 			case EntityPackage.ENTITY__ESTIMATED_ACCESS:
@@ -444,9 +221,6 @@ public Object eGet(int featureID, boolean resolve, boolean coreType) {
 				return isHistorized();
 			case EntityPackage.ENTITY__OWNED_FINDERS:
 				return getOwnedFinders();
-			case EntityPackage.ENTITY__BLOCK:
-				if (resolve) return getBlock();
-				return basicGetBlock();
 			case EntityPackage.ENTITY__INHERITANCE_KIND:
 				return getInheritanceKind();
 		}
@@ -462,17 +236,6 @@ public Object eGet(int featureID, boolean resolve, boolean coreType) {
 	@Override
 	public void eSet(int featureID, Object newValue) {
 		switch (featureID) {
-			case EntityPackage.ENTITY__OWNED_ATTRIBUTES:
-				getOwnedAttributes().clear();
-				getOwnedAttributes().addAll((Collection<? extends Attribute>)newValue);
-				return;
-			case EntityPackage.ENTITY__OWNED_REFERENCES:
-				getOwnedReferences().clear();
-				getOwnedReferences().addAll((Collection<? extends Reference>)newValue);
-				return;
-			case EntityPackage.ENTITY__SUPERTYPE:
-				setSupertype((Entity)newValue);
-				return;
 			case EntityPackage.ENTITY__ESTIMATED_VOLUMETRY:
 				setEstimatedVolumetry((Integer)newValue);
 				return;
@@ -486,9 +249,6 @@ public void eSet(int featureID, Object newValue) {
 				getOwnedFinders().clear();
 				getOwnedFinders().addAll((Collection<? extends Finder>)newValue);
 				return;
-			case EntityPackage.ENTITY__BLOCK:
-				setBlock((Block)newValue);
-				return;
 			case EntityPackage.ENTITY__INHERITANCE_KIND:
 				setInheritanceKind((InheritanceKind)newValue);
 				return;
@@ -504,15 +264,6 @@ public void eSet(int featureID, Object newValue) {
 	@Override
 	public void eUnset(int featureID) {
 		switch (featureID) {
-			case EntityPackage.ENTITY__OWNED_ATTRIBUTES:
-				getOwnedAttributes().clear();
-				return;
-			case EntityPackage.ENTITY__OWNED_REFERENCES:
-				getOwnedReferences().clear();
-				return;
-			case EntityPackage.ENTITY__SUPERTYPE:
-				setSupertype((Entity)null);
-				return;
 			case EntityPackage.ENTITY__ESTIMATED_VOLUMETRY:
 				setEstimatedVolumetry(ESTIMATED_VOLUMETRY_EDEFAULT);
 				return;
@@ -525,9 +276,6 @@ public void eUnset(int featureID) {
 			case EntityPackage.ENTITY__OWNED_FINDERS:
 				getOwnedFinders().clear();
 				return;
-			case EntityPackage.ENTITY__BLOCK:
-				setBlock((Block)null);
-				return;
 			case EntityPackage.ENTITY__INHERITANCE_KIND:
 				setInheritanceKind(INHERITANCE_KIND_EDEFAULT);
 				return;
@@ -543,18 +291,6 @@ public void eUnset(int featureID) {
 	@Override
 	public boolean eIsSet(int featureID) {
 		switch (featureID) {
-			case EntityPackage.ENTITY__OWNED_ATTRIBUTES:
-				return !getOwnedAttributes().isEmpty();
-			case EntityPackage.ENTITY__OWNED_REFERENCES:
-				return !getOwnedReferences().isEmpty();
-			case EntityPackage.ENTITY__SUPERTYPE:
-				return basicGetSupertype() != null;
-			case EntityPackage.ENTITY__ATTRIBUTES:
-				return !getAttributes().isEmpty();
-			case EntityPackage.ENTITY__REFERENCES:
-				return !getReferences().isEmpty();
-			case EntityPackage.ENTITY__PROPERTIES:
-				return !getProperties().isEmpty();
 			case EntityPackage.ENTITY__ESTIMATED_VOLUMETRY:
 				return getEstimatedVolumetry() != ESTIMATED_VOLUMETRY_EDEFAULT;
 			case EntityPackage.ENTITY__ESTIMATED_ACCESS:
@@ -563,8 +299,6 @@ public boolean eIsSet(int featureID) {
 				return isHistorized() != HISTORIZED_EDEFAULT;
 			case EntityPackage.ENTITY__OWNED_FINDERS:
 				return !getOwnedFinders().isEmpty();
-			case EntityPackage.ENTITY__BLOCK:
-				return basicGetBlock() != null;
 			case EntityPackage.ENTITY__INHERITANCE_KIND:
 				return getInheritanceKind() != INHERITANCE_KIND_EDEFAULT;
 		}
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fimpl%2FEntityImpl.java
442e18967f0f9cf412423c25bf61fd10bed95b34
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fimpl%2FEntityPackageImpl.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fimpl%2FEntityPackageImpl.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	public EAttribute getRoot_Name() {
		return (EAttribute)rootEClass.getEStructuralFeatures().get(0);
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	public EReference getRoot_Namespaces() {
		return (EReference)rootEClass.getEStructuralFeatures().get(1);
		return (EAttribute)entityEClass.getEStructuralFeatures().get(0);
		return (EAttribute)entityEClass.getEStructuralFeatures().get(1);
		return (EAttribute)entityEClass.getEStructuralFeatures().get(2);
		return (EReference)entityEClass.getEStructuralFeatures().get(3);
		return (EAttribute)entityEClass.getEStructuralFeatures().get(4);
		createEAttribute(rootEClass, ROOT__NAME);
		createEReference(rootEClass, ROOT__NAMESPACES);
		rootEClass.getESuperTypes().add(theEnvironmentPackage.getTypesDefinition());
		initEAttribute(getRoot_Name(), ecorePackage.getEString(), "name", null, 0, 1, Root.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
		initEReference(getRoot_Namespaces(), theEnvironmentPackage.getNamespace(), null, "namespaces", null, 0, -1, Root.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
		initEReference(getInternalCriterion_Target(), theEnvironmentPackage.getAttribute(), null, "target", null, 1, 1, InternalCriterion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
import org.eclipse.emf.ecore.EOperation;
import org.obeonetwork.dsl.entity.Attribute;
import org.obeonetwork.dsl.entity.Block;
import org.obeonetwork.dsl.entity.Property;
import org.obeonetwork.dsl.entity.Reference;
	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	private EClass blockEClass = null;

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	private EClass propertyEClass = null;

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	private EClass attributeEClass = null;

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	private EClass referenceEClass = null;

	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EReference getRoot_Blocks() {
		return (EReference)rootEClass.getEStructuralFeatures().get(0);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EClass getBlock() {
		return blockEClass;
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EAttribute getBlock_Name() {
		return (EAttribute)blockEClass.getEStructuralFeatures().get(0);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	public EReference getBlock_Entities() {
		return (EReference)blockEClass.getEStructuralFeatures().get(1);
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	public EReference getBlock_Subblocks() {
		return (EReference)blockEClass.getEStructuralFeatures().get(2);
	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EReference getEntity_OwnedAttributes() {
		return (EReference)entityEClass.getEStructuralFeatures().get(0);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EReference getEntity_OwnedReferences() {
		return (EReference)entityEClass.getEStructuralFeatures().get(1);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EReference getEntity_Supertype() {
		return (EReference)entityEClass.getEStructuralFeatures().get(2);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EReference getEntity_Attributes() {
		return (EReference)entityEClass.getEStructuralFeatures().get(3);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EReference getEntity_References() {
		return (EReference)entityEClass.getEStructuralFeatures().get(4);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EReference getEntity_Properties() {
		return (EReference)entityEClass.getEStructuralFeatures().get(5);
	}

		return (EAttribute)entityEClass.getEStructuralFeatures().get(6);
		return (EAttribute)entityEClass.getEStructuralFeatures().get(7);
		return (EAttribute)entityEClass.getEStructuralFeatures().get(8);
		return (EReference)entityEClass.getEStructuralFeatures().get(9);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EReference getEntity_Block() {
		return (EReference)entityEClass.getEStructuralFeatures().get(10);
		return (EAttribute)entityEClass.getEStructuralFeatures().get(11);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EClass getProperty() {
		return propertyEClass;
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EAttribute getProperty_Name() {
		return (EAttribute)propertyEClass.getEStructuralFeatures().get(0);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EAttribute getProperty_Multiplicity() {
		return (EAttribute)propertyEClass.getEStructuralFeatures().get(1);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EAttribute getProperty_IsPrimaryKey() {
		return (EAttribute)propertyEClass.getEStructuralFeatures().get(2);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EClass getAttribute() {
		return attributeEClass;
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EReference getAttribute_Entity() {
		return (EReference)attributeEClass.getEStructuralFeatures().get(0);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EReference getAttribute_Type() {
		return (EReference)attributeEClass.getEStructuralFeatures().get(1);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EClass getReference() {
		return referenceEClass;
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EReference getReference_Entity() {
		return (EReference)referenceEClass.getEStructuralFeatures().get(0);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EAttribute getReference_IsComposite() {
		return (EAttribute)referenceEClass.getEStructuralFeatures().get(1);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EReference getReference_OppositeOf() {
		return (EReference)referenceEClass.getEStructuralFeatures().get(2);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EReference getReference_Type() {
		return (EReference)referenceEClass.getEStructuralFeatures().get(3);
	}

	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EAttribute getReference_Navigable() {
		return (EAttribute)referenceEClass.getEStructuralFeatures().get(4);
		createEReference(rootEClass, ROOT__BLOCKS);

		blockEClass = createEClass(BLOCK);
		createEAttribute(blockEClass, BLOCK__NAME);
		createEReference(blockEClass, BLOCK__ENTITIES);
		createEReference(blockEClass, BLOCK__SUBBLOCKS);
		createEReference(entityEClass, ENTITY__OWNED_ATTRIBUTES);
		createEReference(entityEClass, ENTITY__OWNED_REFERENCES);
		createEReference(entityEClass, ENTITY__SUPERTYPE);
		createEReference(entityEClass, ENTITY__ATTRIBUTES);
		createEReference(entityEClass, ENTITY__REFERENCES);
		createEReference(entityEClass, ENTITY__PROPERTIES);
		createEReference(entityEClass, ENTITY__BLOCK);
		propertyEClass = createEClass(PROPERTY);
		createEAttribute(propertyEClass, PROPERTY__NAME);
		createEAttribute(propertyEClass, PROPERTY__MULTIPLICITY);
		createEAttribute(propertyEClass, PROPERTY__IS_PRIMARY_KEY);

		attributeEClass = createEClass(ATTRIBUTE);
		createEReference(attributeEClass, ATTRIBUTE__ENTITY);
		createEReference(attributeEClass, ATTRIBUTE__TYPE);

		referenceEClass = createEClass(REFERENCE);
		createEReference(referenceEClass, REFERENCE__ENTITY);
		createEAttribute(referenceEClass, REFERENCE__IS_COMPOSITE);
		createEReference(referenceEClass, REFERENCE__OPPOSITE_OF);
		createEReference(referenceEClass, REFERENCE__TYPE);
		createEAttribute(referenceEClass, REFERENCE__NAVIGABLE);

		rootEClass.getESuperTypes().add(theEnvironmentPackage.getNamespace());
		blockEClass.getESuperTypes().add(theEnvironmentPackage.getObeoDSMObject());
		propertyEClass.getESuperTypes().add(theEnvironmentPackage.getObeoDSMObject());
		propertyEClass.getESuperTypes().add(theEnvironmentPackage.getBoundableElement());
		attributeEClass.getESuperTypes().add(this.getProperty());
		referenceEClass.getESuperTypes().add(this.getProperty());
		initEReference(getRoot_Blocks(), this.getBlock(), null, "blocks", null, 0, -1, Root.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);

		initEClass(blockEClass, Block.class, "Block", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
		initEAttribute(getBlock_Name(), ecorePackage.getEString(), "name", null, 1, 1, Block.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
		initEReference(getBlock_Entities(), this.getEntity(), this.getEntity_Block(), "entities", null, 0, -1, Block.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
		initEReference(getBlock_Subblocks(), this.getBlock(), null, "subblocks", null, 0, -1, Block.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
		initEReference(getEntity_OwnedAttributes(), this.getAttribute(), this.getAttribute_Entity(), "ownedAttributes", null, 0, -1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
		initEReference(getEntity_OwnedReferences(), this.getReference(), this.getReference_Entity(), "ownedReferences", null, 0, -1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
		initEReference(getEntity_Supertype(), this.getEntity(), null, "supertype", null, 0, 1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
		initEReference(getEntity_Attributes(), this.getAttribute(), null, "attributes", null, 0, -1, Entity.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
		initEReference(getEntity_References(), this.getReference(), null, "references", null, 0, -1, Entity.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
		initEReference(getEntity_Properties(), this.getProperty(), null, "properties", null, 0, -1, Entity.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
		initEReference(getEntity_Block(), this.getBlock(), this.getBlock_Entities(), "block", null, 1, 1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
		EOperation op = addEOperation(entityEClass, ecorePackage.getEBoolean(), "isSubtypeOf", 0, 1, IS_UNIQUE, IS_ORDERED);
		addEParameter(op, this.getEntity(), "entity", 0, 1, IS_UNIQUE, IS_ORDERED);

		initEClass(propertyEClass, Property.class, "Property", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
		initEAttribute(getProperty_Name(), ecorePackage.getEString(), "name", null, 1, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
		initEAttribute(getProperty_Multiplicity(), theEnvironmentPackage.getMultiplicityKind(), "multiplicity", null, 1, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
		initEAttribute(getProperty_IsPrimaryKey(), ecorePackage.getEBoolean(), "isPrimaryKey", "false", 1, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);

		initEClass(attributeEClass, Attribute.class, "Attribute", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
		initEReference(getAttribute_Entity(), this.getEntity(), this.getEntity_OwnedAttributes(), "entity", null, 1, 1, Attribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
		initEReference(getAttribute_Type(), theEnvironmentPackage.getPrimitiveType(), null, "type", null, 1, 1, Attribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);

		initEClass(referenceEClass, Reference.class, "Reference", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
		initEReference(getReference_Entity(), this.getEntity(), this.getEntity_OwnedReferences(), "entity", null, 1, 1, Reference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
		initEAttribute(getReference_IsComposite(), ecorePackage.getEBoolean(), "isComposite", "false", 1, 1, Reference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
		initEReference(getReference_OppositeOf(), this.getReference(), null, "oppositeOf", null, 0, 1, Reference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
		initEReference(getReference_Type(), this.getEntity(), null, "type", null, 1, 1, Reference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
		initEAttribute(getReference_Navigable(), ecorePackage.getEBoolean(), "navigable", "true", 0, 1, Reference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);

		op = addEOperation(referenceEClass, ecorePackage.getEBoolean(), "canBeOppositeOf", 1, 1, IS_UNIQUE, IS_ORDERED);
		addEParameter(op, this.getReference(), "opposite", 0, 1, IS_UNIQUE, IS_ORDERED);

		initEReference(getInternalCriterion_Target(), this.getAttribute(), null, "target", null, 1, 1, InternalCriterion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return (EReference)rootEClass.getEStructuralFeatures().get(0);
EReference getRoot_Blocks()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return blockEClass;
EClass getBlock()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return (EAttribute)blockEClass.getEStructuralFeatures().get(0);
EAttribute getBlock_Name()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return (EReference)blockEClass.getEStructuralFeatures().get(1);
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	public EReference getBlock_Subblocks() {
		return (EReference)blockEClass.getEStructuralFeatures().get(2);
	/**
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	 * @generated
	 */
	public EReference getEntity_OwnedAttributes() {
		return (EReference)entityEClass.getEStructuralFeatures().get(0);
EReference getBlock_Entities()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return (EReference)entityEClass.getEStructuralFeatures().get(1);
EReference getEntity_OwnedReferences()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return (EReference)entityEClass.getEStructuralFeatures().get(2);
EReference getEntity_Supertype()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return (EReference)entityEClass.getEStructuralFeatures().get(3);
EReference getEntity_Attributes()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return (EReference)entityEClass.getEStructuralFeatures().get(4);
EReference getEntity_References()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return (EReference)entityEClass.getEStructuralFeatures().get(5);
EReference getEntity_Properties()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return (EReference)entityEClass.getEStructuralFeatures().get(10);
		return (EAttribute)entityEClass.getEStructuralFeatures().get(11);
EReference getEntity_Block()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return propertyEClass;
EClass getProperty()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return (EAttribute)propertyEClass.getEStructuralFeatures().get(0);
EAttribute getProperty_Name()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return (EAttribute)propertyEClass.getEStructuralFeatures().get(1);
EAttribute getProperty_Multiplicity()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return (EAttribute)propertyEClass.getEStructuralFeatures().get(2);
EAttribute getProperty_IsPrimaryKey()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return attributeEClass;
EClass getAttribute()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return (EReference)attributeEClass.getEStructuralFeatures().get(0);
EReference getAttribute_Entity()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return (EReference)attributeEClass.getEStructuralFeatures().get(1);
EReference getAttribute_Type()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return referenceEClass;
EClass getReference()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return (EReference)referenceEClass.getEStructuralFeatures().get(0);
EReference getReference_Entity()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return (EAttribute)referenceEClass.getEStructuralFeatures().get(1);
EAttribute getReference_IsComposite()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return (EReference)referenceEClass.getEStructuralFeatures().get(2);
EReference getReference_OppositeOf()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/EntityPackageImpl.java
return (EReference)referenceEClass.getEStructuralFeatures().get(3);
EReference getReference_Type()
@@ -15,12 +15,9 @@
 import org.eclipse.emf.ecore.EAttribute;
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.EEnum;
-import org.eclipse.emf.ecore.EOperation;
 import org.eclipse.emf.ecore.EPackage;
 import org.eclipse.emf.ecore.EReference;
 import org.eclipse.emf.ecore.impl.EPackageImpl;
-import org.obeonetwork.dsl.entity.Attribute;
-import org.obeonetwork.dsl.entity.Block;
 import org.obeonetwork.dsl.entity.Criterion;
 import org.obeonetwork.dsl.entity.Entity;
 import org.obeonetwork.dsl.entity.EntityFactory;
@@ -29,8 +26,6 @@
 import org.obeonetwork.dsl.entity.Finder;
 import org.obeonetwork.dsl.entity.InheritanceKind;
 import org.obeonetwork.dsl.entity.InternalCriterion;
-import org.obeonetwork.dsl.entity.Property;
-import org.obeonetwork.dsl.entity.Reference;
 import org.obeonetwork.dsl.entity.Root;
 import org.obeonetwork.dsl.entity.extensionUtilities.ExtensionUtilitiesPackage;
 import org.obeonetwork.dsl.entity.extensionUtilities.impl.ExtensionUtilitiesPackageImpl;
@@ -55,36 +50,12 @@ public class EntityPackageImpl extends EPackageImpl implements EntityPackage {
 	 */
 	private EClass rootEClass = null;
 
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	private EClass blockEClass = null;
-
 	/**
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 */
 	private EClass entityEClass = null;
 
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	private EClass propertyEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	private EClass attributeEClass = null;
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	private EClass referenceEClass = null;
-
 	/**
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
@@ -191,43 +162,21 @@ public EClass getRoot() {
 	}
 
 	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getRoot_Blocks() {
-		return (EReference)rootEClass.getEStructuralFeatures().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EClass getBlock() {
-		return blockEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getBlock_Name() {
-		return (EAttribute)blockEClass.getEStructuralFeatures().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EReference getBlock_Entities() {
-		return (EReference)blockEClass.getEStructuralFeatures().get(1);
+	public EAttribute getRoot_Name() {
+		return (EAttribute)rootEClass.getEStructuralFeatures().get(0);
 	}
 
 	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public EReference getBlock_Subblocks() {
-		return (EReference)blockEClass.getEStructuralFeatures().get(2);
+	public EReference getRoot_Namespaces() {
+		return (EReference)rootEClass.getEStructuralFeatures().get(1);
 	}
 
 	/**
@@ -238,204 +187,44 @@ public EClass getEntity() {
 		return entityEClass;
 	}
 
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getEntity_OwnedAttributes() {
-		return (EReference)entityEClass.getEStructuralFeatures().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getEntity_OwnedReferences() {
-		return (EReference)entityEClass.getEStructuralFeatures().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getEntity_Supertype() {
-		return (EReference)entityEClass.getEStructuralFeatures().get(2);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getEntity_Attributes() {
-		return (EReference)entityEClass.getEStructuralFeatures().get(3);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getEntity_References() {
-		return (EReference)entityEClass.getEStructuralFeatures().get(4);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getEntity_Properties() {
-		return (EReference)entityEClass.getEStructuralFeatures().get(5);
-	}
-
 	/**
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 */
 	public EAttribute getEntity_EstimatedVolumetry() {
-		return (EAttribute)entityEClass.getEStructuralFeatures().get(6);
+		return (EAttribute)entityEClass.getEStructuralFeatures().get(0);
 	}
 
 	/**
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 */
 	public EAttribute getEntity_EstimatedAccess() {
-		return (EAttribute)entityEClass.getEStructuralFeatures().get(7);
+		return (EAttribute)entityEClass.getEStructuralFeatures().get(1);
 	}
 
 	/**
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 */
 	public EAttribute getEntity_Historized() {
-		return (EAttribute)entityEClass.getEStructuralFeatures().get(8);
+		return (EAttribute)entityEClass.getEStructuralFeatures().get(2);
 	}
 
 	/**
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 */
 	public EReference getEntity_OwnedFinders() {
-		return (EReference)entityEClass.getEStructuralFeatures().get(9);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getEntity_Block() {
-		return (EReference)entityEClass.getEStructuralFeatures().get(10);
+		return (EReference)entityEClass.getEStructuralFeatures().get(3);
 	}
 
 	/**
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
 	 */
 	public EAttribute getEntity_InheritanceKind() {
-		return (EAttribute)entityEClass.getEStructuralFeatures().get(11);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EClass getProperty() {
-		return propertyEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getProperty_Name() {
-		return (EAttribute)propertyEClass.getEStructuralFeatures().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getProperty_Multiplicity() {
-		return (EAttribute)propertyEClass.getEStructuralFeatures().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getProperty_IsPrimaryKey() {
-		return (EAttribute)propertyEClass.getEStructuralFeatures().get(2);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EClass getAttribute() {
-		return attributeEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getAttribute_Entity() {
-		return (EReference)attributeEClass.getEStructuralFeatures().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getAttribute_Type() {
-		return (EReference)attributeEClass.getEStructuralFeatures().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EClass getReference() {
-		return referenceEClass;
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getReference_Entity() {
-		return (EReference)referenceEClass.getEStructuralFeatures().get(0);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getReference_IsComposite() {
-		return (EAttribute)referenceEClass.getEStructuralFeatures().get(1);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getReference_OppositeOf() {
-		return (EReference)referenceEClass.getEStructuralFeatures().get(2);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EReference getReference_Type() {
-		return (EReference)referenceEClass.getEStructuralFeatures().get(3);
-	}
-
-	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
-	 * @generated
-	 */
-	public EAttribute getReference_Navigable() {
-		return (EAttribute)referenceEClass.getEStructuralFeatures().get(4);
+		return (EAttribute)entityEClass.getEStructuralFeatures().get(4);
 	}
 
 	/**
@@ -578,43 +367,16 @@ public void createPackageContents() {
 
 		// Create classes and their features
 		rootEClass = createEClass(ROOT);
-		createEReference(rootEClass, ROOT__BLOCKS);
-
-		blockEClass = createEClass(BLOCK);
-		createEAttribute(blockEClass, BLOCK__NAME);
-		createEReference(blockEClass, BLOCK__ENTITIES);
-		createEReference(blockEClass, BLOCK__SUBBLOCKS);
+		createEAttribute(rootEClass, ROOT__NAME);
+		createEReference(rootEClass, ROOT__NAMESPACES);
 
 		entityEClass = createEClass(ENTITY);
-		createEReference(entityEClass, ENTITY__OWNED_ATTRIBUTES);
-		createEReference(entityEClass, ENTITY__OWNED_REFERENCES);
-		createEReference(entityEClass, ENTITY__SUPERTYPE);
-		createEReference(entityEClass, ENTITY__ATTRIBUTES);
-		createEReference(entityEClass, ENTITY__REFERENCES);
-		createEReference(entityEClass, ENTITY__PROPERTIES);
 		createEAttribute(entityEClass, ENTITY__ESTIMATED_VOLUMETRY);
 		createEAttribute(entityEClass, ENTITY__ESTIMATED_ACCESS);
 		createEAttribute(entityEClass, ENTITY__HISTORIZED);
 		createEReference(entityEClass, ENTITY__OWNED_FINDERS);
-		createEReference(entityEClass, ENTITY__BLOCK);
 		createEAttribute(entityEClass, ENTITY__INHERITANCE_KIND);
 
-		propertyEClass = createEClass(PROPERTY);
-		createEAttribute(propertyEClass, PROPERTY__NAME);
-		createEAttribute(propertyEClass, PROPERTY__MULTIPLICITY);
-		createEAttribute(propertyEClass, PROPERTY__IS_PRIMARY_KEY);
-
-		attributeEClass = createEClass(ATTRIBUTE);
-		createEReference(attributeEClass, ATTRIBUTE__ENTITY);
-		createEReference(attributeEClass, ATTRIBUTE__TYPE);
-
-		referenceEClass = createEClass(REFERENCE);
-		createEReference(referenceEClass, REFERENCE__ENTITY);
-		createEAttribute(referenceEClass, REFERENCE__IS_COMPOSITE);
-		createEReference(referenceEClass, REFERENCE__OPPOSITE_OF);
-		createEReference(referenceEClass, REFERENCE__TYPE);
-		createEAttribute(referenceEClass, REFERENCE__NAVIGABLE);
-
 		finderEClass = createEClass(FINDER);
 		createEAttribute(finderEClass, FINDER__NAME);
 		createEReference(finderEClass, FINDER__ENTITY);
@@ -670,63 +432,25 @@ public void initializePackageContents() {
 		// Set bounds for type parameters
 
 		// Add supertypes to classes
-		rootEClass.getESuperTypes().add(theEnvironmentPackage.getNamespace());
-		blockEClass.getESuperTypes().add(theEnvironmentPackage.getObeoDSMObject());
+		rootEClass.getESuperTypes().add(theEnvironmentPackage.getTypesDefinition());
 		entityEClass.getESuperTypes().add(theEnvironmentPackage.getStructuredType());
-		propertyEClass.getESuperTypes().add(theEnvironmentPackage.getObeoDSMObject());
-		propertyEClass.getESuperTypes().add(theEnvironmentPackage.getBoundableElement());
-		attributeEClass.getESuperTypes().add(this.getProperty());
-		referenceEClass.getESuperTypes().add(this.getProperty());
 		finderEClass.getESuperTypes().add(theEnvironmentPackage.getObeoDSMObject());
 		internalCriterionEClass.getESuperTypes().add(this.getCriterion());
 		criterionEClass.getESuperTypes().add(theEnvironmentPackage.getObeoDSMObject());
 		externalCriterionEClass.getESuperTypes().add(this.getCriterion());
 
 		// Initialize classes and features; add operations and parameters
 		initEClass(rootEClass, Root.class, "Root", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEReference(getRoot_Blocks(), this.getBlock(), null, "blocks", null, 0, -1, Root.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-		initEClass(blockEClass, Block.class, "Block", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEAttribute(getBlock_Name(), ecorePackage.getEString(), "name", null, 1, 1, Block.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEReference(getBlock_Entities(), this.getEntity(), this.getEntity_Block(), "entities", null, 0, -1, Block.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEReference(getBlock_Subblocks(), this.getBlock(), null, "subblocks", null, 0, -1, Block.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEAttribute(getRoot_Name(), ecorePackage.getEString(), "name", null, 0, 1, Root.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getRoot_Namespaces(), theEnvironmentPackage.getNamespace(), null, "namespaces", null, 0, -1, Root.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
 		initEClass(entityEClass, Entity.class, "Entity", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEReference(getEntity_OwnedAttributes(), this.getAttribute(), this.getAttribute_Entity(), "ownedAttributes", null, 0, -1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEReference(getEntity_OwnedReferences(), this.getReference(), this.getReference_Entity(), "ownedReferences", null, 0, -1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEReference(getEntity_Supertype(), this.getEntity(), null, "supertype", null, 0, 1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEReference(getEntity_Attributes(), this.getAttribute(), null, "attributes", null, 0, -1, Entity.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
-		initEReference(getEntity_References(), this.getReference(), null, "references", null, 0, -1, Entity.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
-		initEReference(getEntity_Properties(), this.getProperty(), null, "properties", null, 0, -1, Entity.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
 		initEAttribute(getEntity_EstimatedVolumetry(), ecorePackage.getEInt(), "estimatedVolumetry", null, 0, 1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 		initEAttribute(getEntity_EstimatedAccess(), ecorePackage.getEInt(), "estimatedAccess", null, 0, 1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 		initEAttribute(getEntity_Historized(), ecorePackage.getEBoolean(), "historized", null, 1, 1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 		initEReference(getEntity_OwnedFinders(), this.getFinder(), this.getFinder_Entity(), "ownedFinders", null, 0, -1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEReference(getEntity_Block(), this.getBlock(), this.getBlock_Entities(), "block", null, 1, 1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 		initEAttribute(getEntity_InheritanceKind(), this.getInheritanceKind(), "inheritanceKind", null, 0, 1, Entity.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
-		EOperation op = addEOperation(entityEClass, ecorePackage.getEBoolean(), "isSubtypeOf", 0, 1, IS_UNIQUE, IS_ORDERED);
-		addEParameter(op, this.getEntity(), "entity", 0, 1, IS_UNIQUE, IS_ORDERED);
-
-		initEClass(propertyEClass, Property.class, "Property", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEAttribute(getProperty_Name(), ecorePackage.getEString(), "name", null, 1, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getProperty_Multiplicity(), theEnvironmentPackage.getMultiplicityKind(), "multiplicity", null, 1, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getProperty_IsPrimaryKey(), ecorePackage.getEBoolean(), "isPrimaryKey", "false", 1, 1, Property.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-		initEClass(attributeEClass, Attribute.class, "Attribute", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEReference(getAttribute_Entity(), this.getEntity(), this.getEntity_OwnedAttributes(), "entity", null, 1, 1, Attribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEReference(getAttribute_Type(), theEnvironmentPackage.getPrimitiveType(), null, "type", null, 1, 1, Attribute.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-		initEClass(referenceEClass, Reference.class, "Reference", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEReference(getReference_Entity(), this.getEntity(), this.getEntity_OwnedReferences(), "entity", null, 1, 1, Reference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getReference_IsComposite(), ecorePackage.getEBoolean(), "isComposite", "false", 1, 1, Reference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEReference(getReference_OppositeOf(), this.getReference(), null, "oppositeOf", null, 0, 1, Reference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEReference(getReference_Type(), this.getEntity(), null, "type", null, 1, 1, Reference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-		initEAttribute(getReference_Navigable(), ecorePackage.getEBoolean(), "navigable", "true", 0, 1, Reference.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
-
-		op = addEOperation(referenceEClass, ecorePackage.getEBoolean(), "canBeOppositeOf", 1, 1, IS_UNIQUE, IS_ORDERED);
-		addEParameter(op, this.getReference(), "opposite", 0, 1, IS_UNIQUE, IS_ORDERED);
-
 		initEClass(finderEClass, Finder.class, "Finder", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
 		initEAttribute(getFinder_Name(), ecorePackage.getEString(), "name", null, 1, 1, Finder.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
 		initEReference(getFinder_Entity(), this.getEntity(), this.getEntity_OwnedFinders(), "entity", null, 1, 1, Finder.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
@@ -735,7 +459,7 @@ public void initializePackageContents() {
 		initEAttribute(getFinder_Multiplicity(), theEnvironmentPackage.getMultiplicityKind(), "multiplicity", null, 1, 1, Finder.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 
 		initEClass(internalCriterionEClass, InternalCriterion.class, "InternalCriterion", !IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
-		initEReference(getInternalCriterion_Target(), this.getAttribute(), null, "target", null, 1, 1, InternalCriterion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
+		initEReference(getInternalCriterion_Target(), theEnvironmentPackage.getAttribute(), null, "target", null, 1, 1, InternalCriterion.class, !IS_TRANSIENT, !IS_VOLATILE, IS_CHANGEABLE, !IS_COMPOSITE, IS_RESOLVE_PROXIES, !IS_UNSETTABLE, IS_UNIQUE, !IS_DERIVED, IS_ORDERED);
 		initEAttribute(getInternalCriterion_Name(), ecorePackage.getEString(), "name", null, 1, 1, InternalCriterion.class, IS_TRANSIENT, IS_VOLATILE, !IS_CHANGEABLE, !IS_UNSETTABLE, !IS_ID, IS_UNIQUE, IS_DERIVED, IS_ORDERED);
 
 		initEClass(criterionEClass, Criterion.class, "Criterion", IS_ABSTRACT, !IS_INTERFACE, IS_GENERATED_INSTANCE_CLASS);
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fimpl%2FEntityPackageImpl.java
d7e575abcdcee65011558eedb6ba479f73153d6a
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fimpl%2FFinderImpl.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fimpl%2FFinderImpl.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/FinderImpl.java
			EList<Criterion> listCriterions = getCriterions();
				for (Iterator<Criterion> iter = listCriterions.iterator(); iter.hasNext();) {
			EList listCriterions = getCriterions();
				for (Iterator iter = listCriterions.iterator(); iter.hasNext();) {
@@ -110,9 +110,9 @@ public String getName() {
 			result = customizedName;
 		} else {
 			result = "finder : ";
-			EList listCriterions = getCriterions();
+			EList<Criterion> listCriterions = getCriterions();
 			if (listCriterions != null) {
-				for (Iterator iter = listCriterions.iterator(); iter.hasNext();) {
+				for (Iterator<Criterion> iter = listCriterions.iterator(); iter.hasNext();) {
 					Criterion criterion = (Criterion) iter.next();
 					if (criterion instanceof InternalCriterion) {
 						InternalCriterion internalCriterion = (InternalCriterion) criterion;
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fimpl%2FFinderImpl.java
bacbbf45ce7bdee39b4667997638164633522610
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fimpl%2FInternalCriterionImpl.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fimpl%2FInternalCriterionImpl.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/InternalCriterionImpl.java
import org.obeonetwork.dsl.environment.Attribute;
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
		if (getTarget() != null) {
		}
import org.obeonetwork.dsl.entity.Attribute;
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
		if (getTarget() != null)
@@ -13,9 +13,9 @@
 package org.obeonetwork.dsl.entity.impl;
 
 import org.eclipse.emf.ecore.EClass;
-import org.obeonetwork.dsl.entity.Attribute;
 import org.obeonetwork.dsl.entity.EntityPackage;
 import org.obeonetwork.dsl.entity.InternalCriterion;
+import org.obeonetwork.dsl.environment.Attribute;
 
 /**
  * <!-- begin-user-doc --> An implementation of the model object '<em><b>Internal Criterion</b></em>'.
@@ -84,7 +84,8 @@ public Attribute basicGetTarget() {
 	}
 
 	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
 	public void setTarget(Attribute newTarget) {
@@ -98,8 +99,9 @@ public void setTarget(Attribute newTarget) {
 	 */
 	public String getName() {
 		String result = "";
-		if (getTarget() != null)
+		if (getTarget() != null) {
 			result = getTarget().getName();
+		}
 		return result;
 	}
 
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fimpl%2FInternalCriterionImpl.java
7bdfcf9563b821b85d0dbda0f59b871ea6353cd8
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fimpl%2FRootImpl.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fimpl%2FRootImpl.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/RootImpl.java
import org.obeonetwork.dsl.environment.Namespace;
import org.obeonetwork.dsl.environment.impl.TypesDefinitionImpl;
 *   <li>{@link org.obeonetwork.dsl.entity.impl.RootImpl#getName <em>Name</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.entity.impl.RootImpl#getNamespaces <em>Namespaces</em>}</li>
public class RootImpl extends TypesDefinitionImpl implements Root {
	/**
	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see #getName()
	 * @generated
	 * @ordered
	 */
	protected static final String NAME_EDEFAULT = null;
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public String getName() {
		return (String)eDynamicGet(EntityPackage.ROOT__NAME, EntityPackage.Literals.ROOT__NAME, true, true);
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	public void setName(String newName) {
		eDynamicSet(EntityPackage.ROOT__NAME, EntityPackage.Literals.ROOT__NAME, newName);
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	public EList<Namespace> getNamespaces() {
		return (EList<Namespace>)eDynamicGet(EntityPackage.ROOT__NAMESPACES, EntityPackage.Literals.ROOT__NAMESPACES, true, true);
			case EntityPackage.ROOT__NAMESPACES:
				return ((InternalEList<?>)getNamespaces()).basicRemove(otherEnd, msgs);
			case EntityPackage.ROOT__NAME:
				return getName();
			case EntityPackage.ROOT__NAMESPACES:
				return getNamespaces();
			case EntityPackage.ROOT__NAME:
				setName((String)newValue);
				return;
			case EntityPackage.ROOT__NAMESPACES:
				getNamespaces().clear();
				getNamespaces().addAll((Collection<? extends Namespace>)newValue);
			case EntityPackage.ROOT__NAME:
				setName(NAME_EDEFAULT);
				return;
			case EntityPackage.ROOT__NAMESPACES:
				getNamespaces().clear();
			case EntityPackage.ROOT__NAME:
				return NAME_EDEFAULT == null ? getName() != null : !NAME_EDEFAULT.equals(getName());
			case EntityPackage.ROOT__NAMESPACES:
				return !getNamespaces().isEmpty();
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/RootImpl.java
return (String)eDynamicGet(EntityPackage.ROOT__NAME, EntityPackage.Literals.ROOT__NAME, true, true);
String getName()
String newName
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/impl/RootImpl.java
eDynamicSet(EntityPackage.ROOT__NAME, EntityPackage.Literals.ROOT__NAME, newName);
void setName(String newName)
import org.obeonetwork.dsl.entity.Block;
import org.obeonetwork.dsl.environment.impl.NamespaceImpl;
 *   <li>{@link org.obeonetwork.dsl.entity.impl.RootImpl#getBlocks <em>Blocks</em>}</li>
public class RootImpl extends NamespaceImpl implements Root {
	 * <!-- begin-user-doc --> <!-- end-user-doc -->
	public EList<Block> getBlocks() {
		return (EList<Block>)eDynamicGet(EntityPackage.ROOT__BLOCKS, EntityPackage.Literals.ROOT__BLOCKS, true, true);
			case EntityPackage.ROOT__BLOCKS:
				return ((InternalEList<?>)getBlocks()).basicRemove(otherEnd, msgs);
			case EntityPackage.ROOT__BLOCKS:
				return getBlocks();
			case EntityPackage.ROOT__BLOCKS:
				getBlocks().clear();
				getBlocks().addAll((Collection<? extends Block>)newValue);
			case EntityPackage.ROOT__BLOCKS:
				getBlocks().clear();
			case EntityPackage.ROOT__BLOCKS:
				return !getBlocks().isEmpty();
@@ -19,30 +19,40 @@
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.InternalEObject;
 import org.eclipse.emf.ecore.util.InternalEList;
-import org.obeonetwork.dsl.entity.Block;
 import org.obeonetwork.dsl.entity.EntityPackage;
 import org.obeonetwork.dsl.entity.Root;
-import org.obeonetwork.dsl.environment.impl.NamespaceImpl;
+import org.obeonetwork.dsl.environment.Namespace;
+import org.obeonetwork.dsl.environment.impl.TypesDefinitionImpl;
 
 /**
  * <!-- begin-user-doc --> An implementation of the model object '<em><b>Root</b></em>'.
  * <!-- end-user-doc -->
  * <p>
  * The following features are implemented:
  * <ul>
- *   <li>{@link org.obeonetwork.dsl.entity.impl.RootImpl#getBlocks <em>Blocks</em>}</li>
+ *   <li>{@link org.obeonetwork.dsl.entity.impl.RootImpl#getName <em>Name</em>}</li>
+ *   <li>{@link org.obeonetwork.dsl.entity.impl.RootImpl#getNamespaces <em>Namespaces</em>}</li>
  * </ul>
  * </p>
  *
  * @generated
  */
-public class RootImpl extends NamespaceImpl implements Root {
+public class RootImpl extends TypesDefinitionImpl implements Root {
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
 	public static final String copyright = "Copyright (c) 2008-2009 Obeo.\nAll rights reserved. This program and the accompanying materials\nare made available under the terms of the Eclipse Public License v1.0\nwhich accompanies this distribution, and is available at\nhttp://www.eclipse.org/legal/epl-v10.html\n\nContributors:\n    Obeo - initial API and implementation";
+	/**
+	 * The default value of the '{@link #getName() <em>Name</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see #getName()
+	 * @generated
+	 * @ordered
+	 */
+	protected static final String NAME_EDEFAULT = null;
 	/**
 	 * <!-- begin-user-doc --> <!-- end-user-doc -->
 	 * @generated
@@ -61,12 +71,31 @@ protected EClass eStaticClass() {
 	}
 
 	/**
-	 * <!-- begin-user-doc --> <!-- end-user-doc -->
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public String getName() {
+		return (String)eDynamicGet(EntityPackage.ROOT__NAME, EntityPackage.Literals.ROOT__NAME, true, true);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	public void setName(String newName) {
+		eDynamicSet(EntityPackage.ROOT__NAME, EntityPackage.Literals.ROOT__NAME, newName);
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
 	 * @generated
 	 */
 	@SuppressWarnings("unchecked")
-	public EList<Block> getBlocks() {
-		return (EList<Block>)eDynamicGet(EntityPackage.ROOT__BLOCKS, EntityPackage.Literals.ROOT__BLOCKS, true, true);
+	public EList<Namespace> getNamespaces() {
+		return (EList<Namespace>)eDynamicGet(EntityPackage.ROOT__NAMESPACES, EntityPackage.Literals.ROOT__NAMESPACES, true, true);
 	}
 
 	/**
@@ -77,8 +106,8 @@ public EList<Block> getBlocks() {
 	@Override
 	public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID, NotificationChain msgs) {
 		switch (featureID) {
-			case EntityPackage.ROOT__BLOCKS:
-				return ((InternalEList<?>)getBlocks()).basicRemove(otherEnd, msgs);
+			case EntityPackage.ROOT__NAMESPACES:
+				return ((InternalEList<?>)getNamespaces()).basicRemove(otherEnd, msgs);
 		}
 		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
@@ -91,8 +120,10 @@ public NotificationChain eInverseRemove(InternalEObject otherEnd, int featureID,
 	@Override
 	public Object eGet(int featureID, boolean resolve, boolean coreType) {
 		switch (featureID) {
-			case EntityPackage.ROOT__BLOCKS:
-				return getBlocks();
+			case EntityPackage.ROOT__NAME:
+				return getName();
+			case EntityPackage.ROOT__NAMESPACES:
+				return getNamespaces();
 		}
 		return super.eGet(featureID, resolve, coreType);
 	}
@@ -106,9 +137,12 @@ public Object eGet(int featureID, boolean resolve, boolean coreType) {
 	@Override
 	public void eSet(int featureID, Object newValue) {
 		switch (featureID) {
-			case EntityPackage.ROOT__BLOCKS:
-				getBlocks().clear();
-				getBlocks().addAll((Collection<? extends Block>)newValue);
+			case EntityPackage.ROOT__NAME:
+				setName((String)newValue);
+				return;
+			case EntityPackage.ROOT__NAMESPACES:
+				getNamespaces().clear();
+				getNamespaces().addAll((Collection<? extends Namespace>)newValue);
 				return;
 		}
 		super.eSet(featureID, newValue);
@@ -122,8 +156,11 @@ public void eSet(int featureID, Object newValue) {
 	@Override
 	public void eUnset(int featureID) {
 		switch (featureID) {
-			case EntityPackage.ROOT__BLOCKS:
-				getBlocks().clear();
+			case EntityPackage.ROOT__NAME:
+				setName(NAME_EDEFAULT);
+				return;
+			case EntityPackage.ROOT__NAMESPACES:
+				getNamespaces().clear();
 				return;
 		}
 		super.eUnset(featureID);
@@ -137,8 +174,10 @@ public void eUnset(int featureID) {
 	@Override
 	public boolean eIsSet(int featureID) {
 		switch (featureID) {
-			case EntityPackage.ROOT__BLOCKS:
-				return !getBlocks().isEmpty();
+			case EntityPackage.ROOT__NAME:
+				return NAME_EDEFAULT == null ? getName() != null : !NAME_EDEFAULT.equals(getName());
+			case EntityPackage.ROOT__NAMESPACES:
+				return !getNamespaces().isEmpty();
 		}
 		return super.eIsSet(featureID);
 	}
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Fimpl%2FRootImpl.java
cbb596c6dd5bc0876d83505b8be3f7f9db4a3b85
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Futil%2FEntityAdapterFactory.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Futil%2FEntityAdapterFactory.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/util/EntityAdapterFactory.java
import org.obeonetwork.dsl.entity.*;
import org.obeonetwork.dsl.environment.TypesDefinition;
			public Adapter caseTypesDefinition(TypesDefinition object) {
				return createTypesDefinitionAdapter();
	 * Creates a new adapter for an object of class '{@link org.obeonetwork.dsl.environment.TypesDefinition <em>Types Definition</em>}'.
	 * @see org.obeonetwork.dsl.environment.TypesDefinition
	public Adapter createTypesDefinitionAdapter() {
TypesDefinition object
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/util/EntityAdapterFactory.java
return createTypesDefinitionAdapter();
	 * Creates a new adapter for an object of class '{@link org.obeonetwork.dsl.environment.TypesDefinition <em>Types Definition</em>
Adapter caseTypesDefinition(TypesDefinition object)
import org.obeonetwork.dsl.entity.Attribute;
import org.obeonetwork.dsl.entity.Block;
import org.obeonetwork.dsl.entity.Property;
import org.obeonetwork.dsl.entity.Reference;
import org.obeonetwork.dsl.environment.Namespace;
			public Adapter caseBlock(Block object) {
				return createBlockAdapter();
			}
			@Override
			public Adapter caseProperty(Property object) {
				return createPropertyAdapter();
			}
			@Override
			public Adapter caseAttribute(Attribute object) {
				return createAttributeAdapter();
			}
			@Override
			public Adapter caseReference(Reference object) {
				return createReferenceAdapter();
			}
			@Override
			public Adapter caseNamespace(Namespace object) {
				return createNamespaceAdapter();
	/**
	 * Creates a new adapter for an object of class '{@link org.obeonetwork.dsl.entity.Block <em>Block</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.obeonetwork.dsl.entity.Block
	 * @generated
	 */
	public Adapter createBlockAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.obeonetwork.dsl.entity.Property <em>Property</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.obeonetwork.dsl.entity.Property
	 * @generated
	 */
	public Adapter createPropertyAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.obeonetwork.dsl.entity.Attribute <em>Attribute</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.obeonetwork.dsl.entity.Attribute
	 * @generated
	 */
	public Adapter createAttributeAdapter() {
		return null;
	}

	/**
	 * Creates a new adapter for an object of class '{@link org.obeonetwork.dsl.entity.Reference <em>Reference</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.obeonetwork.dsl.entity.Reference
	 * @generated
	 */
	public Adapter createReferenceAdapter() {
		return null;
	}

	 * Creates a new adapter for an object of class '{@link org.obeonetwork.dsl.environment.Namespace <em>Namespace</em>}'.
	 * @see org.obeonetwork.dsl.environment.Namespace
	public Adapter createNamespaceAdapter() {
Block object
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/util/EntityAdapterFactory.java
return createBlockAdapter();
Adapter caseBlock(Block object)
Property object
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/util/EntityAdapterFactory.java
return createPropertyAdapter();
Adapter caseProperty(Property object)
Attribute object
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/util/EntityAdapterFactory.java
return createAttributeAdapter();
Adapter caseAttribute(Attribute object)
Reference object
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/util/EntityAdapterFactory.java
return createReferenceAdapter();
Adapter caseReference(Reference object)
Namespace object
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/util/EntityAdapterFactory.java
return createNamespaceAdapter();
	/**
	 * Creates a new adapter for an object of class '{@link org.obeonetwork.dsl.entity.Block <em>Block</em>
Adapter caseNamespace(Namespace object)
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/util/EntityAdapterFactory.java
return null;
Adapter createBlockAdapter()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/util/EntityAdapterFactory.java
return null;
Adapter createPropertyAdapter()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/util/EntityAdapterFactory.java
return null;
Adapter createAttributeAdapter()
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/util/EntityAdapterFactory.java
return null;
Adapter createReferenceAdapter()
@@ -16,22 +16,19 @@
 import org.eclipse.emf.common.notify.Notifier;
 import org.eclipse.emf.common.notify.impl.AdapterFactoryImpl;
 import org.eclipse.emf.ecore.EObject;
-import org.obeonetwork.dsl.entity.Attribute;
-import org.obeonetwork.dsl.entity.Block;
+import org.obeonetwork.dsl.entity.*;
 import org.obeonetwork.dsl.entity.Criterion;
 import org.obeonetwork.dsl.entity.Entity;
 import org.obeonetwork.dsl.entity.EntityPackage;
 import org.obeonetwork.dsl.entity.ExternalCriterion;
 import org.obeonetwork.dsl.entity.Finder;
 import org.obeonetwork.dsl.entity.InternalCriterion;
-import org.obeonetwork.dsl.entity.Property;
-import org.obeonetwork.dsl.entity.Reference;
 import org.obeonetwork.dsl.entity.Root;
 import org.obeonetwork.dsl.environment.BoundableElement;
-import org.obeonetwork.dsl.environment.Namespace;
 import org.obeonetwork.dsl.environment.ObeoDSMObject;
 import org.obeonetwork.dsl.environment.StructuredType;
 import org.obeonetwork.dsl.environment.Type;
+import org.obeonetwork.dsl.environment.TypesDefinition;
 
 /**
  * <!-- begin-user-doc --> The <b>Adapter Factory</b> for the model. It
@@ -98,26 +95,10 @@ public Adapter caseRoot(Root object) {
 				return createRootAdapter();
 			}
 			@Override
-			public Adapter caseBlock(Block object) {
-				return createBlockAdapter();
-			}
-			@Override
 			public Adapter caseEntity(Entity object) {
 				return createEntityAdapter();
 			}
 			@Override
-			public Adapter caseProperty(Property object) {
-				return createPropertyAdapter();
-			}
-			@Override
-			public Adapter caseAttribute(Attribute object) {
-				return createAttributeAdapter();
-			}
-			@Override
-			public Adapter caseReference(Reference object) {
-				return createReferenceAdapter();
-			}
-			@Override
 			public Adapter caseFinder(Finder object) {
 				return createFinderAdapter();
 			}
@@ -138,8 +119,8 @@ public Adapter caseObeoDSMObject(ObeoDSMObject object) {
 				return createObeoDSMObjectAdapter();
 			}
 			@Override
-			public Adapter caseNamespace(Namespace object) {
-				return createNamespaceAdapter();
+			public Adapter caseTypesDefinition(TypesDefinition object) {
+				return createTypesDefinitionAdapter();
 			}
 			@Override
 			public Adapter caseBoundableElement(BoundableElement object) {
@@ -186,19 +167,6 @@ public Adapter createRootAdapter() {
 		return null;
 	}
 
-	/**
-	 * Creates a new adapter for an object of class '{@link org.obeonetwork.dsl.entity.Block <em>Block</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.obeonetwork.dsl.entity.Block
-	 * @generated
-	 */
-	public Adapter createBlockAdapter() {
-		return null;
-	}
-
 	/**
 	 * Creates a new adapter for an object of class '{@link org.obeonetwork.dsl.entity.Entity <em>Entity</em>}'.
 	 * <!-- begin-user-doc --> This default implementation returns null so that
@@ -212,45 +180,6 @@ public Adapter createEntityAdapter() {
 		return null;
 	}
 
-	/**
-	 * Creates a new adapter for an object of class '{@link org.obeonetwork.dsl.entity.Property <em>Property</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.obeonetwork.dsl.entity.Property
-	 * @generated
-	 */
-	public Adapter createPropertyAdapter() {
-		return null;
-	}
-
-	/**
-	 * Creates a new adapter for an object of class '{@link org.obeonetwork.dsl.entity.Attribute <em>Attribute</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.obeonetwork.dsl.entity.Attribute
-	 * @generated
-	 */
-	public Adapter createAttributeAdapter() {
-		return null;
-	}
-
-	/**
-	 * Creates a new adapter for an object of class '{@link org.obeonetwork.dsl.entity.Reference <em>Reference</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.obeonetwork.dsl.entity.Reference
-	 * @generated
-	 */
-	public Adapter createReferenceAdapter() {
-		return null;
-	}
-
 	/**
 	 * Creates a new adapter for an object of class '{@link org.obeonetwork.dsl.entity.Finder <em>Finder</em>}'.
 	 * <!-- begin-user-doc --> This default implementation returns null so that
@@ -317,16 +246,16 @@ public Adapter createObeoDSMObjectAdapter() {
 	}
 
 	/**
-	 * Creates a new adapter for an object of class '{@link org.obeonetwork.dsl.environment.Namespace <em>Namespace</em>}'.
+	 * Creates a new adapter for an object of class '{@link org.obeonetwork.dsl.environment.TypesDefinition <em>Types Definition</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.obeonetwork.dsl.environment.Namespace
+	 * @see org.obeonetwork.dsl.environment.TypesDefinition
 	 * @generated
 	 */
-	public Adapter createNamespaceAdapter() {
+	public Adapter createTypesDefinitionAdapter() {
 		return null;
 	}
 
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Futil%2FEntityAdapterFactory.java
ac05074845bf6ca61ece6632e41fed8c61dc46f0
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Futil%2FEntitySwitch.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Futil%2FEntitySwitch.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/util/EntitySwitch.java
import org.obeonetwork.dsl.entity.*;
import org.obeonetwork.dsl.environment.TypesDefinition;
				if (result == null) result = caseTypesDefinition(root);
	 * Returns the result of interpreting the object as an instance of '<em>Types Definition</em>'.
	 * @return the result of interpreting the object as an instance of '<em>Types Definition</em>'.
	public T caseTypesDefinition(TypesDefinition object) {
import org.obeonetwork.dsl.entity.Attribute;
import org.obeonetwork.dsl.entity.Block;
import org.obeonetwork.dsl.entity.Property;
import org.obeonetwork.dsl.entity.Reference;
import org.obeonetwork.dsl.environment.Namespace;
				if (result == null) result = caseNamespace(root);
			case EntityPackage.BLOCK: {
				Block block = (Block)theEObject;
				T result = caseBlock(block);
				if (result == null) result = caseObeoDSMObject(block);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case EntityPackage.PROPERTY: {
				Property property = (Property)theEObject;
				T result = caseProperty(property);
				if (result == null) result = caseObeoDSMObject(property);
				if (result == null) result = caseBoundableElement(property);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case EntityPackage.ATTRIBUTE: {
				Attribute attribute = (Attribute)theEObject;
				T result = caseAttribute(attribute);
				if (result == null) result = caseProperty(attribute);
				if (result == null) result = caseObeoDSMObject(attribute);
				if (result == null) result = caseBoundableElement(attribute);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
			case EntityPackage.REFERENCE: {
				Reference reference = (Reference)theEObject;
				T result = caseReference(reference);
				if (result == null) result = caseProperty(reference);
				if (result == null) result = caseObeoDSMObject(reference);
				if (result == null) result = caseBoundableElement(reference);
				if (result == null) result = defaultCase(theEObject);
				return result;
			}
	/**
	 * Returns the result of interpreting the object as an instance of '<em>Block</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>Block</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseBlock(Block object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Property</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>Property</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseProperty(Property object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Attribute</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>Attribute</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseAttribute(Attribute object) {
		return null;
	}

	/**
	 * Returns the result of interpreting the object as an instance of '<em>Reference</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>Reference</em>'.
	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
	 * @generated
	 */
	public T caseReference(Reference object) {
		return null;
	}

	 * Returns the result of interpreting the object as an instance of '<em>Namespace</em>'.
	 * @return the result of interpreting the object as an instance of '<em>Namespace</em>'.
	public T caseNamespace(Namespace object) {
Block object
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/util/EntitySwitch.java
return null;
T caseBlock(Block object)
Property object
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/util/EntitySwitch.java
return null;
T caseProperty(Property object)
Attribute object
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/util/EntitySwitch.java
return null;
T caseAttribute(Attribute object)
Reference object
models/entity/plugins/org.obeonetwork.dsl.entity/src/org/obeonetwork/dsl/entity/util/EntitySwitch.java
return null;
T caseReference(Reference object)
@@ -16,22 +16,19 @@
 
 import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.EObject;
-import org.obeonetwork.dsl.entity.Attribute;
-import org.obeonetwork.dsl.entity.Block;
+import org.obeonetwork.dsl.entity.*;
 import org.obeonetwork.dsl.entity.Criterion;
 import org.obeonetwork.dsl.entity.Entity;
 import org.obeonetwork.dsl.entity.EntityPackage;
 import org.obeonetwork.dsl.entity.ExternalCriterion;
 import org.obeonetwork.dsl.entity.Finder;
 import org.obeonetwork.dsl.entity.InternalCriterion;
-import org.obeonetwork.dsl.entity.Property;
-import org.obeonetwork.dsl.entity.Reference;
 import org.obeonetwork.dsl.entity.Root;
 import org.obeonetwork.dsl.environment.BoundableElement;
-import org.obeonetwork.dsl.environment.Namespace;
 import org.obeonetwork.dsl.environment.ObeoDSMObject;
 import org.obeonetwork.dsl.environment.StructuredType;
 import org.obeonetwork.dsl.environment.Type;
+import org.obeonetwork.dsl.environment.TypesDefinition;
 
 /**
  * <!-- begin-user-doc --> The <b>Switch</b> for the model's inheritance
@@ -112,18 +109,11 @@ protected T doSwitch(int classifierID, EObject theEObject) {
 			case EntityPackage.ROOT: {
 				Root root = (Root)theEObject;
 				T result = caseRoot(root);
-				if (result == null) result = caseNamespace(root);
+				if (result == null) result = caseTypesDefinition(root);
 				if (result == null) result = caseObeoDSMObject(root);
 				if (result == null) result = defaultCase(theEObject);
 				return result;
 			}
-			case EntityPackage.BLOCK: {
-				Block block = (Block)theEObject;
-				T result = caseBlock(block);
-				if (result == null) result = caseObeoDSMObject(block);
-				if (result == null) result = defaultCase(theEObject);
-				return result;
-			}
 			case EntityPackage.ENTITY: {
 				Entity entity = (Entity)theEObject;
 				T result = caseEntity(entity);
@@ -134,32 +124,6 @@ protected T doSwitch(int classifierID, EObject theEObject) {
 				if (result == null) result = defaultCase(theEObject);
 				return result;
 			}
-			case EntityPackage.PROPERTY: {
-				Property property = (Property)theEObject;
-				T result = caseProperty(property);
-				if (result == null) result = caseObeoDSMObject(property);
-				if (result == null) result = caseBoundableElement(property);
-				if (result == null) result = defaultCase(theEObject);
-				return result;
-			}
-			case EntityPackage.ATTRIBUTE: {
-				Attribute attribute = (Attribute)theEObject;
-				T result = caseAttribute(attribute);
-				if (result == null) result = caseProperty(attribute);
-				if (result == null) result = caseObeoDSMObject(attribute);
-				if (result == null) result = caseBoundableElement(attribute);
-				if (result == null) result = defaultCase(theEObject);
-				return result;
-			}
-			case EntityPackage.REFERENCE: {
-				Reference reference = (Reference)theEObject;
-				T result = caseReference(reference);
-				if (result == null) result = caseProperty(reference);
-				if (result == null) result = caseObeoDSMObject(reference);
-				if (result == null) result = caseBoundableElement(reference);
-				if (result == null) result = defaultCase(theEObject);
-				return result;
-			}
 			case EntityPackage.FINDER: {
 				Finder finder = (Finder)theEObject;
 				T result = caseFinder(finder);
@@ -207,19 +171,6 @@ public T caseRoot(Root object) {
 		return null;
 	}
 
-	/**
-	 * Returns the result of interpreting the object as an instance of '<em>Block</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>Block</em>'.
-	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-	 * @generated
-	 */
-	public T caseBlock(Block object) {
-		return null;
-	}
-
 	/**
 	 * Returns the result of interpreting the object as an instance of '<em>Entity</em>'.
 	 * <!-- begin-user-doc --> This implementation returns null; returning a
@@ -233,45 +184,6 @@ public T caseEntity(Entity object) {
 		return null;
 	}
 
-	/**
-	 * Returns the result of interpreting the object as an instance of '<em>Property</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>Property</em>'.
-	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-	 * @generated
-	 */
-	public T caseProperty(Property object) {
-		return null;
-	}
-
-	/**
-	 * Returns the result of interpreting the object as an instance of '<em>Attribute</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>Attribute</em>'.
-	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-	 * @generated
-	 */
-	public T caseAttribute(Attribute object) {
-		return null;
-	}
-
-	/**
-	 * Returns the result of interpreting the object as an instance of '<em>Reference</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>Reference</em>'.
-	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
-	 * @generated
-	 */
-	public T caseReference(Reference object) {
-		return null;
-	}
-
 	/**
 	 * Returns the result of interpreting the object as an instance of '<em>Finder</em>'.
 	 * <!-- begin-user-doc --> This implementation returns null; returning a
@@ -338,17 +250,17 @@ public T caseObeoDSMObject(ObeoDSMObject object) {
 	}
 
 	/**
-	 * Returns the result of interpreting the object as an instance of '<em>Namespace</em>'.
+	 * Returns the result of interpreting the object as an instance of '<em>Types Definition</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>Namespace</em>'.
+	 * @return the result of interpreting the object as an instance of '<em>Types Definition</em>'.
 	 * @see #doSwitch(org.eclipse.emf.ecore.EObject) doSwitch(EObject)
 	 * @generated
 	 */
-	public T caseNamespace(Namespace object) {
+	public T caseTypesDefinition(TypesDefinition object) {
 		return null;
 	}
 
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fentity%2Fplugins%2Forg.obeonetwork.dsl.entity%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fentity%2Futil%2FEntitySwitch.java
0cf7a11337417ea5adc5bd6fbf14004c9fb76e4a
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2FMETA-INF%2FMANIFEST.MF
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2FMETA-INF%2FMANIFEST.MF?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/META-INF/MANIFEST.MF
Bundle-SymbolicName: org.obeonetwork.dsl.environment.edit;singleton:=true
Bundle-SymbolicName: org.obeonetwork.dsl.environment.edit; singleton:=true
@@ -1,7 +1,7 @@
 Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
-Bundle-SymbolicName: org.obeonetwork.dsl.environment.edit; singleton:=true
+Bundle-SymbolicName: org.obeonetwork.dsl.environment.edit;singleton:=true
 Bundle-Version: 2.4.0.qualifier
 Bundle-ClassPath: .
 Bundle-Activator: org.obeonetwork.dsl.environment.provider.EnvironmentEditPlugin$Implementation
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2FMETA-INF%2FMANIFEST.MF
694a9532100ddfb15b88a1cc5f89f6598a66a953
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fmodel%2Fenvironment.components
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fmodel%2Fenvironment.components?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/model/environment.components
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_mffkgFrDEeSp8I2rNbfleQ" name="identifier" views="_WEd8gFrDEeSp8I2rNbfleQ">
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//Property/isIdentifier"/>
        </properties>
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_Z4_3sHCzEeCNPbrYssPTmA" name="referencedType" views="_Z4_4EHCzEeCNPbrYssPTmA">
          <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//Reference/referencedType"/>
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_qBAjcFrDEeSp8I2rNbfleQ" name="identifier" views="_agQLUFrDEeSp8I2rNbfleQ">
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//Property/isIdentifier"/>
        </properties>
      <bindings xsi:type="eef-components:PropertiesEditionComponent" xmi:id="_A2efUFrEEeSp8I2rNbfleQ" name="DTO" views="_1_txIFrDEeSp8I2rNbfleQ">
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_FlDuUFrEEeSp8I2rNbfleQ" name="name" views="_6t-QAFrDEeSp8I2rNbfleQ">
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//Environment/name"/>
        </properties>
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_MZIqMFrEEeSp8I2rNbfleQ" name="supertype" views="_6t-QAVrDEeSp8I2rNbfleQ">
          <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//StructuredType/supertype"/>
        </properties>
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_TJe8oFrEEeSp8I2rNbfleQ" name="description" views="_6t-QA1rDEeSp8I2rNbfleQ">
          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//ObeoDSMObject/description"/>
        </properties>
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_QH5a8FrEEeSp8I2rNbfleQ" name="associatedTypes" views="_6t-QAlrDEeSp8I2rNbfleQ">
          <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//StructuredType/associatedTypes"/>
        </properties>
        <referencedBinding xmi:id="_Dwn8QFrEEeSp8I2rNbfleQ" binding="_65K3QHC0EeCNPbrYssPTmA"/>
        <model xsi:type="ecore:EClass" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//DTO"/>
      </bindings>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_WEd8gFrDEeSp8I2rNbfleQ" name="identifier">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.1"/>
          </elements>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_Z4_4EHCzEeCNPbrYssPTmA" name="referencedType">
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_agQLUFrDEeSp8I2rNbfleQ" name="identifier">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.1"/>
          </elements>
      <views xmi:id="_1_txIFrDEeSp8I2rNbfleQ" name="DTO">
        <elements xsi:type="eef-views:Container" xmi:id="_3lZ8kFrDEeSp8I2rNbfleQ" name="properties">
          <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.4"/>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_6t-QAFrDEeSp8I2rNbfleQ" name="name">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.0"/>
          </elements>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_6t-QAVrDEeSp8I2rNbfleQ" name="supertype">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/EMFProperties.toolkits#//@widgets.0"/>
          </elements>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_6t-QAlrDEeSp8I2rNbfleQ" name="associatedTypes">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/EMFProperties.toolkits#//@widgets.8"/>
          </elements>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_6t-QA1rDEeSp8I2rNbfleQ" name="description">
            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.2"/>
          </elements>
        </elements>
      </views>
        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_Z4_3sHCzEeCNPbrYssPTmA" name="type" views="_Z4_4EHCzEeCNPbrYssPTmA">
          <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//Reference/type"/>
          <elements xsi:type="eef-views:ElementEditor" xmi:id="_Z4_4EHCzEeCNPbrYssPTmA" name="type">
@@ -132,6 +132,9 @@
         <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_Z4_3pHCzEeCNPbrYssPTmA" name="multiplicity" views="_Z4_4A3CzEeCNPbrYssPTmA">
           <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//Property/multiplicity"/>
         </properties>
+        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_mffkgFrDEeSp8I2rNbfleQ" name="identifier" views="_WEd8gFrDEeSp8I2rNbfleQ">
+          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//Property/isIdentifier"/>
+        </properties>
         <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_Z4_3oHCzEeCNPbrYssPTmA" name="description" views="_Z4_3_3CzEeCNPbrYssPTmA">
           <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//ObeoDSMObject/description"/>
         </properties>
@@ -142,8 +145,8 @@
         <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_Z4_3q3CzEeCNPbrYssPTmA" name="name" views="_Z4_4C3CzEeCNPbrYssPTmA">
           <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//Property/name"/>
         </properties>
-        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_Z4_3sHCzEeCNPbrYssPTmA" name="type" views="_Z4_4EHCzEeCNPbrYssPTmA">
-          <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//Reference/type"/>
+        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_Z4_3sHCzEeCNPbrYssPTmA" name="referencedType" views="_Z4_4EHCzEeCNPbrYssPTmA">
+          <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//Reference/referencedType"/>
         </properties>
         <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_Z4_3rHCzEeCNPbrYssPTmA" name="multiplicity" views="_Z4_4DHCzEeCNPbrYssPTmA">
           <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//Property/multiplicity"/>
@@ -157,6 +160,9 @@
         <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_Z4_3r3CzEeCNPbrYssPTmA" name="oppositeOf" views="_Z4_4D3CzEeCNPbrYssPTmA">
           <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//Reference/oppositeOf"/>
         </properties>
+        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_qBAjcFrDEeSp8I2rNbfleQ" name="identifier" views="_agQLUFrDEeSp8I2rNbfleQ">
+          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//Property/isIdentifier"/>
+        </properties>
         <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_Z4_3qHCzEeCNPbrYssPTmA" name="description" views="_Z4_4CHCzEeCNPbrYssPTmA">
           <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//ObeoDSMObject/description"/>
         </properties>
@@ -202,6 +208,22 @@
         <referencedBinding xmi:id="_91fLZP_jEeCQir_iIC_y4Q" binding="_65K3QHC0EeCNPbrYssPTmA"/>
         <model xsi:type="ecore:EClass" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//BindingElement"/>
       </bindings>
+      <bindings xsi:type="eef-components:PropertiesEditionComponent" xmi:id="_A2efUFrEEeSp8I2rNbfleQ" name="DTO" views="_1_txIFrDEeSp8I2rNbfleQ">
+        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_FlDuUFrEEeSp8I2rNbfleQ" name="name" views="_6t-QAFrDEeSp8I2rNbfleQ">
+          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//Environment/name"/>
+        </properties>
+        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_MZIqMFrEEeSp8I2rNbfleQ" name="supertype" views="_6t-QAVrDEeSp8I2rNbfleQ">
+          <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//StructuredType/supertype"/>
+        </properties>
+        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_TJe8oFrEEeSp8I2rNbfleQ" name="description" views="_6t-QA1rDEeSp8I2rNbfleQ">
+          <model xsi:type="ecore:EAttribute" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//ObeoDSMObject/description"/>
+        </properties>
+        <properties xsi:type="eef-components:PropertiesEditionElement" xmi:id="_QH5a8FrEEeSp8I2rNbfleQ" name="associatedTypes" views="_6t-QAlrDEeSp8I2rNbfleQ">
+          <model xsi:type="ecore:EReference" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//StructuredType/associatedTypes"/>
+        </properties>
+        <referencedBinding xmi:id="_Dwn8QFrEEeSp8I2rNbfleQ" binding="_65K3QHC0EeCNPbrYssPTmA"/>
+        <model xsi:type="ecore:EClass" href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.ecore#//DTO"/>
+      </bindings>
     </categories>
     <model href="platform:/resource/org.obeonetwork.dsl.environment/model/environment.genmodel#//environment"/>
   </eef-components:PropertiesEditionContext>
@@ -339,6 +361,9 @@
           <elements xsi:type="eef-views:ElementEditor" xmi:id="_Z4_4A3CzEeCNPbrYssPTmA" name="multiplicity">
             <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/EMFProperties.toolkits#//@widgets.2"/>
           </elements>
+          <elements xsi:type="eef-views:ElementEditor" xmi:id="_WEd8gFrDEeSp8I2rNbfleQ" name="identifier">
+            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.1"/>
+          </elements>
           <elements xsi:type="eef-views:ElementEditor" xmi:id="_Z4_3_3CzEeCNPbrYssPTmA" name="description">
             <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.0"/>
           </elements>
@@ -350,7 +375,7 @@
           <elements xsi:type="eef-views:ElementEditor" xmi:id="_Z4_4C3CzEeCNPbrYssPTmA" name="name">
             <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.0"/>
           </elements>
-          <elements xsi:type="eef-views:ElementEditor" xmi:id="_Z4_4EHCzEeCNPbrYssPTmA" name="type">
+          <elements xsi:type="eef-views:ElementEditor" xmi:id="_Z4_4EHCzEeCNPbrYssPTmA" name="referencedType">
             <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/EMFProperties.toolkits#//@widgets.0"/>
           </elements>
           <elements xsi:type="eef-views:ElementEditor" xmi:id="_Z4_4DHCzEeCNPbrYssPTmA" name="multiplicity">
@@ -365,6 +390,9 @@
           <elements xsi:type="eef-views:ElementEditor" xmi:id="_Z4_4D3CzEeCNPbrYssPTmA" name="oppositeOf">
             <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/EMFProperties.toolkits#//@widgets.0"/>
           </elements>
+          <elements xsi:type="eef-views:ElementEditor" xmi:id="_agQLUFrDEeSp8I2rNbfleQ" name="identifier">
+            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.1"/>
+          </elements>
           <elements xsi:type="eef-views:ElementEditor" xmi:id="_Z4_4CHCzEeCNPbrYssPTmA" name="description">
             <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.0"/>
           </elements>
@@ -420,6 +448,23 @@
           </elements>
         </elements>
       </views>
+      <views xmi:id="_1_txIFrDEeSp8I2rNbfleQ" name="DTO">
+        <elements xsi:type="eef-views:Container" xmi:id="_3lZ8kFrDEeSp8I2rNbfleQ" name="properties">
+          <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.4"/>
+          <elements xsi:type="eef-views:ElementEditor" xmi:id="_6t-QAFrDEeSp8I2rNbfleQ" name="name">
+            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.0"/>
+          </elements>
+          <elements xsi:type="eef-views:ElementEditor" xmi:id="_6t-QAVrDEeSp8I2rNbfleQ" name="supertype">
+            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/EMFProperties.toolkits#//@widgets.0"/>
+          </elements>
+          <elements xsi:type="eef-views:ElementEditor" xmi:id="_6t-QAlrDEeSp8I2rNbfleQ" name="associatedTypes">
+            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/EMFProperties.toolkits#//@widgets.8"/>
+          </elements>
+          <elements xsi:type="eef-views:ElementEditor" xmi:id="_6t-QA1rDEeSp8I2rNbfleQ" name="description">
+            <representation href="platform:/plugin/org.eclipse.emf.eef.views/std/SWT.toolkits#//@widgets.2"/>
+          </elements>
+        </elements>
+      </views>
     </categories>
   </eef-views:ViewsRepository>
 </xmi:XMI>
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fmodel%2Fenvironment.components
595e8f47e4ad473d574db6b52ed63452855710fe
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fplugin.properties
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fplugin.properties?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/plugin.properties
# Copyright (c) 2008-2009 Obeo.
# 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:
#     Obeo - initial API and implementation
providerName = www.example.org
_UI_PriorityDefinition_type = Priority Definition
_UI_Priority_type = Priority
_UI_MetaData_type = Meta Data
_UI_TypesDefinition_type = Types Definition
_UI_Behaviour_type = Behaviour
_UI_StructuredType_type = Structured Type
_UI_DTO_type = DTO
_UI_FilterContainer_type = Filter Container
_UI_Filter_type = Filter
_UI_Namespace_type = Namespace
_UI_Attribute_type = Attribute
_UI_Reference_type = Reference
_UI_Property_type = Property
_UI_BindingInfo_type = Binding Info
_UI_BindingReference_type = Binding Reference
_UI_BindingElement_type = Binding Element
_UI_BindingRegistry_type = Binding Registry
_UI_BoundableElement_type = Boundable Element
_UI_Environment_priorityDefinitions_feature = Priority Definitions
_UI_Environment_typesDefinition_feature = Types Definition
_UI_Environment_namespaces_feature = Namespaces
_UI_Type_typeDefinition_feature = Type Definition
_UI_ObeoDSMObject_description_feature = Description
_UI_ObeoDSMObject_keywords_feature = Keywords
_UI_ObeoDSMObject_behaviours_feature = Behaviours
_UI_ObeoDSMObject_bindingRegistries_feature = Binding Registries
_UI_ObeoDSMObject_version_feature = Version
_UI_ObeoDSMObject_createdOn_feature = Created On
_UI_ObeoDSMObject_modifiedOn_feature = Modified On
_UI_MetaDataContainer_metadatas_feature = Metadatas
_UI_StructuredType_supertype_feature = Supertype
_UI_StructuredType_associatedTypes_feature = Associated Types
_UI_StructuredType_ownedAttributes_feature = Owned Attributes
_UI_StructuredType_attributes_feature = Attributes
_UI_StructuredType_ownedReferences_feature = Owned References
_UI_StructuredType_references_feature = References
_UI_StructuredType_properties_feature = Properties
_UI_Attribute_containingType_feature = Containing Type
_UI_Reference_containingType_feature = Containing Type
_UI_Reference_referencedType_feature = Referenced Type
_UI_Property_isIdentifier_feature = Is Identifier
_UI_BindingInfo_references_feature = References
_UI_BindingElement_boundElement_feature = Bound Element
_UI_BindingElement_bindingExpression_feature = Binding Expression
_UI_BindingRegistry_bindingInfos_feature = Binding Infos
_UI_Unknown_feature = Unspecified

_UI_MultiplicityKind_ZERO_ONE_literal = 0..1
_UI_MultiplicityKind_ONE_literal = 1
_UI_MultiplicityKind_ZERO_STAR_literal = 0..*
_UI_MultiplicityKind_ONE_STAR_literal = 1..*
# <copyright>
# </copyright>
#
# $Id$

# ====================================================================
# To code developer:
#   Do NOT change the properties between this line and the
#   "%%% END OF TRANSLATED PROPERTIES %%%" line.
#   Make a new property name, append to the end of the file and change
#   the code to use the new property.
# ====================================================================

# ====================================================================
# %%% END OF TRANSLATED PROPERTIES %%%
# ====================================================================
providerName = Obeo.fr
_UI_Environment_types_feature = Types
_UI_MetaDataContainer_annotations_feature = Annotations
_UI_Unknown_feature = Unspecified

_UI_PriorityDefinition_type = Priority Definition
_UI_PriorityKind_type = Priority Kind
_UI_Environment_priorityDefinitions_feature = Priority Definitions
_UI_PriorityKind_name_feature = Name
_UI_MetaData_type = Meta Data
_UI_ObeoDSMObject_metadataContainer_feature = Metadata Container
_UI_MetaDataContainer_metadatas_feature = Metadatas
_UI_Priority_type = Priority
_UI_TypesDefinition_type = Types Definition
_UI_Environment_typesDefinition_feature = Types Definition
_UI_Type_typeDefinition_feature = Type Definition
_UI_TypesDefinition_name_feature = Name
_UI_Behaviour_type = Behaviour
_UI_Environment_behaviours_feature = Behaviours
_UI_StructuredType_type = Structured Type
_UI_DTO_type = DTO
_UI_FilterContainer_type = Filter Container
_UI_Filter_type = Filter
_UI_MultiplicityKind_ZERO_ONE_literal = 0..1
_UI_MultiplicityKind_ONE_literal = 1
_UI_MultiplicityKind_ZERO_STAR_literal = 0..*
_UI_MultiplicityKind_ONE_STAR_literal = 1..*
_UI_DTO_references_feature = References
_UI_Container_type = Container
_UI_Namespace_type = Namespace
_UI_ObeoDSMObject_description_feature = Description
_UI_ObeoDSMObject_keywords_feature = Keywords
_UI_Attribute_type = Attribute
_UI_Reference_type = Reference
_UI_Property_type = Property
_UI_DTO_properties_feature = Properties
_UI_DTO_ownedReferences_feature = Owned References
_UI_DTO_attributes_feature = Attributes
_UI_DTO_ownedAttributes_feature = Owned Attributes
_UI_Attribute_dto_feature = Dto
_UI_Reference_type_feature = Type
_UI_Reference_dto_feature = Dto
_UI_DTO_supertype_feature = Supertype
_UI_DTO_associatedTypes_feature = Associated Types
_UI_ObeoDSMObject_behaviours_feature = Behaviours
_UI_Binding_type = Binding
_UI_BindingCluster_type = Binding Cluster
_UI_BindingElement_type = Binding Element
_UI_ObeoDSMObject_bindings_feature = Bindings
_UI_Binding_clusters_feature = Clusters
_UI_Binding_left_feature = Left
_UI_Binding_right_feature = Right
_UI_BindingCluster_left_feature = Left
_UI_BindingCluster_right_feature = Right
_UI_BindingElement_boundElement_feature = Bound Element
_UI_BindingElement_bindingExpression_feature = Binding Expression
_UI_BindingInfo_type = Binding Info
_UI_BindingInfo_clusters_feature = Clusters
_UI_ObeoDSMObject_bindingInfos_feature = Binding Infos
_UI_BindingRegistry_type = Binding Registry
_UI_ObeoDSMObject_bindingRegistries_feature = Binding Registries
_UI_BindingRegistry_bindingInfos_feature = Binding Infos
_UI_BindingElement_internalPath_feature = Internal Path
_UI_BindingReference_type = Binding Reference
_UI_BindingInfo_references_feature = References
_UI_BoundableElement_type = Boundable Element
_UI_ObeoDSMObject_version_feature = Version
_UI_ObeoDSMObject_createdOn_feature = Created On
_UI_ObeoDSMObject_modifiedOn_feature = Modified On
@@ -1,22 +1,14 @@
-# <copyright>
-# </copyright>
-#
-# $Id$
-
-# ====================================================================
-# To code developer:
-#   Do NOT change the properties between this line and the
-#   "%%% END OF TRANSLATED PROPERTIES %%%" line.
-#   Make a new property name, append to the end of the file and change
-#   the code to use the new property.
-# ====================================================================
-
-# ====================================================================
-# %%% END OF TRANSLATED PROPERTIES %%%
-# ====================================================================
+# Copyright (c) 2008-2009 Obeo.
+# 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:
+#     Obeo - initial API and implementation
 
 pluginName = Environment Edit Support
-providerName = Obeo.fr
+providerName = www.example.org
 
 _UI_CreateChild_text = {0}
 _UI_CreateChild_text2 = {1} {0}
@@ -37,112 +29,95 @@ _UI_InterDSMLink_type = Inter DSM Link
 _UI_ObeoDSMObject_type = Obeo DSM Object
 _UI_MetaDataContainer_type = Meta Data Container
 _UI_Annotation_type = Annotation
+_UI_PriorityDefinition_type = Priority Definition
+_UI_Priority_type = Priority
+_UI_MetaData_type = Meta Data
+_UI_TypesDefinition_type = Types Definition
+_UI_Behaviour_type = Behaviour
+_UI_StructuredType_type = Structured Type
+_UI_DTO_type = DTO
+_UI_FilterContainer_type = Filter Container
+_UI_Filter_type = Filter
+_UI_Namespace_type = Namespace
+_UI_Attribute_type = Attribute
+_UI_Reference_type = Reference
+_UI_Property_type = Property
+_UI_BindingInfo_type = Binding Info
+_UI_BindingReference_type = Binding Reference
+_UI_BindingElement_type = Binding Element
+_UI_BindingRegistry_type = Binding Registry
+_UI_BoundableElement_type = Boundable Element
 _UI_Unknown_type = Object
 
 _UI_Unknown_datatype= Value
 
 _UI_Environment_name_feature = Name
-_UI_Environment_types_feature = Types
 _UI_Environment_actions_feature = Actions
 _UI_Environment_links_feature = Links
+_UI_Environment_priorityDefinitions_feature = Priority Definitions
+_UI_Environment_typesDefinition_feature = Types Definition
+_UI_Environment_namespaces_feature = Namespaces
 _UI_Type_name_feature = Name
+_UI_Type_typeDefinition_feature = Type Definition
 _UI_Enumeration_fields_feature = Fields
 _UI_Field_name_feature = Name
 _UI_Action_name_feature = Name
 _UI_InterDSMLink_name_feature = Name
 _UI_InterDSMLink_target_feature = Target
 _UI_ObeoDSMObject_metadatas_feature = Metadatas
-_UI_MetaDataContainer_annotations_feature = Annotations
+_UI_ObeoDSMObject_description_feature = Description
+_UI_ObeoDSMObject_keywords_feature = Keywords
+_UI_ObeoDSMObject_behaviours_feature = Behaviours
+_UI_ObeoDSMObject_bindingRegistries_feature = Binding Registries
+_UI_ObeoDSMObject_version_feature = Version
+_UI_ObeoDSMObject_createdOn_feature = Created On
+_UI_ObeoDSMObject_modifiedOn_feature = Modified On
+_UI_MetaDataContainer_metadatas_feature = Metadatas
 _UI_Annotation_title_feature = Title
 _UI_Annotation_body_feature = Body
-_UI_Unknown_feature = Unspecified
-
-_UI_PriorityDefinition_type = Priority Definition
-_UI_PriorityKind_type = Priority Kind
-_UI_Environment_priorityDefinitions_feature = Priority Definitions
 _UI_PriorityDefinition_priorities_feature = Priorities
-_UI_PriorityKind_name_feature = Name
-_UI_MetaData_type = Meta Data
-_UI_ObeoDSMObject_metadataContainer_feature = Metadata Container
-_UI_MetaDataContainer_metadatas_feature = Metadatas
-_UI_Priority_type = Priority
-_UI_TypesDefinition_type = Types Definition
-_UI_Environment_typesDefinition_feature = Types Definition
 _UI_Priority_name_feature = Name
 _UI_TypesDefinition_types_feature = Types
-_UI_Type_typeDefinition_feature = Type Definition
-_UI_TypesDefinition_name_feature = Name
-_UI_Behaviour_type = Behaviour
-_UI_Environment_behaviours_feature = Behaviours
-_UI_StructuredType_type = Structured Type
-_UI_DTO_type = DTO
-_UI_FilterContainer_type = Filter Container
-_UI_Filter_type = Filter
+_UI_StructuredType_supertype_feature = Supertype
+_UI_StructuredType_associatedTypes_feature = Associated Types
+_UI_StructuredType_ownedAttributes_feature = Owned Attributes
+_UI_StructuredType_attributes_feature = Attributes
+_UI_StructuredType_ownedReferences_feature = Owned References
+_UI_StructuredType_references_feature = References
+_UI_StructuredType_properties_feature = Properties
 _UI_DTO_ownedContainer_feature = Owned Container
 _UI_FilterContainer_ownedFilters_feature = Owned Filters
-_UI_MultiplicityKind_ZERO_ONE_literal = 0..1
-_UI_MultiplicityKind_ONE_literal = 1
-_UI_MultiplicityKind_ZERO_STAR_literal = 0..*
-_UI_MultiplicityKind_ONE_STAR_literal = 1..*
-_UI_DTO_references_feature = References
-_UI_Container_type = Container
-_UI_Namespace_type = Namespace
 _UI_Namespace_ownedNamespaces_feature = Owned Namespaces
 _UI_Namespace_owner_feature = Owner
 _UI_Namespace_name_feature = Name
-_UI_ObeoDSMObject_description_feature = Description
-_UI_ObeoDSMObject_keywords_feature = Keywords
-_UI_Attribute_type = Attribute
-_UI_Reference_type = Reference
-_UI_Property_type = Property
-_UI_DTO_properties_feature = Properties
-_UI_DTO_ownedReferences_feature = Owned References
-_UI_DTO_attributes_feature = Attributes
-_UI_DTO_ownedAttributes_feature = Owned Attributes
 _UI_Attribute_type_feature = Type
-_UI_Attribute_dto_feature = Dto
+_UI_Attribute_containingType_feature = Containing Type
 _UI_Reference_isComposite_feature = Is Composite
 _UI_Reference_navigable_feature = Navigable
 _UI_Reference_oppositeOf_feature = Opposite Of
-_UI_Reference_type_feature = Type
-_UI_Reference_dto_feature = Dto
+_UI_Reference_containingType_feature = Containing Type
+_UI_Reference_referencedType_feature = Referenced Type
 _UI_Property_name_feature = Name
 _UI_Property_multiplicity_feature = Multiplicity
-_UI_DTO_supertype_feature = Supertype
-_UI_DTO_associatedTypes_feature = Associated Types
-_UI_ObeoDSMObject_behaviours_feature = Behaviours
-_UI_Binding_type = Binding
-_UI_BindingCluster_type = Binding Cluster
-_UI_BindingElement_type = Binding Element
-_UI_ObeoDSMObject_bindings_feature = Bindings
-_UI_Binding_clusters_feature = Clusters
-_UI_Binding_left_feature = Left
-_UI_Binding_right_feature = Right
-_UI_BindingCluster_left_feature = Left
-_UI_BindingCluster_right_feature = Right
-_UI_BindingElement_boundElement_feature = Bound Element
-_UI_BindingElement_bindingExpression_feature = Binding Expression
-_UI_BindingInfo_type = Binding Info
-_UI_BindingInfo_clusters_feature = Clusters
+_UI_Property_isIdentifier_feature = Is Identifier
+_UI_BindingInfo_references_feature = References
 _UI_BindingInfo_left_feature = Left
 _UI_BindingInfo_right_feature = Right
-_UI_ObeoDSMObject_bindingInfos_feature = Binding Infos
-_UI_BindingRegistry_type = Binding Registry
-_UI_ObeoDSMObject_bindingRegistries_feature = Binding Registries
 _UI_BindingInfo_subBindingInfos_feature = Sub Binding Infos
-_UI_BindingRegistry_bindingInfos_feature = Binding Infos
 _UI_BindingInfo_targets_feature = Targets
-_UI_BindingElement_internalPath_feature = Internal Path
-_UI_BindingReference_type = Binding Reference
-_UI_BindingInfo_references_feature = References
 _UI_BindingInfo_elements_feature = Elements
 _UI_BindingReference_left_feature = Left
 _UI_BindingReference_right_feature = Right
+_UI_BindingElement_boundElement_feature = Bound Element
+_UI_BindingElement_bindingExpression_feature = Binding Expression
 _UI_BindingElement_referencedByAsLeft_feature = Referenced By As Left
 _UI_BindingElement_referencedByAsRight_feature = Referenced By As Right
 _UI_BindingElement_referencedBy_feature = Referenced By
-_UI_BoundableElement_type = Boundable Element
 _UI_BindingElement_pathReferences_feature = Path References
-_UI_ObeoDSMObject_version_feature = Version
-_UI_ObeoDSMObject_createdOn_feature = Created On
-_UI_ObeoDSMObject_modifiedOn_feature = Modified On
+_UI_BindingRegistry_bindingInfos_feature = Binding Infos
+_UI_Unknown_feature = Unspecified
+
+_UI_MultiplicityKind_ZERO_ONE_literal = 0..1
+_UI_MultiplicityKind_ONE_literal = 1
+_UI_MultiplicityKind_ZERO_STAR_literal = 0..*
+_UI_MultiplicityKind_ONE_STAR_literal = 1..*
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fplugin.properties
eab5e4eef17685c805787420281e8966ceb09a8d
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Fenvironment_properties.plugin.xml
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Fenvironment_properties.plugin.xml?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/environment_properties.plugin.xml
            uri="http://www.obeonetwork.org/dsl/environment/3.0.0"
         <propertyTab
               id="Base"
               label="Base"
               category="default">
         </propertyTab>

            uri="http://www.obeonetwork.org/dsl/environment/2.0.0"
@@ -6,7 +6,7 @@
   <!-- EEF extensions -->
    <extension point="org.eclipse.emf.edit.itemProviderAdapterFactories">
       <factory
-            uri="http://www.obeonetwork.org/dsl/environment/2.0.0"
+            uri="http://www.obeonetwork.org/dsl/environment/3.0.0"
             class="org.obeonetwork.dsl.environment.providers.EnvironmentEEFAdapterFactory"
             supportedTypes="org.eclipse.emf.eef.runtime.providers.PropertiesEditingProvider"/>
    </extension>
@@ -140,6 +140,12 @@
                category="default">
          </propertyTab>
 
+         <propertyTab
+               id="Base"
+               label="Base"
+               category="default">
+         </propertyTab>
+
       </propertyTabs>
    </extension>
    <extension
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Fenvironment_properties.plugin.xml
d0718a6951d6289fa95cc67d851e6247fe4710b8
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fcomponents%2FAttributeAttributePropertiesEditionComponent.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fcomponents%2FAttributeAttributePropertiesEditionComponent.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/components/AttributeAttributePropertiesEditionComponent.java
			if (isAccessible(EnvironmentViewsRepository.Attribute.Properties.identifier)) {
				attributePart.setIdentifier(attribute.isIsIdentifier());
			}
			

		if (editorKey == EnvironmentViewsRepository.Attribute.Properties.identifier) {
			return EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier();
		}
		if (EnvironmentViewsRepository.Attribute.Properties.identifier == event.getAffectedEditor()) {
			attribute.setIsIdentifier((Boolean)event.getNewValue());
		}
			if (EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier().equals(msg.getFeature()) && msg.getNotifier().equals(semanticObject) && attributePart != null && isAccessible(EnvironmentViewsRepository.Attribute.Properties.identifier))
				attributePart.setIdentifier((Boolean)msg.getNewValue());
			
			EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier(),
				if (EnvironmentViewsRepository.Attribute.Properties.identifier == event.getAffectedEditor()) {
					Object newValue = event.getNewValue();
					if (newValue instanceof String) {
						newValue = EEFConverterUtil.createFromString(EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier().getEAttributeType(), (String)newValue);
					}
					ret = Diagnostician.INSTANCE.validate(EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier().getEAttributeType(), newValue);
				}
@@ -77,6 +77,9 @@ public void initPart(Object key, int kind, EObject elt, ResourceSet allResource)
 			if (isAccessible(EnvironmentViewsRepository.Attribute.Properties.multiplicity)) {
 				attributePart.initMultiplicity(EEFUtils.choiceOfValues(attribute, EnvironmentPackage.eINSTANCE.getProperty_Multiplicity()), attribute.getMultiplicity());
 			}
+			if (isAccessible(EnvironmentViewsRepository.Attribute.Properties.identifier)) {
+				attributePart.setIdentifier(attribute.isIsIdentifier());
+			}
 			if (isAccessible(EnvironmentViewsRepository.Attribute.Properties.description))
 				attributePart.setDescription(EEFConverterUtil.convertToString(EcorePackage.Literals.ESTRING, attribute.getDescription()));
 			
@@ -87,6 +90,7 @@ public void initPart(Object key, int kind, EObject elt, ResourceSet allResource)
 			
 			
 			
+			
 			// init values for referenced views
 			
 			// init filters for referenced views
@@ -101,6 +105,7 @@ public void initPart(Object key, int kind, EObject elt, ResourceSet allResource)
 
 
 
+
 	/**
 	 * {@inheritDoc}
 	 * @see org.eclipse.emf.eef.runtime.impl.components.StandardPropertiesEditionComponent#associatedFeature(java.lang.Object)
@@ -115,6 +120,9 @@ public EStructuralFeature associatedFeature(Object editorKey) {
 		if (editorKey == EnvironmentViewsRepository.Attribute.Properties.multiplicity) {
 			return EnvironmentPackage.eINSTANCE.getProperty_Multiplicity();
 		}
+		if (editorKey == EnvironmentViewsRepository.Attribute.Properties.identifier) {
+			return EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier();
+		}
 		if (editorKey == EnvironmentViewsRepository.Attribute.Properties.description) {
 			return EnvironmentPackage.eINSTANCE.getObeoDSMObject_Description();
 		}
@@ -137,6 +145,9 @@ public void updateSemanticModel(final IPropertiesEditionEvent event) {
 		if (EnvironmentViewsRepository.Attribute.Properties.multiplicity == event.getAffectedEditor()) {
 			attribute.setMultiplicity((MultiplicityKind)event.getNewValue());
 		}
+		if (EnvironmentViewsRepository.Attribute.Properties.identifier == event.getAffectedEditor()) {
+			attribute.setIsIdentifier((Boolean)event.getNewValue());
+		}
 		if (EnvironmentViewsRepository.Attribute.Properties.description == event.getAffectedEditor()) {
 			attribute.setDescription((java.lang.String)EEFConverterUtil.createFromString(EcorePackage.Literals.ESTRING, (String)event.getNewValue()));
 		}
@@ -162,6 +173,9 @@ public void updatePart(Notification msg) {
 			if (EnvironmentPackage.eINSTANCE.getProperty_Multiplicity().equals(msg.getFeature()) && msg.getNotifier().equals(semanticObject) && isAccessible(EnvironmentViewsRepository.Attribute.Properties.multiplicity))
 				attributePart.setMultiplicity((MultiplicityKind)msg.getNewValue());
 			
+			if (EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier().equals(msg.getFeature()) && msg.getNotifier().equals(semanticObject) && attributePart != null && isAccessible(EnvironmentViewsRepository.Attribute.Properties.identifier))
+				attributePart.setIdentifier((Boolean)msg.getNewValue());
+			
 			if (EnvironmentPackage.eINSTANCE.getObeoDSMObject_Description().equals(msg.getFeature()) && msg.getNotifier().equals(semanticObject) && attributePart != null && isAccessible(EnvironmentViewsRepository.Attribute.Properties.description)) {
 				if (msg.getNewValue() != null) {
 					attributePart.setDescription(EcoreUtil.convertToString(EcorePackage.Literals.ESTRING, msg.getNewValue()));
@@ -184,6 +198,7 @@ protected NotificationFilter[] getNotificationFilters() {
 			EnvironmentPackage.eINSTANCE.getProperty_Name(),
 			EnvironmentPackage.eINSTANCE.getAttribute_Type(),
 			EnvironmentPackage.eINSTANCE.getProperty_Multiplicity(),
+			EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier(),
 			EnvironmentPackage.eINSTANCE.getObeoDSMObject_Description()		);
 		return new NotificationFilter[] {filter,};
 	}
@@ -223,6 +238,13 @@ public Diagnostic validateValue(IPropertiesEditionEvent event) {
 					}
 					ret = Diagnostician.INSTANCE.validate(EnvironmentPackage.eINSTANCE.getProperty_Multiplicity().getEAttributeType(), newValue);
 				}
+				if (EnvironmentViewsRepository.Attribute.Properties.identifier == event.getAffectedEditor()) {
+					Object newValue = event.getNewValue();
+					if (newValue instanceof String) {
+						newValue = EEFConverterUtil.createFromString(EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier().getEAttributeType(), (String)newValue);
+					}
+					ret = Diagnostician.INSTANCE.validate(EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier().getEAttributeType(), newValue);
+				}
 				if (EnvironmentViewsRepository.Attribute.Properties.description == event.getAffectedEditor()) {
 					Object newValue = event.getNewValue();
 					if (newValue instanceof String) {
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fcomponents%2FAttributeAttributePropertiesEditionComponent.java
e6d002283982bdb714859019aa04aa284e66c892
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fcomponents%2FMetadataCptPropertiesEditionComponent.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fcomponents%2FMetadataCptPropertiesEditionComponent.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/components/MetadataCptPropertiesEditionComponent.java
import org.eclipse.emf.ecore.EClass;
import org.eclipse.emf.eef.runtime.context.impl.EReferencePropertiesEditionContext.InstanciableTypeFilter;
				EReferencePropertiesEditionContext context = new EReferencePropertiesEditionContext(editingContext, this, metadataSettings, editingContext.getAdapterFactory());
				context.addInstanciableTypeFilter(new InstanciableTypeFilter() {
					public boolean select(EClass instanciableType) {
						return EnvironmentPackage.Literals.ANNOTATION == instanciableType;
					}
				});
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/components/MetadataCptPropertiesEditionComponent.java
public boolean select(EClass instanciableType) {
						return EnvironmentPackage.Literals.ANNOTATION == instanciableType;
new InstanciableTypeFilter()
import org.eclipse.emf.eef.runtime.context.impl.TypedEReferencePropertiesEditingContext;
				EReferencePropertiesEditionContext context = new TypedEReferencePropertiesEditingContext(editingContext, this, metadataSettings, EnvironmentPackage.Literals.ANNOTATION, editingContext.getAdapterFactory());
@@ -8,6 +8,7 @@
 import org.eclipse.emf.common.util.BasicDiagnostic;
 import org.eclipse.emf.common.util.Diagnostic;
 import org.eclipse.emf.common.util.WrappedException;
+import org.eclipse.emf.ecore.EClass;
 import org.eclipse.emf.ecore.EObject;
 import org.eclipse.emf.ecore.EStructuralFeature;
 import org.eclipse.emf.ecore.resource.Resource;
@@ -18,7 +19,7 @@
 import org.eclipse.emf.eef.runtime.context.PropertiesEditingContext;
 import org.eclipse.emf.eef.runtime.context.impl.EObjectPropertiesEditionContext;
 import org.eclipse.emf.eef.runtime.context.impl.EReferencePropertiesEditionContext;
-import org.eclipse.emf.eef.runtime.context.impl.TypedEReferencePropertiesEditingContext;
+import org.eclipse.emf.eef.runtime.context.impl.EReferencePropertiesEditionContext.InstanciableTypeFilter;
 import org.eclipse.emf.eef.runtime.impl.components.SinglePartPropertiesEditingComponent;
 import org.eclipse.emf.eef.runtime.impl.notify.PropertiesEditionEvent;
 import org.eclipse.emf.eef.runtime.impl.parts.CompositePropertiesEditionPart;
@@ -146,7 +147,12 @@ public void updateSemanticModel(final IPropertiesEditionEvent event) {
 		ObeoDSMObject obeoDSMObject = (ObeoDSMObject)semanticObject;
 		if (EnvironmentViewsRepository.Metadatas.Properties.metadata == event.getAffectedEditor()) {
 			if (event.getKind() == PropertiesEditionEvent.ADD) {
-				EReferencePropertiesEditionContext context = new TypedEReferencePropertiesEditingContext(editingContext, this, metadataSettings, EnvironmentPackage.Literals.ANNOTATION, editingContext.getAdapterFactory());
+				EReferencePropertiesEditionContext context = new EReferencePropertiesEditionContext(editingContext, this, metadataSettings, editingContext.getAdapterFactory());
+				context.addInstanciableTypeFilter(new InstanciableTypeFilter() {
+					public boolean select(EClass instanciableType) {
+						return EnvironmentPackage.Literals.ANNOTATION == instanciableType;
+					}
+				});
 				PropertiesEditingProvider provider = (PropertiesEditingProvider)editingContext.getAdapterFactory().adapt(semanticObject, PropertiesEditingProvider.class);
 				if (provider != null) {
 					PropertiesEditingPolicy policy = provider.getPolicy(context);
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fcomponents%2FMetadataCptPropertiesEditionComponent.java
2686aaa1e7fb2e2a8f5a98927ee5df800cef50c7
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fcomponents%2FReferenceReferencePropertiesEditionComponent.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fcomponents%2FReferenceReferencePropertiesEditionComponent.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/components/ReferenceReferencePropertiesEditionComponent.java
import org.obeonetwork.dsl.environment.StructuredType;
	 * Settings for referencedType EObjectFlatComboViewer
	private EObjectFlatComboSettings referencedTypeSettings;
			if (isAccessible(EnvironmentViewsRepository.Reference.Properties.referencedType)) {
				referencedTypeSettings = new EObjectFlatComboSettings(reference, EnvironmentPackage.eINSTANCE.getReference_ReferencedType());
				referencePart.initReferencedType(referencedTypeSettings);
				referencePart.setReferencedTypeButtonMode(ButtonsModeEnum.BROWSE);
			if (isAccessible(EnvironmentViewsRepository.Reference.Properties.identifier)) {
				referencePart.setIdentifier(reference.isIsIdentifier());
			}
			if (isAccessible(EnvironmentViewsRepository.Reference.Properties.referencedType)) {
				referencePart.addFilterToReferencedType(new ViewerFilter() {
						return (element instanceof StructuredType);
				// Start of user code for additional businessfilters for referencedType
			

		if (editorKey == EnvironmentViewsRepository.Reference.Properties.referencedType) {
			return EnvironmentPackage.eINSTANCE.getReference_ReferencedType();
		if (editorKey == EnvironmentViewsRepository.Reference.Properties.identifier) {
			return EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier();
		}
		if (EnvironmentViewsRepository.Reference.Properties.referencedType == event.getAffectedEditor()) {
				referencedTypeSettings.setToReference((StructuredType)event.getNewValue());
				EReferencePropertiesEditionContext context = new EReferencePropertiesEditionContext(editingContext, this, referencedTypeSettings, editingContext.getAdapterFactory());
		if (EnvironmentViewsRepository.Reference.Properties.identifier == event.getAffectedEditor()) {
			reference.setIsIdentifier((Boolean)event.getNewValue());
		}
			if (EnvironmentPackage.eINSTANCE.getReference_ReferencedType().equals(msg.getFeature()) && referencePart != null && isAccessible(EnvironmentViewsRepository.Reference.Properties.referencedType))
				referencePart.setReferencedType((EObject)msg.getNewValue());
			if (EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier().equals(msg.getFeature()) && msg.getNotifier().equals(semanticObject) && referencePart != null && isAccessible(EnvironmentViewsRepository.Reference.Properties.identifier))
				referencePart.setIdentifier((Boolean)msg.getNewValue());
			
			EnvironmentPackage.eINSTANCE.getReference_ReferencedType(),
			EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier(),
		return key == EnvironmentViewsRepository.Reference.Properties.referencedType || key == EnvironmentViewsRepository.Reference.Properties.isComposite || key == EnvironmentViewsRepository.Reference.Properties.navigable;
				if (EnvironmentViewsRepository.Reference.Properties.identifier == event.getAffectedEditor()) {
					Object newValue = event.getNewValue();
					if (newValue instanceof String) {
						newValue = EEFConverterUtil.createFromString(EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier().getEAttributeType(), (String)newValue);
					}
					ret = Diagnostician.INSTANCE.validate(EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier().getEAttributeType(), newValue);
				}
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/components/ReferenceReferencePropertiesEditionComponent.java
return (element instanceof StructuredType);
				// Start of user code for additional businessfilters for referencedType
			

		if (editorKey == EnvironmentViewsRepository.Reference.Properties.referencedType) {
			return EnvironmentPackage.eINSTANCE.getReference_ReferencedType();
		if (editorKey == EnvironmentViewsRepository.Reference.Properties.identifier) {
			return EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier();
new ViewerFilter()
import org.obeonetwork.dsl.environment.DTO;
	 * Settings for type EObjectFlatComboViewer
	private EObjectFlatComboSettings typeSettings;
			if (isAccessible(EnvironmentViewsRepository.Reference.Properties.type)) {
				typeSettings = new EObjectFlatComboSettings(reference, EnvironmentPackage.eINSTANCE.getReference_Type());
				referencePart.initType(typeSettings);
				referencePart.setTypeButtonMode(ButtonsModeEnum.BROWSE);
			if (isAccessible(EnvironmentViewsRepository.Reference.Properties.type)) {
				referencePart.addFilterToType(new ViewerFilter() {
						return (element instanceof DTO);
				// Start of user code for additional businessfilters for type
		if (editorKey == EnvironmentViewsRepository.Reference.Properties.type) {
			return EnvironmentPackage.eINSTANCE.getReference_Type();
		if (EnvironmentViewsRepository.Reference.Properties.type == event.getAffectedEditor()) {
				typeSettings.setToReference((DTO)event.getNewValue());
				EReferencePropertiesEditionContext context = new EReferencePropertiesEditionContext(editingContext, this, typeSettings, editingContext.getAdapterFactory());
			if (EnvironmentPackage.eINSTANCE.getReference_Type().equals(msg.getFeature()) && referencePart != null && isAccessible(EnvironmentViewsRepository.Reference.Properties.type))
				referencePart.setType((EObject)msg.getNewValue());
			EnvironmentPackage.eINSTANCE.getReference_Type(),
		return key == EnvironmentViewsRepository.Reference.Properties.type || key == EnvironmentViewsRepository.Reference.Properties.isComposite || key == EnvironmentViewsRepository.Reference.Properties.navigable;
@@ -31,11 +31,11 @@
 import org.eclipse.emf.eef.runtime.ui.widgets.eobjflatcombo.EObjectFlatComboSettings;
 import org.eclipse.jface.viewers.Viewer;
 import org.eclipse.jface.viewers.ViewerFilter;
-import org.obeonetwork.dsl.environment.DTO;
 import org.obeonetwork.dsl.environment.EnvironmentFactory;
 import org.obeonetwork.dsl.environment.EnvironmentPackage;
 import org.obeonetwork.dsl.environment.MultiplicityKind;
 import org.obeonetwork.dsl.environment.Reference;
+import org.obeonetwork.dsl.environment.StructuredType;
 import org.obeonetwork.dsl.environment.parts.EnvironmentViewsRepository;
 import org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart;
 
@@ -53,9 +53,9 @@ public class ReferenceReferencePropertiesEditionComponent extends SinglePartProp
 
 	
 	/**
-	 * Settings for type EObjectFlatComboViewer
+	 * Settings for referencedType EObjectFlatComboViewer
 	 */
-	private EObjectFlatComboSettings typeSettings;
+	private EObjectFlatComboSettings referencedTypeSettings;
 	
 	/**
 	 * Settings for oppositeOf EObjectFlatComboViewer
@@ -92,12 +92,12 @@ public void initPart(Object key, int kind, EObject elt, ResourceSet allResource)
 			if (isAccessible(EnvironmentViewsRepository.Reference.Properties.name))
 				referencePart.setName(EEFConverterUtil.convertToString(EcorePackage.Literals.ESTRING, reference.getName()));
 			
-			if (isAccessible(EnvironmentViewsRepository.Reference.Properties.type)) {
+			if (isAccessible(EnvironmentViewsRepository.Reference.Properties.referencedType)) {
 				// init part
-				typeSettings = new EObjectFlatComboSettings(reference, EnvironmentPackage.eINSTANCE.getReference_Type());
-				referencePart.initType(typeSettings);
+				referencedTypeSettings = new EObjectFlatComboSettings(reference, EnvironmentPackage.eINSTANCE.getReference_ReferencedType());
+				referencePart.initReferencedType(referencedTypeSettings);
 				// set the button mode
-				referencePart.setTypeButtonMode(ButtonsModeEnum.BROWSE);
+				referencePart.setReferencedTypeButtonMode(ButtonsModeEnum.BROWSE);
 			}
 			if (isAccessible(EnvironmentViewsRepository.Reference.Properties.multiplicity)) {
 				referencePart.initMultiplicity(EEFUtils.choiceOfValues(reference, EnvironmentPackage.eINSTANCE.getProperty_Multiplicity()), reference.getMultiplicity());
@@ -115,25 +115,28 @@ public void initPart(Object key, int kind, EObject elt, ResourceSet allResource)
 				// set the button mode
 				referencePart.setOppositeOfButtonMode(ButtonsModeEnum.BROWSE);
 			}
+			if (isAccessible(EnvironmentViewsRepository.Reference.Properties.identifier)) {
+				referencePart.setIdentifier(reference.isIsIdentifier());
+			}
 			if (isAccessible(EnvironmentViewsRepository.Reference.Properties.description))
 				referencePart.setDescription(EEFConverterUtil.convertToString(EcorePackage.Literals.ESTRING, reference.getDescription()));
 			
 			// init filters
 			
-			if (isAccessible(EnvironmentViewsRepository.Reference.Properties.type)) {
-				referencePart.addFilterToType(new ViewerFilter() {
+			if (isAccessible(EnvironmentViewsRepository.Reference.Properties.referencedType)) {
+				referencePart.addFilterToReferencedType(new ViewerFilter() {
 				
 					/**
 					 * {@inheritDoc}
 					 * 
 					 * @see org.eclipse.jface.viewers.ViewerFilter#select(org.eclipse.jface.viewers.Viewer, java.lang.Object, java.lang.Object)
 					 */
 					public boolean select(Viewer viewer, Object parentElement, Object element) {
-						return (element instanceof DTO);
+						return (element instanceof StructuredType);
 					}
 					
 				});
-				// Start of user code for additional businessfilters for type
+				// Start of user code for additional businessfilters for referencedType
 				// End of user code
 			}
 			
@@ -156,6 +159,7 @@ public boolean select(Viewer viewer, Object parentElement, Object element) {
 				// End of user code
 			}
 			
+			
 			// init values for referenced views
 			
 			// init filters for referenced views
@@ -173,6 +177,7 @@ public boolean select(Viewer viewer, Object parentElement, Object element) {
 
 
 
+
 	/**
 	 * {@inheritDoc}
 	 * @see org.eclipse.emf.eef.runtime.impl.components.StandardPropertiesEditionComponent#associatedFeature(java.lang.Object)
@@ -181,8 +186,8 @@ public EStructuralFeature associatedFeature(Object editorKey) {
 		if (editorKey == EnvironmentViewsRepository.Reference.Properties.name) {
 			return EnvironmentPackage.eINSTANCE.getProperty_Name();
 		}
-		if (editorKey == EnvironmentViewsRepository.Reference.Properties.type) {
-			return EnvironmentPackage.eINSTANCE.getReference_Type();
+		if (editorKey == EnvironmentViewsRepository.Reference.Properties.referencedType) {
+			return EnvironmentPackage.eINSTANCE.getReference_ReferencedType();
 		}
 		if (editorKey == EnvironmentViewsRepository.Reference.Properties.multiplicity) {
 			return EnvironmentPackage.eINSTANCE.getProperty_Multiplicity();
@@ -196,6 +201,9 @@ public EStructuralFeature associatedFeature(Object editorKey) {
 		if (editorKey == EnvironmentViewsRepository.Reference.Properties.oppositeOf) {
 			return EnvironmentPackage.eINSTANCE.getReference_OppositeOf();
 		}
+		if (editorKey == EnvironmentViewsRepository.Reference.Properties.identifier) {
+			return EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier();
+		}
 		if (editorKey == EnvironmentViewsRepository.Reference.Properties.description) {
 			return EnvironmentPackage.eINSTANCE.getObeoDSMObject_Description();
 		}
@@ -212,11 +220,11 @@ public void updateSemanticModel(final IPropertiesEditionEvent event) {
 		if (EnvironmentViewsRepository.Reference.Properties.name == event.getAffectedEditor()) {
 			reference.setName((java.lang.String)EEFConverterUtil.createFromString(EcorePackage.Literals.ESTRING, (String)event.getNewValue()));
 		}
-		if (EnvironmentViewsRepository.Reference.Properties.type == event.getAffectedEditor()) {
+		if (EnvironmentViewsRepository.Reference.Properties.referencedType == event.getAffectedEditor()) {
 			if (event.getKind() == PropertiesEditionEvent.SET) {
-				typeSettings.setToReference((DTO)event.getNewValue());
+				referencedTypeSettings.setToReference((StructuredType)event.getNewValue());
 			} else if (event.getKind() == PropertiesEditionEvent.ADD) {
-				EReferencePropertiesEditionContext context = new EReferencePropertiesEditionContext(editingContext, this, typeSettings, editingContext.getAdapterFactory());
+				EReferencePropertiesEditionContext context = new EReferencePropertiesEditionContext(editingContext, this, referencedTypeSettings, editingContext.getAdapterFactory());
 				PropertiesEditingProvider provider = (PropertiesEditingProvider)editingContext.getAdapterFactory().adapt(semanticObject, PropertiesEditingProvider.class);
 				if (provider != null) {
 					PropertiesEditingPolicy policy = provider.getPolicy(context);
@@ -251,6 +259,9 @@ public void updateSemanticModel(final IPropertiesEditionEvent event) {
 				oppositeOfSettings.setToReference(eObject);
 			}
 		}
+		if (EnvironmentViewsRepository.Reference.Properties.identifier == event.getAffectedEditor()) {
+			reference.setIsIdentifier((Boolean)event.getNewValue());
+		}
 		if (EnvironmentViewsRepository.Reference.Properties.description == event.getAffectedEditor()) {
 			reference.setDescription((java.lang.String)EEFConverterUtil.createFromString(EcorePackage.Literals.ESTRING, (String)event.getNewValue()));
 		}
@@ -271,8 +282,8 @@ public void updatePart(Notification msg) {
 					referencePart.setName("");
 				}
 			}
-			if (EnvironmentPackage.eINSTANCE.getReference_Type().equals(msg.getFeature()) && referencePart != null && isAccessible(EnvironmentViewsRepository.Reference.Properties.type))
-				referencePart.setType((EObject)msg.getNewValue());
+			if (EnvironmentPackage.eINSTANCE.getReference_ReferencedType().equals(msg.getFeature()) && referencePart != null && isAccessible(EnvironmentViewsRepository.Reference.Properties.referencedType))
+				referencePart.setReferencedType((EObject)msg.getNewValue());
 			if (EnvironmentPackage.eINSTANCE.getProperty_Multiplicity().equals(msg.getFeature()) && msg.getNotifier().equals(semanticObject) && isAccessible(EnvironmentViewsRepository.Reference.Properties.multiplicity))
 				referencePart.setMultiplicity((MultiplicityKind)msg.getNewValue());
 			
@@ -284,6 +295,9 @@ public void updatePart(Notification msg) {
 			
 			if (EnvironmentPackage.eINSTANCE.getReference_OppositeOf().equals(msg.getFeature()) && referencePart != null && isAccessible(EnvironmentViewsRepository.Reference.Properties.oppositeOf))
 				referencePart.setOppositeOf((EObject)msg.getNewValue());
+			if (EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier().equals(msg.getFeature()) && msg.getNotifier().equals(semanticObject) && referencePart != null && isAccessible(EnvironmentViewsRepository.Reference.Properties.identifier))
+				referencePart.setIdentifier((Boolean)msg.getNewValue());
+			
 			if (EnvironmentPackage.eINSTANCE.getObeoDSMObject_Description().equals(msg.getFeature()) && msg.getNotifier().equals(semanticObject) && referencePart != null && isAccessible(EnvironmentViewsRepository.Reference.Properties.description)) {
 				if (msg.getNewValue() != null) {
 					referencePart.setDescription(EcoreUtil.convertToString(EcorePackage.Literals.ESTRING, msg.getNewValue()));
@@ -304,11 +318,12 @@ public void updatePart(Notification msg) {
 	protected NotificationFilter[] getNotificationFilters() {
 		NotificationFilter filter = new EStructuralFeatureNotificationFilter(
 			EnvironmentPackage.eINSTANCE.getProperty_Name(),
-			EnvironmentPackage.eINSTANCE.getReference_Type(),
+			EnvironmentPackage.eINSTANCE.getReference_ReferencedType(),
 			EnvironmentPackage.eINSTANCE.getProperty_Multiplicity(),
 			EnvironmentPackage.eINSTANCE.getReference_IsComposite(),
 			EnvironmentPackage.eINSTANCE.getReference_Navigable(),
 			EnvironmentPackage.eINSTANCE.getReference_OppositeOf(),
+			EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier(),
 			EnvironmentPackage.eINSTANCE.getObeoDSMObject_Description()		);
 		return new NotificationFilter[] {filter,};
 	}
@@ -321,7 +336,7 @@ protected NotificationFilter[] getNotificationFilters() {
 	 * 
 	 */
 	public boolean isRequired(Object key, int kind) {
-		return key == EnvironmentViewsRepository.Reference.Properties.type || key == EnvironmentViewsRepository.Reference.Properties.isComposite || key == EnvironmentViewsRepository.Reference.Properties.navigable;
+		return key == EnvironmentViewsRepository.Reference.Properties.referencedType || key == EnvironmentViewsRepository.Reference.Properties.isComposite || key == EnvironmentViewsRepository.Reference.Properties.navigable;
 	}
 
 	/**
@@ -362,6 +377,13 @@ public Diagnostic validateValue(IPropertiesEditionEvent event) {
 					}
 					ret = Diagnostician.INSTANCE.validate(EnvironmentPackage.eINSTANCE.getReference_Navigable().getEAttributeType(), newValue);
 				}
+				if (EnvironmentViewsRepository.Reference.Properties.identifier == event.getAffectedEditor()) {
+					Object newValue = event.getNewValue();
+					if (newValue instanceof String) {
+						newValue = EEFConverterUtil.createFromString(EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier().getEAttributeType(), (String)newValue);
+					}
+					ret = Diagnostician.INSTANCE.validate(EnvironmentPackage.eINSTANCE.getProperty_IsIdentifier().getEAttributeType(), newValue);
+				}
 				if (EnvironmentViewsRepository.Reference.Properties.description == event.getAffectedEditor()) {
 					Object newValue = event.getNewValue();
 					if (newValue instanceof String) {
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fcomponents%2FReferenceReferencePropertiesEditionComponent.java
53debbc851e7baaf299ff983355f1ce382af932d
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2FAttributePropertiesEditionPart.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2FAttributePropertiesEditionPart.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/AttributePropertiesEditionPart.java
	/**
	 * @return the identifier
	 * 
	 */
	public Boolean getIdentifier();

	/**
	 * Defines a new identifier
	 * @param newValue the new identifier to set
	 * 
	 */
	public void setIdentifier(Boolean newValue);


@@ -82,6 +82,20 @@ public interface AttributePropertiesEditionPart {
 	public void setMultiplicity(Enumerator newValue);
 
 
+	/**
+	 * @return the identifier
+	 * 
+	 */
+	public Boolean getIdentifier();
+
+	/**
+	 * Defines a new identifier
+	 * @param newValue the new identifier to set
+	 * 
+	 */
+	public void setIdentifier(Boolean newValue);
+
+
 	/**
 	 * @return the description
 	 * 
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2FAttributePropertiesEditionPart.java
7d2e56d0cb81dce6d3f3b6b7f70baa0528fd9732
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2FEnvironmentViewsRepository.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2FEnvironmentViewsRepository.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/EnvironmentViewsRepository.java
			public static String identifier = "environment::Attribute::properties::identifier";
			
			
			public static String referencedType = "environment::Reference::properties::referencedType";
			public static String identifier = "environment::Reference::properties::identifier";
			
			
	/**
	 * DTO view descriptor
	 * 
	 */
	public static class DTO {
		public static class Properties {
	
			
			public static String name = "environment::DTO::properties::name";
			
			
			public static String supertype = "environment::DTO::properties::supertype";
			
			
			public static String associatedTypes = "environment::DTO::properties::associatedTypes";
			
			
			public static String description = "environment::DTO::properties::description";
			
	
		}
	
	}

			public static String type = "environment::Reference::properties::type";
@@ -226,6 +226,9 @@ public static class Properties {
 			public static String multiplicity = "environment::Attribute::properties::multiplicity";
 			
 			
+			public static String identifier = "environment::Attribute::properties::identifier";
+			
+			
 			public static String description = "environment::Attribute::properties::description";
 			
 	
@@ -244,7 +247,7 @@ public static class Properties {
 			public static String name = "environment::Reference::properties::name";
 			
 			
-			public static String type = "environment::Reference::properties::type";
+			public static String referencedType = "environment::Reference::properties::referencedType";
 			
 			
 			public static String multiplicity = "environment::Reference::properties::multiplicity";
@@ -259,6 +262,9 @@ public static class Properties {
 			public static String oppositeOf = "environment::Reference::properties::oppositeOf";
 			
 			
+			public static String identifier = "environment::Reference::properties::identifier";
+			
+			
 			public static String description = "environment::Reference::properties::description";
 			
 	
@@ -344,4 +350,28 @@ public static class Properties {
 	
 	}
 
+	/**
+	 * DTO view descriptor
+	 * 
+	 */
+	public static class DTO {
+		public static class Properties {
+	
+			
+			public static String name = "environment::DTO::properties::name";
+			
+			
+			public static String supertype = "environment::DTO::properties::supertype";
+			
+			
+			public static String associatedTypes = "environment::DTO::properties::associatedTypes";
+			
+			
+			public static String description = "environment::DTO::properties::description";
+			
+	
+		}
+	
+	}
+
 }
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2FEnvironmentViewsRepository.java
2cfc0f756188100ea55d71a7c686ce530fe95e7c
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2FReferencePropertiesEditionPart.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2FReferencePropertiesEditionPart.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/ReferencePropertiesEditionPart.java
	 * @return the referencedType
	public EObject getReferencedType();
	 * Init the referencedType
	public void initReferencedType(EObjectFlatComboSettings settings);
	 * Defines a new referencedType
	 * @param newValue the new referencedType to set
	public void setReferencedType(EObject newValue);
	public void setReferencedTypeButtonMode(ButtonsModeEnum newValue);
	 * Adds the given filter to the referencedType edition editor.
	public void addFilterToReferencedType(ViewerFilter filter);
	 * Adds the given filter to the referencedType edition editor.
	public void addBusinessFilterToReferencedType(ViewerFilter filter);
	/**
	 * @return the identifier
	 * 
	 */
	public Boolean getIdentifier();

	/**
	 * Defines a new identifier
	 * @param newValue the new identifier to set
	 * 
	 */
	public void setIdentifier(Boolean newValue);


	 * @return the type
	public EObject getType();
	 * Init the type
	public void initType(EObjectFlatComboSettings settings);
	 * Defines a new type
	 * @param newValue the new type to set
	public void setType(EObject newValue);
	public void setTypeButtonMode(ButtonsModeEnum newValue);
	 * Adds the given filter to the type edition editor.
	public void addFilterToType(ViewerFilter filter);
	 * Adds the given filter to the type edition editor.
	public void addBusinessFilterToType(ViewerFilter filter);
@@ -34,50 +34,50 @@ public interface ReferencePropertiesEditionPart {
 
 
 	/**
-	 * @return the type
+	 * @return the referencedType
 	 * 
 	 */
-	public EObject getType();
+	public EObject getReferencedType();
 
 	/**
-	 * Init the type
+	 * Init the referencedType
 	 * @param settings the combo setting
 	 */
-	public void initType(EObjectFlatComboSettings settings);
+	public void initReferencedType(EObjectFlatComboSettings settings);
 
 	/**
-	 * Defines a new type
-	 * @param newValue the new type to set
+	 * Defines a new referencedType
+	 * @param newValue the new referencedType to set
 	 * 
 	 */
-	public void setType(EObject newValue);
+	public void setReferencedType(EObject newValue);
 
 	/**
 	 * Defines the button mode
 	 * @param newValue the new mode to set
 	 * 
 	 */
-	public void setTypeButtonMode(ButtonsModeEnum newValue);
+	public void setReferencedTypeButtonMode(ButtonsModeEnum newValue);
 
 	/**
-	 * Adds the given filter to the type edition editor.
+	 * Adds the given filter to the referencedType edition editor.
 	 * 
 	 * @param filter
 	 *            a viewer filter
 	 * @see org.eclipse.jface.viewers.StructuredViewer#addFilter(ViewerFilter)
 	 * 
 	 */
-	public void addFilterToType(ViewerFilter filter);
+	public void addFilterToReferencedType(ViewerFilter filter);
 
 	/**
-	 * Adds the given filter to the type edition editor.
+	 * Adds the given filter to the referencedType edition editor.
 	 * 
 	 * @param filter
 	 *            a viewer filter
 	 * @see org.eclipse.jface.viewers.StructuredViewer#addFilter(ViewerFilter)
 	 * 
 	 */
-	public void addBusinessFilterToType(ViewerFilter filter);
+	public void addBusinessFilterToReferencedType(ViewerFilter filter);
 
 
 	/**
@@ -176,6 +176,20 @@ public interface ReferencePropertiesEditionPart {
 	public void addBusinessFilterToOppositeOf(ViewerFilter filter);
 
 
+	/**
+	 * @return the identifier
+	 * 
+	 */
+	public Boolean getIdentifier();
+
+	/**
+	 * Defines a new identifier
+	 * @param newValue the new identifier to set
+	 * 
+	 */
+	public void setIdentifier(Boolean newValue);
+
+
 	/**
 	 * @return the description
 	 * 
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2FReferencePropertiesEditionPart.java
902ce166bc51c72a95611168730ad135719fb618
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2Fforms%2FAttributePropertiesEditionPartForm.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2Fforms%2FAttributePropertiesEditionPartForm.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/forms/AttributePropertiesEditionPartForm.java
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.widgets.Button;
	protected Button identifier;
		propertiesStep.addStep(EnvironmentViewsRepository.Attribute.Properties.identifier);
				if (key == EnvironmentViewsRepository.Attribute.Properties.identifier) {
					return createIdentifierCheckbox(widgetFactory, parent);
				}
	protected Composite createIdentifierCheckbox(FormToolkit widgetFactory, Composite parent) {
		identifier = widgetFactory.createButton(parent, getDescription(EnvironmentViewsRepository.Attribute.Properties.identifier, EnvironmentMessages.AttributePropertiesEditionPart_IdentifierLabel), SWT.CHECK);
		identifier.addSelectionListener(new SelectionAdapter() {

			/**
			 * {@inheritDoc}
			 *
			 * @see org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse.swt.events.SelectionEvent)
			 * 	
			 */
			public void widgetSelected(SelectionEvent e) {
				if (propertiesEditionComponent != null)
					propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(AttributePropertiesEditionPartForm.this, EnvironmentViewsRepository.Attribute.Properties.identifier, PropertiesEditionEvent.COMMIT, PropertiesEditionEvent.SET, null, new Boolean(identifier.getSelection())));
			}

		});
		GridData identifierData = new GridData(GridData.FILL_HORIZONTAL);
		identifierData.horizontalSpan = 2;
		identifier.setLayoutData(identifierData);
		EditingUtils.setID(identifier, EnvironmentViewsRepository.Attribute.Properties.identifier);
		EditingUtils.setEEFtype(identifier, "eef::Checkbox"); //$NON-NLS-1$
		FormUtils.createHelpButton(widgetFactory, parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Attribute.Properties.identifier, EnvironmentViewsRepository.FORM_KIND), null); //$NON-NLS-1$
		// Start of user code for createIdentifierCheckbox

		// End of user code
		return parent;
	}

	
	/**
	 * {@inheritDoc}
	 * 
	 * @see org.obeonetwork.dsl.environment.parts.AttributePropertiesEditionPart#getIdentifier()
	 * 
	 */
	public Boolean getIdentifier() {
		return Boolean.valueOf(identifier.getSelection());
	}

	/**
	 * {@inheritDoc}
	 * 
	 * @see org.obeonetwork.dsl.environment.parts.AttributePropertiesEditionPart#setIdentifier(Boolean newValue)
	 * 
	 */
	public void setIdentifier(Boolean newValue) {
		if (newValue != null) {
			identifier.setSelection(newValue.booleanValue());
		} else {
			identifier.setSelection(false);
		}
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Attribute.Properties.identifier);
		if (eefElementEditorReadOnlyState && identifier.isEnabled()) {
			identifier.setEnabled(false);
			identifier.setToolTipText(EnvironmentMessages.Attribute_ReadOnly);
		} else if (!eefElementEditorReadOnlyState && !identifier.isEnabled()) {
			identifier.setEnabled(true);
		}	
		
	}

FormToolkit widgetFactory  Composite parent
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/forms/AttributePropertiesEditionPartForm.java
identifier = widgetFactory.createButton(parent, getDescription(EnvironmentViewsRepository.Attribute.Properties.identifier, EnvironmentMessages.AttributePropertiesEditionPart_IdentifierLabel), SWT.CHECK);
		identifier.addSelectionListener(new SelectionAdapter() {

			/**
			 * {@inheritDoc
Composite createIdentifierCheckbox(FormToolkit widgetFactory, Composite parent)
SelectionEvent e
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/forms/AttributePropertiesEditionPartForm.java
if (propertiesEditionComponent != null)
					propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(AttributePropertiesEditionPartForm.this, EnvironmentViewsRepository.Attribute.Properties.identifier, PropertiesEditionEvent.COMMIT, PropertiesEditionEvent.SET, null, new Boolean(identifier.getSelection())));
void widgetSelected(SelectionEvent e)
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/forms/AttributePropertiesEditionPartForm.java
return Boolean.valueOf(identifier.getSelection());
Boolean getIdentifier()
Boolean newValue
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/forms/AttributePropertiesEditionPartForm.java
if (newValue != null) {
			identifier.setSelection(newValue.booleanValue());
void setIdentifier(Boolean newValue)
@@ -30,8 +30,11 @@
 import org.eclipse.swt.events.FocusEvent;
 import org.eclipse.swt.events.KeyAdapter;
 import org.eclipse.swt.events.KeyEvent;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
 import org.eclipse.swt.layout.GridData;
 import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Text;
 import org.eclipse.ui.forms.widgets.Form;
@@ -54,6 +57,7 @@ public class AttributePropertiesEditionPartForm extends SectionPropertiesEditing
 	protected Text name;
 	protected EMFComboViewer type;
 	protected EMFComboViewer multiplicity;
+	protected Button identifier;
 	protected Text description;
 
 
@@ -103,6 +107,7 @@ public void createControls(final FormToolkit widgetFactory, Composite view) {
 		propertiesStep.addStep(EnvironmentViewsRepository.Attribute.Properties.name);
 		propertiesStep.addStep(EnvironmentViewsRepository.Attribute.Properties.type);
 		propertiesStep.addStep(EnvironmentViewsRepository.Attribute.Properties.multiplicity);
+		propertiesStep.addStep(EnvironmentViewsRepository.Attribute.Properties.identifier);
 		propertiesStep.addStep(EnvironmentViewsRepository.Attribute.Properties.description);
 		
 		
@@ -122,6 +127,9 @@ public Composite addToPart(Composite parent, Object key) {
 				if (key == EnvironmentViewsRepository.Attribute.Properties.multiplicity) {
 					return createMultiplicityEMFComboViewer(widgetFactory, parent);
 				}
+				if (key == EnvironmentViewsRepository.Attribute.Properties.identifier) {
+					return createIdentifierCheckbox(widgetFactory, parent);
+				}
 				if (key == EnvironmentViewsRepository.Attribute.Properties.description) {
 					return createDescriptionText(widgetFactory, parent);
 				}
@@ -276,6 +284,35 @@ public void selectionChanged(SelectionChangedEvent event) {
 	}
 
 	
+	protected Composite createIdentifierCheckbox(FormToolkit widgetFactory, Composite parent) {
+		identifier = widgetFactory.createButton(parent, getDescription(EnvironmentViewsRepository.Attribute.Properties.identifier, EnvironmentMessages.AttributePropertiesEditionPart_IdentifierLabel), SWT.CHECK);
+		identifier.addSelectionListener(new SelectionAdapter() {
+
+			/**
+			 * {@inheritDoc}
+			 *
+			 * @see org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse.swt.events.SelectionEvent)
+			 * 	
+			 */
+			public void widgetSelected(SelectionEvent e) {
+				if (propertiesEditionComponent != null)
+					propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(AttributePropertiesEditionPartForm.this, EnvironmentViewsRepository.Attribute.Properties.identifier, PropertiesEditionEvent.COMMIT, PropertiesEditionEvent.SET, null, new Boolean(identifier.getSelection())));
+			}
+
+		});
+		GridData identifierData = new GridData(GridData.FILL_HORIZONTAL);
+		identifierData.horizontalSpan = 2;
+		identifier.setLayoutData(identifierData);
+		EditingUtils.setID(identifier, EnvironmentViewsRepository.Attribute.Properties.identifier);
+		EditingUtils.setEEFtype(identifier, "eef::Checkbox"); //$NON-NLS-1$
+		FormUtils.createHelpButton(widgetFactory, parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Attribute.Properties.identifier, EnvironmentViewsRepository.FORM_KIND), null); //$NON-NLS-1$
+		// Start of user code for createIdentifierCheckbox
+
+		// End of user code
+		return parent;
+	}
+
+	
 	protected Composite createDescriptionText(FormToolkit widgetFactory, Composite parent) {
 		createDescription(parent, EnvironmentViewsRepository.Attribute.Properties.description, EnvironmentMessages.AttributePropertiesEditionPart_DescriptionLabel);
 		description = widgetFactory.createText(parent, ""); //$NON-NLS-1$
@@ -492,6 +529,38 @@ public void setMultiplicity(Enumerator newValue) {
 		
 	}
 
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.obeonetwork.dsl.environment.parts.AttributePropertiesEditionPart#getIdentifier()
+	 * 
+	 */
+	public Boolean getIdentifier() {
+		return Boolean.valueOf(identifier.getSelection());
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.obeonetwork.dsl.environment.parts.AttributePropertiesEditionPart#setIdentifier(Boolean newValue)
+	 * 
+	 */
+	public void setIdentifier(Boolean newValue) {
+		if (newValue != null) {
+			identifier.setSelection(newValue.booleanValue());
+		} else {
+			identifier.setSelection(false);
+		}
+		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Attribute.Properties.identifier);
+		if (eefElementEditorReadOnlyState && identifier.isEnabled()) {
+			identifier.setEnabled(false);
+			identifier.setToolTipText(EnvironmentMessages.Attribute_ReadOnly);
+		} else if (!eefElementEditorReadOnlyState && !identifier.isEnabled()) {
+			identifier.setEnabled(true);
+		}	
+		
+	}
+
 	/**
 	 * {@inheritDoc}
 	 * 
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2Fforms%2FAttributePropertiesEditionPartForm.java
ad25def4b9c35ae1e2d644ef28ee60154cd18f76
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2Fforms%2FReferencePropertiesEditionPartForm.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2Fforms%2FReferencePropertiesEditionPartForm.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/forms/ReferencePropertiesEditionPartForm.java
	protected EObjectFlatComboViewer referencedType;
	protected Button identifier;
		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.referencedType);
		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.identifier);
				if (key == EnvironmentViewsRepository.Reference.Properties.referencedType) {
					return createReferencedTypeFlatComboViewer(parent, widgetFactory);
				if (key == EnvironmentViewsRepository.Reference.Properties.identifier) {
					return createIdentifierCheckbox(widgetFactory, parent);
				}
	protected Composite createReferencedTypeFlatComboViewer(Composite parent, FormToolkit widgetFactory) {
		createDescription(parent, EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentMessages.ReferencePropertiesEditionPart_ReferencedTypeLabel);
		referencedType = new EObjectFlatComboViewer(parent, !propertiesEditionComponent.isRequired(EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentViewsRepository.FORM_KIND));
		widgetFactory.adapt(referencedType);
		referencedType.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
		GridData referencedTypeData = new GridData(GridData.FILL_HORIZONTAL);
		referencedType.setLayoutData(referencedTypeData);
		referencedType.addSelectionChangedListener(new ISelectionChangedListener() {
					propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartForm.this, EnvironmentViewsRepository.Reference.Properties.referencedType, PropertiesEditionEvent.COMMIT, PropertiesEditionEvent.SET, null, getReferencedType()));
		referencedType.setID(EnvironmentViewsRepository.Reference.Properties.referencedType);
		FormUtils.createHelpButton(widgetFactory, parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentViewsRepository.FORM_KIND), null); //$NON-NLS-1$
		// Start of user code for createReferencedTypeFlatComboViewer
	protected Composite createIdentifierCheckbox(FormToolkit widgetFactory, Composite parent) {
		identifier = widgetFactory.createButton(parent, getDescription(EnvironmentViewsRepository.Reference.Properties.identifier, EnvironmentMessages.ReferencePropertiesEditionPart_IdentifierLabel), SWT.CHECK);
		identifier.addSelectionListener(new SelectionAdapter() {

			/**
			 * {@inheritDoc}
			 *
			 * @see org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse.swt.events.SelectionEvent)
			 * 	
			 */
			public void widgetSelected(SelectionEvent e) {
				if (propertiesEditionComponent != null)
					propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartForm.this, EnvironmentViewsRepository.Reference.Properties.identifier, PropertiesEditionEvent.COMMIT, PropertiesEditionEvent.SET, null, new Boolean(identifier.getSelection())));
			}

		});
		GridData identifierData = new GridData(GridData.FILL_HORIZONTAL);
		identifierData.horizontalSpan = 2;
		identifier.setLayoutData(identifierData);
		EditingUtils.setID(identifier, EnvironmentViewsRepository.Reference.Properties.identifier);
		EditingUtils.setEEFtype(identifier, "eef::Checkbox"); //$NON-NLS-1$
		FormUtils.createHelpButton(widgetFactory, parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.identifier, EnvironmentViewsRepository.FORM_KIND), null); //$NON-NLS-1$
		// Start of user code for createIdentifierCheckbox

		// End of user code
		return parent;
	}

	
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#getReferencedType()
	public EObject getReferencedType() {
		if (referencedType.getSelection() instanceof StructuredSelection) {
			Object firstElement = ((StructuredSelection) referencedType.getSelection()).getFirstElement();
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#initReferencedType(EObjectFlatComboSettings)
	public void initReferencedType(EObjectFlatComboSettings settings) {
		referencedType.setInput(settings);
			referencedType.setSelection(new StructuredSelection(settings.getValue()));
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.referencedType);
		if (eefElementEditorReadOnlyState && referencedType.isEnabled()) {
			referencedType.setEnabled(false);
			referencedType.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
		} else if (!eefElementEditorReadOnlyState && !referencedType.isEnabled()) {
			referencedType.setEnabled(true);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setReferencedType(EObject newValue)
	public void setReferencedType(EObject newValue) {
			referencedType.setSelection(new StructuredSelection(newValue));
			referencedType.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.referencedType);
		if (eefElementEditorReadOnlyState && referencedType.isEnabled()) {
			referencedType.setEnabled(false);
			referencedType.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
		} else if (!eefElementEditorReadOnlyState && !referencedType.isEnabled()) {
			referencedType.setEnabled(true);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setReferencedTypeButtonMode(ButtonsModeEnum newValue)
	public void setReferencedTypeButtonMode(ButtonsModeEnum newValue) {
		referencedType.setButtonMode(newValue);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addFilterReferencedType(ViewerFilter filter)
	public void addFilterToReferencedType(ViewerFilter filter) {
		referencedType.addFilter(filter);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addBusinessFilterReferencedType(ViewerFilter filter)
	public void addBusinessFilterToReferencedType(ViewerFilter filter) {
		referencedType.addBusinessRuleFilter(filter);
	/**
	 * {@inheritDoc}
	 * 
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#getIdentifier()
	 * 
	 */
	public Boolean getIdentifier() {
		return Boolean.valueOf(identifier.getSelection());
	}

	/**
	 * {@inheritDoc}
	 * 
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setIdentifier(Boolean newValue)
	 * 
	 */
	public void setIdentifier(Boolean newValue) {
		if (newValue != null) {
			identifier.setSelection(newValue.booleanValue());
		} else {
			identifier.setSelection(false);
		}
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.identifier);
		if (eefElementEditorReadOnlyState && identifier.isEnabled()) {
			identifier.setEnabled(false);
			identifier.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
		} else if (!eefElementEditorReadOnlyState && !identifier.isEnabled()) {
			identifier.setEnabled(true);
		}	
		
	}

Composite parent  FormToolkit widgetFactory
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/forms/ReferencePropertiesEditionPartForm.java
createDescription(parent, EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentMessages.ReferencePropertiesEditionPart_ReferencedTypeLabel);
		referencedType = new EObjectFlatComboViewer(parent, !propertiesEditionComponent.isRequired(EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentViewsRepository.FORM_KIND));
		widgetFactory.adapt(referencedType);
		referencedType.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
		GridData referencedTypeData = new GridData(GridData.FILL_HORIZONTAL);
		referencedType.setLayoutData(referencedTypeData);
		referencedType.addSelectionChangedListener(new ISelectionChangedListener() {
					propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartForm.this, EnvironmentViewsRepository.Reference.Properties.referencedType, PropertiesEditionEvent.COMMIT, PropertiesEditionEvent.SET, null, getReferencedType()));
		referencedType.setID(EnvironmentViewsRepository.Reference.Properties.referencedType);
		FormUtils.createHelpButton(widgetFactory, parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentViewsRepository.FORM_KIND), null); //$NON-NLS-1$
		// Start of user code for createReferencedTypeFlatComboViewer
	protected Composite createIdentifierCheckbox(FormToolkit widgetFactory, Composite parent) {
		identifier = widgetFactory.createButton(parent, getDescription(EnvironmentViewsRepository.Reference.Properties.identifier, EnvironmentMessages.ReferencePropertiesEditionPart_IdentifierLabel), SWT.CHECK);
		identifier.addSelectionListener(new SelectionAdapter() {

			/**
			 * {@inheritDoc
Composite createReferencedTypeFlatComboViewer(Composite parent, FormToolkit widgetFactory)
SelectionEvent e
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/forms/ReferencePropertiesEditionPartForm.java
if (propertiesEditionComponent != null)
					propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartForm.this, EnvironmentViewsRepository.Reference.Properties.identifier, PropertiesEditionEvent.COMMIT, PropertiesEditionEvent.SET, null, new Boolean(identifier.getSelection())));
void widgetSelected(SelectionEvent e)
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/forms/ReferencePropertiesEditionPartForm.java
if (referencedType.getSelection() instanceof StructuredSelection) {
			Object firstElement = ((StructuredSelection) referencedType.getSelection()).getFirstElement();
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#initReferencedType(EObjectFlatComboSettings)
	public void initReferencedType(EObjectFlatComboSettings settings) {
		referencedType.setInput(settings);
			referencedType.setSelection(new StructuredSelection(settings.getValue()));
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.referencedType);
		if (eefElementEditorReadOnlyState && referencedType.isEnabled()) {
			referencedType.setEnabled(false);
			referencedType.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
EObject getReferencedType()
EObject newValue
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/forms/ReferencePropertiesEditionPartForm.java
referencedType.setSelection(new StructuredSelection(newValue));
			referencedType.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.referencedType);
		if (eefElementEditorReadOnlyState && referencedType.isEnabled()) {
			referencedType.setEnabled(false);
			referencedType.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
void setReferencedType(EObject newValue)
ButtonsModeEnum newValue
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/forms/ReferencePropertiesEditionPartForm.java
referencedType.setButtonMode(newValue);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addFilterReferencedType(ViewerFilter filter)
	public void addFilterToReferencedType(ViewerFilter filter) {
		referencedType.addFilter(filter);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addBusinessFilterReferencedType(ViewerFilter filter)
	public void addBusinessFilterToReferencedType(ViewerFilter filter) {
		referencedType.addBusinessRuleFilter(filter);
	/**
	 * {@inheritDoc
void setReferencedTypeButtonMode(ButtonsModeEnum newValue)
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/forms/ReferencePropertiesEditionPartForm.java
return Boolean.valueOf(identifier.getSelection());
Boolean getIdentifier()
Boolean newValue
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/forms/ReferencePropertiesEditionPartForm.java
if (newValue != null) {
			identifier.setSelection(newValue.booleanValue());
void setIdentifier(Boolean newValue)
	protected EObjectFlatComboViewer type;
		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.type);
				if (key == EnvironmentViewsRepository.Reference.Properties.type) {
					return createTypeFlatComboViewer(parent, widgetFactory);
	protected Composite createTypeFlatComboViewer(Composite parent, FormToolkit widgetFactory) {
		createDescription(parent, EnvironmentViewsRepository.Reference.Properties.type, EnvironmentMessages.ReferencePropertiesEditionPart_TypeLabel);
		type = new EObjectFlatComboViewer(parent, !propertiesEditionComponent.isRequired(EnvironmentViewsRepository.Reference.Properties.type, EnvironmentViewsRepository.FORM_KIND));
		widgetFactory.adapt(type);
		type.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
		GridData typeData = new GridData(GridData.FILL_HORIZONTAL);
		type.setLayoutData(typeData);
		type.addSelectionChangedListener(new ISelectionChangedListener() {
					propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartForm.this, EnvironmentViewsRepository.Reference.Properties.type, PropertiesEditionEvent.COMMIT, PropertiesEditionEvent.SET, null, getType()));
		type.setID(EnvironmentViewsRepository.Reference.Properties.type);
		FormUtils.createHelpButton(widgetFactory, parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.type, EnvironmentViewsRepository.FORM_KIND), null); //$NON-NLS-1$
		// Start of user code for createTypeFlatComboViewer
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#getType()
	public EObject getType() {
		if (type.getSelection() instanceof StructuredSelection) {
			Object firstElement = ((StructuredSelection) type.getSelection()).getFirstElement();
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#initType(EObjectFlatComboSettings)
	public void initType(EObjectFlatComboSettings settings) {
		type.setInput(settings);
			type.setSelection(new StructuredSelection(settings.getValue()));
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
		if (eefElementEditorReadOnlyState && type.isEnabled()) {
			type.setEnabled(false);
			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
		} else if (!eefElementEditorReadOnlyState && !type.isEnabled()) {
			type.setEnabled(true);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setType(EObject newValue)
	public void setType(EObject newValue) {
			type.setSelection(new StructuredSelection(newValue));
			type.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
		if (eefElementEditorReadOnlyState && type.isEnabled()) {
			type.setEnabled(false);
			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
		} else if (!eefElementEditorReadOnlyState && !type.isEnabled()) {
			type.setEnabled(true);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setTypeButtonMode(ButtonsModeEnum newValue)
	public void setTypeButtonMode(ButtonsModeEnum newValue) {
		type.setButtonMode(newValue);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addFilterType(ViewerFilter filter)
	public void addFilterToType(ViewerFilter filter) {
		type.addFilter(filter);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addBusinessFilterType(ViewerFilter filter)
	public void addBusinessFilterToType(ViewerFilter filter) {
		type.addBusinessRuleFilter(filter);
Composite parent  FormToolkit widgetFactory
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/forms/ReferencePropertiesEditionPartForm.java
createDescription(parent, EnvironmentViewsRepository.Reference.Properties.type, EnvironmentMessages.ReferencePropertiesEditionPart_TypeLabel);
		type = new EObjectFlatComboViewer(parent, !propertiesEditionComponent.isRequired(EnvironmentViewsRepository.Reference.Properties.type, EnvironmentViewsRepository.FORM_KIND));
		widgetFactory.adapt(type);
		type.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
		GridData typeData = new GridData(GridData.FILL_HORIZONTAL);
		type.setLayoutData(typeData);
		type.addSelectionChangedListener(new ISelectionChangedListener() {
					propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartForm.this, EnvironmentViewsRepository.Reference.Properties.type, PropertiesEditionEvent.COMMIT, PropertiesEditionEvent.SET, null, getType()));
		type.setID(EnvironmentViewsRepository.Reference.Properties.type);
		FormUtils.createHelpButton(widgetFactory, parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.type, EnvironmentViewsRepository.FORM_KIND), null); //$NON-NLS-1$
		// Start of user code for createTypeFlatComboViewer
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#getType()
	public EObject getType() {
		if (type.getSelection() instanceof StructuredSelection) {
			Object firstElement = ((StructuredSelection) type.getSelection()).getFirstElement();
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#initType(EObjectFlatComboSettings)
	public void initType(EObjectFlatComboSettings settings) {
		type.setInput(settings);
			type.setSelection(new StructuredSelection(settings.getValue()));
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
		if (eefElementEditorReadOnlyState && type.isEnabled()) {
			type.setEnabled(false);
			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
Composite createTypeFlatComboViewer(Composite parent, FormToolkit widgetFactory)
EObject newValue
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/forms/ReferencePropertiesEditionPartForm.java
type.setSelection(new StructuredSelection(newValue));
			type.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
		if (eefElementEditorReadOnlyState && type.isEnabled()) {
			type.setEnabled(false);
			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
void setType(EObject newValue)
@@ -58,11 +58,12 @@
 public class ReferencePropertiesEditionPartForm extends SectionPropertiesEditingPart implements IFormPropertiesEditionPart, ReferencePropertiesEditionPart {
 
 	protected Text name;
-	protected EObjectFlatComboViewer type;
+	protected EObjectFlatComboViewer referencedType;
 	protected EMFComboViewer multiplicity;
 	protected Button isComposite;
 	protected Button navigable;
 	protected EObjectFlatComboViewer oppositeOf;
+	protected Button identifier;
 	protected Text description;
 
 
@@ -110,11 +111,12 @@ public void createControls(final FormToolkit widgetFactory, Composite view) {
 		CompositionSequence referenceStep = new BindingCompositionSequence(propertiesEditionComponent);
 		CompositionStep propertiesStep = referenceStep.addStep(EnvironmentViewsRepository.Reference.Properties.class);
 		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.name);
-		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.type);
+		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.referencedType);
 		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.multiplicity);
 		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.isComposite);
 		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.navigable);
 		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.oppositeOf);
+		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.identifier);
 		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.description);
 		
 		
@@ -128,8 +130,8 @@ public Composite addToPart(Composite parent, Object key) {
 				if (key == EnvironmentViewsRepository.Reference.Properties.name) {
 					return createNameText(widgetFactory, parent);
 				}
-				if (key == EnvironmentViewsRepository.Reference.Properties.type) {
-					return createTypeFlatComboViewer(parent, widgetFactory);
+				if (key == EnvironmentViewsRepository.Reference.Properties.referencedType) {
+					return createReferencedTypeFlatComboViewer(parent, widgetFactory);
 				}
 				if (key == EnvironmentViewsRepository.Reference.Properties.multiplicity) {
 					return createMultiplicityEMFComboViewer(widgetFactory, parent);
@@ -143,6 +145,9 @@ public Composite addToPart(Composite parent, Object key) {
 				if (key == EnvironmentViewsRepository.Reference.Properties.oppositeOf) {
 					return createOppositeOfFlatComboViewer(parent, widgetFactory);
 				}
+				if (key == EnvironmentViewsRepository.Reference.Properties.identifier) {
+					return createIdentifierCheckbox(widgetFactory, parent);
+				}
 				if (key == EnvironmentViewsRepository.Reference.Properties.description) {
 					return createDescriptionText(widgetFactory, parent);
 				}
@@ -241,14 +246,14 @@ public void keyPressed(KeyEvent e) {
 	 * @param widgetFactory factory to use to instanciante widget of the form
 	 * 
 	 */
-	protected Composite createTypeFlatComboViewer(Composite parent, FormToolkit widgetFactory) {
-		createDescription(parent, EnvironmentViewsRepository.Reference.Properties.type, EnvironmentMessages.ReferencePropertiesEditionPart_TypeLabel);
-		type = new EObjectFlatComboViewer(parent, !propertiesEditionComponent.isRequired(EnvironmentViewsRepository.Reference.Properties.type, EnvironmentViewsRepository.FORM_KIND));
-		widgetFactory.adapt(type);
-		type.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
-		GridData typeData = new GridData(GridData.FILL_HORIZONTAL);
-		type.setLayoutData(typeData);
-		type.addSelectionChangedListener(new ISelectionChangedListener() {
+	protected Composite createReferencedTypeFlatComboViewer(Composite parent, FormToolkit widgetFactory) {
+		createDescription(parent, EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentMessages.ReferencePropertiesEditionPart_ReferencedTypeLabel);
+		referencedType = new EObjectFlatComboViewer(parent, !propertiesEditionComponent.isRequired(EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentViewsRepository.FORM_KIND));
+		widgetFactory.adapt(referencedType);
+		referencedType.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
+		GridData referencedTypeData = new GridData(GridData.FILL_HORIZONTAL);
+		referencedType.setLayoutData(referencedTypeData);
+		referencedType.addSelectionChangedListener(new ISelectionChangedListener() {
 
 			/**
 			 * {@inheritDoc}
@@ -257,13 +262,13 @@ protected Composite createTypeFlatComboViewer(Composite parent, FormToolkit widg
 			 */
 			public void selectionChanged(SelectionChangedEvent event) {
 				if (propertiesEditionComponent != null)
-					propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartForm.this, EnvironmentViewsRepository.Reference.Properties.type, PropertiesEditionEvent.COMMIT, PropertiesEditionEvent.SET, null, getType()));
+					propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartForm.this, EnvironmentViewsRepository.Reference.Properties.referencedType, PropertiesEditionEvent.COMMIT, PropertiesEditionEvent.SET, null, getReferencedType()));
 			}
 
 		});
-		type.setID(EnvironmentViewsRepository.Reference.Properties.type);
-		FormUtils.createHelpButton(widgetFactory, parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.type, EnvironmentViewsRepository.FORM_KIND), null); //$NON-NLS-1$
-		// Start of user code for createTypeFlatComboViewer
+		referencedType.setID(EnvironmentViewsRepository.Reference.Properties.referencedType);
+		FormUtils.createHelpButton(widgetFactory, parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentViewsRepository.FORM_KIND), null); //$NON-NLS-1$
+		// Start of user code for createReferencedTypeFlatComboViewer
 
 		// End of user code
 		return parent;
@@ -391,6 +396,35 @@ public void selectionChanged(SelectionChangedEvent event) {
 	}
 
 	
+	protected Composite createIdentifierCheckbox(FormToolkit widgetFactory, Composite parent) {
+		identifier = widgetFactory.createButton(parent, getDescription(EnvironmentViewsRepository.Reference.Properties.identifier, EnvironmentMessages.ReferencePropertiesEditionPart_IdentifierLabel), SWT.CHECK);
+		identifier.addSelectionListener(new SelectionAdapter() {
+
+			/**
+			 * {@inheritDoc}
+			 *
+			 * @see org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse.swt.events.SelectionEvent)
+			 * 	
+			 */
+			public void widgetSelected(SelectionEvent e) {
+				if (propertiesEditionComponent != null)
+					propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartForm.this, EnvironmentViewsRepository.Reference.Properties.identifier, PropertiesEditionEvent.COMMIT, PropertiesEditionEvent.SET, null, new Boolean(identifier.getSelection())));
+			}
+
+		});
+		GridData identifierData = new GridData(GridData.FILL_HORIZONTAL);
+		identifierData.horizontalSpan = 2;
+		identifier.setLayoutData(identifierData);
+		EditingUtils.setID(identifier, EnvironmentViewsRepository.Reference.Properties.identifier);
+		EditingUtils.setEEFtype(identifier, "eef::Checkbox"); //$NON-NLS-1$
+		FormUtils.createHelpButton(widgetFactory, parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.identifier, EnvironmentViewsRepository.FORM_KIND), null); //$NON-NLS-1$
+		// Start of user code for createIdentifierCheckbox
+
+		// End of user code
+		return parent;
+	}
+
+	
 	protected Composite createDescriptionText(FormToolkit widgetFactory, Composite parent) {
 		createDescription(parent, EnvironmentViewsRepository.Reference.Properties.description, EnvironmentMessages.ReferencePropertiesEditionPart_DescriptionLabel);
 		description = widgetFactory.createText(parent, ""); //$NON-NLS-1$
@@ -506,12 +540,12 @@ public void setName(String newValue) {
 	/**
 	 * {@inheritDoc}
 	 * 
-	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#getType()
+	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#getReferencedType()
 	 * 
 	 */
-	public EObject getType() {
-		if (type.getSelection() instanceof StructuredSelection) {
-			Object firstElement = ((StructuredSelection) type.getSelection()).getFirstElement();
+	public EObject getReferencedType() {
+		if (referencedType.getSelection() instanceof StructuredSelection) {
+			Object firstElement = ((StructuredSelection) referencedType.getSelection()).getFirstElement();
 			if (firstElement instanceof EObject)
 				return (EObject) firstElement;
 		}
@@ -521,72 +555,72 @@ public EObject getType() {
 	/**
 	 * {@inheritDoc}
 	 * 
-	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#initType(EObjectFlatComboSettings)
+	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#initReferencedType(EObjectFlatComboSettings)
 	 */
-	public void initType(EObjectFlatComboSettings settings) {
-		type.setInput(settings);
+	public void initReferencedType(EObjectFlatComboSettings settings) {
+		referencedType.setInput(settings);
 		if (current != null) {
-			type.setSelection(new StructuredSelection(settings.getValue()));
+			referencedType.setSelection(new StructuredSelection(settings.getValue()));
 		}
-		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
-		if (eefElementEditorReadOnlyState && type.isEnabled()) {
-			type.setEnabled(false);
-			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
-		} else if (!eefElementEditorReadOnlyState && !type.isEnabled()) {
-			type.setEnabled(true);
+		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.referencedType);
+		if (eefElementEditorReadOnlyState && referencedType.isEnabled()) {
+			referencedType.setEnabled(false);
+			referencedType.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
+		} else if (!eefElementEditorReadOnlyState && !referencedType.isEnabled()) {
+			referencedType.setEnabled(true);
 		}	
 		
 	}
 
 	/**
 	 * {@inheritDoc}
 	 * 
-	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setType(EObject newValue)
+	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setReferencedType(EObject newValue)
 	 * 
 	 */
-	public void setType(EObject newValue) {
+	public void setReferencedType(EObject newValue) {
 		if (newValue != null) {
-			type.setSelection(new StructuredSelection(newValue));
+			referencedType.setSelection(new StructuredSelection(newValue));
 		} else {
-			type.setSelection(new StructuredSelection()); //$NON-NLS-1$
+			referencedType.setSelection(new StructuredSelection()); //$NON-NLS-1$
 		}
-		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
-		if (eefElementEditorReadOnlyState && type.isEnabled()) {
-			type.setEnabled(false);
-			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
-		} else if (!eefElementEditorReadOnlyState && !type.isEnabled()) {
-			type.setEnabled(true);
+		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.referencedType);
+		if (eefElementEditorReadOnlyState && referencedType.isEnabled()) {
+			referencedType.setEnabled(false);
+			referencedType.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
+		} else if (!eefElementEditorReadOnlyState && !referencedType.isEnabled()) {
+			referencedType.setEnabled(true);
 		}	
 		
 	}
 
 	/**
 	 * {@inheritDoc}
 	 * 
-	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setTypeButtonMode(ButtonsModeEnum newValue)
+	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setReferencedTypeButtonMode(ButtonsModeEnum newValue)
 	 */
-	public void setTypeButtonMode(ButtonsModeEnum newValue) {
-		type.setButtonMode(newValue);
+	public void setReferencedTypeButtonMode(ButtonsModeEnum newValue) {
+		referencedType.setButtonMode(newValue);
 	}
 
 	/**
 	 * {@inheritDoc}
 	 * 
-	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addFilterType(ViewerFilter filter)
+	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addFilterReferencedType(ViewerFilter filter)
 	 * 
 	 */
-	public void addFilterToType(ViewerFilter filter) {
-		type.addFilter(filter);
+	public void addFilterToReferencedType(ViewerFilter filter) {
+		referencedType.addFilter(filter);
 	}
 
 	/**
 	 * {@inheritDoc}
 	 * 
-	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addBusinessFilterType(ViewerFilter filter)
+	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addBusinessFilterReferencedType(ViewerFilter filter)
 	 * 
 	 */
-	public void addBusinessFilterToType(ViewerFilter filter) {
-		type.addBusinessRuleFilter(filter);
+	public void addBusinessFilterToReferencedType(ViewerFilter filter) {
+		referencedType.addBusinessRuleFilter(filter);
 	}
 
 	/**
@@ -786,6 +820,38 @@ public void addBusinessFilterToOppositeOf(ViewerFilter filter) {
 		oppositeOf.addBusinessRuleFilter(filter);
 	}
 
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#getIdentifier()
+	 * 
+	 */
+	public Boolean getIdentifier() {
+		return Boolean.valueOf(identifier.getSelection());
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setIdentifier(Boolean newValue)
+	 * 
+	 */
+	public void setIdentifier(Boolean newValue) {
+		if (newValue != null) {
+			identifier.setSelection(newValue.booleanValue());
+		} else {
+			identifier.setSelection(false);
+		}
+		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.identifier);
+		if (eefElementEditorReadOnlyState && identifier.isEnabled()) {
+			identifier.setEnabled(false);
+			identifier.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
+		} else if (!eefElementEditorReadOnlyState && !identifier.isEnabled()) {
+			identifier.setEnabled(true);
+		}	
+		
+	}
+
 	/**
 	 * {@inheritDoc}
 	 * 
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2Fforms%2FReferencePropertiesEditionPartForm.java
b81ab56104019d04b38b803f90c177e566c1353c
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2Fimpl%2FAttributePropertiesEditionPartImpl.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2Fimpl%2FAttributePropertiesEditionPartImpl.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/impl/AttributePropertiesEditionPartImpl.java
import org.eclipse.swt.events.SelectionAdapter;
import org.eclipse.swt.events.SelectionEvent;
import org.eclipse.swt.widgets.Button;
	protected Button identifier;
		propertiesStep.addStep(EnvironmentViewsRepository.Attribute.Properties.identifier);
				if (key == EnvironmentViewsRepository.Attribute.Properties.identifier) {
					return createIdentifierCheckbox(parent);
				}
	protected Composite createIdentifierCheckbox(Composite parent) {
		identifier = new Button(parent, SWT.CHECK);
		identifier.setText(getDescription(EnvironmentViewsRepository.Attribute.Properties.identifier, EnvironmentMessages.AttributePropertiesEditionPart_IdentifierLabel));
		identifier.addSelectionListener(new SelectionAdapter() {

			/**
			 * {@inheritDoc}
			 *
			 * @see org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse.swt.events.SelectionEvent)
			 * 	
			 */
			public void widgetSelected(SelectionEvent e) {
				if (propertiesEditionComponent != null)
					propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(AttributePropertiesEditionPartImpl.this, EnvironmentViewsRepository.Attribute.Properties.identifier, PropertiesEditionEvent.COMMIT, PropertiesEditionEvent.SET, null, new Boolean(identifier.getSelection())));
			}

		});
		GridData identifierData = new GridData(GridData.FILL_HORIZONTAL);
		identifierData.horizontalSpan = 2;
		identifier.setLayoutData(identifierData);
		EditingUtils.setID(identifier, EnvironmentViewsRepository.Attribute.Properties.identifier);
		EditingUtils.setEEFtype(identifier, "eef::Checkbox"); //$NON-NLS-1$
		SWTUtils.createHelpButton(parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Attribute.Properties.identifier, EnvironmentViewsRepository.SWT_KIND), null); //$NON-NLS-1$
		// Start of user code for createIdentifierCheckbox

		// End of user code
		return parent;
	}

	
	/**
	 * {@inheritDoc}
	 * 
	 * @see org.obeonetwork.dsl.environment.parts.AttributePropertiesEditionPart#getIdentifier()
	 * 
	 */
	public Boolean getIdentifier() {
		return Boolean.valueOf(identifier.getSelection());
	}

	/**
	 * {@inheritDoc}
	 * 
	 * @see org.obeonetwork.dsl.environment.parts.AttributePropertiesEditionPart#setIdentifier(Boolean newValue)
	 * 
	 */
	public void setIdentifier(Boolean newValue) {
		if (newValue != null) {
			identifier.setSelection(newValue.booleanValue());
		} else {
			identifier.setSelection(false);
		}
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Attribute.Properties.identifier);
		if (eefElementEditorReadOnlyState && identifier.isEnabled()) {
			identifier.setEnabled(false);
			identifier.setToolTipText(EnvironmentMessages.Attribute_ReadOnly);
		} else if (!eefElementEditorReadOnlyState && !identifier.isEnabled()) {
			identifier.setEnabled(true);
		}	
		
	}

Composite parent
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/impl/AttributePropertiesEditionPartImpl.java
identifier = new Button(parent, SWT.CHECK);
		identifier.setText(getDescription(EnvironmentViewsRepository.Attribute.Properties.identifier, EnvironmentMessages.AttributePropertiesEditionPart_IdentifierLabel));
		identifier.addSelectionListener(new SelectionAdapter() {

			/**
			 * {@inheritDoc
Composite createIdentifierCheckbox(Composite parent)
SelectionEvent e
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/impl/AttributePropertiesEditionPartImpl.java
if (propertiesEditionComponent != null)
					propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(AttributePropertiesEditionPartImpl.this, EnvironmentViewsRepository.Attribute.Properties.identifier, PropertiesEditionEvent.COMMIT, PropertiesEditionEvent.SET, null, new Boolean(identifier.getSelection())));
void widgetSelected(SelectionEvent e)
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/impl/AttributePropertiesEditionPartImpl.java
return Boolean.valueOf(identifier.getSelection());
Boolean getIdentifier()
Boolean newValue
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/impl/AttributePropertiesEditionPartImpl.java
if (newValue != null) {
			identifier.setSelection(newValue.booleanValue());
void setIdentifier(Boolean newValue)
@@ -30,8 +30,11 @@
 import org.eclipse.swt.events.FocusEvent;
 import org.eclipse.swt.events.KeyAdapter;
 import org.eclipse.swt.events.KeyEvent;
+import org.eclipse.swt.events.SelectionAdapter;
+import org.eclipse.swt.events.SelectionEvent;
 import org.eclipse.swt.layout.GridData;
 import org.eclipse.swt.layout.GridLayout;
+import org.eclipse.swt.widgets.Button;
 import org.eclipse.swt.widgets.Composite;
 import org.eclipse.swt.widgets.Group;
 import org.eclipse.swt.widgets.Text;
@@ -50,6 +53,7 @@ public class AttributePropertiesEditionPartImpl extends CompositePropertiesEditi
 	protected Text name;
 	protected EMFComboViewer type;
 	protected EMFComboViewer multiplicity;
+	protected Button identifier;
 	protected Text description;
 
 
@@ -92,6 +96,7 @@ public void createControls(Composite view) {
 		propertiesStep.addStep(EnvironmentViewsRepository.Attribute.Properties.name);
 		propertiesStep.addStep(EnvironmentViewsRepository.Attribute.Properties.type);
 		propertiesStep.addStep(EnvironmentViewsRepository.Attribute.Properties.multiplicity);
+		propertiesStep.addStep(EnvironmentViewsRepository.Attribute.Properties.identifier);
 		propertiesStep.addStep(EnvironmentViewsRepository.Attribute.Properties.description);
 		
 		
@@ -111,6 +116,9 @@ public Composite addToPart(Composite parent, Object key) {
 				if (key == EnvironmentViewsRepository.Attribute.Properties.multiplicity) {
 					return createMultiplicityEMFComboViewer(parent);
 				}
+				if (key == EnvironmentViewsRepository.Attribute.Properties.identifier) {
+					return createIdentifierCheckbox(parent);
+				}
 				if (key == EnvironmentViewsRepository.Attribute.Properties.description) {
 					return createDescriptionText(parent);
 				}
@@ -245,6 +253,36 @@ public void selectionChanged(SelectionChangedEvent event) {
 	}
 
 	
+	protected Composite createIdentifierCheckbox(Composite parent) {
+		identifier = new Button(parent, SWT.CHECK);
+		identifier.setText(getDescription(EnvironmentViewsRepository.Attribute.Properties.identifier, EnvironmentMessages.AttributePropertiesEditionPart_IdentifierLabel));
+		identifier.addSelectionListener(new SelectionAdapter() {
+
+			/**
+			 * {@inheritDoc}
+			 *
+			 * @see org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse.swt.events.SelectionEvent)
+			 * 	
+			 */
+			public void widgetSelected(SelectionEvent e) {
+				if (propertiesEditionComponent != null)
+					propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(AttributePropertiesEditionPartImpl.this, EnvironmentViewsRepository.Attribute.Properties.identifier, PropertiesEditionEvent.COMMIT, PropertiesEditionEvent.SET, null, new Boolean(identifier.getSelection())));
+			}
+
+		});
+		GridData identifierData = new GridData(GridData.FILL_HORIZONTAL);
+		identifierData.horizontalSpan = 2;
+		identifier.setLayoutData(identifierData);
+		EditingUtils.setID(identifier, EnvironmentViewsRepository.Attribute.Properties.identifier);
+		EditingUtils.setEEFtype(identifier, "eef::Checkbox"); //$NON-NLS-1$
+		SWTUtils.createHelpButton(parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Attribute.Properties.identifier, EnvironmentViewsRepository.SWT_KIND), null); //$NON-NLS-1$
+		// Start of user code for createIdentifierCheckbox
+
+		// End of user code
+		return parent;
+	}
+
+	
 	protected Composite createDescriptionText(Composite parent) {
 		createDescription(parent, EnvironmentViewsRepository.Attribute.Properties.description, EnvironmentMessages.AttributePropertiesEditionPart_DescriptionLabel);
 		description = SWTUtils.createScrollableText(parent, SWT.BORDER);
@@ -442,6 +480,38 @@ public void setMultiplicity(Enumerator newValue) {
 		
 	}
 
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.obeonetwork.dsl.environment.parts.AttributePropertiesEditionPart#getIdentifier()
+	 * 
+	 */
+	public Boolean getIdentifier() {
+		return Boolean.valueOf(identifier.getSelection());
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.obeonetwork.dsl.environment.parts.AttributePropertiesEditionPart#setIdentifier(Boolean newValue)
+	 * 
+	 */
+	public void setIdentifier(Boolean newValue) {
+		if (newValue != null) {
+			identifier.setSelection(newValue.booleanValue());
+		} else {
+			identifier.setSelection(false);
+		}
+		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Attribute.Properties.identifier);
+		if (eefElementEditorReadOnlyState && identifier.isEnabled()) {
+			identifier.setEnabled(false);
+			identifier.setToolTipText(EnvironmentMessages.Attribute_ReadOnly);
+		} else if (!eefElementEditorReadOnlyState && !identifier.isEnabled()) {
+			identifier.setEnabled(true);
+		}	
+		
+	}
+
 	/**
 	 * {@inheritDoc}
 	 * 
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2Fimpl%2FAttributePropertiesEditionPartImpl.java
cffb3305e5a9feaf7ff17b8b9d2cfc3f39775525
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2Fimpl%2FReferencePropertiesEditionPartImpl.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2Fimpl%2FReferencePropertiesEditionPartImpl.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/impl/ReferencePropertiesEditionPartImpl.java
	protected EObjectFlatComboViewer referencedType;
	protected Button identifier;
		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.referencedType);
		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.identifier);
				if (key == EnvironmentViewsRepository.Reference.Properties.referencedType) {
					return createReferencedTypeFlatComboViewer(parent);
				if (key == EnvironmentViewsRepository.Reference.Properties.identifier) {
					return createIdentifierCheckbox(parent);
				}
	protected Composite createReferencedTypeFlatComboViewer(Composite parent) {
		createDescription(parent, EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentMessages.ReferencePropertiesEditionPart_ReferencedTypeLabel);
		referencedType = new EObjectFlatComboViewer(parent, !propertiesEditionComponent.isRequired(EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentViewsRepository.SWT_KIND));
		referencedType.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
		referencedType.addSelectionChangedListener(new ISelectionChangedListener() {
				propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartImpl.this, EnvironmentViewsRepository.Reference.Properties.referencedType, PropertiesEditionEvent.CHANGE, PropertiesEditionEvent.SET, null, getReferencedType()));
		GridData referencedTypeData = new GridData(GridData.FILL_HORIZONTAL);
		referencedType.setLayoutData(referencedTypeData);
		referencedType.setID(EnvironmentViewsRepository.Reference.Properties.referencedType);
		SWTUtils.createHelpButton(parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentViewsRepository.SWT_KIND), null); //$NON-NLS-1$
		// Start of user code for createReferencedTypeFlatComboViewer
	protected Composite createIdentifierCheckbox(Composite parent) {
		identifier = new Button(parent, SWT.CHECK);
		identifier.setText(getDescription(EnvironmentViewsRepository.Reference.Properties.identifier, EnvironmentMessages.ReferencePropertiesEditionPart_IdentifierLabel));
		identifier.addSelectionListener(new SelectionAdapter() {

			/**
			 * {@inheritDoc}
			 *
			 * @see org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse.swt.events.SelectionEvent)
			 * 	
			 */
			public void widgetSelected(SelectionEvent e) {
				if (propertiesEditionComponent != null)
					propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartImpl.this, EnvironmentViewsRepository.Reference.Properties.identifier, PropertiesEditionEvent.COMMIT, PropertiesEditionEvent.SET, null, new Boolean(identifier.getSelection())));
			}

		});
		GridData identifierData = new GridData(GridData.FILL_HORIZONTAL);
		identifierData.horizontalSpan = 2;
		identifier.setLayoutData(identifierData);
		EditingUtils.setID(identifier, EnvironmentViewsRepository.Reference.Properties.identifier);
		EditingUtils.setEEFtype(identifier, "eef::Checkbox"); //$NON-NLS-1$
		SWTUtils.createHelpButton(parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.identifier, EnvironmentViewsRepository.SWT_KIND), null); //$NON-NLS-1$
		// Start of user code for createIdentifierCheckbox

		// End of user code
		return parent;
	}

	
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#getReferencedType()
	public EObject getReferencedType() {
		if (referencedType.getSelection() instanceof StructuredSelection) {
			Object firstElement = ((StructuredSelection) referencedType.getSelection()).getFirstElement();
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#initReferencedType(EObjectFlatComboSettings)
	public void initReferencedType(EObjectFlatComboSettings settings) {
		referencedType.setInput(settings);
			referencedType.setSelection(new StructuredSelection(settings.getValue()));
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.referencedType);
		if (eefElementEditorReadOnlyState && referencedType.isEnabled()) {
			referencedType.setEnabled(false);
			referencedType.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
		} else if (!eefElementEditorReadOnlyState && !referencedType.isEnabled()) {
			referencedType.setEnabled(true);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setReferencedType(EObject newValue)
	public void setReferencedType(EObject newValue) {
			referencedType.setSelection(new StructuredSelection(newValue));
			referencedType.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.referencedType);
		if (eefElementEditorReadOnlyState && referencedType.isEnabled()) {
			referencedType.setEnabled(false);
			referencedType.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
		} else if (!eefElementEditorReadOnlyState && !referencedType.isEnabled()) {
			referencedType.setEnabled(true);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setReferencedTypeButtonMode(ButtonsModeEnum newValue)
	public void setReferencedTypeButtonMode(ButtonsModeEnum newValue) {
		referencedType.setButtonMode(newValue);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addFilterReferencedType(ViewerFilter filter)
	public void addFilterToReferencedType(ViewerFilter filter) {
		referencedType.addFilter(filter);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addBusinessFilterReferencedType(ViewerFilter filter)
	public void addBusinessFilterToReferencedType(ViewerFilter filter) {
		referencedType.addBusinessRuleFilter(filter);
	/**
	 * {@inheritDoc}
	 * 
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#getIdentifier()
	 * 
	 */
	public Boolean getIdentifier() {
		return Boolean.valueOf(identifier.getSelection());
	}

	/**
	 * {@inheritDoc}
	 * 
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setIdentifier(Boolean newValue)
	 * 
	 */
	public void setIdentifier(Boolean newValue) {
		if (newValue != null) {
			identifier.setSelection(newValue.booleanValue());
		} else {
			identifier.setSelection(false);
		}
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.identifier);
		if (eefElementEditorReadOnlyState && identifier.isEnabled()) {
			identifier.setEnabled(false);
			identifier.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
		} else if (!eefElementEditorReadOnlyState && !identifier.isEnabled()) {
			identifier.setEnabled(true);
		}	
		
	}

Composite parent
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/impl/ReferencePropertiesEditionPartImpl.java
createDescription(parent, EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentMessages.ReferencePropertiesEditionPart_ReferencedTypeLabel);
		referencedType = new EObjectFlatComboViewer(parent, !propertiesEditionComponent.isRequired(EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentViewsRepository.SWT_KIND));
		referencedType.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
		referencedType.addSelectionChangedListener(new ISelectionChangedListener() {
				propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartImpl.this, EnvironmentViewsRepository.Reference.Properties.referencedType, PropertiesEditionEvent.CHANGE, PropertiesEditionEvent.SET, null, getReferencedType()));
		GridData referencedTypeData = new GridData(GridData.FILL_HORIZONTAL);
		referencedType.setLayoutData(referencedTypeData);
		referencedType.setID(EnvironmentViewsRepository.Reference.Properties.referencedType);
		SWTUtils.createHelpButton(parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentViewsRepository.SWT_KIND), null); //$NON-NLS-1$
		// Start of user code for createReferencedTypeFlatComboViewer
	protected Composite createIdentifierCheckbox(Composite parent) {
		identifier = new Button(parent, SWT.CHECK);
		identifier.setText(getDescription(EnvironmentViewsRepository.Reference.Properties.identifier, EnvironmentMessages.ReferencePropertiesEditionPart_IdentifierLabel));
		identifier.addSelectionListener(new SelectionAdapter() {

			/**
			 * {@inheritDoc
Composite createReferencedTypeFlatComboViewer(Composite parent)
SelectionEvent e
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/impl/ReferencePropertiesEditionPartImpl.java
if (propertiesEditionComponent != null)
					propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartImpl.this, EnvironmentViewsRepository.Reference.Properties.identifier, PropertiesEditionEvent.COMMIT, PropertiesEditionEvent.SET, null, new Boolean(identifier.getSelection())));
void widgetSelected(SelectionEvent e)
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/impl/ReferencePropertiesEditionPartImpl.java
if (referencedType.getSelection() instanceof StructuredSelection) {
			Object firstElement = ((StructuredSelection) referencedType.getSelection()).getFirstElement();
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#initReferencedType(EObjectFlatComboSettings)
	public void initReferencedType(EObjectFlatComboSettings settings) {
		referencedType.setInput(settings);
			referencedType.setSelection(new StructuredSelection(settings.getValue()));
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.referencedType);
		if (eefElementEditorReadOnlyState && referencedType.isEnabled()) {
			referencedType.setEnabled(false);
			referencedType.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
EObject getReferencedType()
EObject newValue
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/impl/ReferencePropertiesEditionPartImpl.java
referencedType.setSelection(new StructuredSelection(newValue));
			referencedType.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.referencedType);
		if (eefElementEditorReadOnlyState && referencedType.isEnabled()) {
			referencedType.setEnabled(false);
			referencedType.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
void setReferencedType(EObject newValue)
ButtonsModeEnum newValue
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/impl/ReferencePropertiesEditionPartImpl.java
referencedType.setButtonMode(newValue);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addFilterReferencedType(ViewerFilter filter)
	public void addFilterToReferencedType(ViewerFilter filter) {
		referencedType.addFilter(filter);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addBusinessFilterReferencedType(ViewerFilter filter)
	public void addBusinessFilterToReferencedType(ViewerFilter filter) {
		referencedType.addBusinessRuleFilter(filter);
	/**
	 * {@inheritDoc
void setReferencedTypeButtonMode(ButtonsModeEnum newValue)
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/impl/ReferencePropertiesEditionPartImpl.java
return Boolean.valueOf(identifier.getSelection());
Boolean getIdentifier()
Boolean newValue
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/impl/ReferencePropertiesEditionPartImpl.java
if (newValue != null) {
			identifier.setSelection(newValue.booleanValue());
void setIdentifier(Boolean newValue)
	protected EObjectFlatComboViewer type;
		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.type);
				if (key == EnvironmentViewsRepository.Reference.Properties.type) {
					return createTypeFlatComboViewer(parent);
	protected Composite createTypeFlatComboViewer(Composite parent) {
		createDescription(parent, EnvironmentViewsRepository.Reference.Properties.type, EnvironmentMessages.ReferencePropertiesEditionPart_TypeLabel);
		type = new EObjectFlatComboViewer(parent, !propertiesEditionComponent.isRequired(EnvironmentViewsRepository.Reference.Properties.type, EnvironmentViewsRepository.SWT_KIND));
		type.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
		type.addSelectionChangedListener(new ISelectionChangedListener() {
				propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartImpl.this, EnvironmentViewsRepository.Reference.Properties.type, PropertiesEditionEvent.CHANGE, PropertiesEditionEvent.SET, null, getType()));
		GridData typeData = new GridData(GridData.FILL_HORIZONTAL);
		type.setLayoutData(typeData);
		type.setID(EnvironmentViewsRepository.Reference.Properties.type);
		SWTUtils.createHelpButton(parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.type, EnvironmentViewsRepository.SWT_KIND), null); //$NON-NLS-1$
		// Start of user code for createTypeFlatComboViewer
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#getType()
	public EObject getType() {
		if (type.getSelection() instanceof StructuredSelection) {
			Object firstElement = ((StructuredSelection) type.getSelection()).getFirstElement();
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#initType(EObjectFlatComboSettings)
	public void initType(EObjectFlatComboSettings settings) {
		type.setInput(settings);
			type.setSelection(new StructuredSelection(settings.getValue()));
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
		if (eefElementEditorReadOnlyState && type.isEnabled()) {
			type.setEnabled(false);
			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
		} else if (!eefElementEditorReadOnlyState && !type.isEnabled()) {
			type.setEnabled(true);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setType(EObject newValue)
	public void setType(EObject newValue) {
			type.setSelection(new StructuredSelection(newValue));
			type.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
		if (eefElementEditorReadOnlyState && type.isEnabled()) {
			type.setEnabled(false);
			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
		} else if (!eefElementEditorReadOnlyState && !type.isEnabled()) {
			type.setEnabled(true);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setTypeButtonMode(ButtonsModeEnum newValue)
	public void setTypeButtonMode(ButtonsModeEnum newValue) {
		type.setButtonMode(newValue);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addFilterType(ViewerFilter filter)
	public void addFilterToType(ViewerFilter filter) {
		type.addFilter(filter);
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addBusinessFilterType(ViewerFilter filter)
	public void addBusinessFilterToType(ViewerFilter filter) {
		type.addBusinessRuleFilter(filter);
Composite parent
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/impl/ReferencePropertiesEditionPartImpl.java
createDescription(parent, EnvironmentViewsRepository.Reference.Properties.type, EnvironmentMessages.ReferencePropertiesEditionPart_TypeLabel);
		type = new EObjectFlatComboViewer(parent, !propertiesEditionComponent.isRequired(EnvironmentViewsRepository.Reference.Properties.type, EnvironmentViewsRepository.SWT_KIND));
		type.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
		type.addSelectionChangedListener(new ISelectionChangedListener() {
				propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartImpl.this, EnvironmentViewsRepository.Reference.Properties.type, PropertiesEditionEvent.CHANGE, PropertiesEditionEvent.SET, null, getType()));
		GridData typeData = new GridData(GridData.FILL_HORIZONTAL);
		type.setLayoutData(typeData);
		type.setID(EnvironmentViewsRepository.Reference.Properties.type);
		SWTUtils.createHelpButton(parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.type, EnvironmentViewsRepository.SWT_KIND), null); //$NON-NLS-1$
		// Start of user code for createTypeFlatComboViewer
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#getType()
	public EObject getType() {
		if (type.getSelection() instanceof StructuredSelection) {
			Object firstElement = ((StructuredSelection) type.getSelection()).getFirstElement();
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#initType(EObjectFlatComboSettings)
	public void initType(EObjectFlatComboSettings settings) {
		type.setInput(settings);
			type.setSelection(new StructuredSelection(settings.getValue()));
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
		if (eefElementEditorReadOnlyState && type.isEnabled()) {
			type.setEnabled(false);
			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
Composite createTypeFlatComboViewer(Composite parent)
EObject newValue
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/parts/impl/ReferencePropertiesEditionPartImpl.java
type.setSelection(new StructuredSelection(newValue));
			type.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
		if (eefElementEditorReadOnlyState && type.isEnabled()) {
			type.setEnabled(false);
			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
void setType(EObject newValue)
@@ -54,11 +54,12 @@
 public class ReferencePropertiesEditionPartImpl extends CompositePropertiesEditionPart implements ISWTPropertiesEditionPart, ReferencePropertiesEditionPart {
 
 	protected Text name;
-	protected EObjectFlatComboViewer type;
+	protected EObjectFlatComboViewer referencedType;
 	protected EMFComboViewer multiplicity;
 	protected Button isComposite;
 	protected Button navigable;
 	protected EObjectFlatComboViewer oppositeOf;
+	protected Button identifier;
 	protected Text description;
 
 
@@ -99,11 +100,12 @@ public void createControls(Composite view) {
 		CompositionSequence referenceStep = new BindingCompositionSequence(propertiesEditionComponent);
 		CompositionStep propertiesStep = referenceStep.addStep(EnvironmentViewsRepository.Reference.Properties.class);
 		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.name);
-		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.type);
+		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.referencedType);
 		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.multiplicity);
 		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.isComposite);
 		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.navigable);
 		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.oppositeOf);
+		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.identifier);
 		propertiesStep.addStep(EnvironmentViewsRepository.Reference.Properties.description);
 		
 		
@@ -117,8 +119,8 @@ public Composite addToPart(Composite parent, Object key) {
 				if (key == EnvironmentViewsRepository.Reference.Properties.name) {
 					return createNameText(parent);
 				}
-				if (key == EnvironmentViewsRepository.Reference.Properties.type) {
-					return createTypeFlatComboViewer(parent);
+				if (key == EnvironmentViewsRepository.Reference.Properties.referencedType) {
+					return createReferencedTypeFlatComboViewer(parent);
 				}
 				if (key == EnvironmentViewsRepository.Reference.Properties.multiplicity) {
 					return createMultiplicityEMFComboViewer(parent);
@@ -132,6 +134,9 @@ public Composite addToPart(Composite parent, Object key) {
 				if (key == EnvironmentViewsRepository.Reference.Properties.oppositeOf) {
 					return createOppositeOfFlatComboViewer(parent);
 				}
+				if (key == EnvironmentViewsRepository.Reference.Properties.identifier) {
+					return createIdentifierCheckbox(parent);
+				}
 				if (key == EnvironmentViewsRepository.Reference.Properties.description) {
 					return createDescriptionText(parent);
 				}
@@ -209,23 +214,23 @@ public void keyPressed(KeyEvent e) {
 	 * @param parent the parent composite
 	 * 
 	 */
-	protected Composite createTypeFlatComboViewer(Composite parent) {
-		createDescription(parent, EnvironmentViewsRepository.Reference.Properties.type, EnvironmentMessages.ReferencePropertiesEditionPart_TypeLabel);
-		type = new EObjectFlatComboViewer(parent, !propertiesEditionComponent.isRequired(EnvironmentViewsRepository.Reference.Properties.type, EnvironmentViewsRepository.SWT_KIND));
-		type.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
+	protected Composite createReferencedTypeFlatComboViewer(Composite parent) {
+		createDescription(parent, EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentMessages.ReferencePropertiesEditionPart_ReferencedTypeLabel);
+		referencedType = new EObjectFlatComboViewer(parent, !propertiesEditionComponent.isRequired(EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentViewsRepository.SWT_KIND));
+		referencedType.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
 
-		type.addSelectionChangedListener(new ISelectionChangedListener() {
+		referencedType.addSelectionChangedListener(new ISelectionChangedListener() {
 
 			public void selectionChanged(SelectionChangedEvent event) {
-				propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartImpl.this, EnvironmentViewsRepository.Reference.Properties.type, PropertiesEditionEvent.CHANGE, PropertiesEditionEvent.SET, null, getType()));
+				propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartImpl.this, EnvironmentViewsRepository.Reference.Properties.referencedType, PropertiesEditionEvent.CHANGE, PropertiesEditionEvent.SET, null, getReferencedType()));
 			}
 
 		});
-		GridData typeData = new GridData(GridData.FILL_HORIZONTAL);
-		type.setLayoutData(typeData);
-		type.setID(EnvironmentViewsRepository.Reference.Properties.type);
-		SWTUtils.createHelpButton(parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.type, EnvironmentViewsRepository.SWT_KIND), null); //$NON-NLS-1$
-		// Start of user code for createTypeFlatComboViewer
+		GridData referencedTypeData = new GridData(GridData.FILL_HORIZONTAL);
+		referencedType.setLayoutData(referencedTypeData);
+		referencedType.setID(EnvironmentViewsRepository.Reference.Properties.referencedType);
+		SWTUtils.createHelpButton(parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentViewsRepository.SWT_KIND), null); //$NON-NLS-1$
+		// Start of user code for createReferencedTypeFlatComboViewer
 
 		// End of user code
 		return parent;
@@ -348,6 +353,36 @@ public void selectionChanged(SelectionChangedEvent event) {
 	}
 
 	
+	protected Composite createIdentifierCheckbox(Composite parent) {
+		identifier = new Button(parent, SWT.CHECK);
+		identifier.setText(getDescription(EnvironmentViewsRepository.Reference.Properties.identifier, EnvironmentMessages.ReferencePropertiesEditionPart_IdentifierLabel));
+		identifier.addSelectionListener(new SelectionAdapter() {
+
+			/**
+			 * {@inheritDoc}
+			 *
+			 * @see org.eclipse.swt.events.SelectionAdapter#widgetSelected(org.eclipse.swt.events.SelectionEvent)
+			 * 	
+			 */
+			public void widgetSelected(SelectionEvent e) {
+				if (propertiesEditionComponent != null)
+					propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartImpl.this, EnvironmentViewsRepository.Reference.Properties.identifier, PropertiesEditionEvent.COMMIT, PropertiesEditionEvent.SET, null, new Boolean(identifier.getSelection())));
+			}
+
+		});
+		GridData identifierData = new GridData(GridData.FILL_HORIZONTAL);
+		identifierData.horizontalSpan = 2;
+		identifier.setLayoutData(identifierData);
+		EditingUtils.setID(identifier, EnvironmentViewsRepository.Reference.Properties.identifier);
+		EditingUtils.setEEFtype(identifier, "eef::Checkbox"); //$NON-NLS-1$
+		SWTUtils.createHelpButton(parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.identifier, EnvironmentViewsRepository.SWT_KIND), null); //$NON-NLS-1$
+		// Start of user code for createIdentifierCheckbox
+
+		// End of user code
+		return parent;
+	}
+
+	
 	protected Composite createDescriptionText(Composite parent) {
 		createDescription(parent, EnvironmentViewsRepository.Reference.Properties.description, EnvironmentMessages.ReferencePropertiesEditionPart_DescriptionLabel);
 		description = SWTUtils.createScrollableText(parent, SWT.BORDER);
@@ -444,12 +479,12 @@ public void setName(String newValue) {
 	/**
 	 * {@inheritDoc}
 	 * 
-	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#getType()
+	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#getReferencedType()
 	 * 
 	 */
-	public EObject getType() {
-		if (type.getSelection() instanceof StructuredSelection) {
-			Object firstElement = ((StructuredSelection) type.getSelection()).getFirstElement();
+	public EObject getReferencedType() {
+		if (referencedType.getSelection() instanceof StructuredSelection) {
+			Object firstElement = ((StructuredSelection) referencedType.getSelection()).getFirstElement();
 			if (firstElement instanceof EObject)
 				return (EObject) firstElement;
 		}
@@ -459,72 +494,72 @@ public EObject getType() {
 	/**
 	 * {@inheritDoc}
 	 * 
-	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#initType(EObjectFlatComboSettings)
+	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#initReferencedType(EObjectFlatComboSettings)
 	 */
-	public void initType(EObjectFlatComboSettings settings) {
-		type.setInput(settings);
+	public void initReferencedType(EObjectFlatComboSettings settings) {
+		referencedType.setInput(settings);
 		if (current != null) {
-			type.setSelection(new StructuredSelection(settings.getValue()));
+			referencedType.setSelection(new StructuredSelection(settings.getValue()));
 		}
-		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
-		if (eefElementEditorReadOnlyState && type.isEnabled()) {
-			type.setEnabled(false);
-			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
-		} else if (!eefElementEditorReadOnlyState && !type.isEnabled()) {
-			type.setEnabled(true);
+		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.referencedType);
+		if (eefElementEditorReadOnlyState && referencedType.isEnabled()) {
+			referencedType.setEnabled(false);
+			referencedType.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
+		} else if (!eefElementEditorReadOnlyState && !referencedType.isEnabled()) {
+			referencedType.setEnabled(true);
 		}	
 		
 	}
 
 	/**
 	 * {@inheritDoc}
 	 * 
-	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setType(EObject newValue)
+	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setReferencedType(EObject newValue)
 	 * 
 	 */
-	public void setType(EObject newValue) {
+	public void setReferencedType(EObject newValue) {
 		if (newValue != null) {
-			type.setSelection(new StructuredSelection(newValue));
+			referencedType.setSelection(new StructuredSelection(newValue));
 		} else {
-			type.setSelection(new StructuredSelection()); //$NON-NLS-1$
+			referencedType.setSelection(new StructuredSelection()); //$NON-NLS-1$
 		}
-		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
-		if (eefElementEditorReadOnlyState && type.isEnabled()) {
-			type.setEnabled(false);
-			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
-		} else if (!eefElementEditorReadOnlyState && !type.isEnabled()) {
-			type.setEnabled(true);
+		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.referencedType);
+		if (eefElementEditorReadOnlyState && referencedType.isEnabled()) {
+			referencedType.setEnabled(false);
+			referencedType.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
+		} else if (!eefElementEditorReadOnlyState && !referencedType.isEnabled()) {
+			referencedType.setEnabled(true);
 		}	
 		
 	}
 
 	/**
 	 * {@inheritDoc}
 	 * 
-	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setTypeButtonMode(ButtonsModeEnum newValue)
+	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setReferencedTypeButtonMode(ButtonsModeEnum newValue)
 	 */
-	public void setTypeButtonMode(ButtonsModeEnum newValue) {
-		type.setButtonMode(newValue);
+	public void setReferencedTypeButtonMode(ButtonsModeEnum newValue) {
+		referencedType.setButtonMode(newValue);
 	}
 
 	/**
 	 * {@inheritDoc}
 	 * 
-	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addFilterType(ViewerFilter filter)
+	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addFilterReferencedType(ViewerFilter filter)
 	 * 
 	 */
-	public void addFilterToType(ViewerFilter filter) {
-		type.addFilter(filter);
+	public void addFilterToReferencedType(ViewerFilter filter) {
+		referencedType.addFilter(filter);
 	}
 
 	/**
 	 * {@inheritDoc}
 	 * 
-	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addBusinessFilterType(ViewerFilter filter)
+	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#addBusinessFilterReferencedType(ViewerFilter filter)
 	 * 
 	 */
-	public void addBusinessFilterToType(ViewerFilter filter) {
-		type.addBusinessRuleFilter(filter);
+	public void addBusinessFilterToReferencedType(ViewerFilter filter) {
+		referencedType.addBusinessRuleFilter(filter);
 	}
 
 	/**
@@ -724,6 +759,38 @@ public void addBusinessFilterToOppositeOf(ViewerFilter filter) {
 		oppositeOf.addBusinessRuleFilter(filter);
 	}
 
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#getIdentifier()
+	 * 
+	 */
+	public Boolean getIdentifier() {
+		return Boolean.valueOf(identifier.getSelection());
+	}
+
+	/**
+	 * {@inheritDoc}
+	 * 
+	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#setIdentifier(Boolean newValue)
+	 * 
+	 */
+	public void setIdentifier(Boolean newValue) {
+		if (newValue != null) {
+			identifier.setSelection(newValue.booleanValue());
+		} else {
+			identifier.setSelection(false);
+		}
+		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.identifier);
+		if (eefElementEditorReadOnlyState && identifier.isEnabled()) {
+			identifier.setEnabled(false);
+			identifier.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
+		} else if (!eefElementEditorReadOnlyState && !identifier.isEnabled()) {
+			identifier.setEnabled(true);
+		}	
+		
+	}
+
 	/**
 	 * {@inheritDoc}
 	 * 
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fparts%2Fimpl%2FReferencePropertiesEditionPartImpl.java
37b0eadf92480642ece3654a5fbdb9a770a9b13c
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fproviders%2FEnvironmentEEFAdapterFactory.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fproviders%2FEnvironmentEEFAdapterFactory.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/providers/EnvironmentEEFAdapterFactory.java
	/**
	 * {@inheritDoc}
	 * @see org.obeonetwork.dsl.environment.util.EnvironmentAdapterFactory#createDTOAdapter()
	 * 
	 */
	public Adapter createDTOAdapter() {
		List<PropertiesEditingProvider> providers = new ArrayList<PropertiesEditingProvider>(1);
		providers.add((PropertiesEditingProvider)createObeoDSMObjectAdapter());
		return new DTOPropertiesEditionProvider(providers);
	}
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/providers/EnvironmentEEFAdapterFactory.java
List<PropertiesEditingProvider> providers = new ArrayList<PropertiesEditingProvider>(1);
		providers.add((PropertiesEditingProvider)createObeoDSMObjectAdapter());
		return new DTOPropertiesEditionProvider(providers);
Adapter createDTOAdapter()
@@ -114,6 +114,16 @@ public Adapter createTypesDefinitionAdapter() {
 		providers.add((PropertiesEditingProvider)createObeoDSMObjectAdapter());
 		return new TypesDefinitionPropertiesEditionProvider(providers);
 	}
+	/**
+	 * {@inheritDoc}
+	 * @see org.obeonetwork.dsl.environment.util.EnvironmentAdapterFactory#createDTOAdapter()
+	 * 
+	 */
+	public Adapter createDTOAdapter() {
+		List<PropertiesEditingProvider> providers = new ArrayList<PropertiesEditingProvider>(1);
+		providers.add((PropertiesEditingProvider)createObeoDSMObjectAdapter());
+		return new DTOPropertiesEditionProvider(providers);
+	}
 	/**
 	 * {@inheritDoc}
 	 * @see org.obeonetwork.dsl.environment.util.EnvironmentAdapterFactory#createFilterContainerAdapter()
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fproviders%2FEnvironmentEEFAdapterFactory.java
a64e1e1ebdbb344c4d30bba12e22b2d4dacc3b5e
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fproviders%2FEnvironmentMessages.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fproviders%2FEnvironmentMessages.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/providers/EnvironmentMessages.java
	
	public static String DTOPropertiesEditionPart_PropertiesGroupLabel;

	
	public static String DTO_ReadOnly;

	
	public static String DTO_Part_Title;

	public static String AttributePropertiesEditionPart_IdentifierLabel;

	
	public static String ReferencePropertiesEditionPart_ReferencedTypeLabel;
	public static String ReferencePropertiesEditionPart_IdentifierLabel;

	
	
	public static String DTOPropertiesEditionPart_NameLabel;

	
	public static String DTOPropertiesEditionPart_SupertypeLabel;

	
	public static String DTOPropertiesEditionPart_AssociatedTypesLabel;

	
	public static String DTOPropertiesEditionPart_DescriptionLabel;

	public static String ReferencePropertiesEditionPart_TypeLabel;
@@ -64,6 +64,9 @@ public class EnvironmentMessages extends NLS {
 	
 	public static String BindingElementPropertiesEditionPart_PropertiesGroupLabel;
 
+	
+	public static String DTOPropertiesEditionPart_PropertiesGroupLabel;
+
 
 	
 	public static String Environment_ReadOnly;
@@ -167,6 +170,12 @@ public class EnvironmentMessages extends NLS {
 	
 	public static String BindingElement_Part_Title;
 
+	
+	public static String DTO_ReadOnly;
+
+	
+	public static String DTO_Part_Title;
+
 
 	
 	public static String EnvironmentPropertiesEditionPart_NameLabel;
@@ -241,13 +250,16 @@ public class EnvironmentMessages extends NLS {
 	public static String AttributePropertiesEditionPart_MultiplicityLabel;
 
 	
+	public static String AttributePropertiesEditionPart_IdentifierLabel;
+
+	
 	public static String AttributePropertiesEditionPart_DescriptionLabel;
 
 	
 	public static String ReferencePropertiesEditionPart_NameLabel;
 
 	
-	public static String ReferencePropertiesEditionPart_TypeLabel;
+	public static String ReferencePropertiesEditionPart_ReferencedTypeLabel;
 
 	
 	public static String ReferencePropertiesEditionPart_MultiplicityLabel;
@@ -262,6 +274,9 @@ public class EnvironmentMessages extends NLS {
 	public static String ReferencePropertiesEditionPart_OppositeOfLabel;
 
 	
+	public static String ReferencePropertiesEditionPart_IdentifierLabel;
+
+	
 	public static String ReferencePropertiesEditionPart_DescriptionLabel;
 
 	
@@ -294,6 +309,18 @@ public class EnvironmentMessages extends NLS {
 	
 	public static String BindingElementPropertiesEditionPart_DescriptionLabel;
 
+	
+	public static String DTOPropertiesEditionPart_NameLabel;
+
+	
+	public static String DTOPropertiesEditionPart_SupertypeLabel;
+
+	
+	public static String DTOPropertiesEditionPart_AssociatedTypesLabel;
+
+	
+	public static String DTOPropertiesEditionPart_DescriptionLabel;
+
 
 	
 	public static String PropertiesEditionPart_DocumentationLabel;
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fproviders%2FEnvironmentMessages.java
b1321030c678e24fd8ab99a53421e0f0bc0739e3
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fproviders%2FEnvironmentPropertiesEditionPartProvider.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fproviders%2FEnvironmentPropertiesEditionPartProvider.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/providers/EnvironmentPropertiesEditionPartProvider.java
import org.obeonetwork.dsl.environment.parts.forms.DTOPropertiesEditionPartForm;
import org.obeonetwork.dsl.environment.parts.impl.DTOPropertiesEditionPartImpl;
		if (key == EnvironmentViewsRepository.DTO.class) {
			if (kind == EnvironmentViewsRepository.SWT_KIND)
				return new DTOPropertiesEditionPartImpl(component);
			if (kind == EnvironmentViewsRepository.FORM_KIND)
				return new DTOPropertiesEditionPartForm(component);
		}
@@ -16,6 +16,7 @@
 import org.obeonetwork.dsl.environment.parts.forms.BindingElementPropertiesEditionPartForm;
 import org.obeonetwork.dsl.environment.parts.forms.BindingInfoPropertiesEditionPartForm;
 import org.obeonetwork.dsl.environment.parts.forms.BindingReferencePropertiesEditionPartForm;
+import org.obeonetwork.dsl.environment.parts.forms.DTOPropertiesEditionPartForm;
 import org.obeonetwork.dsl.environment.parts.forms.EnumerationPropertiesEditionPartForm;
 import org.obeonetwork.dsl.environment.parts.forms.EnvironmentPropertiesEditionPartForm;
 import org.obeonetwork.dsl.environment.parts.forms.FieldPropertiesEditionPartForm;
@@ -34,6 +35,7 @@
 import org.obeonetwork.dsl.environment.parts.impl.BindingElementPropertiesEditionPartImpl;
 import org.obeonetwork.dsl.environment.parts.impl.BindingInfoPropertiesEditionPartImpl;
 import org.obeonetwork.dsl.environment.parts.impl.BindingReferencePropertiesEditionPartImpl;
+import org.obeonetwork.dsl.environment.parts.impl.DTOPropertiesEditionPartImpl;
 import org.obeonetwork.dsl.environment.parts.impl.EnumerationPropertiesEditionPartImpl;
 import org.obeonetwork.dsl.environment.parts.impl.EnvironmentPropertiesEditionPartImpl;
 import org.obeonetwork.dsl.environment.parts.impl.FieldPropertiesEditionPartImpl;
@@ -170,6 +172,12 @@ public IPropertiesEditionPart getPropertiesEditionPart(Object key, int kind, IPr
 			if (kind == EnvironmentViewsRepository.FORM_KIND)
 				return new BindingElementPropertiesEditionPartForm(component);
 		}
+		if (key == EnvironmentViewsRepository.DTO.class) {
+			if (kind == EnvironmentViewsRepository.SWT_KIND)
+				return new DTOPropertiesEditionPartImpl(component);
+			if (kind == EnvironmentViewsRepository.FORM_KIND)
+				return new DTOPropertiesEditionPartForm(component);
+		}
 		return null;
 	}
 
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fproviders%2FEnvironmentPropertiesEditionPartProvider.java
1385a20260f0557f20ef3d8edd1ca2917a23e3da
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fproviders%2FenvironmentMessages.properties
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fproviders%2FenvironmentMessages.properties?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/providers/environmentMessages.properties
DTOPropertiesEditionPart_PropertiesGroupLabel=Properties
DTO_ReadOnly=This property is read only
DTO_Part_Title=Base
AttributePropertiesEditionPart_IdentifierLabel=Identifier
ReferencePropertiesEditionPart_ReferencedTypeLabel=ReferencedType : 
ReferencePropertiesEditionPart_IdentifierLabel=Identifier
DTOPropertiesEditionPart_NameLabel=Name : 
DTOPropertiesEditionPart_SupertypeLabel=Supertype : 
DTOPropertiesEditionPart_AssociatedTypesLabel=AssociatedTypes : 
DTOPropertiesEditionPart_DescriptionLabel=Description : 
ReferencePropertiesEditionPart_TypeLabel=Type : 
@@ -24,6 +24,7 @@ MetadatasPropertiesEditionPart_PropertiesGroupLabel=Properties
 BindingInfoPropertiesEditionPart_PropertiesGroupLabel=Properties
 BindingReferencePropertiesEditionPart_PropertiesGroupLabel=Properties
 BindingElementPropertiesEditionPart_PropertiesGroupLabel=Properties
+DTOPropertiesEditionPart_PropertiesGroupLabel=Properties
 Environment_ReadOnly=This property is read only
 Environment_Part_Title=Environment
 PrimitiveType_ReadOnly=This property is read only
@@ -58,6 +59,8 @@ BindingReference_ReadOnly=This property is read only
 BindingReference_Part_Title=BindingReference
 BindingElement_ReadOnly=This property is read only
 BindingElement_Part_Title=BindingElement
+DTO_ReadOnly=This property is read only
+DTO_Part_Title=Base
 EnvironmentPropertiesEditionPart_NameLabel=Name : 
 EnvironmentPropertiesEditionPart_DescriptionLabel=Description : 
 PrimitiveTypePropertiesEditionPart_NameLabel=Name : 
@@ -82,13 +85,15 @@ NamespacePropertiesEditionPart_DescriptionLabel=Description :
 AttributePropertiesEditionPart_NameLabel=Name : 
 AttributePropertiesEditionPart_TypeLabel=Type : 
 AttributePropertiesEditionPart_MultiplicityLabel=Multiplicity : 
+AttributePropertiesEditionPart_IdentifierLabel=Identifier
 AttributePropertiesEditionPart_DescriptionLabel=Description : 
 ReferencePropertiesEditionPart_NameLabel=Name : 
-ReferencePropertiesEditionPart_TypeLabel=Type : 
+ReferencePropertiesEditionPart_ReferencedTypeLabel=ReferencedType : 
 ReferencePropertiesEditionPart_MultiplicityLabel=Multiplicity : 
 ReferencePropertiesEditionPart_IsCompositeLabel=IsComposite
 ReferencePropertiesEditionPart_NavigableLabel=Navigable
 ReferencePropertiesEditionPart_OppositeOfLabel=OppositeOf : 
+ReferencePropertiesEditionPart_IdentifierLabel=Identifier
 ReferencePropertiesEditionPart_DescriptionLabel=Description : 
 MetadatasPropertiesEditionPart_MetadataLabel=Metadata : 
 BindingInfoPropertiesEditionPart_LeftLabel=Left : 
@@ -100,6 +105,10 @@ BindingReferencePropertiesEditionPart_DescriptionLabel=Description :
 BindingElementPropertiesEditionPart_BoundElementLabel=BoundElement : 
 BindingElementPropertiesEditionPart_BindingExpressionLabel=BindingExpression : 
 BindingElementPropertiesEditionPart_DescriptionLabel=Description : 
+DTOPropertiesEditionPart_NameLabel=Name : 
+DTOPropertiesEditionPart_SupertypeLabel=Supertype : 
+DTOPropertiesEditionPart_AssociatedTypesLabel=AssociatedTypes : 
+DTOPropertiesEditionPart_DescriptionLabel=Description : 
 PropertiesEditionPart_PropertiesGroupLabel=Properties
 PropertiesEditionPart_EditTableViewerLabel=Edit
 PropertiesEditionPart_DocumentationLabel=Documentation
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fproviders%2FenvironmentMessages.properties
28dab2df2a7081dc6267d84b3ea828f8f61b586d
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fproviders%2FenvironmentMessages_fr.properties
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fproviders%2FenvironmentMessages_fr.properties?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src-gen/org/obeonetwork/dsl/environment/providers/environmentMessages_fr.properties
DTOPropertiesEditionPart_PropertiesGroupLabel=Properties
DTO_ReadOnly=Cette propri\u00E9t\u00E9 est en lecture seule
DTO_Part_Title=Base
AttributePropertiesEditionPart_IdentifierLabel=Identifier
ReferencePropertiesEditionPart_ReferencedTypeLabel=ReferencedType : 
ReferencePropertiesEditionPart_IdentifierLabel=Identifier
DTOPropertiesEditionPart_NameLabel=Name : 
DTOPropertiesEditionPart_SupertypeLabel=Supertype : 
DTOPropertiesEditionPart_AssociatedTypesLabel=AssociatedTypes : 
DTOPropertiesEditionPart_DescriptionLabel=Description : 
ReferencePropertiesEditionPart_TypeLabel=Type : 
@@ -24,6 +24,7 @@ MetadatasPropertiesEditionPart_PropertiesGroupLabel=Properties
 BindingInfoPropertiesEditionPart_PropertiesGroupLabel=Properties
 BindingReferencePropertiesEditionPart_PropertiesGroupLabel=Properties
 BindingElementPropertiesEditionPart_PropertiesGroupLabel=Properties
+DTOPropertiesEditionPart_PropertiesGroupLabel=Properties
 Environment_ReadOnly=Cette propri\u00E9t\u00E9 est en lecture seule
 Environment_Part_Title=Environment
 PrimitiveType_ReadOnly=Cette propri\u00E9t\u00E9 est en lecture seule
@@ -58,6 +59,8 @@ BindingReference_ReadOnly=Cette propri\u00E9t\u00E9 est en lecture seule
 BindingReference_Part_Title=BindingReference
 BindingElement_ReadOnly=Cette propri\u00E9t\u00E9 est en lecture seule
 BindingElement_Part_Title=BindingElement
+DTO_ReadOnly=Cette propri\u00E9t\u00E9 est en lecture seule
+DTO_Part_Title=Base
 EnvironmentPropertiesEditionPart_NameLabel=Name : 
 EnvironmentPropertiesEditionPart_DescriptionLabel=Description : 
 PrimitiveTypePropertiesEditionPart_NameLabel=Name : 
@@ -82,13 +85,15 @@ NamespacePropertiesEditionPart_DescriptionLabel=Description :
 AttributePropertiesEditionPart_NameLabel=Name : 
 AttributePropertiesEditionPart_TypeLabel=Type : 
 AttributePropertiesEditionPart_MultiplicityLabel=Multiplicity : 
+AttributePropertiesEditionPart_IdentifierLabel=Identifier
 AttributePropertiesEditionPart_DescriptionLabel=Description : 
 ReferencePropertiesEditionPart_NameLabel=Name : 
-ReferencePropertiesEditionPart_TypeLabel=Type : 
+ReferencePropertiesEditionPart_ReferencedTypeLabel=ReferencedType : 
 ReferencePropertiesEditionPart_MultiplicityLabel=Multiplicity : 
 ReferencePropertiesEditionPart_IsCompositeLabel=IsComposite
 ReferencePropertiesEditionPart_NavigableLabel=Navigable
 ReferencePropertiesEditionPart_OppositeOfLabel=OppositeOf : 
+ReferencePropertiesEditionPart_IdentifierLabel=Identifier
 ReferencePropertiesEditionPart_DescriptionLabel=Description : 
 MetadatasPropertiesEditionPart_MetadataLabel=Metadata : 
 BindingInfoPropertiesEditionPart_LeftLabel=Left : 
@@ -100,6 +105,10 @@ BindingReferencePropertiesEditionPart_DescriptionLabel=Description :
 BindingElementPropertiesEditionPart_BoundElementLabel=BoundElement : 
 BindingElementPropertiesEditionPart_BindingExpressionLabel=BindingExpression : 
 BindingElementPropertiesEditionPart_DescriptionLabel=Description : 
+DTOPropertiesEditionPart_NameLabel=Name : 
+DTOPropertiesEditionPart_SupertypeLabel=Supertype : 
+DTOPropertiesEditionPart_AssociatedTypesLabel=AssociatedTypes : 
+DTOPropertiesEditionPart_DescriptionLabel=Description : 
 PropertiesEditionPart_PropertiesGroupLabel=Propri\u00E9t\u00E9s
 PropertiesEditionPart_EditTableViewerLabel=Editer
 PropertiesEditionPart_DocumentationLabel=Documentation
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc-gen%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fproviders%2FenvironmentMessages_fr.properties
65ce5974b7b7110052e93f10f6a652c31f2354f5
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fprovider%2FDTOItemProvider.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fprovider%2FDTOItemProvider.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/DTOItemProvider.java
			addAssociatedTypesPropertyDescriptor(object);
			addPropertiesPropertyDescriptor(object);
			addReferencesPropertyDescriptor(object);
			addAttributesPropertyDescriptor(object);
			addSupertypePropertyDescriptor(object);
	/**
	 * This adds a property descriptor for the Associated Types feature.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected void addAssociatedTypesPropertyDescriptor(Object object) {
		itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_DTO_associatedTypes_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_DTO_associatedTypes_feature", "_UI_DTO_type"),
				EnvironmentPackage.Literals.DTO__ASSOCIATED_TYPES, true, false,
				true, null, null, null));
	}

	/**
	 * This adds a property descriptor for the Properties feature.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected void addPropertiesPropertyDescriptor(Object object) {
		itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_DTO_properties_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_DTO_properties_feature", "_UI_DTO_type"),
				EnvironmentPackage.Literals.DTO__PROPERTIES, false, false,
				false, null, null, null));
	}

	/**
	 * This adds a property descriptor for the References feature.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected void addReferencesPropertyDescriptor(Object object) {
		itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_DTO_references_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_DTO_references_feature", "_UI_DTO_type"),
				EnvironmentPackage.Literals.DTO__REFERENCES, false, false,
				false, null, null, null));
	}

	/**
	 * This adds a property descriptor for the Attributes feature.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected void addAttributesPropertyDescriptor(Object object) {
		itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_DTO_attributes_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_DTO_attributes_feature", "_UI_DTO_type"),
				EnvironmentPackage.Literals.DTO__ATTRIBUTES, false, false,
				false, null, null, null));
	}

	/**
	 * This adds a property descriptor for the Supertype feature.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected void addSupertypePropertyDescriptor(Object object) {
		itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_DTO_supertype_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_DTO_supertype_feature", "_UI_DTO_type"),
				EnvironmentPackage.Literals.DTO__SUPERTYPE, true, false, true,
				null, null, null));
	}

			childrenFeatures
					.add(EnvironmentPackage.Literals.DTO__OWNED_REFERENCES);
			childrenFeatures
					.add(EnvironmentPackage.Literals.DTO__OWNED_ATTRIBUTES);
		case EnvironmentPackage.DTO__OWNED_REFERENCES:
		case EnvironmentPackage.DTO__OWNED_ATTRIBUTES:

		newChildDescriptors.add(createChildParameter(
				EnvironmentPackage.Literals.DTO__OWNED_REFERENCES,
				EnvironmentFactory.eINSTANCE.createReference()));

		newChildDescriptors.add(createChildParameter(
				EnvironmentPackage.Literals.DTO__OWNED_ATTRIBUTES,
				EnvironmentFactory.eINSTANCE.createAttribute()));
Object object
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/DTOItemProvider.java
itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_DTO_associatedTypes_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_DTO_associatedTypes_feature", "_UI_DTO_type"),
				EnvironmentPackage.Literals.DTO__ASSOCIATED_TYPES, true, false,
				true, null, null, null));
void addAssociatedTypesPropertyDescriptor(Object object)
Object object
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/DTOItemProvider.java
itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_DTO_properties_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_DTO_properties_feature", "_UI_DTO_type"),
				EnvironmentPackage.Literals.DTO__PROPERTIES, false, false,
				false, null, null, null));
void addPropertiesPropertyDescriptor(Object object)
Object object
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/DTOItemProvider.java
itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_DTO_references_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_DTO_references_feature", "_UI_DTO_type"),
				EnvironmentPackage.Literals.DTO__REFERENCES, false, false,
				false, null, null, null));
void addReferencesPropertyDescriptor(Object object)
Object object
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/DTOItemProvider.java
itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_DTO_attributes_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_DTO_attributes_feature", "_UI_DTO_type"),
				EnvironmentPackage.Literals.DTO__ATTRIBUTES, false, false,
				false, null, null, null));
void addAttributesPropertyDescriptor(Object object)
Object object
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/DTOItemProvider.java
itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_DTO_supertype_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_DTO_supertype_feature", "_UI_DTO_type"),
				EnvironmentPackage.Literals.DTO__SUPERTYPE, true, false, true,
				null, null, null));
void addSupertypePropertyDescriptor(Object object)
@@ -67,105 +67,10 @@ public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
 		if (itemPropertyDescriptors == null) {
 			super.getPropertyDescriptors(object);
 
-			addAssociatedTypesPropertyDescriptor(object);
-			addPropertiesPropertyDescriptor(object);
-			addReferencesPropertyDescriptor(object);
-			addAttributesPropertyDescriptor(object);
-			addSupertypePropertyDescriptor(object);
 		}
 		return itemPropertyDescriptors;
 	}
 
-	/**
-	 * This adds a property descriptor for the Associated Types feature.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected void addAssociatedTypesPropertyDescriptor(Object object) {
-		itemPropertyDescriptors.add(createItemPropertyDescriptor(
-				((ComposeableAdapterFactory) adapterFactory)
-						.getRootAdapterFactory(),
-				getResourceLocator(),
-				getString("_UI_DTO_associatedTypes_feature"),
-				getString("_UI_PropertyDescriptor_description",
-						"_UI_DTO_associatedTypes_feature", "_UI_DTO_type"),
-				EnvironmentPackage.Literals.DTO__ASSOCIATED_TYPES, true, false,
-				true, null, null, null));
-	}
-
-	/**
-	 * This adds a property descriptor for the Properties feature.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected void addPropertiesPropertyDescriptor(Object object) {
-		itemPropertyDescriptors.add(createItemPropertyDescriptor(
-				((ComposeableAdapterFactory) adapterFactory)
-						.getRootAdapterFactory(),
-				getResourceLocator(),
-				getString("_UI_DTO_properties_feature"),
-				getString("_UI_PropertyDescriptor_description",
-						"_UI_DTO_properties_feature", "_UI_DTO_type"),
-				EnvironmentPackage.Literals.DTO__PROPERTIES, false, false,
-				false, null, null, null));
-	}
-
-	/**
-	 * This adds a property descriptor for the References feature.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected void addReferencesPropertyDescriptor(Object object) {
-		itemPropertyDescriptors.add(createItemPropertyDescriptor(
-				((ComposeableAdapterFactory) adapterFactory)
-						.getRootAdapterFactory(),
-				getResourceLocator(),
-				getString("_UI_DTO_references_feature"),
-				getString("_UI_PropertyDescriptor_description",
-						"_UI_DTO_references_feature", "_UI_DTO_type"),
-				EnvironmentPackage.Literals.DTO__REFERENCES, false, false,
-				false, null, null, null));
-	}
-
-	/**
-	 * This adds a property descriptor for the Attributes feature.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected void addAttributesPropertyDescriptor(Object object) {
-		itemPropertyDescriptors.add(createItemPropertyDescriptor(
-				((ComposeableAdapterFactory) adapterFactory)
-						.getRootAdapterFactory(),
-				getResourceLocator(),
-				getString("_UI_DTO_attributes_feature"),
-				getString("_UI_PropertyDescriptor_description",
-						"_UI_DTO_attributes_feature", "_UI_DTO_type"),
-				EnvironmentPackage.Literals.DTO__ATTRIBUTES, false, false,
-				false, null, null, null));
-	}
-
-	/**
-	 * This adds a property descriptor for the Supertype feature.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @generated
-	 */
-	protected void addSupertypePropertyDescriptor(Object object) {
-		itemPropertyDescriptors.add(createItemPropertyDescriptor(
-				((ComposeableAdapterFactory) adapterFactory)
-						.getRootAdapterFactory(),
-				getResourceLocator(),
-				getString("_UI_DTO_supertype_feature"),
-				getString("_UI_PropertyDescriptor_description",
-						"_UI_DTO_supertype_feature", "_UI_DTO_type"),
-				EnvironmentPackage.Literals.DTO__SUPERTYPE, true, false, true,
-				null, null, null));
-	}
-
 	/**
 	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
 	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
@@ -181,10 +86,6 @@ public Collection<? extends EStructuralFeature> getChildrenFeatures(
 			super.getChildrenFeatures(object);
 			childrenFeatures
 					.add(EnvironmentPackage.Literals.DTO__OWNED_CONTAINER);
-			childrenFeatures
-					.add(EnvironmentPackage.Literals.DTO__OWNED_REFERENCES);
-			childrenFeatures
-					.add(EnvironmentPackage.Literals.DTO__OWNED_ATTRIBUTES);
 		}
 		return childrenFeatures;
 	}
@@ -250,8 +151,6 @@ public void notifyChanged(Notification notification) {
 
 		switch (notification.getFeatureID(DTO.class)) {
 		case EnvironmentPackage.DTO__OWNED_CONTAINER:
-		case EnvironmentPackage.DTO__OWNED_REFERENCES:
-		case EnvironmentPackage.DTO__OWNED_ATTRIBUTES:
 			fireNotifyChanged(new ViewerNotification(notification,
 					notification.getNotifier(), true, false));
 			return;
@@ -274,14 +173,6 @@ protected void collectNewChildDescriptors(
 		newChildDescriptors.add(createChildParameter(
 				EnvironmentPackage.Literals.DTO__OWNED_CONTAINER,
 				EnvironmentFactory.eINSTANCE.createFilterContainer()));
-
-		newChildDescriptors.add(createChildParameter(
-				EnvironmentPackage.Literals.DTO__OWNED_REFERENCES,
-				EnvironmentFactory.eINSTANCE.createReference()));
-
-		newChildDescriptors.add(createChildParameter(
-				EnvironmentPackage.Literals.DTO__OWNED_ATTRIBUTES,
-				EnvironmentFactory.eINSTANCE.createAttribute()));
 	}
 
 }
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fprovider%2FDTOItemProvider.java
0194d6e73db3792fe3e091265b8aeb5baaa58ee7
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fprovider%2FEnvironmentItemProvider.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fprovider%2FEnvironmentItemProvider.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/EnvironmentItemProvider.java
			childrenFeatures
					.add(EnvironmentPackage.Literals.ENVIRONMENT__NAMESPACES);
		case EnvironmentPackage.ENVIRONMENT__NAMESPACES:

		newChildDescriptors.add(createChildParameter(
				EnvironmentPackage.Literals.ENVIRONMENT__TYPES_DEFINITION,
				EnvironmentFactory.eINSTANCE.createNamespace()));

		newChildDescriptors.add(createChildParameter(
				EnvironmentPackage.Literals.ENVIRONMENT__NAMESPACES,
				EnvironmentFactory.eINSTANCE.createNamespace()));
	}

	/**
	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	public String getCreateChildText(Object owner, Object feature,
			Object child, Collection<?> selection) {
		Object childFeature = feature;
		Object childObject = child;

		boolean qualify = childFeature == EnvironmentPackage.Literals.ENVIRONMENT__TYPES_DEFINITION
				|| childFeature == EnvironmentPackage.Literals.ENVIRONMENT__NAMESPACES;

		if (qualify) {
			return getString("_UI_CreateChild_text2", new Object[] {
					getTypeText(childObject), getFeatureText(childFeature),
					getTypeText(owner) });
		}
		return super.getCreateChildText(owner, feature, child, selection);
Object owner  Object feature 
			Object child  Collection<?> selection
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/EnvironmentItemProvider.java
Object childFeature = feature;
		Object childObject = child;

		boolean qualify = childFeature == EnvironmentPackage.Literals.ENVIRONMENT__TYPES_DEFINITION
				|| childFeature == EnvironmentPackage.Literals.ENVIRONMENT__NAMESPACES;

		if (qualify) {
			return getString("_UI_CreateChild_text2", new Object[] {
					getTypeText(childObject), getFeatureText(childFeature),
					getTypeText(owner)
String getCreateChildText(Object owner, Object feature,
			Object child, Collection<?> selection)
@@ -115,6 +115,8 @@ public Collection<? extends EStructuralFeature> getChildrenFeatures(
 					.add(EnvironmentPackage.Literals.ENVIRONMENT__PRIORITY_DEFINITIONS);
 			childrenFeatures
 					.add(EnvironmentPackage.Literals.ENVIRONMENT__TYPES_DEFINITION);
+			childrenFeatures
+					.add(EnvironmentPackage.Literals.ENVIRONMENT__NAMESPACES);
 		}
 		return childrenFeatures;
 	}
@@ -187,6 +189,7 @@ public void notifyChanged(Notification notification) {
 		case EnvironmentPackage.ENVIRONMENT__LINKS:
 		case EnvironmentPackage.ENVIRONMENT__PRIORITY_DEFINITIONS:
 		case EnvironmentPackage.ENVIRONMENT__TYPES_DEFINITION:
+		case EnvironmentPackage.ENVIRONMENT__NAMESPACES:
 			fireNotifyChanged(new ViewerNotification(notification,
 					notification.getNotifier(), true, false));
 			return;
@@ -217,6 +220,37 @@ protected void collectNewChildDescriptors(
 		newChildDescriptors.add(createChildParameter(
 				EnvironmentPackage.Literals.ENVIRONMENT__TYPES_DEFINITION,
 				EnvironmentFactory.eINSTANCE.createTypesDefinition()));
+
+		newChildDescriptors.add(createChildParameter(
+				EnvironmentPackage.Literals.ENVIRONMENT__TYPES_DEFINITION,
+				EnvironmentFactory.eINSTANCE.createNamespace()));
+
+		newChildDescriptors.add(createChildParameter(
+				EnvironmentPackage.Literals.ENVIRONMENT__NAMESPACES,
+				EnvironmentFactory.eINSTANCE.createNamespace()));
+	}
+
+	/**
+	 * This returns the label text for {@link org.eclipse.emf.edit.command.CreateChildCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public String getCreateChildText(Object owner, Object feature,
+			Object child, Collection<?> selection) {
+		Object childFeature = feature;
+		Object childObject = child;
+
+		boolean qualify = childFeature == EnvironmentPackage.Literals.ENVIRONMENT__TYPES_DEFINITION
+				|| childFeature == EnvironmentPackage.Literals.ENVIRONMENT__NAMESPACES;
+
+		if (qualify) {
+			return getString("_UI_CreateChild_text2", new Object[] {
+					getTypeText(childObject), getFeatureText(childFeature),
+					getTypeText(owner) });
+		}
+		return super.getCreateChildText(owner, feature, child, selection);
 	}
 
 }
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fprovider%2FEnvironmentItemProvider.java
151eb2014526605c87883bc9e12e8c5fd89232f8
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fprovider%2FNamespaceItemProvider.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fprovider%2FNamespaceItemProvider.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/NamespaceItemProvider.java
public class NamespaceItemProvider extends TypesDefinitionItemProvider
		implements IEditingDomainItemProvider, IStructuredItemContentProvider,
			if (ns.getOwnedNamespaces().isEmpty() && ns.getTypes().isEmpty()) {
public class NamespaceItemProvider extends ObeoDSMObjectItemProvider implements
		IEditingDomainItemProvider, IStructuredItemContentProvider,
			if (ns.getOwnedNamespaces().size() == 0) {
@@ -37,8 +37,8 @@
  * <!-- end-user-doc -->
  * @generated
  */
-public class NamespaceItemProvider extends ObeoDSMObjectItemProvider implements
-		IEditingDomainItemProvider, IStructuredItemContentProvider,
+public class NamespaceItemProvider extends TypesDefinitionItemProvider
+		implements IEditingDomainItemProvider, IStructuredItemContentProvider,
 		ITreeItemContentProvider, IItemLabelProvider, IItemPropertySource {
 	/**
 	 * <!-- begin-user-doc -->
@@ -133,7 +133,7 @@ protected EStructuralFeature getChildFeature(Object object, Object child) {
 	public Object getImage(Object object) {
 		if (object instanceof Namespace) {
 			Namespace ns = (Namespace) object;
-			if (ns.getOwnedNamespaces().size() == 0) {
+			if (ns.getOwnedNamespaces().isEmpty() && ns.getTypes().isEmpty()) {
 				return overlayImage(
 						object,
 						getResourceLocator().getImage(
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fprovider%2FNamespaceItemProvider.java
9b0dd19622538e630caefefe0417fb4388831c3d
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fprovider%2FPropertyItemProvider.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fprovider%2FPropertyItemProvider.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/PropertyItemProvider.java
			addIsIdentifierPropertyDescriptor(object);
	/**
	 * This adds a property descriptor for the Is Identifier feature.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected void addIsIdentifierPropertyDescriptor(Object object) {
		itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_Property_isIdentifier_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_Property_isIdentifier_feature",
						"_UI_Property_type"),
				EnvironmentPackage.Literals.PROPERTY__IS_IDENTIFIER, true,
				false, false, ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null,
				null));
	}

		case EnvironmentPackage.PROPERTY__IS_IDENTIFIER:
Object object
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/PropertyItemProvider.java
itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_Property_isIdentifier_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_Property_isIdentifier_feature",
						"_UI_Property_type"),
				EnvironmentPackage.Literals.PROPERTY__IS_IDENTIFIER, true,
				false, false, ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null,
				null));
void addIsIdentifierPropertyDescriptor(Object object)
@@ -68,6 +68,7 @@ public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
 
 			addNamePropertyDescriptor(object);
 			addMultiplicityPropertyDescriptor(object);
+			addIsIdentifierPropertyDescriptor(object);
 		}
 		return itemPropertyDescriptors;
 	}
@@ -110,6 +111,26 @@ protected void addMultiplicityPropertyDescriptor(Object object) {
 				null));
 	}
 
+	/**
+	 * This adds a property descriptor for the Is Identifier feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addIsIdentifierPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(
+				((ComposeableAdapterFactory) adapterFactory)
+						.getRootAdapterFactory(),
+				getResourceLocator(),
+				getString("_UI_Property_isIdentifier_feature"),
+				getString("_UI_PropertyDescriptor_description",
+						"_UI_Property_isIdentifier_feature",
+						"_UI_Property_type"),
+				EnvironmentPackage.Literals.PROPERTY__IS_IDENTIFIER, true,
+				false, false, ItemPropertyDescriptor.BOOLEAN_VALUE_IMAGE, null,
+				null));
+	}
+
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -147,6 +168,7 @@ public void notifyChanged(Notification notification) {
 		switch (notification.getFeatureID(Property.class)) {
 		case EnvironmentPackage.PROPERTY__NAME:
 		case EnvironmentPackage.PROPERTY__MULTIPLICITY:
+		case EnvironmentPackage.PROPERTY__IS_IDENTIFIER:
 			fireNotifyChanged(new ViewerNotification(notification,
 					notification.getNotifier(), false, true));
 			return;
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fprovider%2FPropertyItemProvider.java
a61e66ba718b9fbf660e3c431e3bc595f7733831
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fprovider%2FReferenceItemProvider.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fprovider%2FReferenceItemProvider.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/ReferenceItemProvider.java
			addReferencedTypePropertyDescriptor(object);
			protected Collection<Reference> getComboBoxObjects(Object object) {
				Collection<Reference> result = new ArrayList<Reference>();
					Collection<?> collection = super.getComboBoxObjects(object);
					for (Object object2 : collection) {
						EObject elem = (EObject)object2;
						if (elem != null && elem instanceof Reference && ((Reference) elem).canBeOppositeOf((Reference) object)) {
							result.add((Reference)elem);
	 * This adds a property descriptor for the Referenced Type feature.
	protected void addReferencedTypePropertyDescriptor(Object object) {
				getString("_UI_Reference_referencedType_feature"),
						"_UI_Reference_referencedType_feature",
						"_UI_Reference_type"),
				EnvironmentPackage.Literals.REFERENCE__REFERENCED_TYPE, true,
				false, true, null, null, null));
			addTypePropertyDescriptor(object);
			protected Collection getComboBoxObjects(Object object) {
				Collection result = new ArrayList();
					Collection collection = super.getComboBoxObjects(object);
					for (Iterator iter = collection.iterator(); iter.hasNext();) {
						EObject elem = (EObject) iter.next();
						if (elem != null
								&& elem instanceof Reference
								&& ((Reference) elem)
										.canBeOppositeOf((Reference) object)) {
							result.add(elem);
	 * This adds a property descriptor for the Type feature.
	protected void addTypePropertyDescriptor(Object object) {
				getString("_UI_Reference_type_feature"),
						"_UI_Reference_type_feature", "_UI_Reference_type"),
				EnvironmentPackage.Literals.REFERENCE__TYPE, true, false, true,
				null, null, null));
@@ -72,7 +72,7 @@ public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
 			addIsCompositePropertyDescriptor(object);
 			addNavigablePropertyDescriptor(object);
 			addOppositeOfPropertyDescriptor(object);
-			addTypePropertyDescriptor(object);
+			addReferencedTypePropertyDescriptor(object);
 		}
 		return itemPropertyDescriptors;
 	}
@@ -135,20 +135,17 @@ protected void addOppositeOfPropertyDescriptor(Object object) {
 				EnvironmentPackage.Literals.REFERENCE__OPPOSITE_OF, true,
 				false, true, null, null, null) {
 
-			protected Collection getComboBoxObjects(Object object) {
+			protected Collection<Reference> getComboBoxObjects(Object object) {
 
-				Collection result = new ArrayList();
+				Collection<Reference> result = new ArrayList<Reference>();
 				// We always offer an empty choice
 				result.add(null);
 				if (object instanceof Reference) {
-					Collection collection = super.getComboBoxObjects(object);
-					for (Iterator iter = collection.iterator(); iter.hasNext();) {
-						EObject elem = (EObject) iter.next();
-						if (elem != null
-								&& elem instanceof Reference
-								&& ((Reference) elem)
-										.canBeOppositeOf((Reference) object)) {
-							result.add(elem);
+					Collection<?> collection = super.getComboBoxObjects(object);
+					for (Object object2 : collection) {
+						EObject elem = (EObject)object2;
+						if (elem != null && elem instanceof Reference && ((Reference) elem).canBeOppositeOf((Reference) object)) {
+							result.add((Reference)elem);
 						}
 					}
 				}
@@ -159,21 +156,22 @@ protected Collection getComboBoxObjects(Object object) {
 	}
 
 	/**
-	 * This adds a property descriptor for the Type feature.
+	 * This adds a property descriptor for the Referenced Type feature.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	protected void addTypePropertyDescriptor(Object object) {
+	protected void addReferencedTypePropertyDescriptor(Object object) {
 		itemPropertyDescriptors.add(createItemPropertyDescriptor(
 				((ComposeableAdapterFactory) adapterFactory)
 						.getRootAdapterFactory(),
 				getResourceLocator(),
-				getString("_UI_Reference_type_feature"),
+				getString("_UI_Reference_referencedType_feature"),
 				getString("_UI_PropertyDescriptor_description",
-						"_UI_Reference_type_feature", "_UI_Reference_type"),
-				EnvironmentPackage.Literals.REFERENCE__TYPE, true, false, true,
-				null, null, null));
+						"_UI_Reference_referencedType_feature",
+						"_UI_Reference_type"),
+				EnvironmentPackage.Literals.REFERENCE__REFERENCED_TYPE, true,
+				false, true, null, null, null));
 	}
 
 	/**
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fprovider%2FReferenceItemProvider.java
8590de77ed3d19187bac61f0dc23e52f9e8283e7
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fprovider%2FStructuredTypeItemProvider.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fprovider%2FStructuredTypeItemProvider.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/StructuredTypeItemProvider.java
import org.eclipse.emf.ecore.EStructuralFeature;
import org.eclipse.emf.edit.provider.ComposeableAdapterFactory;
import org.eclipse.emf.edit.provider.ViewerNotification;
import org.obeonetwork.dsl.environment.EnvironmentFactory;
import org.obeonetwork.dsl.environment.EnvironmentPackage;
			addSupertypePropertyDescriptor(object);
			addAssociatedTypesPropertyDescriptor(object);
			addAttributesPropertyDescriptor(object);
			addReferencesPropertyDescriptor(object);
			addPropertiesPropertyDescriptor(object);
	/**
	 * This adds a property descriptor for the Supertype feature.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected void addSupertypePropertyDescriptor(Object object) {
		itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_StructuredType_supertype_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_StructuredType_supertype_feature",
						"_UI_StructuredType_type"),
				EnvironmentPackage.Literals.STRUCTURED_TYPE__SUPERTYPE, true,
				false, true, null, null, null));
	}

	/**
	 * This adds a property descriptor for the Associated Types feature.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected void addAssociatedTypesPropertyDescriptor(Object object) {
		itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_StructuredType_associatedTypes_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_StructuredType_associatedTypes_feature",
						"_UI_StructuredType_type"),
				EnvironmentPackage.Literals.STRUCTURED_TYPE__ASSOCIATED_TYPES,
				true, false, true, null, null, null));
	}

	/**
	 * This adds a property descriptor for the Attributes feature.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected void addAttributesPropertyDescriptor(Object object) {
		itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_StructuredType_attributes_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_StructuredType_attributes_feature",
						"_UI_StructuredType_type"),
				EnvironmentPackage.Literals.STRUCTURED_TYPE__ATTRIBUTES, false,
				false, false, null, null, null));
	}

	/**
	 * This adds a property descriptor for the References feature.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected void addReferencesPropertyDescriptor(Object object) {
		itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_StructuredType_references_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_StructuredType_references_feature",
						"_UI_StructuredType_type"),
				EnvironmentPackage.Literals.STRUCTURED_TYPE__REFERENCES, false,
				false, false, null, null, null));
	}

	/**
	 * This adds a property descriptor for the Properties feature.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	protected void addPropertiesPropertyDescriptor(Object object) {
		itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_StructuredType_properties_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_StructuredType_properties_feature",
						"_UI_StructuredType_type"),
				EnvironmentPackage.Literals.STRUCTURED_TYPE__PROPERTIES, false,
				false, false, null, null, null));
	}

	/**
	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	public Collection<? extends EStructuralFeature> getChildrenFeatures(
			Object object) {
		if (childrenFeatures == null) {
			super.getChildrenFeatures(object);
			childrenFeatures
					.add(EnvironmentPackage.Literals.STRUCTURED_TYPE__OWNED_ATTRIBUTES);
			childrenFeatures
					.add(EnvironmentPackage.Literals.STRUCTURED_TYPE__OWNED_REFERENCES);
		}
		return childrenFeatures;
	}

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 */
	@Override
	protected EStructuralFeature getChildFeature(Object object, Object child) {
		// Check the type of the specified child object and return the proper feature to use for
		// adding (see {@link AddCommand}) it as a child.

		return super.getChildFeature(object, child);
	}


		switch (notification.getFeatureID(StructuredType.class)) {
		case EnvironmentPackage.STRUCTURED_TYPE__OWNED_ATTRIBUTES:
		case EnvironmentPackage.STRUCTURED_TYPE__OWNED_REFERENCES:
			fireNotifyChanged(new ViewerNotification(notification,
					notification.getNotifier(), true, false));
			return;
		}

		newChildDescriptors.add(createChildParameter(
				EnvironmentPackage.Literals.STRUCTURED_TYPE__OWNED_ATTRIBUTES,
				EnvironmentFactory.eINSTANCE.createAttribute()));

		newChildDescriptors.add(createChildParameter(
				EnvironmentPackage.Literals.STRUCTURED_TYPE__OWNED_REFERENCES,
				EnvironmentFactory.eINSTANCE.createReference()));
Object object
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/StructuredTypeItemProvider.java
itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_StructuredType_supertype_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_StructuredType_supertype_feature",
						"_UI_StructuredType_type"),
				EnvironmentPackage.Literals.STRUCTURED_TYPE__SUPERTYPE, true,
				false, true, null, null, null));
void addSupertypePropertyDescriptor(Object object)
Object object
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/StructuredTypeItemProvider.java
itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_StructuredType_associatedTypes_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_StructuredType_associatedTypes_feature",
						"_UI_StructuredType_type"),
				EnvironmentPackage.Literals.STRUCTURED_TYPE__ASSOCIATED_TYPES,
				true, false, true, null, null, null));
void addAssociatedTypesPropertyDescriptor(Object object)
Object object
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/StructuredTypeItemProvider.java
itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_StructuredType_attributes_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_StructuredType_attributes_feature",
						"_UI_StructuredType_type"),
				EnvironmentPackage.Literals.STRUCTURED_TYPE__ATTRIBUTES, false,
				false, false, null, null, null));
void addAttributesPropertyDescriptor(Object object)
Object object
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/StructuredTypeItemProvider.java
itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_StructuredType_references_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_StructuredType_references_feature",
						"_UI_StructuredType_type"),
				EnvironmentPackage.Literals.STRUCTURED_TYPE__REFERENCES, false,
				false, false, null, null, null));
void addReferencesPropertyDescriptor(Object object)
Object object
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/StructuredTypeItemProvider.java
itemPropertyDescriptors.add(createItemPropertyDescriptor(
				((ComposeableAdapterFactory) adapterFactory)
						.getRootAdapterFactory(),
				getResourceLocator(),
				getString("_UI_StructuredType_properties_feature"),
				getString("_UI_PropertyDescriptor_description",
						"_UI_StructuredType_properties_feature",
						"_UI_StructuredType_type"),
				EnvironmentPackage.Literals.STRUCTURED_TYPE__PROPERTIES, false,
				false, false, null, null, null));
void addPropertiesPropertyDescriptor(Object object)
Object object  Object child
models/environment/plugins/org.obeonetwork.dsl.environment.edit/src/org/obeonetwork/dsl/environment/provider/StructuredTypeItemProvider.java
// Check the type of the specified child object and return the proper feature to use for
		// adding (see {@link AddCommand
EStructuralFeature getChildFeature(Object object, Object child)
@@ -17,12 +17,17 @@
 
 import org.eclipse.emf.common.notify.AdapterFactory;
 import org.eclipse.emf.common.notify.Notification;
+import org.eclipse.emf.ecore.EStructuralFeature;
+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.ViewerNotification;
+import org.obeonetwork.dsl.environment.EnvironmentFactory;
+import org.obeonetwork.dsl.environment.EnvironmentPackage;
 import org.obeonetwork.dsl.environment.StructuredType;
 
 /**
@@ -62,10 +67,144 @@ public List<IItemPropertyDescriptor> getPropertyDescriptors(Object object) {
 		if (itemPropertyDescriptors == null) {
 			super.getPropertyDescriptors(object);
 
+			addSupertypePropertyDescriptor(object);
+			addAssociatedTypesPropertyDescriptor(object);
+			addAttributesPropertyDescriptor(object);
+			addReferencesPropertyDescriptor(object);
+			addPropertiesPropertyDescriptor(object);
 		}
 		return itemPropertyDescriptors;
 	}
 
+	/**
+	 * This adds a property descriptor for the Supertype feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addSupertypePropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(
+				((ComposeableAdapterFactory) adapterFactory)
+						.getRootAdapterFactory(),
+				getResourceLocator(),
+				getString("_UI_StructuredType_supertype_feature"),
+				getString("_UI_PropertyDescriptor_description",
+						"_UI_StructuredType_supertype_feature",
+						"_UI_StructuredType_type"),
+				EnvironmentPackage.Literals.STRUCTURED_TYPE__SUPERTYPE, true,
+				false, true, null, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Associated Types feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addAssociatedTypesPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(
+				((ComposeableAdapterFactory) adapterFactory)
+						.getRootAdapterFactory(),
+				getResourceLocator(),
+				getString("_UI_StructuredType_associatedTypes_feature"),
+				getString("_UI_PropertyDescriptor_description",
+						"_UI_StructuredType_associatedTypes_feature",
+						"_UI_StructuredType_type"),
+				EnvironmentPackage.Literals.STRUCTURED_TYPE__ASSOCIATED_TYPES,
+				true, false, true, null, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Attributes feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addAttributesPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(
+				((ComposeableAdapterFactory) adapterFactory)
+						.getRootAdapterFactory(),
+				getResourceLocator(),
+				getString("_UI_StructuredType_attributes_feature"),
+				getString("_UI_PropertyDescriptor_description",
+						"_UI_StructuredType_attributes_feature",
+						"_UI_StructuredType_type"),
+				EnvironmentPackage.Literals.STRUCTURED_TYPE__ATTRIBUTES, false,
+				false, false, null, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the References feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addReferencesPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(
+				((ComposeableAdapterFactory) adapterFactory)
+						.getRootAdapterFactory(),
+				getResourceLocator(),
+				getString("_UI_StructuredType_references_feature"),
+				getString("_UI_PropertyDescriptor_description",
+						"_UI_StructuredType_references_feature",
+						"_UI_StructuredType_type"),
+				EnvironmentPackage.Literals.STRUCTURED_TYPE__REFERENCES, false,
+				false, false, null, null, null));
+	}
+
+	/**
+	 * This adds a property descriptor for the Properties feature.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	protected void addPropertiesPropertyDescriptor(Object object) {
+		itemPropertyDescriptors.add(createItemPropertyDescriptor(
+				((ComposeableAdapterFactory) adapterFactory)
+						.getRootAdapterFactory(),
+				getResourceLocator(),
+				getString("_UI_StructuredType_properties_feature"),
+				getString("_UI_PropertyDescriptor_description",
+						"_UI_StructuredType_properties_feature",
+						"_UI_StructuredType_type"),
+				EnvironmentPackage.Literals.STRUCTURED_TYPE__PROPERTIES, false,
+				false, false, null, null, null));
+	}
+
+	/**
+	 * This specifies how to implement {@link #getChildren} and is used to deduce an appropriate feature for an
+	 * {@link org.eclipse.emf.edit.command.AddCommand}, {@link org.eclipse.emf.edit.command.RemoveCommand} or
+	 * {@link org.eclipse.emf.edit.command.MoveCommand} in {@link #createCommand}.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	public Collection<? extends EStructuralFeature> getChildrenFeatures(
+			Object object) {
+		if (childrenFeatures == null) {
+			super.getChildrenFeatures(object);
+			childrenFeatures
+					.add(EnvironmentPackage.Literals.STRUCTURED_TYPE__OWNED_ATTRIBUTES);
+			childrenFeatures
+					.add(EnvironmentPackage.Literals.STRUCTURED_TYPE__OWNED_REFERENCES);
+		}
+		return childrenFeatures;
+	}
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 */
+	@Override
+	protected EStructuralFeature getChildFeature(Object object, Object child) {
+		// Check the type of the specified child object and return the proper feature to use for
+		// adding (see {@link AddCommand}) it as a child.
+
+		return super.getChildFeature(object, child);
+	}
+
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
@@ -99,6 +238,14 @@ public String getText(Object object) {
 	@Override
 	public void notifyChanged(Notification notification) {
 		updateChildren(notification);
+
+		switch (notification.getFeatureID(StructuredType.class)) {
+		case EnvironmentPackage.STRUCTURED_TYPE__OWNED_ATTRIBUTES:
+		case EnvironmentPackage.STRUCTURED_TYPE__OWNED_REFERENCES:
+			fireNotifyChanged(new ViewerNotification(notification,
+					notification.getNotifier(), true, false));
+			return;
+		}
 		super.notifyChanged(notification);
 	}
 
@@ -113,6 +260,14 @@ public void notifyChanged(Notification notification) {
 	protected void collectNewChildDescriptors(
 			Collection<Object> newChildDescriptors, Object object) {
 		super.collectNewChildDescriptors(newChildDescriptors, object);
+
+		newChildDescriptors.add(createChildParameter(
+				EnvironmentPackage.Literals.STRUCTURED_TYPE__OWNED_ATTRIBUTES,
+				EnvironmentFactory.eINSTANCE.createAttribute()));
+
+		newChildDescriptors.add(createChildParameter(
+				EnvironmentPackage.Literals.STRUCTURED_TYPE__OWNED_REFERENCES,
+				EnvironmentFactory.eINSTANCE.createReference()));
 	}
 
 }
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.edit%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fprovider%2FStructuredTypeItemProvider.java
bc9f903f86fcda28325fb3e1c84f9899fbc7eb02
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.editor%2FMETA-INF%2FMANIFEST.MF
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.editor%2FMETA-INF%2FMANIFEST.MF?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.editor/META-INF/MANIFEST.MF
Bundle-SymbolicName: org.obeonetwork.dsl.environment.editor;singleton:=true
Bundle-SymbolicName: org.obeonetwork.dsl.environment.editor; singleton:=true
@@ -1,7 +1,7 @@
 Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
-Bundle-SymbolicName: org.obeonetwork.dsl.environment.editor; singleton:=true
+Bundle-SymbolicName: org.obeonetwork.dsl.environment.editor;singleton:=true
 Bundle-Version: 2.4.0.qualifier
 Bundle-ClassPath: .
 Bundle-Activator: org.obeonetwork.dsl.environment.presentation.EnvironmentEditorPlugin$Implementation
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.editor%2FMETA-INF%2FMANIFEST.MF
4ba287555cb7d3a0fad0fcb8b4b097a7e1727879
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.editor%2Fplugin.xml
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.editor%2Fplugin.xml?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.editor/plugin.xml
   <extension point="org.eclipse.ui.newWizards">
      <!-- @generated environment -->
      <category
            id="org.eclipse.emf.ecore.Wizard.category.ID"
            name="%_UI_Wizard_category"/>
      <wizard
            id="org.obeonetwork.dsl.environment.presentation.EnvironmentModelWizardID"
            name="%_UI_EnvironmentModelWizard_label"
            class="org.obeonetwork.dsl.environment.presentation.EnvironmentModelWizard"
            category="org.eclipse.emf.ecore.Wizard.category.ID"
            icon="icons/full/obj16/EnvironmentModelFile.gif">
         <description>%_UI_EnvironmentModelWizard_description</description>
         <selection class="org.eclipse.core.resources.IResource"/>
      </wizard>
   </extension>

   <extension point="org.eclipse.ui.editors">
      <!-- @generated environment -->
      <editor
            id="org.obeonetwork.dsl.environment.presentation.EnvironmentEditorID"
            name="%_UI_EnvironmentEditor_label"
            icon="icons/full/obj16/EnvironmentModelFile.gif"
            extensions="environment"
            class="org.obeonetwork.dsl.environment.presentation.EnvironmentEditor"
            contributorClass="org.obeonetwork.dsl.environment.presentation.EnvironmentActionBarContributor">
      </editor>
   </extension>
@@ -40,4 +40,31 @@
         contributorClass="org.obeonetwork.dsl.environment.presentation.EnvironmentActionBarContributor" >
     </editor>
   </extension>    
+   <extension point="org.eclipse.ui.newWizards">
+      <!-- @generated environment -->
+      <category
+            id="org.eclipse.emf.ecore.Wizard.category.ID"
+            name="%_UI_Wizard_category"/>
+      <wizard
+            id="org.obeonetwork.dsl.environment.presentation.EnvironmentModelWizardID"
+            name="%_UI_EnvironmentModelWizard_label"
+            class="org.obeonetwork.dsl.environment.presentation.EnvironmentModelWizard"
+            category="org.eclipse.emf.ecore.Wizard.category.ID"
+            icon="icons/full/obj16/EnvironmentModelFile.gif">
+         <description>%_UI_EnvironmentModelWizard_description</description>
+         <selection class="org.eclipse.core.resources.IResource"/>
+      </wizard>
+   </extension>
+
+   <extension point="org.eclipse.ui.editors">
+      <!-- @generated environment -->
+      <editor
+            id="org.obeonetwork.dsl.environment.presentation.EnvironmentEditorID"
+            name="%_UI_EnvironmentEditor_label"
+            icon="icons/full/obj16/EnvironmentModelFile.gif"
+            extensions="environment"
+            class="org.obeonetwork.dsl.environment.presentation.EnvironmentEditor"
+            contributorClass="org.obeonetwork.dsl.environment.presentation.EnvironmentActionBarContributor">
+      </editor>
+   </extension>
 </plugin>
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.editor%2Fplugin.xml
118aa00d067d98a3d366b70513e85176369623a4
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.editor%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fpresentation%2FEnvironmentEditor.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.editor%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fpresentation%2FEnvironmentEditor.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment.editor/src/org/obeonetwork/dsl/environment/presentation/EnvironmentEditor.java
	protected List<PropertySheetPage> propertySheetPages = new ArrayList<PropertySheetPage>();
				if (propertySheetPages.contains(((PropertySheet) p)
						.getCurrentPage())) {
			resourceToDiagnosticMap.remove(target);
			if (updateProblemIndication) {
				getSite().getShell().getDisplay().asyncExec(new Runnable() {
					public void run() {
						updateProblemIndication();
					}
				});
			}
							return false;
						for (Iterator<PropertySheetPage> i = propertySheetPages
								.iterator(); i.hasNext();) {
							PropertySheetPage propertySheetPage = i.next();
							if (propertySheetPage.getControl().isDisposed()) {
								i.remove();
							} else {
								propertySheetPage.refresh();
							}
		PropertySheetPage propertySheetPage = new ExtendedPropertySheetPage(
				editingDomain) {
			@Override
			public void setSelectionToViewer(List<?> selection) {
				EnvironmentEditor.this.setSelectionToViewer(selection);
				EnvironmentEditor.this.setFocus();
			}
			@Override
			public void setActionBars(IActionBars actionBars) {
				super.setActionBars(actionBars);
				getActionBarContributor().shareGlobalActions(this, actionBars);
			}
		};
		propertySheetPage
				.setPropertySourceProvider(new AdapterFactoryContentProvider(
						adapterFactory));
		propertySheetPages.add(propertySheetPage);
	 * The implementation uses the URI converter from the editor's resource set to try to open an input stream.
		List<?> targetObjects = markerHelper.getTargetObjects(editingDomain,
				marker);
		if (!targetObjects.isEmpty()) {
			setSelectionToViewer(targetObjects);
		for (PropertySheetPage propertySheetPage : propertySheetPages) {
models/environment/plugins/org.obeonetwork.dsl.environment.editor/src/org/obeonetwork/dsl/environment/presentation/EnvironmentEditor.java
public void run() {
						updateProblemIndication();
new Runnable()

				editingDomain
models/environment/plugins/org.obeonetwork.dsl.environment.editor/src/org/obeonetwork/dsl/environment/presentation/EnvironmentEditor.java
@Override
			public void setSelectionToViewer(List<?> selection) {
				EnvironmentEditor.this.setSelectionToViewer(selection);
				EnvironmentEditor.this.setFocus();
new ExtendedPropertySheetPage(
				editingDomain)
IActionBars actionBars
models/environment/plugins/org.obeonetwork.dsl.environment.editor/src/org/obeonetwork/dsl/environment/presentation/EnvironmentEditor.java
super.setActionBars(actionBars);
				getActionBarContributor().shareGlobalActions(this, actionBars);
void setActionBars(IActionBars actionBars)
	protected PropertySheetPage propertySheetPage;
				if (((PropertySheet) p).getCurrentPage() == propertySheetPage) {
						if (propertySheetPage != null
								&& !propertySheetPage.getControl().isDisposed()) {
							propertySheetPage.refresh();
		if (propertySheetPage == null) {
			propertySheetPage = new ExtendedPropertySheetPage(editingDomain) {
				@Override
				public void setSelectionToViewer(List<?> selection) {
					EnvironmentEditor.this.setSelectionToViewer(selection);
					EnvironmentEditor.this.setFocus();
				}
				@Override
				public void setActionBars(IActionBars actionBars) {
					super.setActionBars(actionBars);
					getActionBarContributor().shareGlobalActions(this,
							actionBars);
				}
			};
			propertySheetPage
					.setPropertySourceProvider(new AdapterFactoryContentProvider(
							adapterFactory));
		}
	 * The implementation uses the URI converter from the editor's resource set to try to open an input stream. 
		try {
			if (marker.getType().equals(EValidator.MARKER)) {
				String uriAttribute = marker.getAttribute(
						EValidator.URI_ATTRIBUTE, null);
				if (uriAttribute != null) {
					URI uri = URI.createURI(uriAttribute);
					EObject eObject = editingDomain.getResourceSet()
							.getEObject(uri, true);
					if (eObject != null) {
						setSelectionToViewer(Collections
								.singleton(editingDomain.getWrapper(eObject)));
					}
				}
			}
		} catch (CoreException exception) {
			EnvironmentEditorPlugin.INSTANCE.log(exception);
		if (propertySheetPage != null) {
editingDomain
models/environment/plugins/org.obeonetwork.dsl.environment.editor/src/org/obeonetwork/dsl/environment/presentation/EnvironmentEditor.java
@Override
				public void setSelectionToViewer(List<?> selection) {
					EnvironmentEditor.this.setSelectionToViewer(selection);
					EnvironmentEditor.this.setFocus();
new ExtendedPropertySheetPage(editingDomain)
IActionBars actionBars
models/environment/plugins/org.obeonetwork.dsl.environment.editor/src/org/obeonetwork/dsl/environment/presentation/EnvironmentEditor.java
super.setActionBars(actionBars);
					getActionBarContributor().shareGlobalActions(this,
							actionBars);
void setActionBars(IActionBars actionBars)
@@ -190,7 +190,7 @@ public class EnvironmentEditor extends MultiPageEditorPart implements
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	protected PropertySheetPage propertySheetPage;
+	protected List<PropertySheetPage> propertySheetPages = new ArrayList<PropertySheetPage>();
 
 	/**
 	 * This is the viewer that shadows the selection in the content outline.
@@ -308,7 +308,8 @@ public void partActivated(IWorkbenchPart p) {
 					setCurrentViewer(contentOutlineViewer);
 				}
 			} else if (p instanceof PropertySheet) {
-				if (((PropertySheet) p).getCurrentPage() == propertySheetPage) {
+				if (propertySheetPages.contains(((PropertySheet) p)
+						.getCurrentPage())) {
 					getActionBarContributor().setActiveEditor(
 							EnvironmentEditor.this);
 					handleActivate();
@@ -422,6 +423,14 @@ protected void setTarget(Resource target) {
 		@Override
 		protected void unsetTarget(Resource target) {
 			basicUnsetTarget(target);
+			resourceToDiagnosticMap.remove(target);
+			if (updateProblemIndication) {
+				getSite().getShell().getDisplay().asyncExec(new Runnable() {
+					public void run() {
+						updateProblemIndication();
+					}
+				});
+			}
 		}
 	};
 
@@ -460,6 +469,7 @@ public boolean visit(IResourceDelta delta) {
 									}
 								}
 							}
+							return false;
 						}
 
 						return true;
@@ -696,9 +706,14 @@ public void run() {
 							setSelectionToViewer(mostRecentCommand
 									.getAffectedObjects());
 						}
-						if (propertySheetPage != null
-								&& !propertySheetPage.getControl().isDisposed()) {
-							propertySheetPage.refresh();
+						for (Iterator<PropertySheetPage> i = propertySheetPages
+								.iterator(); i.hasNext();) {
+							PropertySheetPage propertySheetPage = i.next();
+							if (propertySheetPage.getControl().isDisposed()) {
+								i.remove();
+							} else {
+								propertySheetPage.refresh();
+							}
 						}
 					}
 				});
@@ -1382,25 +1397,24 @@ public void selectionChanged(SelectionChangedEvent event) {
 	 * @generated
 	 */
 	public IPropertySheetPage getPropertySheetPage() {
-		if (propertySheetPage == null) {
-			propertySheetPage = new ExtendedPropertySheetPage(editingDomain) {
-				@Override
-				public void setSelectionToViewer(List<?> selection) {
-					EnvironmentEditor.this.setSelectionToViewer(selection);
-					EnvironmentEditor.this.setFocus();
-				}
+		PropertySheetPage propertySheetPage = new ExtendedPropertySheetPage(
+				editingDomain) {
+			@Override
+			public void setSelectionToViewer(List<?> selection) {
+				EnvironmentEditor.this.setSelectionToViewer(selection);
+				EnvironmentEditor.this.setFocus();
+			}
 
-				@Override
-				public void setActionBars(IActionBars actionBars) {
-					super.setActionBars(actionBars);
-					getActionBarContributor().shareGlobalActions(this,
-							actionBars);
-				}
-			};
-			propertySheetPage
-					.setPropertySourceProvider(new AdapterFactoryContentProvider(
-							adapterFactory));
-		}
+			@Override
+			public void setActionBars(IActionBars actionBars) {
+				super.setActionBars(actionBars);
+				getActionBarContributor().shareGlobalActions(this, actionBars);
+			}
+		};
+		propertySheetPage
+				.setPropertySourceProvider(new AdapterFactoryContentProvider(
+						adapterFactory));
+		propertySheetPages.add(propertySheetPage);
 
 		return propertySheetPage;
 	}
@@ -1526,7 +1540,7 @@ public void execute(IProgressMonitor monitor) {
 
 	/**
 	 * This returns whether something has been persisted to the URI of the specified resource.
-	 * The implementation uses the URI converter from the editor's resource set to try to open an input stream. 
+	 * The implementation uses the URI converter from the editor's resource set to try to open an input stream.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
@@ -1599,22 +1613,10 @@ protected void doSaveAs(URI uri, IEditorInput editorInput) {
 	 * @generated
 	 */
 	public void gotoMarker(IMarker marker) {
-		try {
-			if (marker.getType().equals(EValidator.MARKER)) {
-				String uriAttribute = marker.getAttribute(
-						EValidator.URI_ATTRIBUTE, null);
-				if (uriAttribute != null) {
-					URI uri = URI.createURI(uriAttribute);
-					EObject eObject = editingDomain.getResourceSet()
-							.getEObject(uri, true);
-					if (eObject != null) {
-						setSelectionToViewer(Collections
-								.singleton(editingDomain.getWrapper(eObject)));
-					}
-				}
-			}
-		} catch (CoreException exception) {
-			EnvironmentEditorPlugin.INSTANCE.log(exception);
+		List<?> targetObjects = markerHelper.getTargetObjects(editingDomain,
+				marker);
+		if (!targetObjects.isEmpty()) {
+			setSelectionToViewer(targetObjects);
 		}
 	}
 
@@ -1817,7 +1819,7 @@ public void dispose() {
 			getActionBarContributor().setActiveEditor(null);
 		}
 
-		if (propertySheetPage != null) {
+		for (PropertySheetPage propertySheetPage : propertySheetPages) {
 			propertySheetPage.dispose();
 		}
 
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment.editor%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fpresentation%2FEnvironmentEditor.java
7d1af48e7b8bef10e75163f30933183c5ba25098
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fmodel%2Fenvironment.ecore
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fmodel%2Fenvironment.ecore?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment/model/environment.ecore
    <eOperations name="isSubtypeOf" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
    <eStructuralFeatures xsi:type="ecore:EReference" name="ownedAttributes" upperBound="-1"
        eType="#//Attribute" containment="true" eOpposite="#//Attribute/containingType"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ownedReferences" upperBound="-1"
        eType="#//Reference" containment="true" eOpposite="#//Reference/containingType"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containingType" lowerBound="1"
        eType="#//StructuredType" eOpposite="#//StructuredType/ownedAttributes"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="containingType" lowerBound="1"
        eType="#//StructuredType" eOpposite="#//StructuredType/ownedReferences"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="referencedType" lowerBound="1"
        eType="#//StructuredType"/>
    <eOperations name="isSubtypeOf" lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean">
    <eStructuralFeatures xsi:type="ecore:EReference" name="ownedAttributes" eType="#//Attribute"
        eOpposite="#//Attribute/dto"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="ownedReferences" eType="#//Reference"
        eOpposite="#//Reference/type"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="dto" lowerBound="1" eType="#//StructuredType"
        eOpposite="#//StructuredType/ownedAttributes"/>
    <eStructuralFeatures xsi:type="ecore:EReference" name="type" lowerBound="1" eType="#//StructuredType"
        eOpposite="#//StructuredType/ownedReferences"/>
@@ -73,18 +73,18 @@
   </eClassifiers>
   <eClassifiers xsi:type="ecore:EClass" name="Behaviour" abstract="true" eSuperTypes="#//ObeoDSMObject"/>
   <eClassifiers xsi:type="ecore:EClass" name="StructuredType" abstract="true" eSuperTypes="#//Type">
-    <eOperations name="isSubtypeOf" lowerBound="1" eType="ecore:EDataType platform:/plugin/org.eclipse.emf.ecore/model/Ecore.ecore#//EBoolean">
+    <eOperations name="isSubtypeOf" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
       <eParameters name="type" eType="#//StructuredType"/>
     </eOperations>
     <eStructuralFeatures xsi:type="ecore:EReference" name="supertype" eType="#//StructuredType"/>
     <eStructuralFeatures xsi:type="ecore:EReference" name="associatedTypes" upperBound="-1"
         eType="#//StructuredType"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="ownedAttributes" eType="#//Attribute"
-        eOpposite="#//Attribute/dto"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ownedAttributes" upperBound="-1"
+        eType="#//Attribute" containment="true" eOpposite="#//Attribute/containingType"/>
     <eStructuralFeatures xsi:type="ecore:EReference" name="attributes" upperBound="-1"
         eType="#//Attribute" changeable="false" volatile="true" transient="true" derived="true"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="ownedReferences" eType="#//Reference"
-        eOpposite="#//Reference/type"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="ownedReferences" upperBound="-1"
+        eType="#//Reference" containment="true" eOpposite="#//Reference/containingType"/>
     <eStructuralFeatures xsi:type="ecore:EReference" name="references" upperBound="-1"
         eType="#//Reference" changeable="false" volatile="true" transient="true" derived="true"/>
     <eStructuralFeatures xsi:type="ecore:EReference" name="properties" upperBound="-1"
@@ -114,8 +114,8 @@
   </eClassifiers>
   <eClassifiers xsi:type="ecore:EClass" name="Attribute" eSuperTypes="#//Property">
     <eStructuralFeatures xsi:type="ecore:EReference" name="type" lowerBound="1" eType="#//PrimitiveType"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="dto" lowerBound="1" eType="#//StructuredType"
-        eOpposite="#//StructuredType/ownedAttributes"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="containingType" lowerBound="1"
+        eType="#//StructuredType" eOpposite="#//StructuredType/ownedAttributes"/>
   </eClassifiers>
   <eClassifiers xsi:type="ecore:EClass" name="Reference" eSuperTypes="#//Property">
     <eOperations name="canBeOppositeOf" lowerBound="1" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean">
@@ -126,8 +126,10 @@
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="navigable" lowerBound="1"
         eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EBoolean" defaultValueLiteral="true"/>
     <eStructuralFeatures xsi:type="ecore:EReference" name="oppositeOf" eType="#//Reference"/>
-    <eStructuralFeatures xsi:type="ecore:EReference" name="type" lowerBound="1" eType="#//StructuredType"
-        eOpposite="#//StructuredType/ownedReferences"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="containingType" lowerBound="1"
+        eType="#//StructuredType" eOpposite="#//StructuredType/ownedReferences"/>
+    <eStructuralFeatures xsi:type="ecore:EReference" name="referencedType" lowerBound="1"
+        eType="#//StructuredType"/>
   </eClassifiers>
   <eClassifiers xsi:type="ecore:EClass" name="Property" abstract="true" eSuperTypes="#//ObeoDSMObject #//BoundableElement">
     <eStructuralFeatures xsi:type="ecore:EAttribute" name="name" eType="ecore:EDataType http://www.eclipse.org/emf/2002/Ecore#//EString"/>
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fmodel%2Fenvironment.ecore
4d057bfbe3d1320d48245aa0b482b7b6183fecf2
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fmodel%2Fenvironment.genmodel
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fmodel%2Fenvironment.genmodel?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment/model/environment.genmodel
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference environment.ecore#//Environment/namespaces"/>
    <genClasses image="false" ecoreClass="environment.ecore#//StructuredType">
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference environment.ecore#//StructuredType/supertype"/>
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference environment.ecore#//StructuredType/associatedTypes"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference environment.ecore#//StructuredType/ownedAttributes"/>
      <genFeatures property="Readonly" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//StructuredType/attributes"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference environment.ecore#//StructuredType/ownedReferences"/>
      <genFeatures property="Readonly" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//StructuredType/references"/>
      <genFeatures property="Readonly" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//StructuredType/properties"/>
      <genOperations ecoreOperation="environment.ecore#//StructuredType/isSubtypeOf">
        <genParameters ecoreParameter="environment.ecore#//StructuredType/isSubtypeOf/type"/>
      </genOperations>
    </genClasses>
      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//Attribute/containingType"/>
      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//Reference/containingType"/>
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference environment.ecore#//Reference/referencedType"/>
      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute environment.ecore#//Property/isIdentifier"/>
    <genClasses image="false" ecoreClass="environment.ecore#//StructuredType"/>
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference environment.ecore#//DTO/associatedTypes"/>
      <genFeatures property="Readonly" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//DTO/properties"/>
      <genFeatures property="Readonly" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//DTO/references"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference environment.ecore#//DTO/ownedReferences"/>
      <genFeatures property="Readonly" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//DTO/attributes"/>
      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference environment.ecore#//DTO/ownedAttributes"/>
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference environment.ecore#//DTO/supertype"/>
      <genOperations ecoreOperation="environment.ecore#//DTO/isSubtypeOf">
        <genParameters ecoreParameter="environment.ecore#//DTO/isSubtypeOf/dto"/>
      </genOperations>
      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//Attribute/dto"/>
      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference environment.ecore#//Reference/type"/>
      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//Reference/dto"/>
@@ -25,6 +25,7 @@
       <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference environment.ecore#//Environment/links"/>
       <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference environment.ecore#//Environment/priorityDefinitions"/>
       <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference environment.ecore#//Environment/typesDefinition"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference environment.ecore#//Environment/namespaces"/>
     </genClasses>
     <genClasses image="false" ecoreClass="environment.ecore#//Type">
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute environment.ecore#//Type/name"/>
@@ -72,19 +73,20 @@
       <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference environment.ecore#//TypesDefinition/types"/>
     </genClasses>
     <genClasses image="false" ecoreClass="environment.ecore#//Behaviour"/>
-    <genClasses image="false" ecoreClass="environment.ecore#//StructuredType"/>
+    <genClasses image="false" ecoreClass="environment.ecore#//StructuredType">
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference environment.ecore#//StructuredType/supertype"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference environment.ecore#//StructuredType/associatedTypes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference environment.ecore#//StructuredType/ownedAttributes"/>
+      <genFeatures property="Readonly" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//StructuredType/attributes"/>
+      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference environment.ecore#//StructuredType/ownedReferences"/>
+      <genFeatures property="Readonly" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//StructuredType/references"/>
+      <genFeatures property="Readonly" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//StructuredType/properties"/>
+      <genOperations ecoreOperation="environment.ecore#//StructuredType/isSubtypeOf">
+        <genParameters ecoreParameter="environment.ecore#//StructuredType/isSubtypeOf/type"/>
+      </genOperations>
+    </genClasses>
     <genClasses ecoreClass="environment.ecore#//DTO">
       <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference environment.ecore#//DTO/ownedContainer"/>
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference environment.ecore#//DTO/associatedTypes"/>
-      <genFeatures property="Readonly" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//DTO/properties"/>
-      <genFeatures property="Readonly" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//DTO/references"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference environment.ecore#//DTO/ownedReferences"/>
-      <genFeatures property="Readonly" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//DTO/attributes"/>
-      <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference environment.ecore#//DTO/ownedAttributes"/>
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference environment.ecore#//DTO/supertype"/>
-      <genOperations ecoreOperation="environment.ecore#//DTO/isSubtypeOf">
-        <genParameters ecoreParameter="environment.ecore#//DTO/isSubtypeOf/dto"/>
-      </genOperations>
     </genClasses>
     <genClasses ecoreClass="environment.ecore#//FilterContainer">
       <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference environment.ecore#//FilterContainer/ownedFilters"/>
@@ -97,21 +99,22 @@
     </genClasses>
     <genClasses ecoreClass="environment.ecore#//Attribute">
       <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference environment.ecore#//Attribute/type"/>
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//Attribute/dto"/>
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//Attribute/containingType"/>
     </genClasses>
     <genClasses ecoreClass="environment.ecore#//Reference">
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute environment.ecore#//Reference/isComposite"/>
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute environment.ecore#//Reference/navigable"/>
       <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference environment.ecore#//Reference/oppositeOf"/>
-      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference environment.ecore#//Reference/type"/>
-      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//Reference/dto"/>
+      <genFeatures property="None" notify="false" createChild="false" ecoreFeature="ecore:EReference environment.ecore#//Reference/containingType"/>
+      <genFeatures notify="false" createChild="false" propertySortChoices="true" ecoreFeature="ecore:EReference environment.ecore#//Reference/referencedType"/>
       <genOperations ecoreOperation="environment.ecore#//Reference/canBeOppositeOf">
         <genParameters ecoreParameter="environment.ecore#//Reference/canBeOppositeOf/opposite"/>
       </genOperations>
     </genClasses>
     <genClasses image="false" ecoreClass="environment.ecore#//Property">
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute environment.ecore#//Property/name"/>
       <genFeatures createChild="false" ecoreFeature="ecore:EAttribute environment.ecore#//Property/multiplicity"/>
+      <genFeatures createChild="false" ecoreFeature="ecore:EAttribute environment.ecore#//Property/isIdentifier"/>
     </genClasses>
     <genClasses ecoreClass="environment.ecore#//BindingInfo">
       <genFeatures property="None" children="true" createChild="true" ecoreFeature="ecore:EReference environment.ecore#//BindingInfo/references"/>
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fmodel%2Fenvironment.genmodel
21ccc37ace974b8cc0106e761e2045f8cae15448
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FAttribute.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FAttribute.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment/src/org/obeonetwork/dsl/environment/Attribute.java
 *   <li>{@link org.obeonetwork.dsl.environment.Attribute#getContainingType <em>Containing Type</em>}</li>
	 * Returns the value of the '<em><b>Containing Type</b></em>' container reference.
	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.environment.StructuredType#getOwnedAttributes <em>Owned Attributes</em>}'.
	 * If the meaning of the '<em>Containing Type</em>' container reference isn't clear,
	 * @return the value of the '<em>Containing Type</em>' container reference.
	 * @see #setContainingType(StructuredType)
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getAttribute_ContainingType()
	 * @see org.obeonetwork.dsl.environment.StructuredType#getOwnedAttributes
	StructuredType getContainingType();
	 * Sets the value of the '{@link org.obeonetwork.dsl.environment.Attribute#getContainingType <em>Containing Type</em>}' container reference.
	 * @param value the new value of the '<em>Containing Type</em>' container reference.
	 * @see #getContainingType()
	void setContainingType(StructuredType value);
 *   <li>{@link org.obeonetwork.dsl.environment.Attribute#getDto <em>Dto</em>}</li>
	 * Returns the value of the '<em><b>Dto</b></em>' container reference.
	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.environment.DTO#getOwnedAttributes <em>Owned Attributes</em>}'.
	 * If the meaning of the '<em>Dto</em>' container reference isn't clear,
	 * @return the value of the '<em>Dto</em>' container reference.
	 * @see #setDto(DTO)
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getAttribute_Dto()
	 * @see org.obeonetwork.dsl.environment.DTO#getOwnedAttributes
	DTO getDto();
	 * Sets the value of the '{@link org.obeonetwork.dsl.environment.Attribute#getDto <em>Dto</em>}' container reference.
	 * @param value the new value of the '<em>Dto</em>' container reference.
	 * @see #getDto()
	void setDto(DTO value);
@@ -21,7 +21,7 @@
  * The following features are supported:
  * <ul>
  *   <li>{@link org.obeonetwork.dsl.environment.Attribute#getType <em>Type</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.environment.Attribute#getDto <em>Dto</em>}</li>
+ *   <li>{@link org.obeonetwork.dsl.environment.Attribute#getContainingType <em>Containing Type</em>}</li>
  * </ul>
  * </p>
  *
@@ -64,31 +64,31 @@ public interface Attribute extends Property {
 	void setType(PrimitiveType value);
 
 	/**
-	 * Returns the value of the '<em><b>Dto</b></em>' container reference.
-	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.environment.DTO#getOwnedAttributes <em>Owned Attributes</em>}'.
+	 * Returns the value of the '<em><b>Containing Type</b></em>' container reference.
+	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.environment.StructuredType#getOwnedAttributes <em>Owned Attributes</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <p>
-	 * If the meaning of the '<em>Dto</em>' container reference isn't clear,
+	 * If the meaning of the '<em>Containing Type</em>' container reference isn't clear,
 	 * there really should be more of a description here...
 	 * </p>
 	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Dto</em>' container reference.
-	 * @see #setDto(DTO)
-	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getAttribute_Dto()
-	 * @see org.obeonetwork.dsl.environment.DTO#getOwnedAttributes
+	 * @return the value of the '<em>Containing Type</em>' container reference.
+	 * @see #setContainingType(StructuredType)
+	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getAttribute_ContainingType()
+	 * @see org.obeonetwork.dsl.environment.StructuredType#getOwnedAttributes
 	 * @model opposite="ownedAttributes" required="true" transient="false"
 	 * @generated
 	 */
-	DTO getDto();
+	StructuredType getContainingType();
 
 	/**
-	 * Sets the value of the '{@link org.obeonetwork.dsl.environment.Attribute#getDto <em>Dto</em>}' container reference.
+	 * Sets the value of the '{@link org.obeonetwork.dsl.environment.Attribute#getContainingType <em>Containing Type</em>}' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Dto</em>' container reference.
-	 * @see #getDto()
+	 * @param value the new value of the '<em>Containing Type</em>' container reference.
+	 * @see #getContainingType()
 	 * @generated
 	 */
-	void setDto(DTO value);
+	void setContainingType(StructuredType value);
 
 } // Attribute
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FAttribute.java
55797de58d7d8ca444325cb71f9d9b884bd62bb7
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FDTO.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FDTO.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment/src/org/obeonetwork/dsl/environment/DTO.java
import org.eclipse.emf.common.util.EList;

 *   <li>{@link org.obeonetwork.dsl.environment.DTO#getAssociatedTypes <em>Associated Types</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.environment.DTO#getProperties <em>Properties</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.environment.DTO#getReferences <em>References</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.environment.DTO#getOwnedReferences <em>Owned References</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.environment.DTO#getAttributes <em>Attributes</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.environment.DTO#getOwnedAttributes <em>Owned Attributes</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.environment.DTO#getSupertype <em>Supertype</em>}</li>
	/**
	 * Returns the value of the '<em><b>Associated Types</b></em>' reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.environment.StructuredType}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Associated Types</em>' reference list isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Associated Types</em>' reference list.
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getDTO_AssociatedTypes()
	 * @model
	 * @generated
	 */
	EList<StructuredType> getAssociatedTypes();

	/**
	 * Returns the value of the '<em><b>Properties</b></em>' reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Property}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Properties</em>' reference list isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Properties</em>' reference list.
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getDTO_Properties()
	 * @model transient="true" changeable="false" volatile="true" derived="true"
	 * @generated
	 */
	EList<Property> getProperties();

	/**
	 * Returns the value of the '<em><b>References</b></em>' reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Reference}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>References</em>' reference list isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>References</em>' reference list.
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getDTO_References()
	 * @model transient="true" changeable="false" volatile="true" derived="true"
	 * @generated
	 */
	EList<Reference> getReferences();

	/**
	 * Returns the value of the '<em><b>Owned References</b></em>' containment reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Reference}.
	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.environment.Reference#getDto <em>Dto</em>}'.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Owned References</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>Owned References</em>' containment reference list.
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getDTO_OwnedReferences()
	 * @see org.obeonetwork.dsl.environment.Reference#getDto
	 * @model opposite="dto" containment="true" resolveProxies="true"
	 * @generated
	 */
	EList<Reference> getOwnedReferences();

	/**
	 * Returns the value of the '<em><b>Attributes</b></em>' reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Attribute}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Attributes</em>' reference list isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Attributes</em>' reference list.
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getDTO_Attributes()
	 * @model transient="true" changeable="false" volatile="true" derived="true"
	 * @generated
	 */
	EList<Attribute> getAttributes();

	/**
	 * Returns the value of the '<em><b>Owned Attributes</b></em>' containment reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Attribute}.
	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.environment.Attribute#getDto <em>Dto</em>}'.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Owned Attributes</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>Owned Attributes</em>' containment reference list.
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getDTO_OwnedAttributes()
	 * @see org.obeonetwork.dsl.environment.Attribute#getDto
	 * @model opposite="dto" containment="true" resolveProxies="true"
	 * @generated
	 */
	EList<Attribute> getOwnedAttributes();

	/**
	 * Returns the value of the '<em><b>Supertype</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Supertype</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Supertype</em>' reference.
	 * @see #setSupertype(DTO)
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getDTO_Supertype()
	 * @model
	 * @generated
	 */
	DTO getSupertype();

	/**
	 * Sets the value of the '{@link org.obeonetwork.dsl.environment.DTO#getSupertype <em>Supertype</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Supertype</em>' reference.
	 * @see #getSupertype()
	 * @generated
	 */
	void setSupertype(DTO value);

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @model required="true"
	 * @generated
	 */
	boolean isSubtypeOf(DTO dto);

@@ -12,8 +12,6 @@
  */
 package org.obeonetwork.dsl.environment;
 
-import org.eclipse.emf.common.util.EList;
-
 /**
  * <!-- begin-user-doc -->
  * A representation of the model object '<em><b>DTO</b></em>'.
@@ -23,13 +21,6 @@
  * The following features are supported:
  * <ul>
  *   <li>{@link org.obeonetwork.dsl.environment.DTO#getOwnedContainer <em>Owned Container</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.environment.DTO#getAssociatedTypes <em>Associated Types</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.environment.DTO#getProperties <em>Properties</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.environment.DTO#getReferences <em>References</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.environment.DTO#getOwnedReferences <em>Owned References</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.environment.DTO#getAttributes <em>Attributes</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.environment.DTO#getOwnedAttributes <em>Owned Attributes</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.environment.DTO#getSupertype <em>Supertype</em>}</li>
  * </ul>
  * </p>
  *
@@ -71,138 +62,4 @@ public interface DTO extends StructuredType {
 	 */
 	void setOwnedContainer(FilterContainer value);
 
-	/**
-	 * Returns the value of the '<em><b>Associated Types</b></em>' reference list.
-	 * The list contents are of type {@link org.obeonetwork.dsl.environment.StructuredType}.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Associated Types</em>' reference list isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Associated Types</em>' reference list.
-	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getDTO_AssociatedTypes()
-	 * @model
-	 * @generated
-	 */
-	EList<StructuredType> getAssociatedTypes();
-
-	/**
-	 * Returns the value of the '<em><b>Properties</b></em>' reference list.
-	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Property}.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Properties</em>' reference list isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Properties</em>' reference list.
-	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getDTO_Properties()
-	 * @model transient="true" changeable="false" volatile="true" derived="true"
-	 * @generated
-	 */
-	EList<Property> getProperties();
-
-	/**
-	 * Returns the value of the '<em><b>References</b></em>' reference list.
-	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Reference}.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>References</em>' reference list isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>References</em>' reference list.
-	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getDTO_References()
-	 * @model transient="true" changeable="false" volatile="true" derived="true"
-	 * @generated
-	 */
-	EList<Reference> getReferences();
-
-	/**
-	 * Returns the value of the '<em><b>Owned References</b></em>' containment reference list.
-	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Reference}.
-	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.environment.Reference#getDto <em>Dto</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Owned References</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>Owned References</em>' containment reference list.
-	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getDTO_OwnedReferences()
-	 * @see org.obeonetwork.dsl.environment.Reference#getDto
-	 * @model opposite="dto" containment="true" resolveProxies="true"
-	 * @generated
-	 */
-	EList<Reference> getOwnedReferences();
-
-	/**
-	 * Returns the value of the '<em><b>Attributes</b></em>' reference list.
-	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Attribute}.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Attributes</em>' reference list isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Attributes</em>' reference list.
-	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getDTO_Attributes()
-	 * @model transient="true" changeable="false" volatile="true" derived="true"
-	 * @generated
-	 */
-	EList<Attribute> getAttributes();
-
-	/**
-	 * Returns the value of the '<em><b>Owned Attributes</b></em>' containment reference list.
-	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Attribute}.
-	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.environment.Attribute#getDto <em>Dto</em>}'.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Owned Attributes</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>Owned Attributes</em>' containment reference list.
-	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getDTO_OwnedAttributes()
-	 * @see org.obeonetwork.dsl.environment.Attribute#getDto
-	 * @model opposite="dto" containment="true" resolveProxies="true"
-	 * @generated
-	 */
-	EList<Attribute> getOwnedAttributes();
-
-	/**
-	 * Returns the value of the '<em><b>Supertype</b></em>' reference.
-	 * <!-- begin-user-doc -->
-	 * <p>
-	 * If the meaning of the '<em>Supertype</em>' reference isn't clear,
-	 * there really should be more of a description here...
-	 * </p>
-	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Supertype</em>' reference.
-	 * @see #setSupertype(DTO)
-	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getDTO_Supertype()
-	 * @model
-	 * @generated
-	 */
-	DTO getSupertype();
-
-	/**
-	 * Sets the value of the '{@link org.obeonetwork.dsl.environment.DTO#getSupertype <em>Supertype</em>}' reference.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Supertype</em>' reference.
-	 * @see #getSupertype()
-	 * @generated
-	 */
-	void setSupertype(DTO value);
-
-	/**
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @model required="true"
-	 * @generated
-	 */
-	boolean isSubtypeOf(DTO dto);
-
 } // DTO
\ No newline at end of file
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FDTO.java
3116b2339c707b49f0b287a50e851e129e93873c
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FEnvironment.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FEnvironment.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment/src/org/obeonetwork/dsl/environment/Environment.java
 *   <li>{@link org.obeonetwork.dsl.environment.Environment#getNamespaces <em>Namespaces</em>}</li>
	/**
	 * Returns the value of the '<em><b>Namespaces</b></em>' containment reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Namespace}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Namespaces</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>Namespaces</em>' containment reference list.
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getEnvironment_Namespaces()
	 * @model containment="true" resolveProxies="true"
	 * @generated
	 */
	EList<Namespace> getNamespaces();

@@ -27,6 +27,7 @@
  *   <li>{@link org.obeonetwork.dsl.environment.Environment#getLinks <em>Links</em>}</li>
  *   <li>{@link org.obeonetwork.dsl.environment.Environment#getPriorityDefinitions <em>Priority Definitions</em>}</li>
  *   <li>{@link org.obeonetwork.dsl.environment.Environment#getTypesDefinition <em>Types Definition</em>}</li>
+ *   <li>{@link org.obeonetwork.dsl.environment.Environment#getNamespaces <em>Namespaces</em>}</li>
  * </ul>
  * </p>
  *
@@ -152,4 +153,20 @@ public interface Environment extends ObeoDSMObject {
 	 */
 	void setTypesDefinition(TypesDefinition value);
 
+	/**
+	 * Returns the value of the '<em><b>Namespaces</b></em>' containment reference list.
+	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Namespace}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Namespaces</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>Namespaces</em>' containment reference list.
+	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getEnvironment_Namespaces()
+	 * @model containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<Namespace> getNamespaces();
+
 } // Environment
\ No newline at end of file
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FEnvironment.java
d12b9d6b00192c815cdaa2a7d68c3eedad619761
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FEnvironmentFactory.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FEnvironmentFactory.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment/src/org/obeonetwork/dsl/environment/EnvironmentFactory.java
 *
 * $Id$
@@ -7,8 +7,6 @@
  * 
  * Contributors:
  *     Obeo - initial API and implementation
- *
- * $Id$
  */
 package org.obeonetwork.dsl.environment;
 
@@ -29,6 +27,7 @@ public interface EnvironmentFactory extends EFactory {
 	 * @generated
 	 */
 	String copyright = "Copyright (c) 2008-2009 Obeo.\nAll rights reserved. This program and the accompanying materials\nare made available under the terms of the Eclipse Public License v1.0\nwhich accompanies this distribution, and is available at\nhttp://www.eclipse.org/legal/epl-v10.html\n\nContributors:\n    Obeo - initial API and implementation";
+
 	/**
 	 * The singleton instance of the factory.
 	 * <!-- begin-user-doc -->
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FEnvironmentFactory.java
14106c175d69af813b603e9f164035dbac591a3f
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FEnvironmentPackage.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FEnvironmentPackage.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment/src/org/obeonetwork/dsl/environment/EnvironmentPackage.java
	String eNS_URI = "http://www.obeonetwork.org/dsl/environment/3.0.0";
	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.EnvironmentImpl <em>Environment</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentImpl
	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getEnvironment()
	 * @generated
	 */
	int ENVIRONMENT = 0;

	/**
	 * The feature id for the '<em><b>Namespaces</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ENVIRONMENT__NAMESPACES = OBEO_DSM_OBJECT_FEATURE_COUNT + 5;

	int ENVIRONMENT_FEATURE_COUNT = OBEO_DSM_OBJECT_FEATURE_COUNT + 6;

	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.TypeImpl <em>Type</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.environment.impl.TypeImpl
	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getType()
	 * @generated
	 */
	int TYPE = 1;
	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.PrimitiveTypeImpl <em>Primitive Type</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.environment.impl.PrimitiveTypeImpl
	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getPrimitiveType()
	 * @generated
	 */
	int PRIMITIVE_TYPE = 2;

	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.EnumerationImpl <em>Enumeration</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.environment.impl.EnumerationImpl
	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getEnumeration()
	 * @generated
	 */
	int ENUMERATION = 3;

	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.FieldImpl <em>Field</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.environment.impl.FieldImpl
	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getField()
	 * @generated
	 */
	int FIELD = 4;

	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.ActionImpl <em>Action</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.environment.impl.ActionImpl
	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getAction()
	 * @generated
	 */
	int ACTION = 5;

	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.InterDSMLinkImpl <em>Inter DSM Link</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.environment.impl.InterDSMLinkImpl
	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getInterDSMLink()
	 * @generated
	 */
	int INTER_DSM_LINK = 6;

	/**
	 * The feature id for the '<em><b>Supertype</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int STRUCTURED_TYPE__SUPERTYPE = TYPE_FEATURE_COUNT + 0;

	/**
	 * The feature id for the '<em><b>Associated Types</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int STRUCTURED_TYPE__ASSOCIATED_TYPES = TYPE_FEATURE_COUNT + 1;

	/**
	 * The feature id for the '<em><b>Owned Attributes</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int STRUCTURED_TYPE__OWNED_ATTRIBUTES = TYPE_FEATURE_COUNT + 2;

	/**
	 * The feature id for the '<em><b>Attributes</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int STRUCTURED_TYPE__ATTRIBUTES = TYPE_FEATURE_COUNT + 3;

	/**
	 * The feature id for the '<em><b>Owned References</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int STRUCTURED_TYPE__OWNED_REFERENCES = TYPE_FEATURE_COUNT + 4;

	/**
	 * The feature id for the '<em><b>References</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int STRUCTURED_TYPE__REFERENCES = TYPE_FEATURE_COUNT + 5;

	/**
	 * The feature id for the '<em><b>Properties</b></em>' reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int STRUCTURED_TYPE__PROPERTIES = TYPE_FEATURE_COUNT + 6;

	int STRUCTURED_TYPE_FEATURE_COUNT = TYPE_FEATURE_COUNT + 7;
	 * The feature id for the '<em><b>Supertype</b></em>' reference.
	int DTO__SUPERTYPE = STRUCTURED_TYPE__SUPERTYPE;
	int DTO__ASSOCIATED_TYPES = STRUCTURED_TYPE__ASSOCIATED_TYPES;
	 * The feature id for the '<em><b>Owned Attributes</b></em>' containment reference list.
	int DTO__OWNED_ATTRIBUTES = STRUCTURED_TYPE__OWNED_ATTRIBUTES;
	 * The feature id for the '<em><b>Attributes</b></em>' reference list.
	int DTO__ATTRIBUTES = STRUCTURED_TYPE__ATTRIBUTES;
	int DTO__OWNED_REFERENCES = STRUCTURED_TYPE__OWNED_REFERENCES;
	 * The feature id for the '<em><b>References</b></em>' reference list.
	int DTO__REFERENCES = STRUCTURED_TYPE__REFERENCES;
	 * The feature id for the '<em><b>Properties</b></em>' reference list.
	int DTO__PROPERTIES = STRUCTURED_TYPE__PROPERTIES;
	 * The feature id for the '<em><b>Owned Container</b></em>' containment reference.
	int DTO__OWNED_CONTAINER = STRUCTURED_TYPE_FEATURE_COUNT + 0;
	int DTO_FEATURE_COUNT = STRUCTURED_TYPE_FEATURE_COUNT + 1;
	int NAMESPACE__METADATAS = TYPES_DEFINITION__METADATAS;
	int NAMESPACE__DESCRIPTION = TYPES_DEFINITION__DESCRIPTION;
	int NAMESPACE__KEYWORDS = TYPES_DEFINITION__KEYWORDS;
	int NAMESPACE__BEHAVIOURS = TYPES_DEFINITION__BEHAVIOURS;
	int NAMESPACE__BINDING_REGISTRIES = TYPES_DEFINITION__BINDING_REGISTRIES;
	int NAMESPACE__VERSION = TYPES_DEFINITION__VERSION;
	int NAMESPACE__CREATED_ON = TYPES_DEFINITION__CREATED_ON;
	int NAMESPACE__MODIFIED_ON = TYPES_DEFINITION__MODIFIED_ON;

	/**
	 * The feature id for the '<em><b>Types</b></em>' containment reference list.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int NAMESPACE__TYPES = TYPES_DEFINITION__TYPES;
	int NAMESPACE__OWNED_NAMESPACES = TYPES_DEFINITION_FEATURE_COUNT + 0;
	int NAMESPACE__OWNER = TYPES_DEFINITION_FEATURE_COUNT + 1;
	int NAMESPACE__NAME = TYPES_DEFINITION_FEATURE_COUNT + 2;
	int NAMESPACE_FEATURE_COUNT = TYPES_DEFINITION_FEATURE_COUNT + 3;
	/**
	 * The feature id for the '<em><b>Is Identifier</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int PROPERTY__IS_IDENTIFIER = OBEO_DSM_OBJECT_FEATURE_COUNT + 2;

	int PROPERTY_FEATURE_COUNT = OBEO_DSM_OBJECT_FEATURE_COUNT + 3;
	/**
	 * The feature id for the '<em><b>Is Identifier</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int ATTRIBUTE__IS_IDENTIFIER = PROPERTY__IS_IDENTIFIER;

	 * The feature id for the '<em><b>Containing Type</b></em>' container reference.
	int ATTRIBUTE__CONTAINING_TYPE = PROPERTY_FEATURE_COUNT + 1;
	/**
	 * The feature id for the '<em><b>Is Identifier</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @generated
	 * @ordered
	 */
	int REFERENCE__IS_IDENTIFIER = PROPERTY__IS_IDENTIFIER;

	 * The feature id for the '<em><b>Containing Type</b></em>' container reference.
	int REFERENCE__CONTAINING_TYPE = PROPERTY_FEATURE_COUNT + 3;
	 * The feature id for the '<em><b>Referenced Type</b></em>' reference.
	int REFERENCE__REFERENCED_TYPE = PROPERTY_FEATURE_COUNT + 4;
	/**
	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.environment.Environment#getNamespaces <em>Namespaces</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the containment reference list '<em>Namespaces</em>'.
	 * @see org.obeonetwork.dsl.environment.Environment#getNamespaces()
	 * @see #getEnvironment()
	 * @generated
	 */
	EReference getEnvironment_Namespaces();

	 * Returns the meta object for the reference '{@link org.obeonetwork.dsl.environment.StructuredType#getSupertype <em>Supertype</em>}'.
	 * @return the meta object for the reference '<em>Supertype</em>'.
	 * @see org.obeonetwork.dsl.environment.StructuredType#getSupertype()
	 * @see #getStructuredType()
	EReference getStructuredType_Supertype();
	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.environment.StructuredType#getAssociatedTypes <em>Associated Types</em>}'.
	 * @return the meta object for the reference list '<em>Associated Types</em>'.
	 * @see org.obeonetwork.dsl.environment.StructuredType#getAssociatedTypes()
	 * @see #getStructuredType()
	EReference getStructuredType_AssociatedTypes();
	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.environment.StructuredType#getOwnedAttributes <em>Owned Attributes</em>}'.
	 * @return the meta object for the containment reference list '<em>Owned Attributes</em>'.
	 * @see org.obeonetwork.dsl.environment.StructuredType#getOwnedAttributes()
	 * @see #getStructuredType()
	EReference getStructuredType_OwnedAttributes();
	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.environment.StructuredType#getAttributes <em>Attributes</em>}'.
	 * @return the meta object for the reference list '<em>Attributes</em>'.
	 * @see org.obeonetwork.dsl.environment.StructuredType#getAttributes()
	 * @see #getStructuredType()
	EReference getStructuredType_Attributes();
	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.environment.StructuredType#getOwnedReferences <em>Owned References</em>}'.
	 * @return the meta object for the containment reference list '<em>Owned References</em>'.
	 * @see org.obeonetwork.dsl.environment.StructuredType#getOwnedReferences()
	 * @see #getStructuredType()
	EReference getStructuredType_OwnedReferences();
	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.environment.StructuredType#getReferences <em>References</em>}'.
	 * @return the meta object for the reference list '<em>References</em>'.
	 * @see org.obeonetwork.dsl.environment.StructuredType#getReferences()
	 * @see #getStructuredType()
	EReference getStructuredType_References();
	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.environment.StructuredType#getProperties <em>Properties</em>}'.
	 * @return the meta object for the reference list '<em>Properties</em>'.
	 * @see org.obeonetwork.dsl.environment.StructuredType#getProperties()
	 * @see #getStructuredType()
	EReference getStructuredType_Properties();
	 * Returns the meta object for class '{@link org.obeonetwork.dsl.environment.DTO <em>DTO</em>}'.
	 * @return the meta object for class '<em>DTO</em>'.
	 * @see org.obeonetwork.dsl.environment.DTO
	EClass getDTO();
	 * Returns the meta object for the containment reference '{@link org.obeonetwork.dsl.environment.DTO#getOwnedContainer <em>Owned Container</em>}'.
	 * @return the meta object for the containment reference '<em>Owned Container</em>'.
	 * @see org.obeonetwork.dsl.environment.DTO#getOwnedContainer()
	EReference getDTO_OwnedContainer();
	 * Returns the meta object for the container reference '{@link org.obeonetwork.dsl.environment.Attribute#getContainingType <em>Containing Type</em>}'.
	 * @return the meta object for the container reference '<em>Containing Type</em>'.
	 * @see org.obeonetwork.dsl.environment.Attribute#getContainingType()
	EReference getAttribute_ContainingType();
	 * Returns the meta object for the container reference '{@link org.obeonetwork.dsl.environment.Reference#getContainingType <em>Containing Type</em>}'.
	 * @return the meta object for the container reference '<em>Containing Type</em>'.
	 * @see org.obeonetwork.dsl.environment.Reference#getContainingType()
	EReference getReference_ContainingType();
	 * Returns the meta object for the reference '{@link org.obeonetwork.dsl.environment.Reference#getReferencedType <em>Referenced Type</em>}'.
	 * @return the meta object for the reference '<em>Referenced Type</em>'.
	 * @see org.obeonetwork.dsl.environment.Reference#getReferencedType()
	EReference getReference_ReferencedType();
	/**
	 * Returns the meta object for the attribute '{@link org.obeonetwork.dsl.environment.Property#isIsIdentifier <em>Is Identifier</em>}'.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @return the meta object for the attribute '<em>Is Identifier</em>'.
	 * @see org.obeonetwork.dsl.environment.Property#isIsIdentifier()
	 * @see #getProperty()
	 * @generated
	 */
	EAttribute getProperty_IsIdentifier();

		/**
		 * The meta object literal for the '<em><b>Namespaces</b></em>' containment reference list feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EReference ENVIRONMENT__NAMESPACES = eINSTANCE
				.getEnvironment_Namespaces();

		 * The meta object literal for the '<em><b>Supertype</b></em>' reference feature.
		EReference STRUCTURED_TYPE__SUPERTYPE = eINSTANCE
				.getStructuredType_Supertype();
		 * The meta object literal for the '<em><b>Associated Types</b></em>' reference list feature.
		EReference STRUCTURED_TYPE__ASSOCIATED_TYPES = eINSTANCE
				.getStructuredType_AssociatedTypes();
		 * The meta object literal for the '<em><b>Owned Attributes</b></em>' containment reference list feature.
		EReference STRUCTURED_TYPE__OWNED_ATTRIBUTES = eINSTANCE
				.getStructuredType_OwnedAttributes();
		 * The meta object literal for the '<em><b>Attributes</b></em>' reference list feature.
		EReference STRUCTURED_TYPE__ATTRIBUTES = eINSTANCE
				.getStructuredType_Attributes();
		 * The meta object literal for the '<em><b>Owned References</b></em>' containment reference list feature.
		EReference STRUCTURED_TYPE__OWNED_REFERENCES = eINSTANCE
				.getStructuredType_OwnedReferences();
		 * The meta object literal for the '<em><b>References</b></em>' reference list feature.
		EReference STRUCTURED_TYPE__REFERENCES = eINSTANCE
				.getStructuredType_References();
		 * The meta object literal for the '<em><b>Properties</b></em>' reference list feature.
		EReference STRUCTURED_TYPE__PROPERTIES = eINSTANCE
				.getStructuredType_Properties();
		 * The meta object literal for the '{@link org.obeonetwork.dsl.environment.impl.DTOImpl <em>DTO</em>}' class.
		 * @see org.obeonetwork.dsl.environment.impl.DTOImpl
		 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getDTO()
		EClass DTO = eINSTANCE.getDTO();
		 * The meta object literal for the '<em><b>Owned Container</b></em>' containment reference feature.
		EReference DTO__OWNED_CONTAINER = eINSTANCE.getDTO_OwnedContainer();
		 * The meta object literal for the '<em><b>Containing Type</b></em>' container reference feature.
		EReference ATTRIBUTE__CONTAINING_TYPE = eINSTANCE
				.getAttribute_ContainingType();
		 * The meta object literal for the '<em><b>Containing Type</b></em>' container reference feature.
		EReference REFERENCE__CONTAINING_TYPE = eINSTANCE
				.getReference_ContainingType();
		 * The meta object literal for the '<em><b>Referenced Type</b></em>' reference feature.
		EReference REFERENCE__REFERENCED_TYPE = eINSTANCE
				.getReference_ReferencedType();
		/**
		 * The meta object literal for the '<em><b>Is Identifier</b></em>' attribute feature.
		 * <!-- begin-user-doc -->
		 * <!-- end-user-doc -->
		 * @generated
		 */
		EAttribute PROPERTY__IS_IDENTIFIER = eINSTANCE
				.getProperty_IsIdentifier();

 *
 * $Id$
	String eNS_URI = "http://www.obeonetwork.org/dsl/environment/2.0.0";
	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.EnvironmentImpl <em>Environment</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentImpl
	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getEnvironment()
	 * @generated
	 */
	int ENVIRONMENT = 0;

	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.TypeImpl <em>Type</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.environment.impl.TypeImpl
	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getType()
	 * @generated
	 */
	int TYPE = 1;

	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.PrimitiveTypeImpl <em>Primitive Type</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.environment.impl.PrimitiveTypeImpl
	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getPrimitiveType()
	 * @generated
	 */
	int PRIMITIVE_TYPE = 2;

	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.EnumerationImpl <em>Enumeration</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.environment.impl.EnumerationImpl
	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getEnumeration()
	 * @generated
	 */
	int ENUMERATION = 3;

	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.FieldImpl <em>Field</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.environment.impl.FieldImpl
	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getField()
	 * @generated
	 */
	int FIELD = 4;

	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.ActionImpl <em>Action</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.environment.impl.ActionImpl
	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getAction()
	 * @generated
	 */
	int ACTION = 5;

	/**
	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.InterDSMLinkImpl <em>Inter DSM Link</em>}' class.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @see org.obeonetwork.dsl.environment.impl.InterDSMLinkImpl
	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getInterDSMLink()
	 * @generated
	 */
	int INTER_DSM_LINK = 6;

	int ENVIRONMENT_FEATURE_COUNT = OBEO_DSM_OBJECT_FEATURE_COUNT + 5;
	int STRUCTURED_TYPE_FEATURE_COUNT = TYPE_FEATURE_COUNT + 0;
	 * The feature id for the '<em><b>Owned Container</b></em>' containment reference.
	int DTO__OWNED_CONTAINER = STRUCTURED_TYPE_FEATURE_COUNT + 0;
	int DTO__ASSOCIATED_TYPES = STRUCTURED_TYPE_FEATURE_COUNT + 1;
	 * The feature id for the '<em><b>Properties</b></em>' reference list.
	int DTO__PROPERTIES = STRUCTURED_TYPE_FEATURE_COUNT + 2;
	 * The feature id for the '<em><b>References</b></em>' reference list.
	int DTO__REFERENCES = STRUCTURED_TYPE_FEATURE_COUNT + 3;
	int DTO__OWNED_REFERENCES = STRUCTURED_TYPE_FEATURE_COUNT + 4;
	 * The feature id for the '<em><b>Attributes</b></em>' reference list.
	int DTO__ATTRIBUTES = STRUCTURED_TYPE_FEATURE_COUNT + 5;
	 * The feature id for the '<em><b>Owned Attributes</b></em>' containment reference list.
	int DTO__OWNED_ATTRIBUTES = STRUCTURED_TYPE_FEATURE_COUNT + 6;
	 * The feature id for the '<em><b>Supertype</b></em>' reference.
	int DTO__SUPERTYPE = STRUCTURED_TYPE_FEATURE_COUNT + 7;
	int DTO_FEATURE_COUNT = STRUCTURED_TYPE_FEATURE_COUNT + 8;
	int NAMESPACE__METADATAS = OBEO_DSM_OBJECT__METADATAS;
	int NAMESPACE__DESCRIPTION = OBEO_DSM_OBJECT__DESCRIPTION;
	int NAMESPACE__KEYWORDS = OBEO_DSM_OBJECT__KEYWORDS;
	int NAMESPACE__BEHAVIOURS = OBEO_DSM_OBJECT__BEHAVIOURS;
	int NAMESPACE__BINDING_REGISTRIES = OBEO_DSM_OBJECT__BINDING_REGISTRIES;
	int NAMESPACE__VERSION = OBEO_DSM_OBJECT__VERSION;
	int NAMESPACE__CREATED_ON = OBEO_DSM_OBJECT__CREATED_ON;
	int NAMESPACE__MODIFIED_ON = OBEO_DSM_OBJECT__MODIFIED_ON;
	int NAMESPACE__OWNED_NAMESPACES = OBEO_DSM_OBJECT_FEATURE_COUNT + 0;
	int NAMESPACE__OWNER = OBEO_DSM_OBJECT_FEATURE_COUNT + 1;
	int NAMESPACE__NAME = OBEO_DSM_OBJECT_FEATURE_COUNT + 2;
	int NAMESPACE_FEATURE_COUNT = OBEO_DSM_OBJECT_FEATURE_COUNT + 3;
	int PROPERTY_FEATURE_COUNT = OBEO_DSM_OBJECT_FEATURE_COUNT + 2;
	 * The feature id for the '<em><b>Dto</b></em>' container reference.
	int ATTRIBUTE__DTO = PROPERTY_FEATURE_COUNT + 1;
	 * The feature id for the '<em><b>Type</b></em>' reference.
	int REFERENCE__TYPE = PROPERTY_FEATURE_COUNT + 3;
	 * The feature id for the '<em><b>Dto</b></em>' container reference.
	int REFERENCE__DTO = PROPERTY_FEATURE_COUNT + 4;
	 * Returns the meta object for class '{@link org.obeonetwork.dsl.environment.DTO <em>DTO</em>}'.
	 * @return the meta object for class '<em>DTO</em>'.
	 * @see org.obeonetwork.dsl.environment.DTO
	EClass getDTO();
	 * Returns the meta object for the containment reference '{@link org.obeonetwork.dsl.environment.DTO#getOwnedContainer <em>Owned Container</em>}'.
	 * @return the meta object for the containment reference '<em>Owned Container</em>'.
	 * @see org.obeonetwork.dsl.environment.DTO#getOwnedContainer()
	 * @see #getDTO()
	EReference getDTO_OwnedContainer();
	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.environment.DTO#getAssociatedTypes <em>Associated Types</em>}'.
	 * @return the meta object for the reference list '<em>Associated Types</em>'.
	 * @see org.obeonetwork.dsl.environment.DTO#getAssociatedTypes()
	 * @see #getDTO()
	EReference getDTO_AssociatedTypes();
	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.environment.DTO#getProperties <em>Properties</em>}'.
	 * @return the meta object for the reference list '<em>Properties</em>'.
	 * @see org.obeonetwork.dsl.environment.DTO#getProperties()
	 * @see #getDTO()
	EReference getDTO_Properties();
	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.environment.DTO#getReferences <em>References</em>}'.
	 * @return the meta object for the reference list '<em>References</em>'.
	 * @see org.obeonetwork.dsl.environment.DTO#getReferences()
	 * @see #getDTO()
	EReference getDTO_References();
	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.environment.DTO#getOwnedReferences <em>Owned References</em>}'.
	 * @return the meta object for the containment reference list '<em>Owned References</em>'.
	 * @see org.obeonetwork.dsl.environment.DTO#getOwnedReferences()
	 * @see #getDTO()
	EReference getDTO_OwnedReferences();
	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.environment.DTO#getAttributes <em>Attributes</em>}'.
	 * @return the meta object for the reference list '<em>Attributes</em>'.
	 * @see org.obeonetwork.dsl.environment.DTO#getAttributes()
	 * @see #getDTO()
	EReference getDTO_Attributes();
	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.environment.DTO#getOwnedAttributes <em>Owned Attributes</em>}'.
	 * @return the meta object for the containment reference list '<em>Owned Attributes</em>'.
	 * @see org.obeonetwork.dsl.environment.DTO#getOwnedAttributes()
	 * @see #getDTO()
	EReference getDTO_OwnedAttributes();
	 * Returns the meta object for the reference '{@link org.obeonetwork.dsl.environment.DTO#getSupertype <em>Supertype</em>}'.
	 * @return the meta object for the reference '<em>Supertype</em>'.
	 * @see org.obeonetwork.dsl.environment.DTO#getSupertype()
	EReference getDTO_Supertype();
	 * Returns the meta object for the container reference '{@link org.obeonetwork.dsl.environment.Attribute#getDto <em>Dto</em>}'.
	 * @return the meta object for the container reference '<em>Dto</em>'.
	 * @see org.obeonetwork.dsl.environment.Attribute#getDto()
	EReference getAttribute_Dto();
	 * Returns the meta object for the reference '{@link org.obeonetwork.dsl.environment.Reference#getType <em>Type</em>}'.
	 * @return the meta object for the reference '<em>Type</em>'.
	 * @see org.obeonetwork.dsl.environment.Reference#getType()
	EReference getReference_Type();
	 * Returns the meta object for the container reference '{@link org.obeonetwork.dsl.environment.Reference#getDto <em>Dto</em>}'.
	 * @return the meta object for the container reference '<em>Dto</em>'.
	 * @see org.obeonetwork.dsl.environment.Reference#getDto()
	EReference getReference_Dto();
		 * The meta object literal for the '{@link org.obeonetwork.dsl.environment.impl.DTOImpl <em>DTO</em>}' class.
		 * @see org.obeonetwork.dsl.environment.impl.DTOImpl
		 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getDTO()
		EClass DTO = eINSTANCE.getDTO();
		 * The meta object literal for the '<em><b>Owned Container</b></em>' containment reference feature.
		EReference DTO__OWNED_CONTAINER = eINSTANCE.getDTO_OwnedContainer();
		 * The meta object literal for the '<em><b>Associated Types</b></em>' reference list feature.
		EReference DTO__ASSOCIATED_TYPES = eINSTANCE.getDTO_AssociatedTypes();
		 * The meta object literal for the '<em><b>Properties</b></em>' reference list feature.
		EReference DTO__PROPERTIES = eINSTANCE.getDTO_Properties();
		 * The meta object literal for the '<em><b>References</b></em>' reference list feature.
		EReference DTO__REFERENCES = eINSTANCE.getDTO_References();
		 * The meta object literal for the '<em><b>Owned References</b></em>' containment reference list feature.
		EReference DTO__OWNED_REFERENCES = eINSTANCE.getDTO_OwnedReferences();
		 * The meta object literal for the '<em><b>Attributes</b></em>' reference list feature.
		EReference DTO__ATTRIBUTES = eINSTANCE.getDTO_Attributes();
		 * The meta object literal for the '<em><b>Owned Attributes</b></em>' containment reference list feature.
		EReference DTO__OWNED_ATTRIBUTES = eINSTANCE.getDTO_OwnedAttributes();
		 * The meta object literal for the '<em><b>Supertype</b></em>' reference feature.
		EReference DTO__SUPERTYPE = eINSTANCE.getDTO_Supertype();
		 * The meta object literal for the '<em><b>Dto</b></em>' container reference feature.
		EReference ATTRIBUTE__DTO = eINSTANCE.getAttribute_Dto();
		 * The meta object literal for the '<em><b>Type</b></em>' reference feature.
		EReference REFERENCE__TYPE = eINSTANCE.getReference_Type();
		 * The meta object literal for the '<em><b>Dto</b></em>' container reference feature.
		EReference REFERENCE__DTO = eINSTANCE.getReference_Dto();
@@ -7,8 +7,6 @@
  * 
  * Contributors:
  *     Obeo - initial API and implementation
- *
- * $Id$
  */
 package org.obeonetwork.dsl.environment;
 
@@ -55,7 +53,7 @@ public interface EnvironmentPackage extends EPackage {
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	String eNS_URI = "http://www.obeonetwork.org/dsl/environment/2.0.0";
+	String eNS_URI = "http://www.obeonetwork.org/dsl/environment/3.0.0";
 
 	/**
 	 * The package namespace name.
@@ -74,76 +72,6 @@ public interface EnvironmentPackage extends EPackage {
 	EnvironmentPackage eINSTANCE = org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl
 			.init();
 
-	/**
-	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.EnvironmentImpl <em>Environment</em>}' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentImpl
-	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getEnvironment()
-	 * @generated
-	 */
-	int ENVIRONMENT = 0;
-
-	/**
-	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.TypeImpl <em>Type</em>}' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.obeonetwork.dsl.environment.impl.TypeImpl
-	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getType()
-	 * @generated
-	 */
-	int TYPE = 1;
-
-	/**
-	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.PrimitiveTypeImpl <em>Primitive Type</em>}' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.obeonetwork.dsl.environment.impl.PrimitiveTypeImpl
-	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getPrimitiveType()
-	 * @generated
-	 */
-	int PRIMITIVE_TYPE = 2;
-
-	/**
-	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.EnumerationImpl <em>Enumeration</em>}' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.obeonetwork.dsl.environment.impl.EnumerationImpl
-	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getEnumeration()
-	 * @generated
-	 */
-	int ENUMERATION = 3;
-
-	/**
-	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.FieldImpl <em>Field</em>}' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.obeonetwork.dsl.environment.impl.FieldImpl
-	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getField()
-	 * @generated
-	 */
-	int FIELD = 4;
-
-	/**
-	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.ActionImpl <em>Action</em>}' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.obeonetwork.dsl.environment.impl.ActionImpl
-	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getAction()
-	 * @generated
-	 */
-	int ACTION = 5;
-
-	/**
-	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.InterDSMLinkImpl <em>Inter DSM Link</em>}' class.
-	 * <!-- begin-user-doc -->
-	 * <!-- end-user-doc -->
-	 * @see org.obeonetwork.dsl.environment.impl.InterDSMLinkImpl
-	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getInterDSMLink()
-	 * @generated
-	 */
-	int INTER_DSM_LINK = 6;
-
 	/**
 	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.ObeoDSMObjectImpl <em>Obeo DSM Object</em>}' class.
 	 * <!-- begin-user-doc -->
@@ -235,6 +163,16 @@ public interface EnvironmentPackage extends EPackage {
 	 */
 	int OBEO_DSM_OBJECT_FEATURE_COUNT = 8;
 
+	/**
+	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.EnvironmentImpl <em>Environment</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentImpl
+	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getEnvironment()
+	 * @generated
+	 */
+	int ENVIRONMENT = 0;
+
 	/**
 	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
 	 * <!-- begin-user-doc -->
@@ -352,14 +290,33 @@ public interface EnvironmentPackage extends EPackage {
 	 */
 	int ENVIRONMENT__TYPES_DEFINITION = OBEO_DSM_OBJECT_FEATURE_COUNT + 4;
 
+	/**
+	 * The feature id for the '<em><b>Namespaces</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ENVIRONMENT__NAMESPACES = OBEO_DSM_OBJECT_FEATURE_COUNT + 5;
+
 	/**
 	 * The number of structural features of the '<em>Environment</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ENVIRONMENT_FEATURE_COUNT = OBEO_DSM_OBJECT_FEATURE_COUNT + 5;
+	int ENVIRONMENT_FEATURE_COUNT = OBEO_DSM_OBJECT_FEATURE_COUNT + 6;
+
+	/**
+	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.TypeImpl <em>Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.obeonetwork.dsl.environment.impl.TypeImpl
+	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getType()
+	 * @generated
+	 */
+	int TYPE = 1;
 
 	/**
 	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
@@ -460,6 +417,16 @@ public interface EnvironmentPackage extends EPackage {
 	 */
 	int TYPE_FEATURE_COUNT = OBEO_DSM_OBJECT_FEATURE_COUNT + 2;
 
+	/**
+	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.PrimitiveTypeImpl <em>Primitive Type</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.obeonetwork.dsl.environment.impl.PrimitiveTypeImpl
+	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getPrimitiveType()
+	 * @generated
+	 */
+	int PRIMITIVE_TYPE = 2;
+
 	/**
 	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
 	 * <!-- begin-user-doc -->
@@ -559,6 +526,16 @@ public interface EnvironmentPackage extends EPackage {
 	 */
 	int PRIMITIVE_TYPE_FEATURE_COUNT = TYPE_FEATURE_COUNT + 0;
 
+	/**
+	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.EnumerationImpl <em>Enumeration</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.obeonetwork.dsl.environment.impl.EnumerationImpl
+	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getEnumeration()
+	 * @generated
+	 */
+	int ENUMERATION = 3;
+
 	/**
 	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
 	 * <!-- begin-user-doc -->
@@ -667,6 +644,16 @@ public interface EnvironmentPackage extends EPackage {
 	 */
 	int ENUMERATION_FEATURE_COUNT = TYPE_FEATURE_COUNT + 1;
 
+	/**
+	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.FieldImpl <em>Field</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.obeonetwork.dsl.environment.impl.FieldImpl
+	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getField()
+	 * @generated
+	 */
+	int FIELD = 4;
+
 	/**
 	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
 	 * <!-- begin-user-doc -->
@@ -757,6 +744,16 @@ public interface EnvironmentPackage extends EPackage {
 	 */
 	int FIELD_FEATURE_COUNT = OBEO_DSM_OBJECT_FEATURE_COUNT + 1;
 
+	/**
+	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.ActionImpl <em>Action</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.obeonetwork.dsl.environment.impl.ActionImpl
+	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getAction()
+	 * @generated
+	 */
+	int ACTION = 5;
+
 	/**
 	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
 	 * <!-- begin-user-doc -->
@@ -847,6 +844,16 @@ public interface EnvironmentPackage extends EPackage {
 	 */
 	int ACTION_FEATURE_COUNT = OBEO_DSM_OBJECT_FEATURE_COUNT + 1;
 
+	/**
+	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.InterDSMLinkImpl <em>Inter DSM Link</em>}' class.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @see org.obeonetwork.dsl.environment.impl.InterDSMLinkImpl
+	 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getInterDSMLink()
+	 * @generated
+	 */
+	int INTER_DSM_LINK = 6;
+
 	/**
 	 * The feature id for the '<em><b>Metadatas</b></em>' containment reference.
 	 * <!-- begin-user-doc -->
@@ -1521,14 +1528,77 @@ public interface EnvironmentPackage extends EPackage {
 	 */
 	int STRUCTURED_TYPE__TYPE_DEFINITION = TYPE__TYPE_DEFINITION;
 
+	/**
+	 * The feature id for the '<em><b>Supertype</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int STRUCTURED_TYPE__SUPERTYPE = TYPE_FEATURE_COUNT + 0;
+
+	/**
+	 * The feature id for the '<em><b>Associated Types</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int STRUCTURED_TYPE__ASSOCIATED_TYPES = TYPE_FEATURE_COUNT + 1;
+
+	/**
+	 * The feature id for the '<em><b>Owned Attributes</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int STRUCTURED_TYPE__OWNED_ATTRIBUTES = TYPE_FEATURE_COUNT + 2;
+
+	/**
+	 * The feature id for the '<em><b>Attributes</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int STRUCTURED_TYPE__ATTRIBUTES = TYPE_FEATURE_COUNT + 3;
+
+	/**
+	 * The feature id for the '<em><b>Owned References</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int STRUCTURED_TYPE__OWNED_REFERENCES = TYPE_FEATURE_COUNT + 4;
+
+	/**
+	 * The feature id for the '<em><b>References</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int STRUCTURED_TYPE__REFERENCES = TYPE_FEATURE_COUNT + 5;
+
+	/**
+	 * The feature id for the '<em><b>Properties</b></em>' reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int STRUCTURED_TYPE__PROPERTIES = TYPE_FEATURE_COUNT + 6;
+
 	/**
 	 * The number of structural features of the '<em>Structured Type</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int STRUCTURED_TYPE_FEATURE_COUNT = TYPE_FEATURE_COUNT + 0;
+	int STRUCTURED_TYPE_FEATURE_COUNT = TYPE_FEATURE_COUNT + 7;
 
 	/**
 	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.DTOImpl <em>DTO</em>}' class.
@@ -1631,13 +1701,13 @@ public interface EnvironmentPackage extends EPackage {
 	int DTO__TYPE_DEFINITION = STRUCTURED_TYPE__TYPE_DEFINITION;
 
 	/**
-	 * The feature id for the '<em><b>Owned Container</b></em>' containment reference.
+	 * The feature id for the '<em><b>Supertype</b></em>' reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int DTO__OWNED_CONTAINER = STRUCTURED_TYPE_FEATURE_COUNT + 0;
+	int DTO__SUPERTYPE = STRUCTURED_TYPE__SUPERTYPE;
 
 	/**
 	 * The feature id for the '<em><b>Associated Types</b></em>' reference list.
@@ -1646,25 +1716,25 @@ public interface EnvironmentPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int DTO__ASSOCIATED_TYPES = STRUCTURED_TYPE_FEATURE_COUNT + 1;
+	int DTO__ASSOCIATED_TYPES = STRUCTURED_TYPE__ASSOCIATED_TYPES;
 
 	/**
-	 * The feature id for the '<em><b>Properties</b></em>' reference list.
+	 * The feature id for the '<em><b>Owned Attributes</b></em>' containment reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int DTO__PROPERTIES = STRUCTURED_TYPE_FEATURE_COUNT + 2;
+	int DTO__OWNED_ATTRIBUTES = STRUCTURED_TYPE__OWNED_ATTRIBUTES;
 
 	/**
-	 * The feature id for the '<em><b>References</b></em>' reference list.
+	 * The feature id for the '<em><b>Attributes</b></em>' reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int DTO__REFERENCES = STRUCTURED_TYPE_FEATURE_COUNT + 3;
+	int DTO__ATTRIBUTES = STRUCTURED_TYPE__ATTRIBUTES;
 
 	/**
 	 * The feature id for the '<em><b>Owned References</b></em>' containment reference list.
@@ -1673,34 +1743,34 @@ public interface EnvironmentPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int DTO__OWNED_REFERENCES = STRUCTURED_TYPE_FEATURE_COUNT + 4;
+	int DTO__OWNED_REFERENCES = STRUCTURED_TYPE__OWNED_REFERENCES;
 
 	/**
-	 * The feature id for the '<em><b>Attributes</b></em>' reference list.
+	 * The feature id for the '<em><b>References</b></em>' reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int DTO__ATTRIBUTES = STRUCTURED_TYPE_FEATURE_COUNT + 5;
+	int DTO__REFERENCES = STRUCTURED_TYPE__REFERENCES;
 
 	/**
-	 * The feature id for the '<em><b>Owned Attributes</b></em>' containment reference list.
+	 * The feature id for the '<em><b>Properties</b></em>' reference list.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int DTO__OWNED_ATTRIBUTES = STRUCTURED_TYPE_FEATURE_COUNT + 6;
+	int DTO__PROPERTIES = STRUCTURED_TYPE__PROPERTIES;
 
 	/**
-	 * The feature id for the '<em><b>Supertype</b></em>' reference.
+	 * The feature id for the '<em><b>Owned Container</b></em>' containment reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int DTO__SUPERTYPE = STRUCTURED_TYPE_FEATURE_COUNT + 7;
+	int DTO__OWNED_CONTAINER = STRUCTURED_TYPE_FEATURE_COUNT + 0;
 
 	/**
 	 * The number of structural features of the '<em>DTO</em>' class.
@@ -1709,7 +1779,7 @@ public interface EnvironmentPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int DTO_FEATURE_COUNT = STRUCTURED_TYPE_FEATURE_COUNT + 8;
+	int DTO_FEATURE_COUNT = STRUCTURED_TYPE_FEATURE_COUNT + 1;
 
 	/**
 	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.FilterContainerImpl <em>Filter Container</em>}' class.
@@ -1919,7 +1989,7 @@ public interface EnvironmentPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int NAMESPACE__METADATAS = OBEO_DSM_OBJECT__METADATAS;
+	int NAMESPACE__METADATAS = TYPES_DEFINITION__METADATAS;
 
 	/**
 	 * The feature id for the '<em><b>Description</b></em>' attribute.
@@ -1928,7 +1998,7 @@ public interface EnvironmentPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int NAMESPACE__DESCRIPTION = OBEO_DSM_OBJECT__DESCRIPTION;
+	int NAMESPACE__DESCRIPTION = TYPES_DEFINITION__DESCRIPTION;
 
 	/**
 	 * The feature id for the '<em><b>Keywords</b></em>' attribute list.
@@ -1937,7 +2007,7 @@ public interface EnvironmentPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int NAMESPACE__KEYWORDS = OBEO_DSM_OBJECT__KEYWORDS;
+	int NAMESPACE__KEYWORDS = TYPES_DEFINITION__KEYWORDS;
 
 	/**
 	 * The feature id for the '<em><b>Behaviours</b></em>' containment reference list.
@@ -1946,7 +2016,7 @@ public interface EnvironmentPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int NAMESPACE__BEHAVIOURS = OBEO_DSM_OBJECT__BEHAVIOURS;
+	int NAMESPACE__BEHAVIOURS = TYPES_DEFINITION__BEHAVIOURS;
 
 	/**
 	 * The feature id for the '<em><b>Binding Registries</b></em>' reference list.
@@ -1955,7 +2025,7 @@ public interface EnvironmentPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int NAMESPACE__BINDING_REGISTRIES = OBEO_DSM_OBJECT__BINDING_REGISTRIES;
+	int NAMESPACE__BINDING_REGISTRIES = TYPES_DEFINITION__BINDING_REGISTRIES;
 
 	/**
 	 * The feature id for the '<em><b>Version</b></em>' attribute.
@@ -1964,7 +2034,7 @@ public interface EnvironmentPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int NAMESPACE__VERSION = OBEO_DSM_OBJECT__VERSION;
+	int NAMESPACE__VERSION = TYPES_DEFINITION__VERSION;
 
 	/**
 	 * The feature id for the '<em><b>Created On</b></em>' attribute.
@@ -1973,7 +2043,7 @@ public interface EnvironmentPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int NAMESPACE__CREATED_ON = OBEO_DSM_OBJECT__CREATED_ON;
+	int NAMESPACE__CREATED_ON = TYPES_DEFINITION__CREATED_ON;
 
 	/**
 	 * The feature id for the '<em><b>Modified On</b></em>' attribute.
@@ -1982,7 +2052,16 @@ public interface EnvironmentPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int NAMESPACE__MODIFIED_ON = OBEO_DSM_OBJECT__MODIFIED_ON;
+	int NAMESPACE__MODIFIED_ON = TYPES_DEFINITION__MODIFIED_ON;
+
+	/**
+	 * The feature id for the '<em><b>Types</b></em>' containment reference list.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int NAMESPACE__TYPES = TYPES_DEFINITION__TYPES;
 
 	/**
 	 * The feature id for the '<em><b>Owned Namespaces</b></em>' containment reference list.
@@ -1991,7 +2070,7 @@ public interface EnvironmentPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int NAMESPACE__OWNED_NAMESPACES = OBEO_DSM_OBJECT_FEATURE_COUNT + 0;
+	int NAMESPACE__OWNED_NAMESPACES = TYPES_DEFINITION_FEATURE_COUNT + 0;
 
 	/**
 	 * The feature id for the '<em><b>Owner</b></em>' container reference.
@@ -2000,7 +2079,7 @@ public interface EnvironmentPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int NAMESPACE__OWNER = OBEO_DSM_OBJECT_FEATURE_COUNT + 1;
+	int NAMESPACE__OWNER = TYPES_DEFINITION_FEATURE_COUNT + 1;
 
 	/**
 	 * The feature id for the '<em><b>Name</b></em>' attribute.
@@ -2009,7 +2088,7 @@ public interface EnvironmentPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int NAMESPACE__NAME = OBEO_DSM_OBJECT_FEATURE_COUNT + 2;
+	int NAMESPACE__NAME = TYPES_DEFINITION_FEATURE_COUNT + 2;
 
 	/**
 	 * The number of structural features of the '<em>Namespace</em>' class.
@@ -2018,7 +2097,7 @@ public interface EnvironmentPackage extends EPackage {
 	 * @generated
 	 * @ordered
 	 */
-	int NAMESPACE_FEATURE_COUNT = OBEO_DSM_OBJECT_FEATURE_COUNT + 3;
+	int NAMESPACE_FEATURE_COUNT = TYPES_DEFINITION_FEATURE_COUNT + 3;
 
 	/**
 	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.PropertyImpl <em>Property</em>}' class.
@@ -2120,14 +2199,23 @@ public interface EnvironmentPackage extends EPackage {
 	 */
 	int PROPERTY__MULTIPLICITY = OBEO_DSM_OBJECT_FEATURE_COUNT + 1;
 
+	/**
+	 * The feature id for the '<em><b>Is Identifier</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int PROPERTY__IS_IDENTIFIER = OBEO_DSM_OBJECT_FEATURE_COUNT + 2;
+
 	/**
 	 * The number of structural features of the '<em>Property</em>' class.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int PROPERTY_FEATURE_COUNT = OBEO_DSM_OBJECT_FEATURE_COUNT + 2;
+	int PROPERTY_FEATURE_COUNT = OBEO_DSM_OBJECT_FEATURE_COUNT + 3;
 
 	/**
 	 * The meta object id for the '{@link org.obeonetwork.dsl.environment.impl.AttributeImpl <em>Attribute</em>}' class.
@@ -2229,6 +2317,15 @@ public interface EnvironmentPackage extends EPackage {
 	 */
 	int ATTRIBUTE__MULTIPLICITY = PROPERTY__MULTIPLICITY;
 
+	/**
+	 * The feature id for the '<em><b>Is Identifier</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int ATTRIBUTE__IS_IDENTIFIER = PROPERTY__IS_IDENTIFIER;
+
 	/**
 	 * The feature id for the '<em><b>Type</b></em>' reference.
 	 * <!-- begin-user-doc -->
@@ -2239,13 +2336,13 @@ public interface EnvironmentPackage extends EPackage {
 	int ATTRIBUTE__TYPE = PROPERTY_FEATURE_COUNT + 0;
 
 	/**
-	 * The feature id for the '<em><b>Dto</b></em>' container reference.
+	 * The feature id for the '<em><b>Containing Type</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int ATTRIBUTE__DTO = PROPERTY_FEATURE_COUNT + 1;
+	int ATTRIBUTE__CONTAINING_TYPE = PROPERTY_FEATURE_COUNT + 1;
 
 	/**
 	 * The number of structural features of the '<em>Attribute</em>' class.
@@ -2356,6 +2453,15 @@ public interface EnvironmentPackage extends EPackage {
 	 */
 	int REFERENCE__MULTIPLICITY = PROPERTY__MULTIPLICITY;
 
+	/**
+	 * The feature id for the '<em><b>Is Identifier</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @generated
+	 * @ordered
+	 */
+	int REFERENCE__IS_IDENTIFIER = PROPERTY__IS_IDENTIFIER;
+
 	/**
 	 * The feature id for the '<em><b>Is Composite</b></em>' attribute.
 	 * <!-- begin-user-doc -->
@@ -2384,22 +2490,22 @@ public interface EnvironmentPackage extends EPackage {
 	int REFERENCE__OPPOSITE_OF = PROPERTY_FEATURE_COUNT + 2;
 
 	/**
-	 * The feature id for the '<em><b>Type</b></em>' reference.
+	 * The feature id for the '<em><b>Containing Type</b></em>' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int REFERENCE__TYPE = PROPERTY_FEATURE_COUNT + 3;
+	int REFERENCE__CONTAINING_TYPE = PROPERTY_FEATURE_COUNT + 3;
 
 	/**
-	 * The feature id for the '<em><b>Dto</b></em>' container reference.
+	 * The feature id for the '<em><b>Referenced Type</b></em>' reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 * @ordered
 	 */
-	int REFERENCE__DTO = PROPERTY_FEATURE_COUNT + 4;
+	int REFERENCE__REFERENCED_TYPE = PROPERTY_FEATURE_COUNT + 4;
 
 	/**
 	 * The number of structural features of the '<em>Reference</em>' class.
@@ -3003,6 +3109,17 @@ public interface EnvironmentPackage extends EPackage {
 	 */
 	EReference getEnvironment_TypesDefinition();
 
+	/**
+	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.environment.Environment#getNamespaces <em>Namespaces</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the containment reference list '<em>Namespaces</em>'.
+	 * @see org.obeonetwork.dsl.environment.Environment#getNamespaces()
+	 * @see #getEnvironment()
+	 * @generated
+	 */
+	EReference getEnvironment_Namespaces();
+
 	/**
 	 * Returns the meta object for class '{@link org.obeonetwork.dsl.environment.Type <em>Type</em>}'.
 	 * <!-- begin-user-doc -->
@@ -3385,102 +3502,102 @@ public interface EnvironmentPackage extends EPackage {
 	EClass getStructuredType();
 
 	/**
-	 * Returns the meta object for class '{@link org.obeonetwork.dsl.environment.DTO <em>DTO</em>}'.
+	 * Returns the meta object for the reference '{@link org.obeonetwork.dsl.environment.StructuredType#getSupertype <em>Supertype</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for class '<em>DTO</em>'.
-	 * @see org.obeonetwork.dsl.environment.DTO
+	 * @return the meta object for the reference '<em>Supertype</em>'.
+	 * @see org.obeonetwork.dsl.environment.StructuredType#getSupertype()
+	 * @see #getStructuredType()
 	 * @generated
 	 */
-	EClass getDTO();
+	EReference getStructuredType_Supertype();
 
 	/**
-	 * Returns the meta object for the containment reference '{@link org.obeonetwork.dsl.environment.DTO#getOwnedContainer <em>Owned Container</em>}'.
+	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.environment.StructuredType#getAssociatedTypes <em>Associated Types</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for the containment reference '<em>Owned Container</em>'.
-	 * @see org.obeonetwork.dsl.environment.DTO#getOwnedContainer()
-	 * @see #getDTO()
+	 * @return the meta object for the reference list '<em>Associated Types</em>'.
+	 * @see org.obeonetwork.dsl.environment.StructuredType#getAssociatedTypes()
+	 * @see #getStructuredType()
 	 * @generated
 	 */
-	EReference getDTO_OwnedContainer();
+	EReference getStructuredType_AssociatedTypes();
 
 	/**
-	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.environment.DTO#getAssociatedTypes <em>Associated Types</em>}'.
+	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.environment.StructuredType#getOwnedAttributes <em>Owned Attributes</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for the reference list '<em>Associated Types</em>'.
-	 * @see org.obeonetwork.dsl.environment.DTO#getAssociatedTypes()
-	 * @see #getDTO()
+	 * @return the meta object for the containment reference list '<em>Owned Attributes</em>'.
+	 * @see org.obeonetwork.dsl.environment.StructuredType#getOwnedAttributes()
+	 * @see #getStructuredType()
 	 * @generated
 	 */
-	EReference getDTO_AssociatedTypes();
+	EReference getStructuredType_OwnedAttributes();
 
 	/**
-	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.environment.DTO#getProperties <em>Properties</em>}'.
+	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.environment.StructuredType#getAttributes <em>Attributes</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for the reference list '<em>Properties</em>'.
-	 * @see org.obeonetwork.dsl.environment.DTO#getProperties()
-	 * @see #getDTO()
+	 * @return the meta object for the reference list '<em>Attributes</em>'.
+	 * @see org.obeonetwork.dsl.environment.StructuredType#getAttributes()
+	 * @see #getStructuredType()
 	 * @generated
 	 */
-	EReference getDTO_Properties();
+	EReference getStructuredType_Attributes();
 
 	/**
-	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.environment.DTO#getReferences <em>References</em>}'.
+	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.environment.StructuredType#getOwnedReferences <em>Owned References</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for the reference list '<em>References</em>'.
-	 * @see org.obeonetwork.dsl.environment.DTO#getReferences()
-	 * @see #getDTO()
+	 * @return the meta object for the containment reference list '<em>Owned References</em>'.
+	 * @see org.obeonetwork.dsl.environment.StructuredType#getOwnedReferences()
+	 * @see #getStructuredType()
 	 * @generated
 	 */
-	EReference getDTO_References();
+	EReference getStructuredType_OwnedReferences();
 
 	/**
-	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.environment.DTO#getOwnedReferences <em>Owned References</em>}'.
+	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.environment.StructuredType#getReferences <em>References</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for the containment reference list '<em>Owned References</em>'.
-	 * @see org.obeonetwork.dsl.environment.DTO#getOwnedReferences()
-	 * @see #getDTO()
+	 * @return the meta object for the reference list '<em>References</em>'.
+	 * @see org.obeonetwork.dsl.environment.StructuredType#getReferences()
+	 * @see #getStructuredType()
 	 * @generated
 	 */
-	EReference getDTO_OwnedReferences();
+	EReference getStructuredType_References();
 
 	/**
-	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.environment.DTO#getAttributes <em>Attributes</em>}'.
+	 * Returns the meta object for the reference list '{@link org.obeonetwork.dsl.environment.StructuredType#getProperties <em>Properties</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for the reference list '<em>Attributes</em>'.
-	 * @see org.obeonetwork.dsl.environment.DTO#getAttributes()
-	 * @see #getDTO()
+	 * @return the meta object for the reference list '<em>Properties</em>'.
+	 * @see org.obeonetwork.dsl.environment.StructuredType#getProperties()
+	 * @see #getStructuredType()
 	 * @generated
 	 */
-	EReference getDTO_Attributes();
+	EReference getStructuredType_Properties();
 
 	/**
-	 * Returns the meta object for the containment reference list '{@link org.obeonetwork.dsl.environment.DTO#getOwnedAttributes <em>Owned Attributes</em>}'.
+	 * Returns the meta object for class '{@link org.obeonetwork.dsl.environment.DTO <em>DTO</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for the containment reference list '<em>Owned Attributes</em>'.
-	 * @see org.obeonetwork.dsl.environment.DTO#getOwnedAttributes()
-	 * @see #getDTO()
+	 * @return the meta object for class '<em>DTO</em>'.
+	 * @see org.obeonetwork.dsl.environment.DTO
 	 * @generated
 	 */
-	EReference getDTO_OwnedAttributes();
+	EClass getDTO();
 
 	/**
-	 * Returns the meta object for the reference '{@link org.obeonetwork.dsl.environment.DTO#getSupertype <em>Supertype</em>}'.
+	 * Returns the meta object for the containment reference '{@link org.obeonetwork.dsl.environment.DTO#getOwnedContainer <em>Owned Container</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for the reference '<em>Supertype</em>'.
-	 * @see org.obeonetwork.dsl.environment.DTO#getSupertype()
+	 * @return the meta object for the containment reference '<em>Owned Container</em>'.
+	 * @see org.obeonetwork.dsl.environment.DTO#getOwnedContainer()
 	 * @see #getDTO()
 	 * @generated
 	 */
-	EReference getDTO_Supertype();
+	EReference getDTO_OwnedContainer();
 
 	/**
 	 * Returns the meta object for class '{@link org.obeonetwork.dsl.environment.FilterContainer <em>Filter Container</em>}'.
@@ -3578,15 +3695,15 @@ public interface EnvironmentPackage extends EPackage {
 	EReference getAttribute_Type();
 
 	/**
-	 * Returns the meta object for the container reference '{@link org.obeonetwork.dsl.environment.Attribute#getDto <em>Dto</em>}'.
+	 * Returns the meta object for the container reference '{@link org.obeonetwork.dsl.environment.Attribute#getContainingType <em>Containing Type</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for the container reference '<em>Dto</em>'.
-	 * @see org.obeonetwork.dsl.environment.Attribute#getDto()
+	 * @return the meta object for the container reference '<em>Containing Type</em>'.
+	 * @see org.obeonetwork.dsl.environment.Attribute#getContainingType()
 	 * @see #getAttribute()
 	 * @generated
 	 */
-	EReference getAttribute_Dto();
+	EReference getAttribute_ContainingType();
 
 	/**
 	 * Returns the meta object for class '{@link org.obeonetwork.dsl.environment.Reference <em>Reference</em>}'.
@@ -3632,26 +3749,26 @@ public interface EnvironmentPackage extends EPackage {
 	EReference getReference_OppositeOf();
 
 	/**
-	 * Returns the meta object for the reference '{@link org.obeonetwork.dsl.environment.Reference#getType <em>Type</em>}'.
+	 * Returns the meta object for the container reference '{@link org.obeonetwork.dsl.environment.Reference#getContainingType <em>Containing Type</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for the reference '<em>Type</em>'.
-	 * @see org.obeonetwork.dsl.environment.Reference#getType()
+	 * @return the meta object for the container reference '<em>Containing Type</em>'.
+	 * @see org.obeonetwork.dsl.environment.Reference#getContainingType()
 	 * @see #getReference()
 	 * @generated
 	 */
-	EReference getReference_Type();
+	EReference getReference_ContainingType();
 
 	/**
-	 * Returns the meta object for the container reference '{@link org.obeonetwork.dsl.environment.Reference#getDto <em>Dto</em>}'.
+	 * Returns the meta object for the reference '{@link org.obeonetwork.dsl.environment.Reference#getReferencedType <em>Referenced Type</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @return the meta object for the container reference '<em>Dto</em>'.
-	 * @see org.obeonetwork.dsl.environment.Reference#getDto()
+	 * @return the meta object for the reference '<em>Referenced Type</em>'.
+	 * @see org.obeonetwork.dsl.environment.Reference#getReferencedType()
 	 * @see #getReference()
 	 * @generated
 	 */
-	EReference getReference_Dto();
+	EReference getReference_ReferencedType();
 
 	/**
 	 * Returns the meta object for class '{@link org.obeonetwork.dsl.environment.Property <em>Property</em>}'.
@@ -3685,6 +3802,17 @@ public interface EnvironmentPackage extends EPackage {
 	 */
 	EAttribute getProperty_Multiplicity();
 
+	/**
+	 * Returns the meta object for the attribute '{@link org.obeonetwork.dsl.environment.Property#isIsIdentifier <em>Is Identifier</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @return the meta object for the attribute '<em>Is Identifier</em>'.
+	 * @see org.obeonetwork.dsl.environment.Property#isIsIdentifier()
+	 * @see #getProperty()
+	 * @generated
+	 */
+	EAttribute getProperty_IsIdentifier();
+
 	/**
 	 * Returns the meta object for class '{@link org.obeonetwork.dsl.environment.BindingInfo <em>Binding Info</em>}'.
 	 * <!-- begin-user-doc -->
@@ -3984,6 +4112,15 @@ interface Literals {
 		EReference ENVIRONMENT__TYPES_DEFINITION = eINSTANCE
 				.getEnvironment_TypesDefinition();
 
+		/**
+		 * The meta object literal for the '<em><b>Namespaces</b></em>' containment reference list feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EReference ENVIRONMENT__NAMESPACES = eINSTANCE
+				.getEnvironment_Namespaces();
+
 		/**
 		 * The meta object literal for the '{@link org.obeonetwork.dsl.environment.impl.TypeImpl <em>Type</em>}' class.
 		 * <!-- begin-user-doc -->
@@ -4314,78 +4451,85 @@ interface Literals {
 		EClass STRUCTURED_TYPE = eINSTANCE.getStructuredType();
 
 		/**
-		 * The meta object literal for the '{@link org.obeonetwork.dsl.environment.impl.DTOImpl <em>DTO</em>}' class.
+		 * The meta object literal for the '<em><b>Supertype</b></em>' reference feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
-		 * @see org.obeonetwork.dsl.environment.impl.DTOImpl
-		 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getDTO()
 		 * @generated
 		 */
-		EClass DTO = eINSTANCE.getDTO();
+		EReference STRUCTURED_TYPE__SUPERTYPE = eINSTANCE
+				.getStructuredType_Supertype();
 
 		/**
-		 * The meta object literal for the '<em><b>Owned Container</b></em>' containment reference feature.
+		 * The meta object literal for the '<em><b>Associated Types</b></em>' reference list feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EReference DTO__OWNED_CONTAINER = eINSTANCE.getDTO_OwnedContainer();
+		EReference STRUCTURED_TYPE__ASSOCIATED_TYPES = eINSTANCE
+				.getStructuredType_AssociatedTypes();
 
 		/**
-		 * The meta object literal for the '<em><b>Associated Types</b></em>' reference list feature.
+		 * The meta object literal for the '<em><b>Owned Attributes</b></em>' containment reference list feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EReference DTO__ASSOCIATED_TYPES = eINSTANCE.getDTO_AssociatedTypes();
+		EReference STRUCTURED_TYPE__OWNED_ATTRIBUTES = eINSTANCE
+				.getStructuredType_OwnedAttributes();
 
 		/**
-		 * The meta object literal for the '<em><b>Properties</b></em>' reference list feature.
+		 * The meta object literal for the '<em><b>Attributes</b></em>' reference list feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EReference DTO__PROPERTIES = eINSTANCE.getDTO_Properties();
+		EReference STRUCTURED_TYPE__ATTRIBUTES = eINSTANCE
+				.getStructuredType_Attributes();
 
 		/**
-		 * The meta object literal for the '<em><b>References</b></em>' reference list feature.
+		 * The meta object literal for the '<em><b>Owned References</b></em>' containment reference list feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EReference DTO__REFERENCES = eINSTANCE.getDTO_References();
+		EReference STRUCTURED_TYPE__OWNED_REFERENCES = eINSTANCE
+				.getStructuredType_OwnedReferences();
 
 		/**
-		 * The meta object literal for the '<em><b>Owned References</b></em>' containment reference list feature.
+		 * The meta object literal for the '<em><b>References</b></em>' reference list feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EReference DTO__OWNED_REFERENCES = eINSTANCE.getDTO_OwnedReferences();
+		EReference STRUCTURED_TYPE__REFERENCES = eINSTANCE
+				.getStructuredType_References();
 
 		/**
-		 * The meta object literal for the '<em><b>Attributes</b></em>' reference list feature.
+		 * The meta object literal for the '<em><b>Properties</b></em>' reference list feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EReference DTO__ATTRIBUTES = eINSTANCE.getDTO_Attributes();
+		EReference STRUCTURED_TYPE__PROPERTIES = eINSTANCE
+				.getStructuredType_Properties();
 
 		/**
-		 * The meta object literal for the '<em><b>Owned Attributes</b></em>' containment reference list feature.
+		 * The meta object literal for the '{@link org.obeonetwork.dsl.environment.impl.DTOImpl <em>DTO</em>}' class.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
+		 * @see org.obeonetwork.dsl.environment.impl.DTOImpl
+		 * @see org.obeonetwork.dsl.environment.impl.EnvironmentPackageImpl#getDTO()
 		 * @generated
 		 */
-		EReference DTO__OWNED_ATTRIBUTES = eINSTANCE.getDTO_OwnedAttributes();
+		EClass DTO = eINSTANCE.getDTO();
 
 		/**
-		 * The meta object literal for the '<em><b>Supertype</b></em>' reference feature.
+		 * The meta object literal for the '<em><b>Owned Container</b></em>' containment reference feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EReference DTO__SUPERTYPE = eINSTANCE.getDTO_Supertype();
+		EReference DTO__OWNED_CONTAINER = eINSTANCE.getDTO_OwnedContainer();
 
 		/**
 		 * The meta object literal for the '{@link org.obeonetwork.dsl.environment.impl.FilterContainerImpl <em>Filter Container</em>}' class.
@@ -4470,12 +4614,13 @@ interface Literals {
 		EReference ATTRIBUTE__TYPE = eINSTANCE.getAttribute_Type();
 
 		/**
-		 * The meta object literal for the '<em><b>Dto</b></em>' container reference feature.
+		 * The meta object literal for the '<em><b>Containing Type</b></em>' container reference feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EReference ATTRIBUTE__DTO = eINSTANCE.getAttribute_Dto();
+		EReference ATTRIBUTE__CONTAINING_TYPE = eINSTANCE
+				.getAttribute_ContainingType();
 
 		/**
 		 * The meta object literal for the '{@link org.obeonetwork.dsl.environment.impl.ReferenceImpl <em>Reference</em>}' class.
@@ -4513,20 +4658,22 @@ interface Literals {
 		EReference REFERENCE__OPPOSITE_OF = eINSTANCE.getReference_OppositeOf();
 
 		/**
-		 * The meta object literal for the '<em><b>Type</b></em>' reference feature.
+		 * The meta object literal for the '<em><b>Containing Type</b></em>' container reference feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EReference REFERENCE__TYPE = eINSTANCE.getReference_Type();
+		EReference REFERENCE__CONTAINING_TYPE = eINSTANCE
+				.getReference_ContainingType();
 
 		/**
-		 * The meta object literal for the '<em><b>Dto</b></em>' container reference feature.
+		 * The meta object literal for the '<em><b>Referenced Type</b></em>' reference feature.
 		 * <!-- begin-user-doc -->
 		 * <!-- end-user-doc -->
 		 * @generated
 		 */
-		EReference REFERENCE__DTO = eINSTANCE.getReference_Dto();
+		EReference REFERENCE__REFERENCED_TYPE = eINSTANCE
+				.getReference_ReferencedType();
 
 		/**
 		 * The meta object literal for the '{@link org.obeonetwork.dsl.environment.impl.PropertyImpl <em>Property</em>}' class.
@@ -4555,6 +4702,15 @@ interface Literals {
 		EAttribute PROPERTY__MULTIPLICITY = eINSTANCE
 				.getProperty_Multiplicity();
 
+		/**
+		 * The meta object literal for the '<em><b>Is Identifier</b></em>' attribute feature.
+		 * <!-- begin-user-doc -->
+		 * <!-- end-user-doc -->
+		 * @generated
+		 */
+		EAttribute PROPERTY__IS_IDENTIFIER = eINSTANCE
+				.getProperty_IsIdentifier();
+
 		/**
 		 * The meta object literal for the '{@link org.obeonetwork.dsl.environment.impl.BindingInfoImpl <em>Binding Info</em>}' class.
 		 * <!-- begin-user-doc -->
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FEnvironmentPackage.java
0ad0495209f0622687e7f0ccf75ce699a21a2c88
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FNamespace.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FNamespace.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment/src/org/obeonetwork/dsl/environment/Namespace.java
public interface Namespace extends TypesDefinition {
public interface Namespace extends ObeoDSMObject {
@@ -32,7 +32,7 @@
  * @model
  * @generated
  */
-public interface Namespace extends ObeoDSMObject {
+public interface Namespace extends TypesDefinition {
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FNamespace.java
ed1b5d40d21b98228772c5487820ead8c60e6cc1
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FProperty.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FProperty.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment/src/org/obeonetwork/dsl/environment/Property.java
 *   <li>{@link org.obeonetwork.dsl.environment.Property#isIsIdentifier <em>Is Identifier</em>}</li>
	/**
	 * Returns the value of the '<em><b>Is Identifier</b></em>' attribute.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Is Identifier</em>' attribute isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Is Identifier</em>' attribute.
	 * @see #setIsIdentifier(boolean)
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getProperty_IsIdentifier()
	 * @model
	 * @generated
	 */
	boolean isIsIdentifier();

	/**
	 * Sets the value of the '{@link org.obeonetwork.dsl.environment.Property#isIsIdentifier <em>Is Identifier</em>}' attribute.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Is Identifier</em>' attribute.
	 * @see #isIsIdentifier()
	 * @generated
	 */
	void setIsIdentifier(boolean value);

@@ -22,6 +22,7 @@
  * <ul>
  *   <li>{@link org.obeonetwork.dsl.environment.Property#getName <em>Name</em>}</li>
  *   <li>{@link org.obeonetwork.dsl.environment.Property#getMultiplicity <em>Multiplicity</em>}</li>
+ *   <li>{@link org.obeonetwork.dsl.environment.Property#isIsIdentifier <em>Is Identifier</em>}</li>
  * </ul>
  * </p>
  *
@@ -92,4 +93,30 @@ public interface Property extends ObeoDSMObject, BoundableElement {
 	 */
 	void setMultiplicity(MultiplicityKind value);
 
+	/**
+	 * Returns the value of the '<em><b>Is Identifier</b></em>' attribute.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Is Identifier</em>' attribute isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Is Identifier</em>' attribute.
+	 * @see #setIsIdentifier(boolean)
+	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getProperty_IsIdentifier()
+	 * @model
+	 * @generated
+	 */
+	boolean isIsIdentifier();
+
+	/**
+	 * Sets the value of the '{@link org.obeonetwork.dsl.environment.Property#isIsIdentifier <em>Is Identifier</em>}' attribute.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Is Identifier</em>' attribute.
+	 * @see #isIsIdentifier()
+	 * @generated
+	 */
+	void setIsIdentifier(boolean value);
+
 } // Property
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FProperty.java
f0699efb354f2ec72eb48548dd5134eb2498687d
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FReference.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FReference.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment/src/org/obeonetwork/dsl/environment/Reference.java
 *   <li>{@link org.obeonetwork.dsl.environment.Reference#getContainingType <em>Containing Type</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.environment.Reference#getReferencedType <em>Referenced Type</em>}</li>
	 * The default value is <code>"true"</code>.
	 * @model default="true" required="true"
	 * Returns the value of the '<em><b>Containing Type</b></em>' container reference.
	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.environment.StructuredType#getOwnedReferences <em>Owned References</em>}'.
	 * If the meaning of the '<em>Containing Type</em>' container reference isn't clear,
	 * @return the value of the '<em>Containing Type</em>' container reference.
	 * @see #setContainingType(StructuredType)
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getReference_ContainingType()
	 * @see org.obeonetwork.dsl.environment.StructuredType#getOwnedReferences
	 * @model opposite="ownedReferences" required="true" transient="false"
	StructuredType getContainingType();
	 * Sets the value of the '{@link org.obeonetwork.dsl.environment.Reference#getContainingType <em>Containing Type</em>}' container reference.
	 * @param value the new value of the '<em>Containing Type</em>' container reference.
	 * @see #getContainingType()
	void setContainingType(StructuredType value);
	 * Returns the value of the '<em><b>Referenced Type</b></em>' reference.
	 * If the meaning of the '<em>Referenced Type</em>' reference list isn't clear,
	 * @return the value of the '<em>Referenced Type</em>' reference.
	 * @see #setReferencedType(StructuredType)
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getReference_ReferencedType()
	 * @model required="true"
	StructuredType getReferencedType();
	 * Sets the value of the '{@link org.obeonetwork.dsl.environment.Reference#getReferencedType <em>Referenced Type</em>}' reference.
	 * @param value the new value of the '<em>Referenced Type</em>' reference.
	 * @see #getReferencedType()
	void setReferencedType(StructuredType value);
 *   <li>{@link org.obeonetwork.dsl.environment.Reference#getType <em>Type</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.environment.Reference#getDto <em>Dto</em>}</li>
	 * @model required="true"
	 * Returns the value of the '<em><b>Type</b></em>' reference.
	 * If the meaning of the '<em>Type</em>' reference isn't clear,
	 * @return the value of the '<em>Type</em>' reference.
	 * @see #setType(DTO)
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getReference_Type()
	 * @model required="true"
	DTO getType();
	 * Sets the value of the '{@link org.obeonetwork.dsl.environment.Reference#getType <em>Type</em>}' reference.
	 * @param value the new value of the '<em>Type</em>' reference.
	 * @see #getType()
	void setType(DTO value);
	 * Returns the value of the '<em><b>Dto</b></em>' container reference.
	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.environment.DTO#getOwnedReferences <em>Owned References</em>}'.
	 * If the meaning of the '<em>Dto</em>' container reference isn't clear,
	 * @return the value of the '<em>Dto</em>' container reference.
	 * @see #setDto(DTO)
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getReference_Dto()
	 * @see org.obeonetwork.dsl.environment.DTO#getOwnedReferences
	 * @model opposite="ownedReferences" required="true" transient="false"
	DTO getDto();
	 * Sets the value of the '{@link org.obeonetwork.dsl.environment.Reference#getDto <em>Dto</em>}' container reference.
	 * @param value the new value of the '<em>Dto</em>' container reference.
	 * @see #getDto()
	void setDto(DTO value);
@@ -23,8 +23,8 @@
  *   <li>{@link org.obeonetwork.dsl.environment.Reference#isIsComposite <em>Is Composite</em>}</li>
  *   <li>{@link org.obeonetwork.dsl.environment.Reference#isNavigable <em>Navigable</em>}</li>
  *   <li>{@link org.obeonetwork.dsl.environment.Reference#getOppositeOf <em>Opposite Of</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.environment.Reference#getType <em>Type</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.environment.Reference#getDto <em>Dto</em>}</li>
+ *   <li>{@link org.obeonetwork.dsl.environment.Reference#getContainingType <em>Containing Type</em>}</li>
+ *   <li>{@link org.obeonetwork.dsl.environment.Reference#getReferencedType <em>Referenced Type</em>}</li>
  * </ul>
  * </p>
  *
@@ -68,6 +68,7 @@ public interface Reference extends Property {
 
 	/**
 	 * Returns the value of the '<em><b>Navigable</b></em>' attribute.
+	 * The default value is <code>"true"</code>.
 	 * <!-- begin-user-doc -->
 	 * <p>
 	 * If the meaning of the '<em>Navigable</em>' attribute isn't clear,
@@ -77,7 +78,7 @@ public interface Reference extends Property {
 	 * @return the value of the '<em>Navigable</em>' attribute.
 	 * @see #setNavigable(boolean)
 	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getReference_Navigable()
-	 * @model required="true"
+	 * @model default="true" required="true"
 	 * @generated
 	 */
 	boolean isNavigable();
@@ -119,58 +120,58 @@ public interface Reference extends Property {
 	void setOppositeOf(Reference value);
 
 	/**
-	 * Returns the value of the '<em><b>Type</b></em>' reference.
+	 * Returns the value of the '<em><b>Containing Type</b></em>' container reference.
+	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.environment.StructuredType#getOwnedReferences <em>Owned References</em>}'.
 	 * <!-- begin-user-doc -->
 	 * <p>
-	 * If the meaning of the '<em>Type</em>' reference isn't clear,
+	 * If the meaning of the '<em>Containing Type</em>' container reference isn't clear,
 	 * there really should be more of a description here...
 	 * </p>
 	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Type</em>' reference.
-	 * @see #setType(DTO)
-	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getReference_Type()
-	 * @model required="true"
+	 * @return the value of the '<em>Containing Type</em>' container reference.
+	 * @see #setContainingType(StructuredType)
+	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getReference_ContainingType()
+	 * @see org.obeonetwork.dsl.environment.StructuredType#getOwnedReferences
+	 * @model opposite="ownedReferences" required="true" transient="false"
 	 * @generated
 	 */
-	DTO getType();
+	StructuredType getContainingType();
 
 	/**
-	 * Sets the value of the '{@link org.obeonetwork.dsl.environment.Reference#getType <em>Type</em>}' reference.
+	 * Sets the value of the '{@link org.obeonetwork.dsl.environment.Reference#getContainingType <em>Containing Type</em>}' container reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Type</em>' reference.
-	 * @see #getType()
+	 * @param value the new value of the '<em>Containing Type</em>' container reference.
+	 * @see #getContainingType()
 	 * @generated
 	 */
-	void setType(DTO value);
+	void setContainingType(StructuredType value);
 
 	/**
-	 * Returns the value of the '<em><b>Dto</b></em>' container reference.
-	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.environment.DTO#getOwnedReferences <em>Owned References</em>}'.
+	 * Returns the value of the '<em><b>Referenced Type</b></em>' reference.
 	 * <!-- begin-user-doc -->
 	 * <p>
-	 * If the meaning of the '<em>Dto</em>' container reference isn't clear,
+	 * If the meaning of the '<em>Referenced Type</em>' reference list isn't clear,
 	 * there really should be more of a description here...
 	 * </p>
 	 * <!-- end-user-doc -->
-	 * @return the value of the '<em>Dto</em>' container reference.
-	 * @see #setDto(DTO)
-	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getReference_Dto()
-	 * @see org.obeonetwork.dsl.environment.DTO#getOwnedReferences
-	 * @model opposite="ownedReferences" required="true" transient="false"
+	 * @return the value of the '<em>Referenced Type</em>' reference.
+	 * @see #setReferencedType(StructuredType)
+	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getReference_ReferencedType()
+	 * @model required="true"
 	 * @generated
 	 */
-	DTO getDto();
+	StructuredType getReferencedType();
 
 	/**
-	 * Sets the value of the '{@link org.obeonetwork.dsl.environment.Reference#getDto <em>Dto</em>}' container reference.
+	 * Sets the value of the '{@link org.obeonetwork.dsl.environment.Reference#getReferencedType <em>Referenced Type</em>}' reference.
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
-	 * @param value the new value of the '<em>Dto</em>' container reference.
-	 * @see #getDto()
+	 * @param value the new value of the '<em>Referenced Type</em>' reference.
+	 * @see #getReferencedType()
 	 * @generated
 	 */
-	void setDto(DTO value);
+	void setReferencedType(StructuredType value);
 
 	/**
 	 * <!-- begin-user-doc -->
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FReference.java
c8513179df2266c1d74faf28c38c8766f8dc7ce8
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FStructuredType.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FStructuredType.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment/src/org/obeonetwork/dsl/environment/StructuredType.java
import org.eclipse.emf.common.util.EList;

 * <p>
 * The following features are supported:
 * <ul>
 *   <li>{@link org.obeonetwork.dsl.environment.StructuredType#getSupertype <em>Supertype</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.environment.StructuredType#getAssociatedTypes <em>Associated Types</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.environment.StructuredType#getOwnedAttributes <em>Owned Attributes</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.environment.StructuredType#getAttributes <em>Attributes</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.environment.StructuredType#getOwnedReferences <em>Owned References</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.environment.StructuredType#getReferences <em>References</em>}</li>
 *   <li>{@link org.obeonetwork.dsl.environment.StructuredType#getProperties <em>Properties</em>}</li>
 * </ul>
 * </p>

	/**
	 * Returns the value of the '<em><b>Supertype</b></em>' reference.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Supertype</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Supertype</em>' reference.
	 * @see #setSupertype(StructuredType)
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getStructuredType_Supertype()
	 * @model
	 * @generated
	 */
	StructuredType getSupertype();

	/**
	 * Sets the value of the '{@link org.obeonetwork.dsl.environment.StructuredType#getSupertype <em>Supertype</em>}' reference.
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @param value the new value of the '<em>Supertype</em>' reference.
	 * @see #getSupertype()
	 * @generated
	 */
	void setSupertype(StructuredType value);

	/**
	 * Returns the value of the '<em><b>Associated Types</b></em>' reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.environment.StructuredType}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Associated Types</em>' reference list isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Associated Types</em>' reference list.
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getStructuredType_AssociatedTypes()
	 * @model
	 * @generated
	 */
	EList<StructuredType> getAssociatedTypes();

	/**
	 * Returns the value of the '<em><b>Owned Attributes</b></em>' containment reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Attribute}.
	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.environment.Attribute#getContainingType <em>Containing Type</em>}'.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Owned Attributes</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Owned Attributes</em>' containment reference list.
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getStructuredType_OwnedAttributes()
	 * @see org.obeonetwork.dsl.environment.Attribute#getContainingType
	 * @model opposite="containingType" containment="true" resolveProxies="true"
	 * @generated
	 */
	EList<Attribute> getOwnedAttributes();

	/**
	 * Returns the value of the '<em><b>Attributes</b></em>' reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Attribute}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Attributes</em>' reference list isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Attributes</em>' reference list.
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getStructuredType_Attributes()
	 * @model transient="true" changeable="false" volatile="true" derived="true"
	 * @generated
	 */
	EList<Attribute> getAttributes();

	/**
	 * Returns the value of the '<em><b>Owned References</b></em>' containment reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Reference}.
	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.environment.Reference#getContainingType <em>Containing Type</em>}'.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Owned References</em>' reference isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Owned References</em>' containment reference list.
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getStructuredType_OwnedReferences()
	 * @see org.obeonetwork.dsl.environment.Reference#getContainingType
	 * @model opposite="containingType" containment="true" resolveProxies="true"
	 * @generated
	 */
	EList<Reference> getOwnedReferences();

	/**
	 * Returns the value of the '<em><b>References</b></em>' reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Reference}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>References</em>' reference list isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>References</em>' reference list.
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getStructuredType_References()
	 * @model transient="true" changeable="false" volatile="true" derived="true"
	 * @generated
	 */
	EList<Reference> getReferences();

	/**
	 * Returns the value of the '<em><b>Properties</b></em>' reference list.
	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Property}.
	 * <!-- begin-user-doc -->
	 * <p>
	 * If the meaning of the '<em>Properties</em>' reference list isn't clear,
	 * there really should be more of a description here...
	 * </p>
	 * <!-- end-user-doc -->
	 * @return the value of the '<em>Properties</em>' reference list.
	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getStructuredType_Properties()
	 * @model transient="true" changeable="false" volatile="true" derived="true"
	 * @generated
	 */
	EList<Property> getProperties();

	/**
	 * <!-- begin-user-doc -->
	 * <!-- end-user-doc -->
	 * @model required="true"
	 * @generated
	 */
	boolean isSubtypeOf(StructuredType type);
@@ -12,11 +12,25 @@
  */
 package org.obeonetwork.dsl.environment;
 
+import org.eclipse.emf.common.util.EList;
+
 /**
  * <!-- begin-user-doc -->
  * A representation of the model object '<em><b>Structured Type</b></em>'.
  * <!-- end-user-doc -->
  *
+ * <p>
+ * The following features are supported:
+ * <ul>
+ *   <li>{@link org.obeonetwork.dsl.environment.StructuredType#getSupertype <em>Supertype</em>}</li>
+ *   <li>{@link org.obeonetwork.dsl.environment.StructuredType#getAssociatedTypes <em>Associated Types</em>}</li>
+ *   <li>{@link org.obeonetwork.dsl.environment.StructuredType#getOwnedAttributes <em>Owned Attributes</em>}</li>
+ *   <li>{@link org.obeonetwork.dsl.environment.StructuredType#getAttributes <em>Attributes</em>}</li>
+ *   <li>{@link org.obeonetwork.dsl.environment.StructuredType#getOwnedReferences <em>Owned References</em>}</li>
+ *   <li>{@link org.obeonetwork.dsl.environment.StructuredType#getReferences <em>References</em>}</li>
+ *   <li>{@link org.obeonetwork.dsl.environment.StructuredType#getProperties <em>Properties</em>}</li>
+ * </ul>
+ * </p>
  *
  * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getStructuredType()
  * @model abstract="true"
@@ -30,4 +44,138 @@ public interface StructuredType extends Type {
 	 * @generated
 	 */
 	String copyright = "Copyright (c) 2008-2009 Obeo.\nAll rights reserved. This program and the accompanying materials\nare made available under the terms of the Eclipse Public License v1.0\nwhich accompanies this distribution, and is available at\nhttp://www.eclipse.org/legal/epl-v10.html\n\nContributors:\n    Obeo - initial API and implementation";
+
+	/**
+	 * Returns the value of the '<em><b>Supertype</b></em>' reference.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Supertype</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Supertype</em>' reference.
+	 * @see #setSupertype(StructuredType)
+	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getStructuredType_Supertype()
+	 * @model
+	 * @generated
+	 */
+	StructuredType getSupertype();
+
+	/**
+	 * Sets the value of the '{@link org.obeonetwork.dsl.environment.StructuredType#getSupertype <em>Supertype</em>}' reference.
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @param value the new value of the '<em>Supertype</em>' reference.
+	 * @see #getSupertype()
+	 * @generated
+	 */
+	void setSupertype(StructuredType value);
+
+	/**
+	 * Returns the value of the '<em><b>Associated Types</b></em>' reference list.
+	 * The list contents are of type {@link org.obeonetwork.dsl.environment.StructuredType}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Associated Types</em>' reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Associated Types</em>' reference list.
+	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getStructuredType_AssociatedTypes()
+	 * @model
+	 * @generated
+	 */
+	EList<StructuredType> getAssociatedTypes();
+
+	/**
+	 * Returns the value of the '<em><b>Owned Attributes</b></em>' containment reference list.
+	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Attribute}.
+	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.environment.Attribute#getContainingType <em>Containing Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Owned Attributes</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Owned Attributes</em>' containment reference list.
+	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getStructuredType_OwnedAttributes()
+	 * @see org.obeonetwork.dsl.environment.Attribute#getContainingType
+	 * @model opposite="containingType" containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<Attribute> getOwnedAttributes();
+
+	/**
+	 * Returns the value of the '<em><b>Attributes</b></em>' reference list.
+	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Attribute}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Attributes</em>' reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Attributes</em>' reference list.
+	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getStructuredType_Attributes()
+	 * @model transient="true" changeable="false" volatile="true" derived="true"
+	 * @generated
+	 */
+	EList<Attribute> getAttributes();
+
+	/**
+	 * Returns the value of the '<em><b>Owned References</b></em>' containment reference list.
+	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Reference}.
+	 * It is bidirectional and its opposite is '{@link org.obeonetwork.dsl.environment.Reference#getContainingType <em>Containing Type</em>}'.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Owned References</em>' reference isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Owned References</em>' containment reference list.
+	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getStructuredType_OwnedReferences()
+	 * @see org.obeonetwork.dsl.environment.Reference#getContainingType
+	 * @model opposite="containingType" containment="true" resolveProxies="true"
+	 * @generated
+	 */
+	EList<Reference> getOwnedReferences();
+
+	/**
+	 * Returns the value of the '<em><b>References</b></em>' reference list.
+	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Reference}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>References</em>' reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>References</em>' reference list.
+	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getStructuredType_References()
+	 * @model transient="true" changeable="false" volatile="true" derived="true"
+	 * @generated
+	 */
+	EList<Reference> getReferences();
+
+	/**
+	 * Returns the value of the '<em><b>Properties</b></em>' reference list.
+	 * The list contents are of type {@link org.obeonetwork.dsl.environment.Property}.
+	 * <!-- begin-user-doc -->
+	 * <p>
+	 * If the meaning of the '<em>Properties</em>' reference list isn't clear,
+	 * there really should be more of a description here...
+	 * </p>
+	 * <!-- end-user-doc -->
+	 * @return the value of the '<em>Properties</em>' reference list.
+	 * @see org.obeonetwork.dsl.environment.EnvironmentPackage#getStructuredType_Properties()
+	 * @model transient="true" changeable="false" volatile="true" derived="true"
+	 * @generated
+	 */
+	EList<Property> getProperties();
+
+	/**
+	 * <!-- begin-user-doc -->
+	 * <!-- end-user-doc -->
+	 * @model required="true"
+	 * @generated
+	 */
+	boolean isSubtypeOf(StructuredType type);
 } // StructuredType
\ No newline at end of file
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2FStructuredType.java
8d0cfe4477a8d131b8cb5b8e972021088fa106d0
modified
https://github.com/ObeoNetwork/InformationSystem/blob/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fimpl%2FAttributeImpl.java
https://api.github.com/repos/ObeoNetwork/InformationSystem/contents/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fimpl%2FAttributeImpl.java?ref=27802cfab9eabed1efb72ac10206fa1cc8dfd3e6
models/environment/plugins/org.obeonetwork.dsl.environment/src/org/obeonetwork/dsl/environment/impl/AttributeImpl.java
import org.obeonetwork.dsl.environment.StructuredType;
 *   <li>{@link org.obeonetwork.dsl.environment.impl.AttributeImpl#getContainingType <em>Containing Type</em>}</li>
	public StructuredType getContainingType() {
		return (StructuredType) eDynamicGet(
				EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE,
				EnvironmentPackage.Literals.ATTRIBUTE__CONTAINING_TYPE, true,
				true);
	public StructuredType basicGetContainingType() {
		return (StructuredType) eDynamicGet(
				EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE,
				EnvironmentPackage.Literals.ATTRIBUTE__CONTAINING_TYPE, false,
				true);
	public NotificationChain basicSetContainingType(
			StructuredType newContainingType, NotificationChain msgs) {
		msgs = eBasicSetContainer((InternalEObject) newContainingType,
				EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE, msgs);
	public void setContainingType(StructuredType newContainingType) {
		eDynamicSet(EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE,
				EnvironmentPackage.Literals.ATTRIBUTE__CONTAINING_TYPE,
				newContainingType);
		case EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE:
			return basicSetContainingType((StructuredType) otherEnd, msgs);
		case EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE:
			return basicSetContainingType(null, msgs);
		case EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE:
					EnvironmentPackage.STRUCTURED_TYPE__OWNED_ATTRIBUTES,
					StructuredType.class, msgs);
		case EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE:
				return getContainingType();
			return basicGetContainingType();
		case EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE:
			setContainingType((StructuredType) newValue);
		case EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE:
			setContainingType((StructuredType) null);
		case EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE:
			return basicGetContainingType() != null;
 *   <li>{@link org.obeonetwork.dsl.environment.impl.AttributeImpl#getDto <em>Dto</em>}</li>
	public DTO getDto() {
		return (DTO) eDynamicGet(EnvironmentPackage.ATTRIBUTE__DTO,
				EnvironmentPackage.Literals.ATTRIBUTE__DTO, true, true);
	public DTO basicGetDto() {
		return (DTO) eDynamicGet(EnvironmentPackage.ATTRIBUTE__DTO,
				EnvironmentPackage.Literals.ATTRIBUTE__DTO, false, true);
	public NotificationChain basicSetDto(DTO newDto, NotificationChain msgs) {
		msgs = eBasicSetContainer((InternalEObject) newDto,
				EnvironmentPackage.ATTRIBUTE__DTO, msgs);
	public void setDto(DTO newDto) {
		eDynamicSet(EnvironmentPackage.ATTRIBUTE__DTO,
				EnvironmentPackage.Literals.ATTRIBUTE__DTO, newDto);
		case EnvironmentPackage.ATTRIBUTE__DTO:
			return basicSetDto((DTO) otherEnd, msgs);
		case EnvironmentPackage.ATTRIBUTE__DTO:
			return basicSetDto(null, msgs);
		case EnvironmentPackage.ATTRIBUTE__DTO:
					EnvironmentPackage.DTO__OWNED_ATTRIBUTES, DTO.class, msgs);
		case EnvironmentPackage.ATTRIBUTE__DTO:
				return getDto();
			return basicGetDto();
		case EnvironmentPackage.ATTRIBUTE__DTO:
			setDto((DTO) newValue);
		case EnvironmentPackage.ATTRIBUTE__DTO:
			setDto((DTO) null);
		case EnvironmentPackage.ATTRIBUTE__DTO:
			return basicGetDto() != null;
@@ -19,6 +19,7 @@
 import org.obeonetwork.dsl.environment.DTO;
 import org.obeonetwork.dsl.environment.EnvironmentPackage;
 import org.obeonetwork.dsl.environment.PrimitiveType;
+import org.obeonetwork.dsl.environment.StructuredType;
 
 /**
  * <!-- begin-user-doc -->
@@ -28,7 +29,7 @@
  * The following features are implemented:
  * <ul>
  *   <li>{@link org.obeonetwork.dsl.environment.impl.AttributeImpl#getType <em>Type</em>}</li>
- *   <li>{@link org.obeonetwork.dsl.environment.impl.AttributeImpl#getDto <em>Dto</em>}</li>
+ *   <li>{@link org.obeonetwork.dsl.environment.impl.AttributeImpl#getContainingType <em>Containing Type</em>}</li>
  * </ul>
  * </p>
  *
@@ -96,29 +97,34 @@ public void setType(PrimitiveType newType) {
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public DTO getDto() {
-		return (DTO) eDynamicGet(EnvironmentPackage.ATTRIBUTE__DTO,
-				EnvironmentPackage.Literals.ATTRIBUTE__DTO, true, true);
+	public StructuredType getContainingType() {
+		return (StructuredType) eDynamicGet(
+				EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE,
+				EnvironmentPackage.Literals.ATTRIBUTE__CONTAINING_TYPE, true,
+				true);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public DTO basicGetDto() {
-		return (DTO) eDynamicGet(EnvironmentPackage.ATTRIBUTE__DTO,
-				EnvironmentPackage.Literals.ATTRIBUTE__DTO, false, true);
+	public StructuredType basicGetContainingType() {
+		return (StructuredType) eDynamicGet(
+				EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE,
+				EnvironmentPackage.Literals.ATTRIBUTE__CONTAINING_TYPE, false,
+				true);
 	}
 
 	/**
 	 * <!-- begin-user-doc -->
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public NotificationChain basicSetDto(DTO newDto, NotificationChain msgs) {
-		msgs = eBasicSetContainer((InternalEObject) newDto,
-				EnvironmentPackage.ATTRIBUTE__DTO, msgs);
+	public NotificationChain basicSetContainingType(
+			StructuredType newContainingType, NotificationChain msgs) {
+		msgs = eBasicSetContainer((InternalEObject) newContainingType,
+				EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE, msgs);
 		return msgs;
 	}
 
@@ -127,9 +133,10 @@ public NotificationChain basicSetDto(DTO newDto, NotificationChain msgs) {
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
-	public void setDto(DTO newDto) {
-		eDynamicSet(EnvironmentPackage.ATTRIBUTE__DTO,
-				EnvironmentPackage.Literals.ATTRIBUTE__DTO, newDto);
+	public void setContainingType(StructuredType newContainingType) {
+		eDynamicSet(EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE,
+				EnvironmentPackage.Literals.ATTRIBUTE__CONTAINING_TYPE,
+				newContainingType);
 	}
 
 	/**
@@ -141,10 +148,10 @@ public void setDto(DTO newDto) {
 	public NotificationChain eInverseAdd(InternalEObject otherEnd,
 			int featureID, NotificationChain msgs) {
 		switch (featureID) {
-		case EnvironmentPackage.ATTRIBUTE__DTO:
+		case EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE:
 			if (eInternalContainer() != null)
 				msgs = eBasicRemoveFromContainer(msgs);
-			return basicSetDto((DTO) otherEnd, msgs);
+			return basicSetContainingType((StructuredType) otherEnd, msgs);
 		}
 		return super.eInverseAdd(otherEnd, featureID, msgs);
 	}
@@ -158,8 +165,8 @@ public NotificationChain eInverseAdd(InternalEObject otherEnd,
 	public NotificationChain eInverseRemove(InternalEObject otherEnd,
 			int featureID, NotificationChain msgs) {
 		switch (featureID) {
-		case EnvironmentPackage.ATTRIBUTE__DTO:
-			return basicSetDto(null, msgs);
+		case EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE:
+			return basicSetContainingType(null, msgs);
 		}
 		return super.eInverseRemove(otherEnd, featureID, msgs);
 	}
@@ -173,9 +180,10 @@ public NotificationChain eInverseRemove(InternalEObject otherEnd,
 	public NotificationChain eBasicRemoveFromContainerFeature(
 			NotificationChain msgs) {
 		switch (eContainerFeatureID()) {
-		case EnvironmentPackage.ATTRIBUTE__DTO:
+		case EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE:
 			return eInternalContainer().eInverseRemove(this,
-					EnvironmentPackage.DTO__OWNED_ATTRIBUTES, DTO.class, msgs);
+					EnvironmentPackage.STRUCTURED_TYPE__OWNED_ATTRIBUTES,
+					StructuredType.class, msgs);
 		}
 		return super.eBasicRemoveFromContainerFeature(msgs);
 	}
@@ -192,10 +200,10 @@ public Object eGet(int featureID, boolean resolve, boolean coreType) {
 			if (resolve)
 				return getType();
 			return basicGetType();
-		case EnvironmentPackage.ATTRIBUTE__DTO:
+		case EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE:
 			if (resolve)
-				return getDto();
-			return basicGetDto();
+				return getContainingType();
+			return basicGetContainingType();
 		}
 		return super.eGet(featureID, resolve, coreType);
 	}
@@ -211,8 +219,8 @@ public void eSet(int featureID, Object newValue) {
 		case EnvironmentPackage.ATTRIBUTE__TYPE:
 			setType((PrimitiveType) newValue);
 			return;
-		case EnvironmentPackage.ATTRIBUTE__DTO:
-			setDto((DTO) newValue);
+		case EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE:
+			setContainingType((StructuredType) newValue);
 			return;
 		}
 		super.eSet(featureID, newValue);
@@ -229,8 +237,8 @@ public void eUnset(int featureID) {
 		case EnvironmentPackage.ATTRIBUTE__TYPE:
 			setType((PrimitiveType) null);
 			return;
-		case EnvironmentPackage.ATTRIBUTE__DTO:
-			setDto((DTO) null);
+		case EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE:
+			setContainingType((StructuredType) null);
 			return;
 		}
 		super.eUnset(featureID);
@@ -246,8 +254,8 @@ public boolean eIsSet(int featureID) {
 		switch (featureID) {
 		case EnvironmentPackage.ATTRIBUTE__TYPE:
 			return basicGetType() != null;
-		case EnvironmentPackage.ATTRIBUTE__DTO:
-			return basicGetDto() != null;
+		case EnvironmentPackage.ATTRIBUTE__CONTAINING_TYPE:
+			return basicGetContainingType() != null;
 		}
 		return super.eIsSet(featureID);
 	}
https://github.com/ObeoNetwork/InformationSystem/raw/27802cfab9eabed1efb72ac10206fa1cc8dfd3e6/models%2Fenvironment%2Fplugins%2Forg.obeonetwork.dsl.environment%2Fsrc%2Forg%2Fobeonetwork%2Fdsl%2Fenvironment%2Fimpl%2FAttributeImpl.java
48804ec0c80437ac9c0169be060d86062c8820c6
modified
obeonetwork$informationsystem
EObject newValue
referencedType.setSelection(new StructuredSelection(newValue));
			referencedType.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.referencedType);
		if (eefElementEditorReadOnlyState && referencedType.isEnabled()) {
			referencedType.setEnabled(false);
			referencedType.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
void
void setReferencedType(EObject newValue)
EObject newValue
type.setSelection(new StructuredSelection(newValue));
			type.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
		if (eefElementEditorReadOnlyState && type.isEnabled()) {
			type.setEnabled(false);
			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
void
void setType(EObject newValue)
obeonetwork$informationsystem
EObject newValue
referencedType.setSelection(new StructuredSelection(newValue));
			referencedType.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.referencedType);
		if (eefElementEditorReadOnlyState && referencedType.isEnabled()) {
			referencedType.setEnabled(false);
			referencedType.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
void
void setReferencedType(EObject newValue)
EObject newValue
type.setSelection(new StructuredSelection(newValue));
			type.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
		if (eefElementEditorReadOnlyState && type.isEnabled()) {
			type.setEnabled(false);
			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
void
void setType(EObject newValue)
obeonetwork$informationsystem
Composite parent
createDescription(parent, EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentMessages.ReferencePropertiesEditionPart_ReferencedTypeLabel);
		referencedType = new EObjectFlatComboViewer(parent, !propertiesEditionComponent.isRequired(EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentViewsRepository.SWT_KIND));
		referencedType.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
		referencedType.addSelectionChangedListener(new ISelectionChangedListener() {
				propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartImpl.this, EnvironmentViewsRepository.Reference.Properties.referencedType, PropertiesEditionEvent.CHANGE, PropertiesEditionEvent.SET, null, getReferencedType()));
		GridData referencedTypeData = new GridData(GridData.FILL_HORIZONTAL);
		referencedType.setLayoutData(referencedTypeData);
		referencedType.setID(EnvironmentViewsRepository.Reference.Properties.referencedType);
		SWTUtils.createHelpButton(parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.referencedType, EnvironmentViewsRepository.SWT_KIND), null); //$NON-NLS-1$
		// Start of user code for createReferencedTypeFlatComboViewer
	protected Composite createIdentifierCheckbox(Composite parent) {
		identifier = new Button(parent, SWT.CHECK);
		identifier.setText(getDescription(EnvironmentViewsRepository.Reference.Properties.identifier, EnvironmentMessages.ReferencePropertiesEditionPart_IdentifierLabel));
		identifier.addSelectionListener(new SelectionAdapter() {

			/**
			 * {@inheritDoc
Composite
Composite createReferencedTypeFlatComboViewer(Composite parent)
Composite parent
createDescription(parent, EnvironmentViewsRepository.Reference.Properties.type, EnvironmentMessages.ReferencePropertiesEditionPart_TypeLabel);
		type = new EObjectFlatComboViewer(parent, !propertiesEditionComponent.isRequired(EnvironmentViewsRepository.Reference.Properties.type, EnvironmentViewsRepository.SWT_KIND));
		type.setLabelProvider(new AdapterFactoryLabelProvider(adapterFactory));
		type.addSelectionChangedListener(new ISelectionChangedListener() {
				propertiesEditionComponent.firePropertiesChanged(new PropertiesEditionEvent(ReferencePropertiesEditionPartImpl.this, EnvironmentViewsRepository.Reference.Properties.type, PropertiesEditionEvent.CHANGE, PropertiesEditionEvent.SET, null, getType()));
		GridData typeData = new GridData(GridData.FILL_HORIZONTAL);
		type.setLayoutData(typeData);
		type.setID(EnvironmentViewsRepository.Reference.Properties.type);
		SWTUtils.createHelpButton(parent, propertiesEditionComponent.getHelpContent(EnvironmentViewsRepository.Reference.Properties.type, EnvironmentViewsRepository.SWT_KIND), null); //$NON-NLS-1$
		// Start of user code for createTypeFlatComboViewer
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#getType()
	public EObject getType() {
		if (type.getSelection() instanceof StructuredSelection) {
			Object firstElement = ((StructuredSelection) type.getSelection()).getFirstElement();
	 * @see org.obeonetwork.dsl.environment.parts.ReferencePropertiesEditionPart#initType(EObjectFlatComboSettings)
	public void initType(EObjectFlatComboSettings settings) {
		type.setInput(settings);
			type.setSelection(new StructuredSelection(settings.getValue()));
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
		if (eefElementEditorReadOnlyState && type.isEnabled()) {
			type.setEnabled(false);
			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
Composite
Composite createTypeFlatComboViewer(Composite parent)
obeonetwork$informationsystem
EObject newValue
referencedType.setSelection(new StructuredSelection(newValue));
			referencedType.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.referencedType);
		if (eefElementEditorReadOnlyState && referencedType.isEnabled()) {
			referencedType.setEnabled(false);
			referencedType.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
void
void setReferencedType(EObject newValue)
EObject newValue
type.setSelection(new StructuredSelection(newValue));
			type.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
		if (eefElementEditorReadOnlyState && type.isEnabled()) {
			type.setEnabled(false);
			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
void
void setType(EObject newValue)
obeonetwork$informationsystem
EObject newValue
referencedType.setSelection(new StructuredSelection(newValue));
			referencedType.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.referencedType);
		if (eefElementEditorReadOnlyState && referencedType.isEnabled()) {
			referencedType.setEnabled(false);
			referencedType.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
void
void setReferencedType(EObject newValue)
EObject newValue
type.setSelection(new StructuredSelection(newValue));
			type.setSelection(new StructuredSelection()); //$NON-NLS-1$
		boolean eefElementEditorReadOnlyState = isReadOnly(EnvironmentViewsRepository.Reference.Properties.type);
		if (eefElementEditorReadOnlyState && type.isEnabled()) {
			type.setEnabled(false);
			type.setToolTipText(EnvironmentMessages.Reference_ReadOnly);
void
void setType(EObject newValue)