diff --git a/org.example.democatalog.application/.classpath b/org.example.democatalog.application/.classpath
index f5399bf417970b282a59619955758d8918d4f107..1fa3e6803d3b22e055b735220510616c4e35f2fc 100644
--- a/org.example.democatalog.application/.classpath
+++ b/org.example.democatalog.application/.classpath
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-14"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER"/>
 	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
 	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="output" path="bin"/>
diff --git a/org.example.democatalog.application/META-INF/MANIFEST.MF b/org.example.democatalog.application/META-INF/MANIFEST.MF
index f01aab8bb3ad6bf8e3ddd51df0c943e10aeed40e..458eb24478d8294a47058e7148f19bfdeef3db2e 100644
--- a/org.example.democatalog.application/META-INF/MANIFEST.MF
+++ b/org.example.democatalog.application/META-INF/MANIFEST.MF
@@ -20,6 +20,6 @@ Require-Bundle: javax.inject;bundle-version="0.0.0",
  org.example.democatalog;bundle-version="1.0.0",
  org.example.democatalog.edit;bundle-version="1.0.0",
  org.example.democatalog.viewmodel;bundle-version="1.0.0"
-Bundle-RequiredExecutionEnvironment: JavaSE-14
+Bundle-RequiredExecutionEnvironment: JavaSE-15
 Import-Package: javax.annotation;version="0.0.0"
 Automatic-Module-Name: org.example.democatalog.application
diff --git a/org.example.democatalog.application/org.example.democatalog.application.product b/org.example.democatalog.application/org.example.democatalog.application.product
index 80672dd21782c70813b792fbdd800ad178aa6bcf..e91db3723ba13786e5437884789aeeb67d8f5695 100644
--- a/org.example.democatalog.application/org.example.democatalog.application.product
+++ b/org.example.democatalog.application/org.example.democatalog.application.product
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <?pde version="3.5"?>
 
-<product name="Demo Catalog" uid="org.example.democatalog.application.product" id="org.example.democatalog.application.product" application="org.eclipse.e4.ui.workbench.swt.E4Application" version="1.0.0.qualifier" useFeatures="true" includeLaunchers="true">
+<product name="Demo Catalog" uid="org.example.democatalog.application.product" id="org.example.democatalog.application.product" application="org.eclipse.e4.ui.workbench.swt.E4Application" version="1.0.0.qualifier" useFeatures="true" includeLaunchers="false">
 
    <configIni use="default">
    </configIni>
@@ -39,8 +39,16 @@
       <feature id="org.eclipse.emf.ecore.edit"/>
       <feature id="org.eclipse.emf.edit"/>
       <feature id="org.eclipse.emf.edit.ui"/>
+      <feature id="org.eclipse.rcp" installMode="root"/>
    </features>
 
+   <configurations>
+      <plugin id="org.apache.felix.scr" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.core.runtime" autoStart="true" startLevel="0" />
+      <plugin id="org.eclipse.equinox.common" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.event" autoStart="true" startLevel="2" />
+      <plugin id="org.eclipse.equinox.simpleconfigurator" autoStart="true" startLevel="1" />
+   </configurations>
 
    <preferencesInfo>
       <targetfile overwrite="false"/>
diff --git a/org.example.democatalog.edit/.classpath b/org.example.democatalog.edit/.classpath
index 004db3fba2030fa6e0a7da16a467101b8a4f95d6..95523745ccb62dd0650e9d0bf30f6cf550a910ab 100644
--- a/org.example.democatalog.edit/.classpath
+++ b/org.example.democatalog.edit/.classpath
@@ -1,7 +1,7 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src-gen"/>
-	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-11"/>
+	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-15"/>
 	<classpathentry kind="con" path="org.eclipse.pde.core.requiredPlugins"/>
 	<classpathentry kind="output" path="bin"/>
 </classpath>
diff --git a/org.example.democatalog.edit/META-INF/MANIFEST.MF b/org.example.democatalog.edit/META-INF/MANIFEST.MF
index fd22dd90495c90e76527138036aa1b10167c4975..bbd169fde74e2a3c4c8f5da9b7b553a289285ddf 100644
--- a/org.example.democatalog.edit/META-INF/MANIFEST.MF
+++ b/org.example.democatalog.edit/META-INF/MANIFEST.MF
@@ -8,9 +8,9 @@ Bundle-ClassPath: .
 Bundle-Activator: org.example.democatalog.provider.DemocatalogEditPlugin$Implementation
 Bundle-Vendor: %providerName
 Bundle-Localization: plugin
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-RequiredExecutionEnvironment: JavaSE-15
 Export-Package: org.example.democatalog.provider
 Require-Bundle: org.eclipse.core.runtime,
- org.example.democatalog;visibility:=reexport,
- org.eclipse.emf.edit;visibility:=reexport
+ org.eclipse.emf.edit;visibility:=reexport,
+ org.example.democatalog.model;bundle-version="1.0.0"
 Bundle-ActivationPolicy: lazy
diff --git a/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/DemocatalogItemProviderAdapterFactory.java b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/DemocatalogItemProviderAdapterFactory.java
index 7824a2c68df08af2322956326d6d50539df6a167..7da6d66e7828291145299a1f2cb583204af688e5 100644
--- a/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/DemocatalogItemProviderAdapterFactory.java
+++ b/org.example.democatalog.edit/src-gen/org/example/democatalog/provider/DemocatalogItemProviderAdapterFactory.java
@@ -216,6 +216,7 @@ public class DemocatalogItemProviderAdapterFactory extends DemocatalogAdapterFac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public ComposeableAdapterFactory getRootAdapterFactory() {
 		return parentAdapterFactory == null ? this : parentAdapterFactory.getRootAdapterFactory();
 	}
@@ -226,6 +227,7 @@ public class DemocatalogItemProviderAdapterFactory extends DemocatalogAdapterFac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public void setParentAdapterFactory(ComposedAdapterFactory parentAdapterFactory) {
 		this.parentAdapterFactory = parentAdapterFactory;
 	}
@@ -274,6 +276,7 @@ public class DemocatalogItemProviderAdapterFactory extends DemocatalogAdapterFac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public void addListener(INotifyChangedListener notifyChangedListener) {
 		changeNotifier.addListener(notifyChangedListener);
 	}
@@ -284,6 +287,7 @@ public class DemocatalogItemProviderAdapterFactory extends DemocatalogAdapterFac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public void removeListener(INotifyChangedListener notifyChangedListener) {
 		changeNotifier.removeListener(notifyChangedListener);
 	}
@@ -294,6 +298,7 @@ public class DemocatalogItemProviderAdapterFactory extends DemocatalogAdapterFac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public void fireNotifyChanged(Notification notification) {
 		changeNotifier.fireNotifyChanged(notification);
 
@@ -308,6 +313,7 @@ public class DemocatalogItemProviderAdapterFactory extends DemocatalogAdapterFac
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public void dispose() {
 		if (energyComponentCatalogItemProvider != null)
 			energyComponentCatalogItemProvider.dispose();
diff --git a/org.example.democatalog/.classpath b/org.example.democatalog.model/.classpath
similarity index 90%
rename from org.example.democatalog/.classpath
rename to org.example.democatalog.model/.classpath
index 9ecc2e8edf1b52afa539ab459e92e38b3eadc330..803d9d455a624d4d9a6defde0e099193850239cd 100644
--- a/org.example.democatalog/.classpath
+++ b/org.example.democatalog.model/.classpath
@@ -1,7 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <classpath>
 	<classpathentry kind="src" path="src-gen"/>
-	<classpathentry kind="src" path="src"/>
 	<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER">
 		<attributes>
 			<attribute name="module" value="true"/>
diff --git a/org.example.democatalog/.project b/org.example.democatalog.model/.project
similarity index 93%
rename from org.example.democatalog/.project
rename to org.example.democatalog.model/.project
index 07aa22faa151e450999b5b33d8cae08e618f7f36..fb66a61c1aa03884081b5ebb6614dc857f96932c 100644
--- a/org.example.democatalog/.project
+++ b/org.example.democatalog.model/.project
@@ -1,6 +1,6 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <projectDescription>
-	<name>org.example.democatalog</name>
+	<name>org.example.democatalog.model</name>
 	<comment></comment>
 	<projects>
 	</projects>
diff --git a/org.example.democatalog/META-INF/MANIFEST.MF b/org.example.democatalog.model/META-INF/MANIFEST.MF
similarity index 79%
rename from org.example.democatalog/META-INF/MANIFEST.MF
rename to org.example.democatalog.model/META-INF/MANIFEST.MF
index a212804d79188f5ee5c4bba31dbb91e2dbbccd38..1542aa83c868d2f07ec6bd92fab2ca7c02fc3477 100644
--- a/org.example.democatalog/META-INF/MANIFEST.MF
+++ b/org.example.democatalog.model/META-INF/MANIFEST.MF
@@ -1,13 +1,13 @@
 Manifest-Version: 1.0
 Bundle-ManifestVersion: 2
 Bundle-Name: %pluginName
-Bundle-SymbolicName: org.example.democatalog;singleton:=true
+Bundle-SymbolicName: org.example.democatalog.model;singleton:=true
 Automatic-Module-Name: org.example.democatalog
 Bundle-Version: 1.0.0.qualifier
 Bundle-ClassPath: .
 Bundle-Vendor: %providerName
 Bundle-Localization: plugin
-Bundle-RequiredExecutionEnvironment: J2SE-1.5
+Bundle-RequiredExecutionEnvironment: JavaSE-15
 Export-Package: org.example.democatalog,
  org.example.democatalog.impl,
  org.example.democatalog.util
diff --git a/org.example.democatalog/build.properties b/org.example.democatalog.model/build.properties
similarity index 100%
rename from org.example.democatalog/build.properties
rename to org.example.democatalog.model/build.properties
diff --git a/org.example.democatalog/model/democatalog.aird b/org.example.democatalog.model/model/democatalog.aird
similarity index 100%
rename from org.example.democatalog/model/democatalog.aird
rename to org.example.democatalog.model/model/democatalog.aird
diff --git a/org.example.democatalog/model/democatalog.ecore b/org.example.democatalog.model/model/democatalog.ecore
similarity index 100%
rename from org.example.democatalog/model/democatalog.ecore
rename to org.example.democatalog.model/model/democatalog.ecore
diff --git a/org.example.democatalog/model/democatalog.genmodel b/org.example.democatalog.model/model/democatalog.genmodel
similarity index 97%
rename from org.example.democatalog/model/democatalog.genmodel
rename to org.example.democatalog.model/model/democatalog.genmodel
index cc65a31d4e538756740447712e2244f7daf8434c..ff46aa6d425cfa3d449b4bc00c0f33dbb582034e 100644
--- a/org.example.democatalog/model/democatalog.genmodel
+++ b/org.example.democatalog.model/model/democatalog.genmodel
@@ -1,10 +1,10 @@
 <?xml version="1.0" encoding="UTF-8"?>
 <genmodel:GenModel xmi:version="2.0" xmlns:xmi="http://www.omg.org/XMI" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
     xmlns:ecore="http://www.eclipse.org/emf/2002/Ecore" xmlns:genmodel="http://www.eclipse.org/emf/2002/GenModel"
-    modelDirectory="/org.example.democatalog/src-gen" creationIcons="false"
+    modelDirectory="/org.example.democatalog.model/src-gen" creationIcons="false"
     editDirectory="/org.example.democatalog.edit/src-gen" editorDirectory="/org.example.democatalog.editor/src-gen"
     modelPluginID="org.example.democatalog" modelName="Democatalog" rootExtendsClass="org.eclipse.emf.ecore.impl.MinimalEObjectImpl$Container"
-    codeFormatting="true" importerID="org.eclipse.emf.importer.ecore" complianceLevel="5.0"
+    codeFormatting="true" importerID="org.eclipse.emf.importer.ecore" complianceLevel="15.0"
     copyrightFields="false" operationReflection="true" importOrganizing="true">
   <foreignModel>democatalog.ecore</foreignModel>
   <testsDirectory xsi:nil="true"/>
diff --git a/org.example.democatalog/plugin.properties b/org.example.democatalog.model/plugin.properties
similarity index 100%
rename from org.example.democatalog/plugin.properties
rename to org.example.democatalog.model/plugin.properties
diff --git a/org.example.democatalog/plugin.xml b/org.example.democatalog.model/plugin.xml
similarity index 100%
rename from org.example.democatalog/plugin.xml
rename to org.example.democatalog.model/plugin.xml
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/Boiler.java b/org.example.democatalog.model/src-gen/org/example/democatalog/Boiler.java
similarity index 100%
rename from org.example.democatalog/src-gen/org/example/democatalog/Boiler.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/Boiler.java
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/BoilerType.java b/org.example.democatalog.model/src-gen/org/example/democatalog/BoilerType.java
similarity index 99%
rename from org.example.democatalog/src-gen/org/example/democatalog/BoilerType.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/BoilerType.java
index 1aa15fa427557bfb4e2b8a8c59418ef9b1bb9523..a07136728c2f2c128496304841b633303900559c 100644
--- a/org.example.democatalog/src-gen/org/example/democatalog/BoilerType.java
+++ b/org.example.democatalog.model/src-gen/org/example/democatalog/BoilerType.java
@@ -168,6 +168,7 @@ public enum BoilerType implements Enumerator {
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public int getValue() {
 		return value;
 	}
@@ -177,6 +178,7 @@ public enum BoilerType implements Enumerator {
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public String getName() {
 		return name;
 	}
@@ -186,6 +188,7 @@ public enum BoilerType implements Enumerator {
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public String getLiteral() {
 		return literal;
 	}
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/ChemicalDevice.java b/org.example.democatalog.model/src-gen/org/example/democatalog/ChemicalDevice.java
similarity index 100%
rename from org.example.democatalog/src-gen/org/example/democatalog/ChemicalDevice.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/ChemicalDevice.java
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/CombinedHeatPower.java b/org.example.democatalog.model/src-gen/org/example/democatalog/CombinedHeatPower.java
similarity index 100%
rename from org.example.democatalog/src-gen/org/example/democatalog/CombinedHeatPower.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/CombinedHeatPower.java
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/DemocatalogFactory.java b/org.example.democatalog.model/src-gen/org/example/democatalog/DemocatalogFactory.java
similarity index 100%
rename from org.example.democatalog/src-gen/org/example/democatalog/DemocatalogFactory.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/DemocatalogFactory.java
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/DemocatalogPackage.java b/org.example.democatalog.model/src-gen/org/example/democatalog/DemocatalogPackage.java
similarity index 100%
rename from org.example.democatalog/src-gen/org/example/democatalog/DemocatalogPackage.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/DemocatalogPackage.java
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/ElectricalDevice.java b/org.example.democatalog.model/src-gen/org/example/democatalog/ElectricalDevice.java
similarity index 100%
rename from org.example.democatalog/src-gen/org/example/democatalog/ElectricalDevice.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/ElectricalDevice.java
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/EnergyComponent.java b/org.example.democatalog.model/src-gen/org/example/democatalog/EnergyComponent.java
similarity index 100%
rename from org.example.democatalog/src-gen/org/example/democatalog/EnergyComponent.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/EnergyComponent.java
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/EnergyComponentCatalog.java b/org.example.democatalog.model/src-gen/org/example/democatalog/EnergyComponentCatalog.java
similarity index 100%
rename from org.example.democatalog/src-gen/org/example/democatalog/EnergyComponentCatalog.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/EnergyComponentCatalog.java
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/Inverter.java b/org.example.democatalog.model/src-gen/org/example/democatalog/Inverter.java
similarity index 100%
rename from org.example.democatalog/src-gen/org/example/democatalog/Inverter.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/Inverter.java
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/Manufacturer.java b/org.example.democatalog.model/src-gen/org/example/democatalog/Manufacturer.java
similarity index 100%
rename from org.example.democatalog/src-gen/org/example/democatalog/Manufacturer.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/Manufacturer.java
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/SolarPanel.java b/org.example.democatalog.model/src-gen/org/example/democatalog/SolarPanel.java
similarity index 100%
rename from org.example.democatalog/src-gen/org/example/democatalog/SolarPanel.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/SolarPanel.java
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/BoilerImpl.java b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/BoilerImpl.java
similarity index 99%
rename from org.example.democatalog/src-gen/org/example/democatalog/impl/BoilerImpl.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/impl/BoilerImpl.java
index d5f72e888ed49c6f5a446169ab1951ac3e7bff60..4c6b43393fdc2e7477baa9f4704c103eccdf8efb 100644
--- a/org.example.democatalog/src-gen/org/example/democatalog/impl/BoilerImpl.java
+++ b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/BoilerImpl.java
@@ -70,6 +70,7 @@ public class BoilerImpl extends ChemicalDeviceImpl implements Boiler {
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public BoilerType getBoilerType() {
 		return boilerType;
 	}
@@ -79,6 +80,7 @@ public class BoilerImpl extends ChemicalDeviceImpl implements Boiler {
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public void setBoilerType(BoilerType newBoilerType) {
 		BoilerType oldBoilerType = boilerType;
 		boilerType = newBoilerType == null ? BOILER_TYPE_EDEFAULT : newBoilerType;
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/ChemicalDeviceImpl.java b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/ChemicalDeviceImpl.java
similarity index 99%
rename from org.example.democatalog/src-gen/org/example/democatalog/impl/ChemicalDeviceImpl.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/impl/ChemicalDeviceImpl.java
index 43dc55ba6575da8f79cccc2fa9bf8f32da45a56b..a6773ad28d174f6e26a7083d0568fbbafdb93b1e 100644
--- a/org.example.democatalog/src-gen/org/example/democatalog/impl/ChemicalDeviceImpl.java
+++ b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/ChemicalDeviceImpl.java
@@ -69,6 +69,7 @@ public abstract class ChemicalDeviceImpl extends EnergyComponentImpl implements
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public double getInstalledThermalPower() {
 		return installedThermalPower;
 	}
@@ -78,6 +79,7 @@ public abstract class ChemicalDeviceImpl extends EnergyComponentImpl implements
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public void setInstalledThermalPower(double newInstalledThermalPower) {
 		double oldInstalledThermalPower = installedThermalPower;
 		installedThermalPower = newInstalledThermalPower;
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/CombinedHeatPowerImpl.java b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/CombinedHeatPowerImpl.java
similarity index 99%
rename from org.example.democatalog/src-gen/org/example/democatalog/impl/CombinedHeatPowerImpl.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/impl/CombinedHeatPowerImpl.java
index 14eed755bb296143b5484534fdc0295ab076480a..b33bdcab425d4b57849bf253420b9a8fa92bbd9b 100644
--- a/org.example.democatalog/src-gen/org/example/democatalog/impl/CombinedHeatPowerImpl.java
+++ b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/CombinedHeatPowerImpl.java
@@ -69,6 +69,7 @@ public class CombinedHeatPowerImpl extends ChemicalDeviceImpl implements Combine
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public double getThermalEfficiency() {
 		return thermalEfficiency;
 	}
@@ -78,6 +79,7 @@ public class CombinedHeatPowerImpl extends ChemicalDeviceImpl implements Combine
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public void setThermalEfficiency(double newThermalEfficiency) {
 		double oldThermalEfficiency = thermalEfficiency;
 		thermalEfficiency = newThermalEfficiency;
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/DemocatalogFactoryImpl.java b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/DemocatalogFactoryImpl.java
similarity index 98%
rename from org.example.democatalog/src-gen/org/example/democatalog/impl/DemocatalogFactoryImpl.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/impl/DemocatalogFactoryImpl.java
index 32deb2169d1048ff63e5e63e52d0653a2d7abb3d..3d8837db7d92771f772e4c4f69b8c98469bc177c 100644
--- a/org.example.democatalog/src-gen/org/example/democatalog/impl/DemocatalogFactoryImpl.java
+++ b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/DemocatalogFactoryImpl.java
@@ -109,6 +109,7 @@ public class DemocatalogFactoryImpl extends EFactoryImpl implements DemocatalogF
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EnergyComponentCatalog createEnergyComponentCatalog() {
 		EnergyComponentCatalogImpl energyComponentCatalog = new EnergyComponentCatalogImpl();
 		return energyComponentCatalog;
@@ -119,6 +120,7 @@ public class DemocatalogFactoryImpl extends EFactoryImpl implements DemocatalogF
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public Boiler createBoiler() {
 		BoilerImpl boiler = new BoilerImpl();
 		return boiler;
@@ -129,6 +131,7 @@ public class DemocatalogFactoryImpl extends EFactoryImpl implements DemocatalogF
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public CombinedHeatPower createCombinedHeatPower() {
 		CombinedHeatPowerImpl combinedHeatPower = new CombinedHeatPowerImpl();
 		return combinedHeatPower;
@@ -139,6 +142,7 @@ public class DemocatalogFactoryImpl extends EFactoryImpl implements DemocatalogF
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public SolarPanel createSolarPanel() {
 		SolarPanelImpl solarPanel = new SolarPanelImpl();
 		return solarPanel;
@@ -149,6 +153,7 @@ public class DemocatalogFactoryImpl extends EFactoryImpl implements DemocatalogF
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public Inverter createInverter() {
 		InverterImpl inverter = new InverterImpl();
 		return inverter;
@@ -159,6 +164,7 @@ public class DemocatalogFactoryImpl extends EFactoryImpl implements DemocatalogF
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public Manufacturer createManufacturer() {
 		ManufacturerImpl manufacturer = new ManufacturerImpl();
 		return manufacturer;
@@ -191,6 +197,7 @@ public class DemocatalogFactoryImpl extends EFactoryImpl implements DemocatalogF
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public DemocatalogPackage getDemocatalogPackage() {
 		return (DemocatalogPackage) getEPackage();
 	}
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/DemocatalogPackageImpl.java b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/DemocatalogPackageImpl.java
similarity index 98%
rename from org.example.democatalog/src-gen/org/example/democatalog/impl/DemocatalogPackageImpl.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/impl/DemocatalogPackageImpl.java
index e85f4d0dcd6a8ceecaad62aee308648594567adc..d99ed3ce2d40052c30cf1e622c65b09ad1e7606b 100644
--- a/org.example.democatalog/src-gen/org/example/democatalog/impl/DemocatalogPackageImpl.java
+++ b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/DemocatalogPackageImpl.java
@@ -169,6 +169,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getEnergyComponentCatalog() {
 		return energyComponentCatalogEClass;
 	}
@@ -178,6 +179,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EAttribute getEnergyComponentCatalog_Author() {
 		return (EAttribute) energyComponentCatalogEClass.getEStructuralFeatures().get(0);
 	}
@@ -187,6 +189,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getEnergyComponentCatalog_Boilers() {
 		return (EReference) energyComponentCatalogEClass.getEStructuralFeatures().get(1);
 	}
@@ -196,6 +199,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getEnergyComponentCatalog_Chps() {
 		return (EReference) energyComponentCatalogEClass.getEStructuralFeatures().get(2);
 	}
@@ -205,6 +209,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getEnergyComponentCatalog_SolarPanels() {
 		return (EReference) energyComponentCatalogEClass.getEStructuralFeatures().get(3);
 	}
@@ -214,6 +219,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getEnergyComponentCatalog_Inverters() {
 		return (EReference) energyComponentCatalogEClass.getEStructuralFeatures().get(4);
 	}
@@ -223,6 +229,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getEnergyComponentCatalog_Manufacturers() {
 		return (EReference) energyComponentCatalogEClass.getEStructuralFeatures().get(5);
 	}
@@ -232,6 +239,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getBoiler() {
 		return boilerEClass;
 	}
@@ -241,6 +249,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EAttribute getBoiler_BoilerType() {
 		return (EAttribute) boilerEClass.getEStructuralFeatures().get(0);
 	}
@@ -250,6 +259,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getCombinedHeatPower() {
 		return combinedHeatPowerEClass;
 	}
@@ -259,6 +269,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EAttribute getCombinedHeatPower_ThermalEfficiency() {
 		return (EAttribute) combinedHeatPowerEClass.getEStructuralFeatures().get(0);
 	}
@@ -268,6 +279,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getSolarPanel() {
 		return solarPanelEClass;
 	}
@@ -277,6 +289,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EAttribute getSolarPanel_MppVoltage() {
 		return (EAttribute) solarPanelEClass.getEStructuralFeatures().get(0);
 	}
@@ -286,6 +299,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EAttribute getSolarPanel_MppCurrent() {
 		return (EAttribute) solarPanelEClass.getEStructuralFeatures().get(1);
 	}
@@ -295,6 +309,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getInverter() {
 		return inverterEClass;
 	}
@@ -304,6 +319,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EAttribute getInverter_MaxDCVoltage() {
 		return (EAttribute) inverterEClass.getEStructuralFeatures().get(0);
 	}
@@ -313,6 +329,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EAttribute getInverter_MacDCCurrent() {
 		return (EAttribute) inverterEClass.getEStructuralFeatures().get(1);
 	}
@@ -322,6 +339,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getManufacturer() {
 		return manufacturerEClass;
 	}
@@ -331,6 +349,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EAttribute getManufacturer_Name() {
 		return (EAttribute) manufacturerEClass.getEStructuralFeatures().get(0);
 	}
@@ -340,6 +359,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getChemicalDevice() {
 		return chemicalDeviceEClass;
 	}
@@ -349,6 +369,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EAttribute getChemicalDevice_InstalledThermalPower() {
 		return (EAttribute) chemicalDeviceEClass.getEStructuralFeatures().get(0);
 	}
@@ -358,6 +379,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getEnergyComponent() {
 		return energyComponentEClass;
 	}
@@ -367,6 +389,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EAttribute getEnergyComponent_ModelName() {
 		return (EAttribute) energyComponentEClass.getEStructuralFeatures().get(0);
 	}
@@ -376,6 +399,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EAttribute getEnergyComponent_RevisionYear() {
 		return (EAttribute) energyComponentEClass.getEStructuralFeatures().get(1);
 	}
@@ -385,6 +409,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EReference getEnergyComponent_ProducedBy() {
 		return (EReference) energyComponentEClass.getEStructuralFeatures().get(2);
 	}
@@ -394,6 +419,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EClass getElectricalDevice() {
 		return electricalDeviceEClass;
 	}
@@ -403,6 +429,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EAttribute getElectricalDevice_NominalPower() {
 		return (EAttribute) electricalDeviceEClass.getEStructuralFeatures().get(0);
 	}
@@ -412,6 +439,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EEnum getBoilerType() {
 		return boilerTypeEEnum;
 	}
@@ -421,6 +449,7 @@ public class DemocatalogPackageImpl extends EPackageImpl implements DemocatalogP
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public DemocatalogFactory getDemocatalogFactory() {
 		return (DemocatalogFactory) getEFactoryInstance();
 	}
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/ElectricalDeviceImpl.java b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/ElectricalDeviceImpl.java
similarity index 99%
rename from org.example.democatalog/src-gen/org/example/democatalog/impl/ElectricalDeviceImpl.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/impl/ElectricalDeviceImpl.java
index 9526716cbf32459c8cf258478bed62f1855aae8e..8815f33c3442a9a7ecf4ab7cc465e1e40602daa0 100644
--- a/org.example.democatalog/src-gen/org/example/democatalog/impl/ElectricalDeviceImpl.java
+++ b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/ElectricalDeviceImpl.java
@@ -69,6 +69,7 @@ public abstract class ElectricalDeviceImpl extends EnergyComponentImpl implement
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public double getNominalPower() {
 		return nominalPower;
 	}
@@ -78,6 +79,7 @@ public abstract class ElectricalDeviceImpl extends EnergyComponentImpl implement
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public void setNominalPower(double newNominalPower) {
 		double oldNominalPower = nominalPower;
 		nominalPower = newNominalPower;
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/EnergyComponentCatalogImpl.java b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/EnergyComponentCatalogImpl.java
similarity index 99%
rename from org.example.democatalog/src-gen/org/example/democatalog/impl/EnergyComponentCatalogImpl.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/impl/EnergyComponentCatalogImpl.java
index 1b24eb82fd318ad3c19e0696edfe94e21612e735..c9f480ad7b12794e1aa814c0f10cca0f49b443b6 100644
--- a/org.example.democatalog/src-gen/org/example/democatalog/impl/EnergyComponentCatalogImpl.java
+++ b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/EnergyComponentCatalogImpl.java
@@ -139,6 +139,7 @@ public class EnergyComponentCatalogImpl extends MinimalEObjectImpl.Container imp
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public String getAuthor() {
 		return author;
 	}
@@ -148,6 +149,7 @@ public class EnergyComponentCatalogImpl extends MinimalEObjectImpl.Container imp
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public void setAuthor(String newAuthor) {
 		String oldAuthor = author;
 		author = newAuthor;
@@ -161,6 +163,7 @@ public class EnergyComponentCatalogImpl extends MinimalEObjectImpl.Container imp
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EList<Boiler> getBoilers() {
 		if (boilers == null) {
 			boilers = new EObjectContainmentEList<Boiler>(Boiler.class, this,
@@ -174,6 +177,7 @@ public class EnergyComponentCatalogImpl extends MinimalEObjectImpl.Container imp
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EList<CombinedHeatPower> getChps() {
 		if (chps == null) {
 			chps = new EObjectContainmentEList<CombinedHeatPower>(CombinedHeatPower.class, this,
@@ -187,6 +191,7 @@ public class EnergyComponentCatalogImpl extends MinimalEObjectImpl.Container imp
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EList<SolarPanel> getSolarPanels() {
 		if (solarPanels == null) {
 			solarPanels = new EObjectContainmentEList<SolarPanel>(SolarPanel.class, this,
@@ -200,6 +205,7 @@ public class EnergyComponentCatalogImpl extends MinimalEObjectImpl.Container imp
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EList<Inverter> getInverters() {
 		if (inverters == null) {
 			inverters = new EObjectContainmentEList<Inverter>(Inverter.class, this,
@@ -213,6 +219,7 @@ public class EnergyComponentCatalogImpl extends MinimalEObjectImpl.Container imp
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public EList<Manufacturer> getManufacturers() {
 		if (manufacturers == null) {
 			manufacturers = new EObjectContainmentEList<Manufacturer>(Manufacturer.class, this,
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/EnergyComponentImpl.java b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/EnergyComponentImpl.java
similarity index 99%
rename from org.example.democatalog/src-gen/org/example/democatalog/impl/EnergyComponentImpl.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/impl/EnergyComponentImpl.java
index dc774c146e6f27a69c4f4f9014336a089b5590a3..3ca601c90b3f2d7d3607660feea748ee54442539 100644
--- a/org.example.democatalog/src-gen/org/example/democatalog/impl/EnergyComponentImpl.java
+++ b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/EnergyComponentImpl.java
@@ -104,6 +104,7 @@ public abstract class EnergyComponentImpl extends MinimalEObjectImpl.Container i
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public String getModelName() {
 		return modelName;
 	}
@@ -113,6 +114,7 @@ public abstract class EnergyComponentImpl extends MinimalEObjectImpl.Container i
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public void setModelName(String newModelName) {
 		String oldModelName = modelName;
 		modelName = newModelName;
@@ -126,6 +128,7 @@ public abstract class EnergyComponentImpl extends MinimalEObjectImpl.Container i
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public int getRevisionYear() {
 		return revisionYear;
 	}
@@ -135,6 +138,7 @@ public abstract class EnergyComponentImpl extends MinimalEObjectImpl.Container i
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public void setRevisionYear(int newRevisionYear) {
 		int oldRevisionYear = revisionYear;
 		revisionYear = newRevisionYear;
@@ -148,6 +152,7 @@ public abstract class EnergyComponentImpl extends MinimalEObjectImpl.Container i
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public Manufacturer getProducedBy() {
 		if (producedBy != null && producedBy.eIsProxy()) {
 			InternalEObject oldProducedBy = (InternalEObject) producedBy;
@@ -175,6 +180,7 @@ public abstract class EnergyComponentImpl extends MinimalEObjectImpl.Container i
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public void setProducedBy(Manufacturer newProducedBy) {
 		Manufacturer oldProducedBy = producedBy;
 		producedBy = newProducedBy;
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/InverterImpl.java b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/InverterImpl.java
similarity index 99%
rename from org.example.democatalog/src-gen/org/example/democatalog/impl/InverterImpl.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/impl/InverterImpl.java
index 2113e413cdde5f8a0aa183d335830139ab94ea09..564348022cd67470f21021f0ea3c2de43deb2603 100644
--- a/org.example.democatalog/src-gen/org/example/democatalog/impl/InverterImpl.java
+++ b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/InverterImpl.java
@@ -90,6 +90,7 @@ public class InverterImpl extends ElectricalDeviceImpl implements Inverter {
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public double getMaxDCVoltage() {
 		return maxDCVoltage;
 	}
@@ -99,6 +100,7 @@ public class InverterImpl extends ElectricalDeviceImpl implements Inverter {
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public void setMaxDCVoltage(double newMaxDCVoltage) {
 		double oldMaxDCVoltage = maxDCVoltage;
 		maxDCVoltage = newMaxDCVoltage;
@@ -112,6 +114,7 @@ public class InverterImpl extends ElectricalDeviceImpl implements Inverter {
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public double getMacDCCurrent() {
 		return macDCCurrent;
 	}
@@ -121,6 +124,7 @@ public class InverterImpl extends ElectricalDeviceImpl implements Inverter {
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public void setMacDCCurrent(double newMacDCCurrent) {
 		double oldMacDCCurrent = macDCCurrent;
 		macDCCurrent = newMacDCCurrent;
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/ManufacturerImpl.java b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/ManufacturerImpl.java
similarity index 99%
rename from org.example.democatalog/src-gen/org/example/democatalog/impl/ManufacturerImpl.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/impl/ManufacturerImpl.java
index 52d5e1042e440cd79e15445d1fb695677b7093b6..5721a7bda27950b76e356b37773161e57e50625f 100644
--- a/org.example.democatalog/src-gen/org/example/democatalog/impl/ManufacturerImpl.java
+++ b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/ManufacturerImpl.java
@@ -70,6 +70,7 @@ public class ManufacturerImpl extends MinimalEObjectImpl.Container implements Ma
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public String getName() {
 		return name;
 	}
@@ -79,6 +80,7 @@ public class ManufacturerImpl extends MinimalEObjectImpl.Container implements Ma
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public void setName(String newName) {
 		String oldName = name;
 		name = newName;
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/impl/SolarPanelImpl.java b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/SolarPanelImpl.java
similarity index 99%
rename from org.example.democatalog/src-gen/org/example/democatalog/impl/SolarPanelImpl.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/impl/SolarPanelImpl.java
index 199729cff29e620dc7651bb40e93115880eba647..c5f22850379534dc9330f30656107793fe24630a 100644
--- a/org.example.democatalog/src-gen/org/example/democatalog/impl/SolarPanelImpl.java
+++ b/org.example.democatalog.model/src-gen/org/example/democatalog/impl/SolarPanelImpl.java
@@ -90,6 +90,7 @@ public class SolarPanelImpl extends ElectricalDeviceImpl implements SolarPanel {
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public double getMppVoltage() {
 		return mppVoltage;
 	}
@@ -99,6 +100,7 @@ public class SolarPanelImpl extends ElectricalDeviceImpl implements SolarPanel {
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public void setMppVoltage(double newMppVoltage) {
 		double oldMppVoltage = mppVoltage;
 		mppVoltage = newMppVoltage;
@@ -112,6 +114,7 @@ public class SolarPanelImpl extends ElectricalDeviceImpl implements SolarPanel {
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public double getMppCurrent() {
 		return mppCurrent;
 	}
@@ -121,6 +124,7 @@ public class SolarPanelImpl extends ElectricalDeviceImpl implements SolarPanel {
 	 * <!-- end-user-doc -->
 	 * @generated
 	 */
+	@Override
 	public void setMppCurrent(double newMppCurrent) {
 		double oldMppCurrent = mppCurrent;
 		mppCurrent = newMppCurrent;
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/util/DemocatalogAdapterFactory.java b/org.example.democatalog.model/src-gen/org/example/democatalog/util/DemocatalogAdapterFactory.java
similarity index 100%
rename from org.example.democatalog/src-gen/org/example/democatalog/util/DemocatalogAdapterFactory.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/util/DemocatalogAdapterFactory.java
diff --git a/org.example.democatalog/src-gen/org/example/democatalog/util/DemocatalogSwitch.java b/org.example.democatalog.model/src-gen/org/example/democatalog/util/DemocatalogSwitch.java
similarity index 100%
rename from org.example.democatalog/src-gen/org/example/democatalog/util/DemocatalogSwitch.java
rename to org.example.democatalog.model/src-gen/org/example/democatalog/util/DemocatalogSwitch.java
diff --git a/org.example.democatalog.viewmodel/viewmodels/EnergyComponentCatalog.view b/org.example.democatalog.viewmodel/viewmodels/EnergyComponentCatalog.view
index c2504a7f9f93328a986acc2f2f20320ed639ac99..1286e278070ae28d431d70d5c4a70011fd2345de 100644
--- a/org.example.democatalog.viewmodel/viewmodels/EnergyComponentCatalog.view
+++ b/org.example.democatalog.viewmodel/viewmodels/EnergyComponentCatalog.view
@@ -57,5 +57,5 @@
       </composite>
     </categorizations>
   </children>
-  <ecorePaths>/org.example.democatalog/model/democatalog.ecore</ecorePaths>
+  <ecorePaths>/org.example.democatalog.model/model/democatalog.ecore</ecorePaths>
 </org.eclipse.emf.ecp.view.model:View>
diff --git a/org.example.democatalog/src/.gitkeep b/org.example.democatalog/src/.gitkeep
deleted file mode 100644
index e69de29bb2d1d6434b8b29ae775ad8c2e48c5391..0000000000000000000000000000000000000000